0

基本的に、私はC#WinFormsアプリケーションに取り組んでおり、XNA 3.1ゲームで画像を描画したいと考えています。これは、デバイスのプライマリバックバッファーであるか、設定する必要のあるレンダリングターゲットであるかは関係ありません。これは可能ですか?

4

1 に答える 1

0

はい、可能です。こちらをご覧ください:

http://create.msdn.com/en-US/education/catalog/sample/winforms_series_1

XNA Framework Gameクラスは、ゲームをホストするための迅速、簡単、かつポータブルな方法を提供します。ゲームを内部で実行するためのウィンドウを自動的に作成し、グラフィックハードウェアを初期化し、オーバーライドするための簡単なUpdateメソッドとDrawメソッドを提供します。ただし、ゲームの動作が十分に柔軟でない場合もあります。おそらく、ウィンドウの作成方法をより細かく制御したい場合や、レベルエディターを作成していて、Windowsユーザーインターフェイスコントロールを3D描画面の周囲に配置したい場合があります。

幸い、XNAフレームワークはこれらのシナリオを念頭に置いて設計されました。フレームワークは、実際には2つの別個のアセンブリで構成されています。Microsoft.Xna.Frameworkは、数学、グラフィックス、入力、オーディオクラスなどのコア機能を提供し、Microsoft.Xna.Framework.Gameは、ゲームなどのオプションの高レベルコードを提供します。クラス。他の方法でゲームをホストする場合は、Microsoft.Xna.Framework.Gameの機能を独自のコードに置き換えることができます。

このサンプルは、System.Windows.Forms.Controlを継承し、XNAFrameworkGraphicsDeviceオブジェクトを使用してWinFormsコントロールがそれ自体を描画する機能を提供するGraphicsDeviceControlクラスを実装します。複数のコントロール間で単一のGraphicsDeviceオブジェクトを共有する方法、デバイスのサイズ変更と紛失を処理する方法、およびContentManagerを介したデータのロードをサポートするためにIGraphicsDeviceServiceインターフェイスを実装する方法を示します。

于 2012-02-05T20:07:17.360 に答える