#author("2019-04-14T00:58:52+09:00","","") #author("2024-06-18T17:15:26+09:00","","") *LuaとC#バインダ [#a8cebd95] **[[NLua>https://github.com/NLua/NLua]] [#beace5ac] -C#からのバインダとしては、事実上これ一択といえるほど人気が集中しているようです。~ ~ -リンク先にx64やx32など、ターゲットごとにバイナリパッケージをダウンロードできるようになっています。~ パッケージにはNLua.exeが同封されていませんので、ダウンロードしたターゲットに合わせて~ ソースからコンパイルすることとなるでしょう。~ ~ -Lua側から、.NETのクラス、クラスインスタンスを扱えるため、~ 自然なバインドが実現されており、非常に強力と言えます。~ ~ -.NET環境との相性を考えると、Luaファイルは、utf8の文字コードで扱うこととなるでしょう。 ~ -一体どんな感じなのかの確認用 (Windows x64 CPU、.NET FrameWork 4.5以上 用のバイナリ)~ #ref(http://xn--pckzexbx21r8q9b.net/lua_tips/download/soft/NLua_Win64_130.00.zip)| ~ **[[NeoLua>https://neolua.codeplex.com/releases]] [#beace5ac] **[[NeoLua>https://github.com/neolithos/neolua]] [#beace5ac] -オリジナルのLuaである必要はなく、Luaと''ほぼ同じ構文、同じ関数であれば良い''、~ ということであれば、NLuaよりも、NeoLuaの方が取りまわしに優れています。~ -NLuaと異なり、必要なファイル数が1つだけで、わかりやすいdll構成というだけでなく、~ C#で全て記述されているため、移植性が高いとも言えます。 -NeoLuaのソース自体を全て本体アプリケーション内部に組み入れるのも簡単です。~ ~ **[[LuaInterface>http://code.google.com/p/luainterface/]] [#k144442d] -かつて、C#からのバインダとして、ほぼ独占状態だったと言えるライブラリ。~ 先述のNLuaはこのLuaInterfaceがフォークしたプロジェクトである。~ ~ NLuaよりも必要なファイル数が少なく、わかりやすいdll構成であることから、~ こちらを好んで利用する人もいることだろう。