2008/05/28

スカルプでアニメーション

最近、自宅の建築が面白くて(特にテクスづくり)、モノづくりから遠ざかっていました。
(家はつくってるか・・・)

そんな中、知人から「サカナ」を作って欲しいという依頼が。

イルカやシャチ、マンタなどは美しく作られたものをよく見かけます。

あれを超えるのは難しそうだな・・・とお断りしようかと思ったら、
「1プリムで」とのこと。

1プリムのコイとかこの前見たな~なんて思い出しながら、
「1プリムで出来る範囲で」ということで作ってみることにしました。

1プリムで泳ぐ(ように見える)サカナ。
先日書いたベッドの記事と似た内容になりますが制作過程をご紹介します。

今回は観賞用ではなく、捕まえて(食べる?)サカナ。

ということで第1弾は「イシダイ」に。

まずはBlenderで形を作ります。


基本となるまっすぐの形を作った後に、
泳ぐ際のポーズ=くねった状態も用意します。
こういう加工に関しては、Blenderはやりやすいですね。

まずは試しに3つの状態を制作し、INワールドにUPしました。


で、この3つの状態を交互に見せていけば、
パラパラ漫画のようなアニメーションになるというわけです。

3つを重ねてみました。

この状態で3つをリンクして、
テクスチャの設定で2つを透明にして1つだけが見える状態を切り替えていけばOKです。

あ、これでは3プリムですね。
動きを細かくするとその分、プリムも増えていってしまいます。

そうそう、ベッドと同じ考え方で、スカルプテクスチャーのUUIDを指定して形状を変えれば1プリムになるんです。

規則正しい動きでよければ、timerイベントで
まっすぐ⇒右くねり⇒まっすぐ⇒左くねり⇒まっすぐ・・・・という状態を切り替えるだけです。

llSetPrimitiveParams([PRIM_TYPE, PRIM_TYPE_SCULPT, "スカルプのUUID", PRIM_SCULPT_TYPE_SPHERE]);
(今回はSPHERE(球)で作りました)

このスクリプトを入れると・・・

最初は一瞬サカナが球体になりますが・・・
全部の状態が一旦表示されれば、結構スムースなアニメーションに見えるものです。

さっそく自宅の水路(?)に泳がせてみました。

パーティクルやテクスチャを貼っただけのサカナとは一味違います。

ただ、PC環境によっては頻繁に球体が表示されたりすることもあるようですので、
透明状態を切り替える方が親切なのかもしれません。

さてさて、あと何種類かを制作する予定ですが、
サカナ単体の商品ではなく、大きなシステムのようなものになるようです。

いつ、どんな形で世に出るのかは・・・まだ言えませんが、
(って、私はサカナだけ担当ですので、実は詳しく知らないだけだったりして・・・)

かなり面白いものが出来るのでは??と今からワクワクしています。

2008/05/09

スカルプの形状を切り替える。

当店では1~2プリムのベッドを展示販売していますが、
「フトンが着られる」仕様を求めるお客様の声をよく聞きます。

布団をかぶった状態と通常の状態を作っておき、
透過度を1⇔0と可視状態を切り替える方法もありですね。

以前に私が作ったベッドは、
「かぶった状態の布団を縮めて(llSetScale)足元に移動(llSetPos)」していました。
そうすれば、掛け布団は1プリムで済むのです。

今回は、スカルプの形状を切り替えて、
通常時(寝ていないとき)の状態を、
カタログなどにあるような感じ(実用的ではないがカッコいい)にしてみようと思います。

ベッドって大きいだけあって部屋の雰囲気にかなり影響するので、
いろいろアレンジできた方が使い勝手が良いとの考えからです。

まずは、3つの状態の形状を3Dソフトで作成します。(今回はBlenderを使用)


この3つの状態を「切り替え」たいのです。

llSetPrimitiveParams( [PRIM_TYPE, PRIM_TYPE_SCULPT, "スカルプテクスチャのUUID", 形状] );

スカルプの形状を指定する際のコマンドにこのようなものがあったので、
この青文字部分に3つそれぞれのUUIDを入れて、切り替えていったら・・・形が変わるんじゃないかな?

と思ったら・・・変わりました^^

ということで、クリックで切り替わるようにしてベッドにセットしてみました。

おお!

最初は切り替え時にすぐ表示されない・・・というのがちょっと気になりますが、
1プリムで3つの状態を演出できるメリットは大きいと思います。

現状5プリムのベッドになってます。

・マクラをベッドのマットで成型する⇒2プリム節約
・マクラ2個を1プリムで成型⇒1プリム節約

というのも検討していますが、
マクラをポーズボール代わりにした方が使いやすい(分かりやすい)かな?と
とりあえずこの仕様で。

マクラに複数ポーズとクリックでそれらを切り替えるスクリプトを入れました。


さて、せっかくマクラを二つ置いたので、
カップル用のポーズも作ってみたのですが・・・



一人での調整作業は・・・ちょっと寂しいですね^^;