2011-06-04 8 views
14

これは奇妙な質問のように聞こえるので、最初に取り巻く状況を説明します。LuaをPythonに埋め込む方法は?

基本的に、私はPythonで書かれた3Dゲーム開発キットを持っていますが、それは非常に効果的です。しかし、私のユーザのほとんどはスクリプト言語としてLuaを使用することに慣れているので、私はLua-Pythonバインディングを見始めました。

私はStefan Behnelの驚くべきLupaライブラリで解決しました。しかし、基本的にエンドユーザはアプリケーションのコンパイル方法を知っている必要があります。これは私のGDKでは受け入れられません。また、私は通常、Linuxシステムにしかアクセスできません。私のゲーム開発キットはWindowsとMac OSX上で動作しているので、Windowsのバイナリは常に遅れており、OSXユーザーは自分自身でGDKをコンパイルする必要があります。

誰かが別の方法を知っていますか?ありがとうございました!

P.S:私はすでにLunatic Pythonを試していますが、Luxは古すぎます。

+0

はい、私の最初の質問:)。私は今StackOverflowの周りに "潜んでいる"しかし、何年も前に... – DangerOnTheRanger

+0

コンパイラを書くのが好きですか? –

+0

実際、私自身の純粋なPythonのLuaインタプリタを書くことは、私のフォールバックです。しかし、ルパに代わるものが登場しなければ、私はルパにこだわるかもしれません。 – DangerOnTheRanger

答えて

4

あなたはlunatic-pythonを調べてください。これは、Pythonとluaの間の2ウェイブリッジです。

サイトオフの例では、それがどのように自然で簡単な例を示します

>>> import lua 
>>> lg = lua.globals() 
>>> lg.string 
<Lua table at 0x81c6a10> 
>>> lg.string.lower 
<Lua function at 0x81c6b30> 
>>> lg.string.lower("Hello world!") 
'hello world!' 
+2

私が質問したように、私は既にLunatic Pythonを試しました。私が持っている主な問題は、 ithic: 'lua.run'を実行するだけであれば、複数のスクリプトは暗黙的にグローバルを共有します。それが私がルパを選んだ理由です。複数のLuaインタプリタインスタンスが存在する可能性があります。 – DangerOnTheRanger