【DirextX12】導入~サンプルプログラムを動かすまで
[:contents]
雑談
ご無沙汰しております
ブログ解説して二個記事書いて以来すっかり何も書いてないやんけ!ってなってましたが、言い訳としてはDirectXと格闘しておりました。前まではUnityを使っていたのですが、将来のことを考えるとDirectXもある程度触れるようにして独自ライブラリとか組めるようになっておくと強いかなと。
サークルでは
なんか作るの楽そうやしUnity使お
↓
Unityわかりにくいわ!Unity特有の記述勉強するのめんどくせえ!
↓
せや!DXライブラリ使ってゲーム作ったろ!
↓
ゲーム量産したいからやっぱUnity使うわ*1
みたいな流れで来てまして、一旦DXライブラリ直打ちでゲーム作ってるからまあ何とかなるかな...?と思いつつ。多分挫折はしないと思う。
で、どうやってDirectX勉強するかが問題なんですが、DX12の情報が圧倒的に少なすぎる。あってもレベル高すぎて「なに言ってだこいつ(ハナホジ)」になってしまって勉強すらままならない。一からコード書いていくのも大変すぎるんで、サンプルコード弄るところから始めようかな!
――そして現在に至る
現在の自分なりの考え
DirectXとは
DirectXはMicrosoft様が開発したAPIで、ざっくり言えばWindows上でゲームをするために必要な画像処理とか音声処理とか、そういったものを高速で処理するためのものだと思う。なんか処理を効率よく行うためにグラフィックカードとかに直接命令が下せるみたいだけど、そこまでのクオリティは求めてないので後回し。そんなのどうでもいい今は覚えなくてもよさそう*2。
やりたいこと
2Dゲームを作る予定なので
- 2D画像の表示
- キーボードやマウス、ゲームパッドなどからのボタン入力
- 音楽を取り込んで再生
は最低限出来なければならない。というかこれできたらゲームになる。
サンプルコード
ダウンロード
GitHubにサンプルコードが転がってるそうなのでそこからDL。
github.com
GitHubのダウンロード方法わかりにくいね。丸一日費やしました。
動かしてみる
さあDX12のダウンロードは完了した。サンプルコードを実行させてみるぞ!っとなったところでエラーが504件。なんじゃこりゃあああ
「"~"がincludeできません。」っていっぱい出てるから何かのライブラリが足りてないんかな?VisualStudioのDirectXゲーム開発関連のキットをもう一度ダウンロード。そしたらこんなエラー1つだけになった。
外部からDLしたプロジェクトファイルだからSDKのバージョン設定がずれてるのかな?*3と思って調べたらドンピシャ!
SDKの一覧に10.0.17134.0がない!代わりに10.0.16299.0に設定してみる
うごいたあああああああああああああああああ
ということでDirectX12を無事導入し、サンプルコードを実行させることができたのでした*4。これからこれを読み解きながら勉強していこうと思ってます。
以上!