作った3DモデルをDXLibで表示させたいのに、なぜかモデリングツールで確認した時と、形が違うなんてことがあります。
そのような場合、三角化(Triangulate Faces)を行っていない可能性があります。
今回は、blenderで、モデルの三角化を行う方法を紹介したいと思います。
三角化とは
三角化とは、3Dモデルの面を三角形に分割する操作のことです。
現代のGPUは、基本的に三角形ポリゴンのみを描画単位として扱うように設計されており、3Dモデルの三角化を行わないと、正常に描画されないことがあります。
DXLibの3D描画でも、三角ポリゴンでの描画を前提に設計されており、この三角化が行えていないと、変形したように見えてしまう時があります。
三角化ができていないと…
blenderで、三角化を行っていない3Dモデルを作りました。

これをDxLibModelViewer で確認してみると…

はい、このようにいびつな形へ変形しました。
三角化を行っていないことで、やはり不具合が起こるようです。
blenderで三角化を行う方法
手順1:Edit Modeへ変更
画面左上UIからEdit Modeをクリック、もしくはオブジェクトをObject Modeで選択してから、Tabキーの押下でEdit Modeへ変更できます。

手順2:全選択
Edit ModeでAキーを押下するだけで、全選択が可能です。
画像のように、オブジェクトの辺が橙色になっていたら成功です。

手順3:三角化
手順2まで行った状態で、Ctrlキー + Tキーを押下することで、オブジェクトが三角化されます。
画像のようにオブジェクトに辺が追加されていれば、おそらく成功です。

手順4:DxLibModelViewerで確認
モデルを保存し、三角化を行ったことで、バグが改善されたことを確認してください。

保存方法がわからない方は、私の過去記事をぜひご参照ください。
テクスチャを埋め込む場合の保存方法が解説してあります。
総括
-
三角化とは、3Dモデルの面を三角形に分割する操作のこと。 -
三角化を行っていない場合、3Dモデルの描画でバグが起きてしまう可能性がある。 -
Blenderで、簡単に三角化を行うことが可能。