カテゴリー「T2V技術関連」の記事

2009年12月17日 (木)

自分だけのT2Vキャラを作る14~bmファイルについて6~

こんにちは~

さて、それでは今回はbmファイルのANIMATIONのところの山ほどあるパラメータの紹介です。今のところ、Cube君で使っているapeed_allだけ紹介しました。

まず、パラメータの指定の仕方ですが、

speed_all  1.5

のように、「パラメータ名 値」という形式ですべて書かれています。

文末に、現在使えるパラメータと意味を表にして一応載せておきます(実はこれでも全てではなく、まだあったりします)。全部説明するのも煩雑なので止めておき、ここでは、ちょっと一つ、試してみることにしましょう。talk_lipsync_skull_rotationなど、いかがでしょう。説明を見ると

talk、talkfileコマンドにおける頭の回転角(度)
これをプラスの値にするとうなずきながらしゃべる
逆にマイナスのときは、のけぞりながらしゃべる


と、あります。そこで、次のような行をbmファイルの最後に追加して保存します。

talk_lipsync_skull_rotation        -50

これで、のけぞりながらしゃべるはずです。cubetest.tvml3をダブルクリックして再生してみてください。ちょっと分かりにくいかな??

このように、これらのパラメータを使うと、キャラクタの動きをいろいろ細かく指定することができるのです。

はい、今回はこの辺にしておきましょう。

これでだいたいbmファイルの説明が終わりました。ただ、これまで説明したのは、Cube君のようなもっとも単純なキャラクタについてで、実際にはもっと複雑なキャラクタ(たとえば表情を変えられたり)の作成に必要なあれこれのBM3.0の仕様があります。

これらについては、おいおい、お話しして行くことにしましょう。

まずは、また次回!

                                                                                   
 

initpose_hiplevel

 
 

基本姿勢の時の腰(Root)の高さ
  通常は省略される。省略すると、自動的に足を伸ばした状態になる。

 
 

sit_hiplevel

 
 

sitコマンドにおけるおしりの高さ(m)

 
 

sit_hipposition

 
 

sitコマンドにおけるおしりの前後位置(m)

 
 

ypos_eye

 
 

lookコマンドなどにおける、注視点のy位置(m)

 

通常はheadモデルの原点から測った目の高さ

 
 

zpos_eye

 
 

lookコマンドなどにおける、注視点のz位置(m)

 

通常はheadモデルの原点から測った目の前後方向位置

 
 

speed_all

 
 

アニメーションのスピードを一括設定。デフォルト1.0
  たとえば、これを2.0にするとすべての動作が2倍速になる
  この後に続く個別のスピード調整に掛け算される

 
 

walk_speed

 
 

walkコマンドにおける歩きの速さ。デフォルト1.0

 
 

watch_speed

 
 

look、gazeコマンドにおける動作の速さ。デフォルト1.0

 
 

turn_speed

 
 

turnコマンドにおける動作の速さ。デフォルト1.0

 
 

openmouth_degree

 
 

openmouthコマンドにおける口開けの大きさ。デフォルト1.0

 
 

shake_degree

 
 

shakeコマンドにおける震えの大きさ。デフォルト1.0

 
 

talk_lipsync

 
 

talk、talkfileコマンドにおけるリップシンクの程度。デフォルト1.0

 
 

talk_lipsync_skull_rotation

 
 

talk、talkfileコマンドにおける頭の回転角(度)

 

これをプラスの値にするとうなずきながらしゃべる
  逆にマイナスのときは、のけぞりながらしゃべる

 
 

talk_lipsync_jaw

 
 

jaw(アゴ)部品を上げ下げしてしゃべるタイプのキャラクタ(ボブマリタイプ)の、talk、talkfileコマンドにおけるアゴの開ける大きさ(m)

 
 

walk_stride

 
 

walkコマンドにおける歩幅(m)

 
 

walk_waistlevel

 
 

walkコマンドにおける腰の高さ(m)

 
 

walk_raise

 
 

walkコマンドにおける足の振り上げの高さ(m)

 
 

gesture_switch

 
 

デフォルトでしゃべりのジェスチャーをつけるとき1、つけないとき0

 
 

swing_switch

 
 

デフォルトでゆれているとき1、ゆれていないとき0

 
 

blink_switch

 
 

デフォルトでまばたきしているとき1、まばたきしないとき0

 
 

talk_default_voice

 
 

デフォルトのしゃべりの声質名を指定する

 

 

| | コメント (0) | トラックバック (0)

2009年12月16日 (水)

自分だけのT2Vキャラを作る13~bmファイルについて5~

こんにちは~

今回はbmファイルのANIMATIONの部分の説明です。

Cube君のcube30.bmを見ると、ただ次のように書いてあるだけです。

ANIMATION

speed_all    1.5

このspeed_allは、キャラクタの動作の速さという意味です。デフォルトが1.0で、ここでは1.5倍になってますので、Cube君の動作はふつうのキャラより1.5倍速いということです。身長小さいショボキャラなんで動作はすばしっこいです。

ためしにこの数値を変えてみましょう。たとえば

speed_all    0.5

として、bmファイルを保存して、同じフォルダの中のcubetest.tvml3をダブルクリックして再生してみてください。かなり動作がゆっくりになっているのが分かると思います。逆に5.0とかにするとメチャメチャ速くなって笑えます。

このANIMATIONの部分は、実は指定できるパラメータが山ほど(というほどでもないですが。。)あります。逆に何も指定しないと、すべての値についてデフォルトが採用されます。ですので、上記のspeed_allの一文を削除して、何にも無くしてしまっても、ふつうにデフォルトで動きます。

山ほどあるパラメータについては、次回、一通り紹介して、主だったものを見て行くことにしようと思います。

それでは!











| | コメント (0) | トラックバック (0)

2009年12月15日 (火)

自分だけのT2Vキャラを作る12~bmファイルについて4~

こんにちは~

前回までbmファイルのMODELセグメントの記述の仕方を説明しました。

今回は、bmファイルの2つ目のセグメントのBONEについての説明です。Cube君のbmファイルのcube30.bmの中身を見ると以下のように書かれています。

BONE

pivot_hip        0.0    0.304    0.0
pivot_l_hip        0.0304    0.224    0.0
pivot_l_knee        0.0304    0.136    0.0
pivot_l_ankle        0.0304    0.048    0.0
pivot_r_hip        -0.0304    0.224    0.0
pivot_r_knee        -0.0304    0.136    0.0
pivot_r_ankle        -0.0304    0.048    0.0
pivot_l_collar    0.0968    0.41    0.0
pivot_l_shoulder    0.0968    0.41    0.0
pivot_l_elbow        0.0968    0.336    0.0
pivot_l_wrist        0.0968    0.24    0.0
pivot_r_collar    -0.0968    0.41    0.0
pivot_r_shoulder    -0.0968    0.41    0.0
pivot_r_elbow        -0.0968    0.336    0.0
pivot_r_wrist        -0.0968    0.24    0.0
pivot_chest        0.0    0.418    0.0
pivot_neck        0.0    0.432    0.0
pivot_head        0.0    0.44    0.0
pivot_top        0.0    0.8    0.0

ここには、ピボットポイントの3次元座標値が指定されています。ピボットポイントというのは、「関節の点」のことです。つまり、このピボットポイントを中心にして体の部品が回転するのです。

たとえば上記で

pivot_r_shoulder    -0.0968    0.41    0.0

と、ありますが、これは右の肩の関節のxyz座標です。つまり、正面から見て左に0.0968m(9.68センチ)、地面から0.41m、奥行き0の位置に右肩の関節があるということです。

そして、このpivot_r_shoulderは、前々回出てきた右肩にくっついた部品model_r_shoulder(右の上腕)の関節になります。この部品はこの関節を中心にして回転して動きます。

このように、17個の部品がそれぞれ回転する関節の位置を指定するのがこのBONEの部分に指定する内容なのです。

ここで、BM3.0のデフォルトのボーンの構造(骨格)を下に書いておきましょう。

Bone

BM3.0内の骨格は上の通りですが、Cube君で言うと、l_collarとr_collarがありません。collarは鎖骨の意味ですが、Cube君のように鎖骨がない(と言っても、今のところT2Vキャラはすべて鎖骨が無いんですが)場合は、肩と同じ位置に指定しておきます。つまり以下のようです。

pivot_l_collar    0.0968    0.41    0.0
pivot_l_shoulder    0.0968    0.41    0.0

それから、jaw(アゴ)が無い、と思うかもしれませんが、実はアゴは上下するだけで回転せず、関節が無いのです。したがってpivot_jawはありません。

それから、最後の行に

pivot_top        0.0    0.8    0.0

というのがありますが、これは無くても動きます。念のために入れているようなもので、ここにはキャラクタの頭のてっぺんの座標を入れておきます。これは実はカメラをキャラクタにクローズアップするときに使われるのですが、無くてもクローズアップはします。

まあ、このpivot_topのy座標はちょうどキャラクタの身長に相当するので、入れておいてください。

実は、以上で述べた数値が入っていれば、他に何も指定しなくても、もうキャラクタは動き出します。最後のANIMATIONのところは次回説明しますが、無くても立派に動くのです。

結局、まとめると、キャラクタの部品のOBJファイルをMODELのところで指定して、それぞれの部品の関節(ピボット)のxyz座標をBONEのところで指定すれば、これでT2Vキャラクタは動き出すのです。

さて、次回はANIMATIONのところを説明しますね。

ではでは!




| | コメント (0) | トラックバック (0)

2009年12月14日 (月)

自分だけのT2Vキャラを作る11~bmファイルについて3~

こんにちは~

前回は、Cube君の17個の部品のCGデータファイル名(OBJファイル)をbmファイルの中で指定するやり方のお話でした。今回は、これら17個の部品のOBJの作り方の注意について説明しましょう。

Cube君の場合は、前にもやったようにcubemania.txtに記述しています。ここで言いたいのが、これら17個の部品の3次元空間上での位置のことです。BM3.0では、これらの部品は、それぞれ、その部品があるべき位置で保存するようにします。

したがって、手順としては、まず最初に17個の部品で全身を組み上げて、そして、左上腕なら左上腕を保存するときには、左上腕以外の部品をすべて消して、それで保存します。下の図の通りです。

Charhozon

上図で茶色い横棒は地面のつもりです。cubemania.txtに記述するときも、これに留意して六面体を定義します。

あるいは、一般のCGソフトでキャラクタを作成するときも、このように、最初に全部組み上げて、保存するときに上図のような手順を踏んで保存してください。

はい、今日はここまでで、次回は次のBONE(骨格)のところへ進みましょう。

ではでは!


| | コメント (0) | トラックバック (0)

2009年12月10日 (木)

自分だけのT2Vキャラを作る10 ~bmファイルについて2~

こんにちは~

前々回に続いてT2Vキャラを記述するbmファイルの中身のお話です。

すでに説明したように、bmファイルはMODELBONEANIMATIONの3つのセグメントがあります。まずはMODELのところから説明しましょう。

Cube君を記述しているcube30.bmの中身のMODELのところは以下の通りです。


MODEL       
   
model_hip         hip.obj
model_chest         chest.obj
model_l_wrist        lhand.obj
model_r_wrist        rhand.obj
model_l_ankle        lfoot.obj
model_r_ankle        rfoot.obj
model_l_hip        lupperleg.obj
model_l_knee        llowerleg.obj
model_r_hip        rupperleg.obj
model_r_knee        rlowerleg.obj
model_l_shoulder    lupperarm.obj
model_l_elbow        llowerarm.obj
model_r_shoulder    rupperarm.obj
model_r_elbow        rlowerarm.obj
model_neck        neck.obj
model_head        head.obj
model_jaw         jaw.obj


ここは
何をやっているかというと、BM3.0の中の部品名OBJファイルの対照になっています。見ての通り、部品名の頭に「model_」をつけたものと、実際にフォルダの中にあるOBJファイルのファイル名を並べて書きます。

ココで説明したように、Cube君は17個の部品から成っていますので、17行分の指定がされています。

上記の17個が全部そろわないときは、省略できますが、そのときはその部品が無くなります。たとえば

//model_chest         chest.obj

のようにコメントアウトすると、この場合はchest(胸)が無くなり、こんな風に出てきます

Cubenochest

それでは、次回は、OBJの部品の作り方の注意について説明しますね。

ではでは!

| | コメント (0) | トラックバック (0)

2009年12月 8日 (火)

自分だけのT2Vキャラを作る番外 ~TVMLについて~

こんにちは~

キャラの話もだんだん難しくなってきたところで、ちょっといったん用語などについて注意点をお話ししておきますね。

自分でも気になっていたんですが、「T2V」はいいとして、話の中にときどき「TVML」というのが出てきています。これは何だ、というのを再度書いておきます。

実は、T2Vの元になる技術がTVMLなのです。TVMLはTV program Making Languageの略で、1996年に提案されたけっこう古くからある技術です。その名の通り、テレビ番組を記述するための専用の言語なのです。

実は、このTVMLを今から13年前に提案したのが、これを書いている僕なのです。僕は当時、NHK放送技術研究所で研究職をやっていました。それで、このTVMLを考案して発表し、10年間NHK技研でTVMLの研究をして、それで3年前にNHKを(何を間違ったかw)辞めて、今、インターネット総研で「T2V」という名前を付けて研究開発とビジネス化を進めているのです。

すいません、身の上話になっちゃいました~

さて、T2Vではご存知の通り、T2Vプレイヤー上で文字を打ち込んで再生ボタンを押せば映像を作ることが出来ます。

一方、TVMLは、もう少しコンピュータ寄りの言語です。TVMLは、T2Vプレイヤーで、サンプルスクリプトのたとえば「しゃがむ.tvml」を開くと中身を見ることができます。こんな感じです。

character: talk( name=A, text="地震の揺れを感じたら" )
character: talk( name=A, text="素早く低い姿勢をとりましょう" )
character: talk( name=A, text="まずは、私がやってみます" )

character: look( name=A, target=B )
character: look( name=B, target=A, wait=no )
character: talk( name=A, text="しっかり見ておくように" )
character: look( name=A, target=M )
character: look( name=M, target=A, wait=no )
character: talk( name=A, text="いいですね?" )

character: talk( name=M, text="ハイ", wait=no )
character: talk( name=B, text="ハイ" )

見ての通り、英語がずらずら入った、コンピュータチックな感じです。それでも、日本語セリフが書かれていたり、よくよく見ると、それほどは難しくないのです。

これがTVMLの書式で、このTVMLには明確な言語仕様というものがあります。言語仕様はココ にあります。このTVMLで書いた台本は、TVMLエンジンというソフトウェアで映像化されます。

実は、T2Vプレイヤーの中には、このTVMLエンジンが入っていて、TVML台本を映像化することで動いているのです。つまり、T2Vプレイヤーは、次のような動作をしているのです。

T2Vプレイヤーにテキストを打つ
 │
 │ 演出エンジンで変換
 ↓
TVML台本
 │
 │ TVMLエンジンで変換
 ↓
出力映像音声

このように、T2Vプレイヤーでは、書かれた台本などすべてがいったんTVML台本に変換され、それがTVMLエンジンによって映像化されているのです。

T2Vプレイヤーのエディターエリアに打ったテキストをTVML台本に変換するのが「演出エンジン」(われわれはこれをFIL (Flexible Interpretation Loader)と呼んでいます)です。この演出エンジンが、T2Vプレイヤーで言うところの「演出選択」で選んでいる「演出」の実体なのです。

T2Vの台本ではご存知の通り限られたことしかできません。たとえばカメラアングルなどはお仕着せのものから選ぶだけです。しかし、TVMLでは、ほぼどんなことでもできます。ですので、TVML台本を直接書くことが出来れば、だいたい何でもできちゃうのです。言語仕様は公開されているし、それほど激しく難しくは無いですが(HTMLをじか書きするぐらいの難易度かなと思います)、ちょっと難しい、ということです。

前回、キャラの話でbmファイルというのが出てきましたが、これは、このTVML台本からキャラクタを指定するためのファイルなのです。

いや、すいません、こんなに長く書くつもりじゃなかったんですが、思わず長くなっちゃいました。

あ、そうそう、bmファイルの「bm」って何? というのもあるかもしれませんね? これは、Bob Mary の略号です。じゃ、BobとMaryって何かって言うと、これは13年前TVMLが生まれたときに最初に登場した2つのキャラなんです。こいつらです

Bm_2

このコンビをボブマリと称して、いまでも時々なにげに登場したりします。こいつらの一番メジャーどころの仕事はNHKの英語でしゃべらナイトだったんですけど。

ちなみにデザインは僕です。超エー加減なキャラですが、割と人気者でした! 今でもPooni君とかのヘンキャラはこのセンスがベースですね。

なんでBobとMaryって名前かっていうと、ひょっとして気づいた人もいるかも、、、

それは「ボブ・マーリー」からです、かの、超偉大なレゲエシンガーです。

っていっても彼はBob Marleyで、Maryじゃないんですけどね!(笑)

いかんいかん、また、なんか、長くなっちゃった

次回は講座に戻します~  ではでは!

| | コメント (0) | トラックバック (0)

2009年12月 7日 (月)

自分だけのT2Vキャラを作る9 ~bmファイルについて~

こんにちは~

今回は、T2Vキャラの構造のお話です。

これまで説明してきたように、Cube君は六面体の組み合わせで出来ていて、その六面体はmakecube.exeで生成されたもので、Cube君の六面体定義はcubemania.txtの中にテキストで書かれています。

第2回で説明したように、makecube.exeを実行するとずらずらっとファイルが生成されます。このファイルは第6回 で説明したように、OBJと呼ばれるCGデータファイルで、Cube君はその部品が17個あって、部品ごとにOBJファイルが出来ます。

実はT2Vでキャラクタを表示して動かすには、これらのOBJファイルに加えて、もう一つファイルが必要で、それがbmファイルです。

Cube君では、cube30.bmというのがそれです。これはただのテキストファイルなので、テキストエディタで開くことができます。そのままダブルクリックしても開くと思いますが、開かなければ、右クリックして「プログラムから開く」を選び、WordpadかNotepadで開いてみてください。

こんな風に書かれています。

// CUBEのBM3.0バージョンです

Version 3.0

MODEL       
   
model_hip         hip.obj
model_chest         chest.obj
model_l_wrist        lhand.obj
model_r_wrist        rhand.obj
model_l_ankle        lfoot.obj
model_r_ankle        rfoot.obj
model_l_hip        lupperleg.obj
model_l_knee        llowerleg.obj
model_r_hip        rupperleg.obj
model_r_knee        rlowerleg.obj
model_l_shoulder    lupperarm.obj
model_l_elbow        llowerarm.obj
model_r_shoulder    rupperarm.obj
model_r_elbow        rlowerarm.obj
model_neck        neck.obj
model_head        head.obj
model_jaw         jaw.obj

BONE

pivot_hip        0.0    0.304    0.0
pivot_l_hip        0.0304    0.224    0.0
pivot_l_knee        0.0304    0.136    0.0
pivot_l_ankle        0.0304    0.048    0.0
pivot_r_hip        -0.0304    0.224    0.0
pivot_r_knee        -0.0304    0.136    0.0
pivot_r_ankle        -0.0304    0.048    0.0
pivot_l_collar    0.0968    0.41    0.0
pivot_l_shoulder    0.0968    0.41    0.0
pivot_l_elbow        0.0968    0.336    0.0
pivot_l_wrist        0.0968    0.24    0.0
pivot_r_collar    -0.0968    0.41    0.0
pivot_r_shoulder    -0.0968    0.41    0.0
pivot_r_elbow        -0.0968    0.336    0.0
pivot_r_wrist        -0.0968    0.24    0.0
pivot_chest        0.0    0.418    0.0
pivot_neck        0.0    0.432    0.0
pivot_head        0.0    0.44    0.0
pivot_top        0.0    0.8    0.0

ANIMATION

speed_all    1.5


なんじゃこりゃー、だとは思うのですが、よく見るとわりとシンプルなんです。大雑把に以下に全体を説明しておきましょう。

1行目の
// CUBEのBM3.0バージョンです

はコメントです。「//」で始まる行はコメントとして無視されます。

2行目の
Version 3.0

というのが、このファイルはBM3.0ですよ、という宣言です。他のキャラのbmを開いてみると、ここにVersion 1.2と書かれているのが分かります。つまり旧バージョンです。

この後は、MODELの後にずらずら、次にBONEの後にずらずら、最後にANIMATIONの後に一行だけ(たまたま1行であって、ずらずらのときもあり)書かれています。

BM3.0のbmファイルではこのように

MODEL
・・・・(CGモデルデータに関する情報)・・・・
BONE
・・・・(キャラクタの骨格に関する情報)・・・・
ANIMATION
・・・・(キャラクタを動かすための情報)・・・・

という風に3つに分けてキャラクタの定義に必要なあれこれの情報を記述するようになっています。

だんだん難しくなってきたので、今日はここまでにしましょう。

次回は、これらの中身の数値などについて説明します。

ではでは!

| | コメント (0) | トラックバック (0)

2009年12月 4日 (金)

自分だけのT2Vキャラを作る8 ~Cube君をもう少し~

こんにちは~

前回はCube君を角刈りにしてみましたが、引き続き、もうちょっと変えてみました。

file head
0.36    0.34    0.36    0.0    0.44    0.0    0.0 0.0 0.0 1.0 aaaaaa        # 頭
0.22    0.032    0.08    0.0    0.56    0.18    0.0 0.0 0.0 1.0 aa2222        # 上くちびる
0.03    0.05    0.04    0.04    0.668    0.18    0.0 0.0 -40.0 1.0 222222    # 左目
0.03    0.05    0.04    -0.04    0.668    0.18    0.0 0.0 40.0 1.0 222222        # 右目
0.36    0.07    0.36    0.0    0.78    0.0    0.0 0.0 0.0 1.0 222222        # 頭
file jaw
0.2    0.04    0.08    0.0    0.51    0.18    0.0 0.0 0.0 1.0 aa2222    # 下くちびる

前回は、設計図を描きながらやりましたが、今回はほとんどカットアンドトライで適当です。目をちょっと細くして角度をつけて、くちびるをちょっと狭くしました。あと、体の色もちょっと変えました。色を変えたのは、chestとhipです。

Cubem2_2

なんとなく、アホな腕白坊主みたいに見えて、それなりにキャラを主張して見えます (作者の贔屓目か。。)

Cube君とツーショットにするとこんな感じ

Cubem3

不思議なもんで、こうやって並べると、髪の無いCube君が怪しい坊主に見えますね(笑)

はい、今回は、お遊びってことでここまでにして、次回は、もうちょっと詳しいT2Vキャラクタの構造について解説しましょう。

それでは!

| | コメント (0) | トラックバック (0)

2009年12月 3日 (木)

自分だけのT2Vキャラを作る7 ~Cube君をちょっと変える~

こんにちは~

今回は、cubemania.txtを書き換えてCube君をちょっといじって遊んでみましょう。

まず、少し顔を変えてみましょうか。cubemania.txtの中の顔の定義は以下の箇所です。

file head
0.36    0.36    0.36    0.0    0.44    0.0    0.0 0.0 0.0 1.0 aaaaaa        # 頭
0.264    0.032    0.08    0.0    0.56    0.18    0.0 0.0 0.0 1.0 aa2222        # 上くちびる
0.04    0.104    0.04    0.024    0.648    0.18    0.0 0.0 -60.0 1.0 222222    # 左目
0.04    0.104    0.04    -0.024    0.648    0.18    0.0 0.0 60.0 1.0 222222        # 右目
file jaw
0.24    0.032    0.08    0.0    0.52    0.18    0.0 0.0 0.0 1.0 aa2222    # 下くちびる

前回お話したように、顔、というか頭部は、headとjaw(あご)によって出来ていて、このjawが上下することで口パクをします。

さて、では、まず、headに髪の毛みたいなものを追加してみましょう。

file head
0.36    0.36    0.36    0.0    0.44    0.0    0.0 0.0 0.0 1.0 aaaaaa        # 頭
0.264    0.032    0.08    0.0    0.56    0.18    0.0 0.0 0.0 1.0 aa2222        # 上くちびる
0.04    0.104    0.04    0.024    0.648    0.18    0.0 0.0 -60.0 1.0 222222    # 左目
0.04    0.104    0.04    -0.024    0.648    0.18    0.0 0.0 60.0 1.0 222222        # 右目
0.36    0.07    0.36    0.0    0.80    0.0    0.0 0.0 0.0 1.0 222222        # 髪

このように最後に髪っぽい六面体を1行追加します(赤字)。これでcubemania.txtを保存して、makecube.exeをダブルクリッ クして起動します。makecube.exeは起動したのちすぐに終了しますが、この時点で、すでにCube君のデータが書き変わっています。そこで、 cubetest.tvml3をダブルクリックして再生すると、こんな風になります

Cubem_2

なんか角刈りのあんちゃんみたいで、そこはかとなく笑えます。

この最後の髪の毛ですが、

0.36    0.07    0.36    0.0    0.80    0.0    0.0 0.0 0.0 1.0 222222        # 髪

まず2番目の数字が0.07なので、厚さ(というか高さというか)が7cmということです。頭の上にきれいに乗せるのは、ちょっと面倒です。次の図のような理屈でyの位置が上記のように0.80(つまり80cm)になっています。

Cubedesign_3

このような図を描きながら、数字を決めて行くとやりやすいですね。要はキャラクタの設計図です。

あと、色は222222になってます。これを000000にすると本当の真っ黒になりますが、世の中、本当の白とか本当の黒とかはないわけで、222222というのは適当に決めたもので、かなり黒い色、という感じです。

さて、今回はここまでにして、次回はもうちょっといじってみましょう (これじゃショボすぎるんで 笑)

ではでは!

| | コメント (0) | トラックバック (0)

2009年12月 2日 (水)

自分だけのT2Vキャラを作る6 ~Cube君の構造~

こんにちは~

さて、六面体生成プログラムmakecube.exeの使い方をひと通り説明したところまで来ました。

次はいよいよキャラの方です。BM3.0フォーマットは、実はセパレートモデルとワンスキンモデルの2つを扱えるのですが、このCube君はセパレートモデルです。

セパレートモデルはその名の通り、体の各部の部品が全部分かれているタイプです。Cube君が動いているところを見ると体の部品が分かれて動いているのが分かると思います。

Cube君は次の17個の部品でできています。

腰               hip
左太もも         l_hip
左すね           l_knee
左足              l_foot
右太もも         r_hip
右すね           r_knee
右足              r_foot
左上腕           l_shoulder
左前腕           l_elbow
左手              l_wrist
右上腕           r_shoulder
右前腕           r_elbow
右手              r_wrist
胸                 chest
首                 neck
頭                 head
あご              jaw

右側の英語がBM3.0の中での各部の名前になります。

ここで詳しい人は、英語の方の名前が関節名になっていて変じゃないか、と思うかもしれませんが(たとえば、elbowは肘であって、前腕ならforearmだろうなど)、これはその関節にくっついている部品、という風に理解してください。

そして、この17個の部品にそれぞれ一つのOBJファイルが用意されているのです。このCube君は例によってmakecube.exeプログラムで作られています。cubemania.txtの中を見ると17個の部品の六面体の定義が見えます。

#
# 以下は、六面体キャラCUBEのデータ
#
file lfoot
0.056    0.048    0.1    0.0304    0.0    0.03    0.0 0.0 0.0 1.0 114411
file llowerleg
0.046    0.088    0.0288    0.0304    0.048    0.0    0.0 0.0 0.0 1.0 aaaaa0
file lupperleg
0.046    0.088    0.0288    0.0304    0.136    0.0    0.0 0.0 0.0 1.0 aaaaa0
file rfoot
0.056    0.048    0.1    -0.0304    0.0    0.03    0.0 0.0 0.0 1.0 114411
file rlowerleg
0.046    0.088    0.0288    -0.0304    0.048    0.0    0.0 0.0 0.0 1.0 aaaaa0

・・・・・・・

こんな感じです。ここでOBJのファイルの名前は自分の好きに決めてしまって構いません。

さて、Cube君の各部の部品名とファイル名を図示したのが下の図です。

Cubeparts
実は、このシンプルキャラのCube君だけでなく、T2Vキャラの全部がこういう構造になっています。たとえばナオやブッチュなどもそうです。ただ、彼らと一箇所だけ違うところがあり、それは頭部です。体のところは同じです。

頭部は、このCube君はheadとjawに分かれていて、このjawが上下することで口をパクパク開けてしゃべります。しかし、ナオやブッチュにはjawはなく、代わりに口を開けたheadと口を閉じたheadの2つのモデルが用意され、その間の画像をプレイヤーが作り出すことで口パクをしています(CGのモーフィングというテクニックを使います)。

T2Vキャラで言うと、pooniやfoggなどのカクカクキャラクタがCubeと同じくjawで動いています。ちょうど、昔のひょっこりひょうたん島の操り人形みたいにアゴが分かれているのです。

さて、それでは、次回はcubemania.txtを少しいじってキャラクタを変えてみましょう。

ではでは!

| | コメント (0) | トラックバック (0)

その他のカテゴリー

T2V一般の話題 | T2V技術関連 | T2V裏技 | 雑談