012.テクスチャ付き球体の描画(Dx11版)
このサンプルは
SimplSample012というディレクトリに含まれます。
BaseCrossDx11.slnというソリューションを開くと
Dx11版が起動します。
実行結果は以下のような画面が出ます。
図0012a
動画は以下になります。
【サンプルのポイント】
今項のサンプルは前項のサンプルの形状を変えたものです。
今回の形状は
球体になります。また頂点は
フラットな法線を実装しています。
【共通解説】
Dx12、Dx11両方に共通なのは
シェーダーです。
DxSharedプロジェクト内に
シェーダファイルというフィルタがあり、そこに記述されてます。
今回使用するシェーダは
頂点シェーダとピクセルシェーダです。
VertexPositionNormalTexture型の頂点を持つものです。内容は前項と同じです。
【Dx11版解説】
BaseCrossDx11.slnを開くと、
BaseCrossDx11というメインプロジェクトがあります。この中の
Character.h/cppが主な記述個所になります。
■初期化■
Dx11版の初期化は、頂点バッファを作成し、スケール、位置などを初期化します。
フラットな頂点の作成を球体に対して行っています。
■更新処理■
SphereObject::OnUpdate()関数です。オブジェクトを回転させています。
■描画処理■
SphereObject::OnDraw()関数です。透明処理をする場合としない場合がありますので、注意してください。
内容的には前項と同じです。
【まとめ】
Dx11版については、オブジェクトの形状が違うだけで、描画に変わりはありません。