Swanman's Horizon

性欲をもてあましつつなんらかの話をするよ。

MMD4Delphi 0.0.1


これは何?

MikuMikuDanceMMD)のモデルデータをFireMonkeyのTModel3Dクラスで利用するためのライブラリです。

ダウンロード

MMD4Delphi 0.0.1

使用上の注意

XE4用に作っているので、それ以外のバージョンではそのままでは動かない可能性があります。一応XE5からTBitmapがFMX.Graphicsに移ったというのはコンパイラ指令で対処してありますが、それ以外の仕様変更には対応してないので適宜書き換えてください。

あとXE4だけの症状かもしれないですが、設計時にモデルデータをロードすると半透明なテクスチャがおかしくなります。実行時にLoadFromFileすれば正常に表示されることは確認済みです。半透明なメッシュは描画順に制約があるので、FireMonkeyが何か余計なことをしてるのかと思ったんですが、設計時に読み込んだのと実行時にLoadFromFileしたのでは順番も変わってないしマジで謎です。XE5以降で直ってるといいな…。

それとこれもXE4特有かもしれないですが、設計時にモデルデータを読み込むとモデルデータのサイズによっては消えてしまうことがあります。これはフォームに収まるようScaleを調整するというおせっかいな機能のせいらしく、大きすぎるとScaleが0になってしまうからのようです。

未対応部分について

今のところまだモデルデータの読み込みまでで、モーションの再生まではFireMonkey上では行えません。また、MMDでよく使われているTGAやDDSといった形式のテクスチャファイルはFireMonkeyが対応してないので読み込めません。自作のVCL版ライブラリではTGAもDDSも結構楽に対応できたので、FireMonkeyがこれらのファイルにさっさと対応してくれればいいんですけどね…。

その他

付属のテキストでは使う際はインストールしろと書いてありますが、実行時にLoadFromFileで読み込むだけならインストールは必要なく、PMX.ImporterをusesするだけでOKです。
不具合の報告やライブラリの不明点などについてはTwitterの @lynatan までお願いします。