« 3Dモデル:ターレットトラック | トップページ | あれはどうなんでしょうね・・・ »

2011年2月 2日 (水)

lightwave v9.6でのコミックスタジオ用lwsファイルの作成手順

一年以上前にキャンペーンで安くなっていたlightwaveを購入したものの、コミスタで正常に読めるlwsファイルを作成できるようになったのは、情けない事にごく最近の事です。
「シーンで使うlwoファイルは、コンテントディレクトリのObjectsフォルダか、Objectsフォルダ内に作ったフォルダにのみ作成する事」という決まりがあるみたいですね。
これに気づかず無駄に時間を費やしてしまいました。
てっきり「Objectフォルダ外でも、コンテントディレクトリ下層にlwoファイルを保存すれば、lwsとlwoファイルは相対パスでリンクされる」と思ってましたが、この場合は確かにlightwaveでは正常に読み込めるのですが、コミスタでは読み込みエラーが起きるみたいです。

とりあえず、以下は使い慣れた他ソフト(shade)でオブジェクトをモデリングし、lightwave v9.6で読み込ませて、レイアウトでlwsファイルを作成、コミスタで正常に読み込みできるまで、の手順です。
同じように「せっかくlightwave買ったのに、コミスタで正常に読めるlwsファイルが作れない」と悩んでる方の参考になれば。
摩耶薫子さんのブログの「LightWaveレイアウトで、コミスタ用の親子関係のあるlwsファイルを作る際の注意」も参考にしています。

私のPC環境では、「G:\install\lw96」にlightwaveをインストールし、モデラー・レイアウトともに「G:\install\lw96」をコンテントディレクトリに設定しています。
インストール時に、「G:\install\lw96」内に「Objects」というフォルダが自動で生成されています。
他の方のPCでは「G:\install\lw96」の部分を「lightwaveをインストールしているフォルダ(コンテントディレクトリを設定しているフォルダ)」に置き換えてください。

Comitest001 

検証のためshadeで簡単な形状のみで構成されたシーンを作ってみました。

・床
・円柱
・球二個(パートに入れてある)

をobj形式で三つ出力します。
(各形状あるいはパートを選択し、ファイル>エクスポート>wavefront OBJで、出力は「選択された形状」、「法線(スムージング)」と「UV値」「V方向を反転」をONにしています)

出力先は、lightwaveのコンテントフォルダの「G:\install\lw96」の中の「Objects」フォルダ内に「test110202」というフォルダを作って、三つともそこに保存しました。
「G:\install\lw96\Objects」内に「test110202」フォルダを作らずに、直接「G:\install\lw96\Objects」に形状ファイル(obj)を保存してもいいのですが、lightwaveのシーンに形状を読み込みする際や、Objectsフォルダ内がごちゃごちゃする事、その他諸々の手間を考えると、コミスタ用の3Dシーンを一つ作成する際に毎回フォルダを1個ずつ作っていった方が良さそうです。

順にyuka.obj、hasira.obj、tama2.objという名前で「test110202」フォルダ内に出力しました。
この出力時の命名が大事で、後でlightwave上でlwo形式で保存しなおす際に別名で保存しても、何故かこの出力した時の元の名前がコミスタ上ではパーツ名として表示されてしまうみたいです。
(一度シーンからオブジェクトを全削除して、名前変更した後のlwoファイルを新しく読み込みなおしても)
日本語名はlightwaveではやめた方がいいので、英文字で命名します。

出力前は、各形状の法線の方向が外側を向いているかをチェックしておきます。(コミスタで片面表示時にポリゴンの表示がおかしくならないため)
製作メモ:obj形式エクスポート時のバグ?に書いたように、一部のポリゴンが真っ暗になるのを回避するため、面倒ですが一度obj形式で出力した後、shade側でパートを新規作成してその中に読み込み、そのパート選択状態で改めて同名のobj形式で出力した方がいいかもしれません。

lightwaveのレイアウトをhubありで起動します。
+キーを押して、先ほどの「G:\install\lw96\Objects\test110202」フォルダ内の三つの形状(obj)をシーンに読み込みます。
(*メタセコなどでlwo形式で出力した場合は、lwoファイルで読み込みをし、以下のモデラーでのlwo形式での保存しなおしの必要はありません)

Comitest002 

正常な位置にオブジェクトが読み込まれました。

モデラーに移動します。

モデラー右上のセレクタでオブジェクトを切り替えながら、「保存」で「G:\install\lw96\Objects\test110202」内に同名のlwoファイルを保存していきます。
yuka.lwo、hasira.lwo、tama2.lwoの三つのファイルが元のobjファイルと同じ場所に保存される事になります。

レイアウトに戻ります。

コミスタ用lwsファイルでは、摩耶薫子さんのブログの情報どおり、「シーンに存在するオブジェクトは、必ず一番上の親の子以下になっていないとだめ」という鉄則があるため、親子関係をレイアウトでつけます。
今回はyuka.lwoを一番上の親とします。
シーン編集>シーン編集クラシックでパネルを開いて、オブジェクトをドラッグして親子づけします。

Comitest003

今回はこんな感じで親子づけしてみました。

コミスタ用lwsファイルはlw6.0形式で保存する必要があるとの事ですので、「ファイル>出力>lw6.0形式でシーンを保存」を行います。
保存フォルダですが、ここがまだよくわかってませんが、コンテントディレクトリである「G:\install\lw96」に「testscene110202」という名前で保存しました。
一つ下の階層の「G:\install\lw96\Scene」内に保存しても同じくうまくいくみたいです。

別PCで正常に動作するかどうか、別の場所にlwsファイルとlwoファイルをコピーしてからコミスタに読み込ませてみます。
(lwsファイルとlwoファイルが相対パスでリンクされてるなら、別のフォルダに移してもそのリンクは正常に機能して読み込めるはず)

今回はlightwaveをインストールしたのとは別のドライブに作った「testcomista」というフォルダ内に先ほど作ったlwsファイルとlwoファイルをコピーしてみます。
(フォルダの場所や、フォルダ名は任意で結構です)

まず「testcomista」内にtestscene110202.lwsをコピー&ペースト。
次に「testcomista」内に「Objects」というフォルダを作り(すべての文字が半角、先頭の「O」は大文字である事に注意)、「G:\install\lw96\Objects」フォルダ内の「test110202」フォルダを中身のlwo(&obj)ファイルごとまとめてコピーします。
testscene110202.lwsファイルと同じ階層に「Objects」フォルダがあり、「Objects」フォルダ内には「test110202」フォルダがあり、「test110202」フォルダ内には三つのlwoファイルと三つのobjファイルがあると思います。
そのうち三つのobjファイルは不要となったので、lwo形式のファイルのみ残してobjファイルは全て削除します。

これでコミスタで正常に読み込めるlwsファイルが作成できました。
コミックスタジオを起動し、testscene110202.lwsをコミスタへドロップすると、親子関係のあるlwsファイルが正常に読み込めるのが確認できます。
素材配布の際は、 testscene110202.lwsが入ってるフォルダ(今回はtestcomista)をzip圧縮してclipに登録したり、自ブログなどで配布すればいいでしょう。
(testcomistaというフォルダ名は別の任意の名前に変えても問題ありません)


今回は、lighwave上でオブジェクト毎に中心位置を変更するなどはやりませんでした。
(自分でもこの点はまだ理解できてないため)
モデラーやレイアウトで中心位置を設定すると、コミスタで読み込んだ後に何故かオブジェクトの位置がずれてしまうのです。

雅遥さんのブログ「β-えんどるふぃん」の「TIPSブログ」カテゴリに中心点の設定についての検証がありますので、特定の位置を回転の中心としたオブジェクト(ドアや車輪など)があるシーンを作りたい場合は、そちらを参考にされると良いかと思います。

|

« 3Dモデル:ターレットトラック | トップページ | あれはどうなんでしょうね・・・ »