OpenXOPSへのシェーダー実装と当たり判定改良 | 2021.02.22 01:24 |
タイトルの通りですが、
OpenXOPS(本流)に対して、DirectX 9.0cのシェーダーを実装し、
人とマップの当たり判定を作り直したコードをコミットしました。
本家XOPSレベルであればシェーダーなんて必要なく、DirectXの
固定パイプラインで十分であり、OpenXOPSでも2014年の立ち上げ
当初から固定パイプラインを使い続けていました。
ただ、DirectXやOpenGLの最新バージョンでは固定パイプラインから
シェーダーに移り変わっており、1月末よりMicrosoft公式による
DirectX SDKの公開が終了したこともあり、
OpenXOPSもシェーダーで動作するコードも仮実装することに
しました。
相変わらずDirectX 9.0cですけれども。
DirectX End-User RuntimesとDirectX SDK公開終了
(2021.02.12)
DirectX9.0cのシェーダー自体は、今回新規に作ったものではなく、
2018年6月頃に作ったまま ぬか漬けにしていたものを掘り起こして
使っています。
2020年8月に影を付けるサンプルを作った際のベースになったもの
でもあります。
当時から一部コードは修正していますが。
OpenXOPSにシェーダーで影を付ける(2020.08.16)
現時点で、2020年8月にやっていた影を付けるコードをコミット
する予定はないですが、今回のシェーダーのコードは色々応用が
効くはずです。
あと、DirectX 9.0cから次期バージョンへの移植をする上でも、
ベースにすることができると思います。
OpenXOPS標準では、今まで通り固定パイプラインでコンパイル
されますが、ソースコード内の定数を変更することでシェーダー
のコードが有効になります。
OpenXOPS(本流)に対して、DirectX 9.0cのシェーダーを実装し、
人とマップの当たり判定を作り直したコードをコミットしました。
本家XOPSレベルであればシェーダーなんて必要なく、DirectXの
固定パイプラインで十分であり、OpenXOPSでも2014年の立ち上げ
当初から固定パイプラインを使い続けていました。
ただ、DirectXやOpenGLの最新バージョンでは固定パイプラインから
シェーダーに移り変わっており、1月末よりMicrosoft公式による
DirectX SDKの公開が終了したこともあり、
OpenXOPSもシェーダーで動作するコードも仮実装することに
しました。
相変わらずDirectX 9.0cですけれども。
DirectX End-User RuntimesとDirectX SDK公開終了
(2021.02.12)
DirectX9.0cのシェーダー自体は、今回新規に作ったものではなく、
2018年6月頃に作ったまま ぬか漬けにしていたものを掘り起こして
使っています。
2020年8月に影を付けるサンプルを作った際のベースになったもの
でもあります。
当時から一部コードは修正していますが。
OpenXOPSにシェーダーで影を付ける(2020.08.16)
現時点で、2020年8月にやっていた影を付けるコードをコミット
する予定はないですが、今回のシェーダーのコードは色々応用が
効くはずです。
あと、DirectX 9.0cから次期バージョンへの移植をする上でも、
ベースにすることができると思います。
OpenXOPS標準では、今まで通り固定パイプラインでコンパイル
されますが、ソースコード内の定数を変更することでシェーダー
のコードが有効になります。
category : ソフト・ツール開発 | comment [0] |