PC用眼鏡【管理人も使ってますがマジで疲れません】 解約手数料0円【あしたでんき】 Yahoo 楽天 NTT-X Store

無料ホームページ 無料のクレジットカード 海外格安航空券 ふるさと納税 海外旅行保険が無料! 海外ホテル

log

2009.11.06 C++:Xファイルのマテリアル実装の仕様について

ファイル 201-1.jpg

ようやくXファイルの自作読み込みでマテリアルが読み込めるようになりました。
ついさきほど表示できたんですが、表示できたときは
「キターー」と思いました。うれしいなぁ。

ちなみにXフォーマットにあまり詳しくない人のために、
たかだかマテリアルの読み込みになぜここまで手間取ったのか
少しばかり説明しようかと思います。

Xフォーマットはタグテンプレートと呼ばれる要素単位で
テキストで保存されていて、マテリアル情報はMaterialというタグに、
メッシュとマテリアルとの関連付け情報はMeshMaterialListという
タグに登録されているのですが。

問題なのが、こいつらの登録方法がエクスポートするソフトによって
仕様がいくつも存在してしまうんです。

例えばMaterialListの中に直接Materialを登録しているXファイルもあれば、
MaterialListの外にMaterialListを登録して、MaterialListの下に
マテリアルインデックスの順番通りのマテリアル名だけ
記述しているものもあったり。
さらにはマテリアル名を登録しているXファイルもあれば、
マテリアル名を登録していないものもあったり。
駄目押しに、マテリアルインデックスが0からはじまるXファイルもあれば、
1からはじまったり、インデックスの途中でまた0を
はさんだりするXファイルもあったり。

それらの仕様に対応するようにこちらでプログラムを組まなきゃいけない訳です。
正直、「仕様をひとつにまとめんかい!」と毒づきたくもなりました。

自作読み込みをする上では、面倒なことこの上ないです、Xファイル。
しかし、それもようやくクリアできたのでとりあえず一安心です。

comment