Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

luzexi/slua-3rd-lib

Open more actions menu
 
 

Repository files navigation

#slua 3rd library. Fastest Unity lua binding via static code generating.

Introduction slua Document

###What's different This fork integrate with 3rd Lua library.

We already have pbc , lpeg , cjson , lua-socket , sproto , sqlite librarys and more and more in the future.

The library is already been test in Mac , Iphone , Android , Windows.

Website: http://www.luzexi.com

Email: jesse_luzexi@163.com

中文请看

###MinGW for windows build MinGW , a contraction of "Minimalist GNU for Windows", is a minimalist development environment for native Microsoft Windows applications.

MinGW be a submodule in this repo and about 300 MB , If you have to build dll in windows you must init and update the submodule like : git submoudle update --init.

###About 3rd library 1.pbc (https://github.com/cloudwu/pbc) is a google protocol buffers library for C without code generation.

2.lpeg (http://www.inf.puc-rio.br/~roberto/lpeg/lpeg.html) is a new pattern-matching library for Lua, based on Parsing Expression Grammars (PEGs).

3.lua-cjson (http://www.kyne.com.au/~mark/software/lua-cjson.php) provides JSON support for Lua.

4.lua-socket (http://w3.impa.br/~diego/software/luasocket/home.html) is a Lua extension library that is composed by two parts: a C core that provides support for the TCP and UDP transport layers, and a set of Lua modules that add support for functionality commonly needed by applications that deal with the Internet.

5.sproto (https://github.com/cloudwu/sproto) is an efficient serialization library for C, and focuses on lua binding. It's like Google protocol buffers, but much faster.

6.sqlite (https://github.com/LuaDist/lsqlite3) is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine.

##How to use slua in unity3d. See inner demo for help or Document (in chinese).

##How to use 3rd library in unity3d. See inner demo for help.

  • pbc example

The path of pbc example is Assets/Slua/example/example-pbc/protoTest.unity.

To integrate pbc I add ByteArray class in slua. It works when you use byte[] between c# and Lua.

  • lua-cjson example

The path of lua-cjson example is Assets/Slua/example/example-cjson/cjson_test.unity.

Test scripts include cjson_test.cs , cjsonTest.txt , cjsonTest/test1.txt.

  • lua-socket example

The path of lua-socket example is Assets/Slua/example/example-luasocket/lua_socket.unity.

The test scripts is 'testclnt.txt'. The test file copy from lua-scoket. If you wana test, you need to run the 'luasrvr.lua' from the lua-scoket's test folder.

  • sproto example

The path of sproto example is Assets/Slua/example/example-sproto/sproto-test.unity.

The test contain 3 files sprotoTest/test.txt , sprotoTest/testall.txt , sprotoTest/pbc.txt , all of these files from sproto project.

  • sqlite example

The path of sproto example is Assets/Slua/example/example-sqlite/sqlite-test.unity.

The test contain 2 files sqliteTest/test.txt , sqliteTest/tests-sqlite3.txt , all of them from lsqlite project.

###How to build library by yourself. It has sevral shell or bat in the build folder. If you have to choose some of theirs , you can modify the build scripts by yourself. It's simple I think if you really want.

The shell or bat in the build folder can build the library for specially platform:

1.make_ios.sh will build iphone library in osx.

2.make_osx.sh will build osx library in osx.

3.make_android.sh will build android library. You can execute it in osx or linux. But first , please reset the ndk path in the shell.

4.make-windows-32.cmd will build windows 32bit dll in windows 32-bit or 64-bit.

5.make-windows-64.cmd will build windows 64bit dll in windows 64-bit.

###TODO 1.Add lua-cjson library in slua. ( Finished )

2.Add lua-socket library in slua. ( Finished )

3.Merge slua v1.x ( Finished )

4.Add sproto library in slua. ( Finished )

5.Add sqlite library in slua. ( Finished )

6.Add Int64 in slua.

7.Add curl library in slua.

About

Unity3d lua name slua with 3rd library

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 78.4%
  • Lua 5.7%
  • HTML 4.9%
  • C++ 3.2%
  • Makefile 3.2%
  • Shell 1.4%
  • Other 3.2%
Morty Proxy This is a proxified and sanitized view of the page, visit original site.