新しい Oculus SDK (DK2 用) を Game Maker Studio に統合しようとしています。GM および新しい SDK と通信する DLL を作成することで、これを行っています。もうどうしたらいいのかわからないところまで来ました。
現在、oculus をオンにすることができ、oculus にヘルス通知が表示されます。ヘルス表示も GM アプリケーション ウィンドウ上に描画されるようです。その後、GM アプリケーションは再びウィンドウ上に描画されます。2 つのアプリケーションが同じウィンドウに描画されているようです。
問題は、アプリケーションの表示を DLL にフィードし、そこで解析して (オクルスのレンズに歪みといくつかのフィルターを追加するため)、それを Oculus デバイスに吐き出す必要があることです。GM サーフェスとオクルス サーフェスを組み合わせてオクルス デバイスに入れる必要があります。
私は2種類のポインターを利用できます-1つはアプリケーションのHWND用(ここで使用)、および1つはDXデバイスポインター(私は、次のように使用されると思います:
LPDIRECT3DDEVICE9 d3ddev;
GMEXPORT double LinkD3D( long POINTER ){
d3ddev = (LPDIRECT3DDEVICE9)POINTER;
// Enable 8x Anisotropic Filtering
d3ddev->SetSamplerState(0, D3DSAMP_MAXANISOTROPY, 8);
d3ddev->SetSamplerState(0, D3DSAMP_MINFILTER, D3DTEXF_ANISOTROPIC);
// Enable Linear Filtering
d3ddev->SetSamplerState(0, D3DSAMP_MAGFILTER, D3DTEXF_LINEAR);
d3ddev->SetSamplerState(0, D3DSAMP_MIPFILTER, D3DTEXF_LINEAR);
return 1;
}
LPDIRECT3DDEVICE9 を oculus SDK の DX11 に取り込むにはどうすればよいでしょうか。
現在、既存のウィンドウに描画されるように healthwarning が表示されます。
内部テクスチャ (上記で使用した d3ddev) が必要かもしれないと考えていたので、それを Ouculus pRender デバイスのどこかに配置します。 https://github.com/RobQuistNL/GMOculus/blob/master/DLL/GMOculus/GMOculus/main.cpp#L223
プロジェクトのソース コードはここにあります。https://github.com/RobQuistNL/GMOculus/blob/master/DLL/GMOculus/GMOculus/main.cpp
漠然とした説明で大変申し訳ありませんが、ご了承ください。
- 私は実際にはウェブ開発者です
- 趣味のゲームにゲームメーカーを使っています
- C++ をある程度知っている
- DX経験ゼロ
私は実際にオクルスに描画する健康通知をすでに取得できることを嬉しく思います。
ただ、何も変換できないようです。テクスチャ、スワップチェーン、レンダリング デバイスを試しましたが、エラーが発生し続けます。私は間違った方向を見ていますか?
誰かが私を助けてくれるなら、喜んで支払います。
乾杯、 ロブ