とりあえずいったん仕切りなおす事にしたので記載しておこうと思う。
下記は自分のリポジトリ
https://github.com/K-MountainBook/IntroDX12
サンプルコードリポジトリ
https://github.com/boxerprogrammer/directx12_samples
サンプルコードでも正常な動作をしなかった。
環境
- 9950X3D
- 4080 Super
症状(うろ覚え)
-
とりあえず写経した。ミクさんのモデルを表示させ色を付けるところまではなんとか行った。
-
はじめは設定を間違えて、前チャプターの画像をそのままテクスチャに設定してしまい、ミクさんの色が変な色になった。赤と黄色の色が混ざってたから多分そう。
-
ピクセルシェーダーにテクスチャを読ませない場合、当然テクスチャが無いミクさんが表示される。
-
改めて写経し、textureResources配列に画像を読み込むメソッドを作成し、目のテクスチャを入れようと思ったら、モデルそのものが表示されなくなった。
-
ディスクリプタテーブルの順番を本の通りにしたり、ルートパラメータも直したけど
-
二つのディスクリプタヒープをコマンドリストに読み込ませて順にSetGraphicsRootDescriptorTableしても表示されず。
-
サンプルコードをそのままクローンして実行してみたら、ミクさんは表示されたが目のテクスチャが表示されていない。
結論
お手上げ
ゲーム作るだけならゲーム制作用のフレームワークやライブラリ使った方が良い。
追記
2026/06/08
牛歩だがなんとか環境光の導入まで進むことができた。
写経だともうお手上げなので自分で考えた実装が多々含まれるが、そういう時は動いたときにドパる感覚は気持ちが良い。