2

私は複数のソースを見てきましたが、それらを理解していません。ほとんどの場合、luaBind (Boost に依存しているため使用したくない) のようなライブラリを使用しているか、C++ でインスタンス化されたオブジェクトではなく、Lua で直接作成されています。

Lua 呼び出しを処理するために別のクラスにラップされている Player クラスがあります。アプリケーションの初期化で、これら両方のオブジェクトの std::vector リストを作成しました。

getPlayer()基本的に、Lua スクリプトでこれらのプレーヤー オブジェクトを作成するのではなく、Lua でラップされたオブジェクトを返す関数を作成したいだけです。Lua が呼び出す Lua でラップされたオブジェクトの定義をどこから始めればよいかわかりません。また、オブジェクトのインスタンスを Lua に返して、そこからの呼び出しを使用できるようにする方法もわかりません。

Lua スクリプトを次のようにしたい例を次に示します。

player = getPlayer(1) -- Returns the Lua wrapped object from C++ where 1 is the object's index in the std::vector list
print("Player's name: ", player:name()) -- Print's the player's name

誰かがこれを行う方法を説明するまともなチュートリアルを教えてくれませんか. これはある種の「やったことがないのになぜやりたいのか」というケースではないと確信しているので、少なくとも1つのチュートリアルがそこにあるはずです. 私は約2日間検索しており、肯定的な結果はありません。

4

1 に答える 1