mieki256's diary



2017/03/19() [n年前の日記]

#1 [blender] blenderと頂点カラー

blenderを触ってるうちに、頂点カラーを指定する機能があることは分かった。おそらく「頂点ペイント」モードを使えばいいのではないかな、と。

blender_vertexpaint_ss.png


下のほうで、普段は「オブジェクトモード」か「編集モード」と表示されてるところで、「頂点ペイント」を選べば頂点毎に色を指定できるモードになる。と思う。たぶん。

しかし、この状態で、Wavefront形式でエクスポートしてみても、出力された .obj、.mtl の中に頂点カラーの情報は含まれていない。これでは他の何かから、頂点カラーを利用できない…。

他形式でエクスポートしてみる。 :

3Dモデルデータを記述するフォーマットは他にも色々あるようで。

_3Dファイルフォーマットの種類 - PukiWiki for PBCG Lab

試しにblender上から、DirectX(.x)形式でエクスポートしてみた。出力時のオプションの中に、「Export Vertex Colors」という項目があるので、そこにチェックを入れて出力すると頂点カラー配列も含めて出力してくれる。.xファイルはテキスト形式とバイナリ形式があるらしいけど、blender はテキスト形式で出力してくれる模様。助かった。

しかし…。.xファイルの中身を初めて眺めてみたけど、ちょっと難解だな…。いやまあ、形状データだけなら、どこに何の情報が書かれてるか分かりやすいほうだけど。

FBX形式(.fbx)でエクスポートしてみた。出力時のオプション項目としてテキスト出力とバイナリ出力が選べる。テキスト出力されたソレを眺めたら、ギャッ。これはまだ .x を相手にするほうが現実的かもしれず。

.plyファイルでエクスポートしてみた。コレもテキストファイルっぽい。…ああ、コレは分かりやすい。各頂点毎に、x,y,z、法線ベクトル, u,v, 頂点カラー R,G,B が列挙されて、最後に頂点インデックスが並んでる。ただ、マテリアル(材質設定)情報は含まれてないのだな…。どのテクスチャ画像を使うか、等の情報すら含まれてない。実物を計測してポリゴン群にする際に使うことが多いフォーマットらしいので、表面の材質や反射等は気にする必要無し、そんなの撮影・計測状況でいくらでも変わっちゃうし、ということかな…。

_COLLADA形式(.dae) でエクスポートしてみた。コレもテキストファイルになってる。元々プレステ3やPSP用に考えられたフォーマットらしいので、ゲーム向けのデータが網羅されてるように見えた。

.x3dファイルでエクスポートしてみた。これもテキストファイル。VRMLの後継ファイル、と紹介されてるけど、中身がxmlになってるのはそのせいだろうか。

どうして頂点カラーにこだわるかというと。 :

例えばだけど。 _2015/09/09の日記 でアップロードした、ベルトスクロールアクションゲームのステージ開始時に、「STAGE 1」「FIGHT」てな大きいロゴがドーンと表示されたりするのだけど。大きく表示された際にロゴの輪郭がぼやけるのが嫌だったので、結構巨大な画像をそのまんま持ってたりして、そこがなんだかちょっとアレだなと思ってたわけで。

もし、こういう場面で、ポリゴン+グラデーションを使えれば、巨大画像を持たなくても描画ができるのではないかと。そのためには、頂点カラーを指定してグラデーションを表示できたりするとありがたい。

ということで、モデルデータに対して頂点カラーを指定して、ソレをRubyスクリプト側に渡す方法はないかな、と思ってたりするのです。

いやまあ、ロゴ画像のデータをわざわざ3DCGツールで作るってのもどうなんだと思わないでもないけど、使えそうな道具は使ってしまえ、みたいなノリで。

以上です。

過去ログ表示

Prev - 2017/03 - Next
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project