BaseCrossDx12ドキュメント

はじめに

 DirectX12版のフレームワークBaseCrossDx12のドキュメントです。
 DirectX11版のフレームワークBaseCross64は、GitHubに公開されていて、BaseCross64から、レポジトリのクローンもしくはダウンロードしてください。
 BaseCrossDx12を制作するにあたり、初期手順が重要だな、と考えました。
 一般的な手順とすれば、マイクロソフト社のDx12ドキュメントDirectX-Graphics-Samplesを参考にしながら、例えばD3D12HelloWorldサンプルなどの簡単なものを参考に進めていく、あるいは、0から自分で作っていく方法もあるかとは思います。
 僕自身、そういった方法で何回か挑戦してきましたが、どうも思い通りの仕上がりにならない。そうこうしていくうちに、ハードウェアもどんどん進化していき、Dx12もそれに合わせて進化してきました。それで、2025年現在、アクセラレータによってはFPS値が1000とか2000にもなるサンプルも出てきました。
 それで、再考した結果、DirectX-Graphics-Samplesの中から魅力的なサンプルを1つ選び、そこから作り替えていくという手順を取ることにしました。幸いDirectX-Graphics-SamplesMITライセンスなので、自由に改変できます。
 それで選んだのがD3D12xGPUというサンプルです。このサンプルは今動いているGPUの性能を計るみたいな意味合いの強いサンプルですが、コードも非常に読みやすく、整理されていると思います。
 C++はオブジェクト指向言語ですが、C言語のようにも書けます。しかしながらこのサンプルは、オブジェクト指向設計が素晴らしく、新しい機能を付ける場合にも新しいクラスを作り既存のクラスと共存したり、既存のクラスを継承したりが容易にできます。そのうえ前述したようにFPS値が1000とか2000にもなる、GPUの能力を十二分に引き出すサンプルと言えます。
 そんなわけで、D3D12xGPUをもとにフレームワークを作成し始めたわけですが、何点か留意点がありますので、以下に述べます。  それでは、次ページからはサンプルの紹介BaseCrossDx12の機能を述べていきたいと思います。
 どなた様も、末永いお付き合い、お願いできれば幸いです。
2025年春 山ノ井 靖(WiZ非常勤講師C++担当)

© WiZ Tamura Hiroki,Yamanoi Yasushi MIT License.