1

.NET1.1 の DX9 に基づいたコードを、DX9、.NET4、および SlimDX に変換しようとしています。

古いコードには、いくつかのイベント ハンドラーが設定されていました。

graphics.DeviceLost     += new EventHandler( this.InvalidateDeviceObjects );
graphics.DeviceReset    += new EventHandler( this.RestoreDeviceObjects );
graphics.Disposing      += new EventHandler( this.DeleteDeviceObjects );
graphics.DeviceResizing += new CancelEventHandler( this.EnvironmentResizing );

SlimDX.Direct3D9 では、DeviceLost が存在しないことに注意してください。私は他の人たちと同様の問題を抱えています。

DeviceLost は SlimDX.Direct3D9.ResultCode 名前空間に存在しますが、これが役立つかどうかはわかりません。

乾杯、

4

1 に答える 1

1

結果コードをチェックしてそれに応じて動作するには、ネイティブDirectXの場合と同じようにTestCooperativeLevelメソッドを使用する必要があります。MDXのイベント処理方法には、いくつかの不幸なパフォーマンスの落とし穴があります。そのため、そのシステムの実装を避けました。

于 2012-06-04T15:35:38.347 に答える