012.テクスチャ付き球体の描画(Dx11版)

 このサンプルはSimplSample012というディレクトリに含まれます。
 BaseCrossDx11.slnというソリューションを開くとDx11版が起動します。

 実行結果は以下のような画面が出ます。

 

図0012a

 


 動画は以下になります。

 

 

【サンプルのポイント】

 今項のサンプルは前項のサンプルの形状を変えたものです。
 今回の形状は球体になります。また頂点はフラットな法線を実装しています。

【共通解説】

 Dx12、Dx11両方に共通なのはシェーダーです。DxSharedプロジェクト内にシェーダファイルというフィルタがあり、そこに記述されてます。
 今回使用するシェーダは頂点シェーダとピクセルシェーダです。VertexPositionNormalTexture型の頂点を持つものです。内容は前項と同じです。

【Dx11版解説】

 BaseCrossDx11.slnを開くと、BaseCrossDx11というメインプロジェクトがあります。この中のCharacter.h/cppが主な記述個所になります。

■初期化■

 Dx11版の初期化は、頂点バッファを作成し、スケール、位置などを初期化します。
 フラットな頂点の作成を球体に対して行っています。

■更新処理■

 SphereObject::OnUpdate()関数です。オブジェクトを回転させています。

■描画処理■

 SphereObject::OnDraw()関数です。透明処理をする場合としない場合がありますので、注意してください。
 内容的には前項と同じです。

【まとめ】

Dx11版については、オブジェクトの形状が違うだけで、描画に変わりはありません。