2

次のスニペットを介してSlimDXのStateBlockを使用して、状態を保存および復元しようとしています。

StateBlockMask mask = new StateBlockMask(null) { RasterizerState = true };
var sb = new StateBlock(device.Device, mask);

StateBlockMaskとStateBlockはどちらもクラスです。これにより、コンパイルエラーが発生します。

'.ctor' is not supported by the language

SOに関する他のいくつかの投稿を読むと、これは間違った引数でマネージコードを呼び出すことに関係している問題のようです。SlimDXのソースで、私は見つけます:

StateBlock::StateBlock(SlimDX::Direct3D10::Device^ device, StateBlockMask mask)

私はC++/ CLIの経験がまったくないので、ここに何か問題があるのではないかと思います(欠落や余分な^など)、または自分の側に障害を集中させる必要がありますか?

(注:この質問はgamedev.netにクロスポストされています。同じ質問を持つ将来のユーザーも、そこで与えられた回答を確認することをお勧めします)

4

2 に答える 2

3

構造体ですかStateBlockMask?そうでない場合はStateBlockMask^ mask、C++ コンストラクターで使用します。

于 2011-03-01T13:22:52.017 に答える
0

これは SlimDX のバグのようです。問題トラッカーを使用して、問題が適切に処理されるようにすることをお勧めします。

于 2011-03-01T18:50:39.803 に答える