ゲームエンジンを書いていますが、スクリプトにIoを使用したいと思います。エンジンはC++ではなく純粋なC99で書かれています。IoをゲームのC関数のいくつかに正常にバインドしましたが、うまく機能します。
ただし、CゲームループでIoメソッドを呼び出したいと思います。IoState_doFile_()
基本的に、次の行に沿って何かを含むスクリプト(おそらくを使用)をロードしたいと思います。
Game init := method(...)
Game keypress := method(key, ...)
// and update, render, etc
次に、Cゲームループで、これらの関数を呼び出したいと思います。そのうちのいくつかに引数を渡す必要があります。残念ながら、Ioのドキュメントは優れていますが、信じられないほどまばらです。私はIoVMコードを少し掘り下げましたが、何も役に立ちませんでした(おそらく十分に掘り下げていません)。これを行うための最良の方法は何ですか?何かのようなもの
sprintf(buf, "Game update(%u)", &deltaTime);
IoState_doCString_(buf);
おそらく本当に非効率的であることは言うまでもなく、かなりハックっぽいようです(それが機能すると仮定します。私は試していません)。