« 2010年2月 | メイン | 2010年4月 »

●GoogleSketcUpのカメラ設定をComicStudioに

2010年3月29日    

先日の日記で書いていた ComicStudioの3D設定ファイルの解析結果を元に

GoogleSketchUpのカメラ設定を
ComicStudioに読み込ませるためのプラグインを書いてみました
2日で書いた殴り書きの汚いスクリプトですが よろしければお使いください
10032801export_csd.lzh

ダウンロードしたファイルを解凍してできたexport_cs.rbを
Windows の場合:C:/Program Files/Google/Google SketchUp 7/Plugins
MacOSXの場合:起動ドライブの/ライブラリ/Application Support/Google SketchUp 7/SketchUp/Plugins
にコピーして SketchUpを再起動すれば
プラグインメニューにスクリプトが追加されるかと思います

10032801.jpg
左が元のSketchUp の画面右が書き出したデータを読み込ませたComicStudioの画面です

注意点としてはComicStudioのカメラの『距離』の設定はデフォルトのままなので
必要に応じて調整してください
また、CSDファイルはComicStudioの3D形状の読み込み状態を記録したファイルなので
3Dを読み込んだシーンに設定ファイルを読み込ませると カメラ以外は消えてしまいます
使う場合はCSDファイルを読み込んだ後 個別の3Dファイルを読み込むようにしてください

ちなみに3Dの形状は
こちらのサイトにあるlwo_exportを使って読み込ませました
プラグインの設定もlwo_exportの形状出力に合わせて調整してあります

今のところは 3D形状は別途読み込む必要がありますが
将来的には形状を親子関係を設定して一括して読み込めるようにする予定です

(必要な情報はそろってて半月もあれば作れるのですが
 主にお財布的な事情で...  ってなわけでカンパ歓迎です
 三菱東京UFJ銀行 厚木支店(店番号707) 普通講座 4725509 口座名:ユキミツキ)

●コミスタの3Dを研究2

2010年3月24日    

ここ1年ほどComicStudioの3DをLWSで活用する方法を試していたけれど
いろいろ使い勝手に制限を感じていたので
コミスタの3D設定を保存するファイル(.csd)を調べてみた


とはいえ 簡単なテキストファイルとかなわけでもないので
色々設定をかえて バイナリエディッタをにらめっこ

10032401.jpg
MK3Dで始まる8バイトのヘッダの後
01 00 00 00 A5 02 00 00 01 00 00 00 .....
といった感じのデータ
4バイトのIDデータの後 4バイトでデータの入ってる部分の長さ その後実データ
データの部分には入れ子に 同じ形式のデータ列が入っていることもあるようです
(図だとID 01のデータが0x2A5バイト その中にID 01のデータが4バイト ID 02のデータが4バイト...)
また 数値設定データの多くは64ビットリトルエンディアンで保存されているようでした

つまらないデータ構造の話はこのへんにして
実際に保存されているデータの話

■カメラ設定
通常の3Dソフトのカメラ設定は 
視点(カメラの位置)注視点(視界の中心)画角(見える範囲)
のデータを持つことが多いけれど

コミスタの内部データでは
注視点(3次元座標)と注視点からみたカメラの回転移動(角度),画角で保存しているようです
10032402.jpg

ちなみに『パース』の設定項目は左右の画面の見える範囲の角度(画角,単位は度)
のようで コミスタの標準状態で
注視点座標の左右に20.7の範囲が見えるようになっているようです
(コミスタの内部単位で 視点からの距離50*tan22.5度)
通常ならば 角度の設定をかえれば 画面内に写っている内容がかわるのですが
カメラの位置も移動させることで 遠近感のみを制御しているようです
10032403.jpg

■形状データ
形状については読み込むファイルのファイルパスと移動情報と 選択状態等のようです
(相対パスでファイルパスの区切りは¥ DOS形式というかことかな)
移動情報は コミスタの画面に表示されている値と
3Dソフトでよく使われる変換マトリクスが個別に保存されているようです
また LWSで形状を読み込んだ時にできる親子関係も
CSDファイル内に格納されているのを確認 必ずしもLWSファイルを使わなくても
親子関係を設定可能なのを確認しました
(読み込む3DファイルがOBJとかでも可能)

他 陰影 階調化の有無や階調化の位置 光源位置 輪郭線の幅やレイヤーの色
なんかの設定項目を確認してあります

色々調べている間に コミスタ問題点を色々見つけたのですが
それは別の機会に

とりあえず 調べた結果を元にShadeとGoogleSketchUPの
カメラ設定をコミスタ用設定ファイルに書き出すソフトを作成中です