質問

RubyをMicrosoft XNAのスクリプト言語として埋め込むことが可能かどうか、そしてそれを行うための最善の方法は何だろうと思っています。 Rubyを除き、 Xnua のようなものを探しています。

Ruby.NETとIronRubyに出くわしましたが、どちらも非常に初期の段階にあるようです。さらに、Xbox 360で動作するかどうかはわかりません。この XNAのトピックフォーラムでは、たとえばIronPythonは機能しないと述べています。

役に立ちましたか?

解決

IronRubyとIronPythonは、 DLR に基づいているため、Xbox 360では機能しません。 (Dynamic Language Runtime)およびDLRはシステムを多用しています。 Xbox 360 .Net Framework(Compact .Net Frameworkの修正版)では現在利用できないReflection.Emit タイプ。

それを行う最良の方法については、残念ながらゲームの残りの部分に依存します。 XNAプログラムのコンテキストでIronRubyスクリプトを評価できるようにする作業は非常に簡単です。ブログの投稿。それを超えて、スクリプトにいくつかの興味深いオブジェクトを公開したいと思いますが、それはゲームコード/デザインの残りの部分に完全に依存しています。 Unityのスクリプティングドキュメントを参照して、公開するタイプとコマンド。

他のヒント

IronRubyがXboxで動作しないことはほぼ保証されていますが、Windows用のXNAゲームを開発したいだけであれば、他のアプリケーションと同じように使用できるはずです。

それを実現する方法については、どのように実際に説明することはできません。

Leaf Garlandの観察に同意しますが、別の方法をご紹介します。

「推奨」ゲームのスクリプト言語はLuaです。たとえば、ゲームCrysis and Far CryはLUAを広範囲に使用しています。 wikipedia でフリックすると、それを使用する有名なゲームのリストが表示されます。

XNAでそれを使用するという点では、趣味のXNA開発を始めたばかりであるため、表面に傷を付けただけですが、XNAでLUAを直接使用することはできません。これは、LUAがC ++(アンマネージド)で構築されているため、XBOX360に展開できないためです。

http://www.xnua.comにluaのXNAバージョンを構築している開発中のプロジェクトがあります。 / 。また、無料の製品であり、ソースコードもダウンロードできます。

LUAがAAA商用ゲームに十分であるとゲーム業界が信じているなら、私も個人的にその指示に従います(彼らは私よりもその分野でより多くの経験を持っていることに基づいて)

PC開発にRubyを使用し、360にLuaを使用しないのはなぜですか?

編集:これが役立つかもしれません。

Rubyではなく、これは古い質問ですが、私が構築している新しいスクリプトエンジンについて教えてください。基本的には、XNAの下のXbox360を含む.Netフレームワークがあればどこでも実行されます。 Reflection.Emitを使用しないため、他の言語が使用しない場所でも機能します。また、完全に管理されたコードなので、LuaのようなP / Invokesもありません。

私のブログから詳細情報を入手できます。また、このデモページ

ベータテストの準備はほぼ整っていますが、ベータテスト後は商用ライセンスのコンポーネントになります

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top