読者です 読者をやめる 読者になる 読者になる

catalinaの備忘録

ソフトウェアやハードウェアの備忘録。後で逆引きできるように。

opeglでmmdモデルを表示してみる

C++ Linux MMD openGL

linux上でやってみようということでやってみたらできた。まだテクスチャうまくはれてないですが。

 

とりあえずスクリーンショット

f:id:Catalina1344:20141014205420p:plain

 

モデルはこちらからお借りしました。

VPVP wiki - モデルデータ/アニメ関連/ま行

 

プログラムのソースコードはこちら。テクスチャの実験中なので色々と汚い感じですが。

javoren/mmdview · GitHub

 

コード解説

MMDのデータ自体はMMD_Fileクラスそのまま。

頂点リスト、面リスト、マテリアルリストに分かれる。

今回対応したのは頂点リストと面リスト。

DirectXの用語でいうところの頂点バッファとインデックスバッファに格納するデータといったところか。

まずはモデル表示するところまで作った。

まどかちゃん出たからひとまず満足。

ロケットパニエがいい感じ。モデル製作者様様ですね。

 

 

次のステップ

次はテクスチャ張りたい。

その前に頂点バッファを使うように書き換えたほうがいいのかも。

テクスチャの読み込み自体はできているっぽいけど、切り替えがうまくいかない感じ。

デバッグして原因探しましょう。