テレワークならECナビ Yahoo 楽天 LINEがデータ消費ゼロで月額500円〜!
無料ホームページ 無料のクレジットカード 海外格安航空券 海外旅行保険が無料! 海外ホテル


log

2009.10.13 O3D:LWからO3Dを出力しようの巻き

ようやく新しいO3Dスクリプトを更新です。
ジャンプモーションを追加しました。それとオブジェクトは
前の女の子キャラクターに差し替えています。
A,W,S,Dで移動。Spaceキーでジャンプします。
ちなみにまだモーション読み込み部分のスクリプトを書いていないので、
キャラクターは銅像のように静止しております笑。

そういえば、どこかのサイトでLWからだとColladaを正常に吐き出せないと
書かれていたので、はじめは少し心配だったのですが。。
大丈夫でしたよ!今までLWのアニメーション出力駄目すぎる…と
思ってましたが、Collada出力だけはちゃんといけるようです。

けどそこにたどり着くまでに色々と失敗を繰り返したので、
LWからO3Dを出力する際の注意点を少しばかりまとめようと思います。

・マルチUVには対応していないので、UVマップの指定は1つだけにする。
・法線エレメントはLWでは出力してくれません。なので
 シェーディングさせたい場合は他のソフトにもっていってから
 Colladaに出力するか、テキストを開いて法線要素を
 追加して法線マップを使用することで解決できる…はず。
・ウェイトマップだけを使用しないとウェイトが崩れます。
 ボーンプロパティで設定しましょう。
・今のところO3DTGZはBMP・JPGをサポートしていません。
 PNGを使いましょう。これに気づくまで、しばらく詰んでました苦笑。
 サンプルを見る限りDDSも使えるようですが、テキストで
 拡張子を変更しただけだと、何故か上手く変換できませんでした。
・LWのメートル実寸だとO3D上ですごくサイズが大きいです。
 エクスポート時にスケーリングに0.1倍くらいを指定しましょう。

とりあえずこれくらいだったかな。
あとはついでにDirectXの出力も久しぶりに試してみたのですが。
以前PolyTransを使用しても上手くいかないと書きましたが、間違いでした。
正常に出力できました。単純にデモ版だと5ポリおきに
ポリゴンが削られるだけだったみたいです。
後、DirectXに出力する際は別々のマテリアル同士を
繋げてしまうと、モーション再生時に頂点が爆発してしまうみたいです。
XSIでポリゴンクラスタを使用するとエラー終了したのと同じ理由かな。
O3Dでも同じなのかもしれませんが、まだ試していないので分かりません。
とりあえずマテリアル同士は離すのが無難なようです。

色々勉強になったなぁ。とりあえずファイルの入出力が
3Dの一番の鬼門だということが身に染みて分かりました。

それと、最近はO3Dが他のWeb3Dと同じように人知れず
消えていかないように普及させていきたいと思ってます。
このページにたまたまたどり着いたあなた!O3Dやろうぜ!