【DirectX11】DirectXテンプレートのDRについて

【DirectX11】DirectXテンプレートのDRについて

目次

まずは調査結果

  • DRなしとDRありの差は、DirectXの定型処理をGame.cpp本体に記述している(DRなし)か分離している(DRあり)かの違い
  • DRはDirectXの定型的な初期設定や、必ず使うであろうリソースを作成する処理をまとめたもの
  • 基本はDRありを選択しておけばOK

DirectXテンプレートについて

テンプレートはただVisualStudioをインストールしただけでは表示されません。

表示させるには、自分でテンプレートをインポートする必要があります。
特に難しいことはなく、ダウンロードしてダブルクリックでインポートが自動でされます。

詳細な導入方法やテンプレートファイルについては、以下の記事を参考にしてください

DRとはなにか

多分気になるのは、なぜ「DRがついているのか」だと思います。

このDRは略語で、正式な呼び方に直すと、DeviceResourcesです。

DeviceResourcesとは何かというと、DirectXを使うためには必ずと言っていいほど定型的な初期設定が発生します。これが1、2行であればいいのですが、100~200行にもなってしまうケースがそう少なくありません。

なので、それらの実際に実装したい箇所ではない部分はDeviceResourcesというクラスに隠蔽してしまおうというのが、このクラスのコンセプトです。

どれくらいコードを省略できているのか

実装したいゲームのロジックを記述するであろうクラスGame.cppのテンプレート生成時のコード量を比較してみます。

コメントの行数などもカウントに入っている

DRありなし 行数
なし 328
あり 191

DRを使うことで、2/3分のコード量で始めることができるということが分かりました。

実装をこれから始めるのであれば、基本的にボイラープレート的な必須コードは目に入らない方がゲーム開発に集中できるので、これだけでもDRを使う価値はあると思います。

Author

Daiki Iijima

Posted on

2026-01-01

Updated on

2026-03-02

Licensed under