アニメーションとポーズのスクリプト
スクリプトの作成を受注しています。
まずはスクリプトお問い合わせからご相談ください。
アニメーションとポーズで表現豊かに
アニメーションとポーズを使ってアバターの表現を豊かにするスクリプトです。
今回は最初からセカンドライフに用意されているアニメーションを使って、剣を振るスクリプトとポーズボールのスクリプトを紹介します。
アニメーションの一覧表
普段アバターが歩いたり飛んだりするときのアニメーションなどの他にも、100種類を超えるアニメーションが用意されています。
これらのアニメーションは、下記のサイトで一覧表を見ることができます。
http://wiki.secondlife.com/wiki/Internal_Animations
今回はこれらのアニメーションを使いますので、特別にアニメーションを準備する必要はありません。
もしも、自分で用意したアニメーションを使う場合は、スクリプトと
一緒にオブジェクトの中に入れておかないといけませんので、その点はご注意くださいね。
アニメーションのスクリプト
剣を振るスクリプト
今回はこんな剣を準備してみました。
右手に装備して、うまく角度と位置を調節したら、sword.txtのスクリプトをセットします。
剣を装備した状態で Touch するか、チャットで「/1 strike」と発言すると、 剣を振ります。sword_strike_r というアニメーションを使っています。
ポーズボールスクリプト
セカンドライフのいろいろなところにあるポーズボールを作ってみましょう。
これも最初から用意されている sleep というアニメーションを使います。
小さなボールを作って地面すれすれに置き、poseball.txtのスクリプトをセットします。
ボールを右クリックして、sleep を選ぶとアバターが寝てしまいます。
カメラの位置をカスタマイズしていなければ、視点が切り替わって寝ているアバターの全身が見えるでしょう。
視点が変わらない場合は、Esc キーを押せば視点が変わると思います。
パラメータの設定
string animation_name = "sleep";
string sit_text = "sleep";
vector sit_pos = <0.0, 0.5, 0.8>;
vector sit_rot = <0.0, 0.0, 0.0>;
vector c_pos = <0.0, -3.0 ,0.0>;
vector c_vec = <0.0, 0.0, 0.0>;
animation_name = "sleep"
使用するアニメーションの名前を設定します。
sit_text = "sleep"
sit(座る) の代わりに表示する文字を設定します。
sit_pos = <0.0, 0.5, 0.8>
ポーズを取る位置を設定します。オブジェクトからの相対位置です。
sit_rot = <0.0, 0.0, 0.0>
アバターの角度を設定します。
c_pos = <0.0, -3.0 ,0.0>
カメラの位置を設定します。オブジェクトからの相対位置です。
c_vec = <0.0, 0.0, 0.0>
カメラが見る位置を設定します。オブジェクトからの相対位置です。
注意
これらのスクリプトで、自分で作ったり、フリーで配っているアニメーション
を利用する場合は、そのアニメーションをスクリプトと一緒にオブジェクトの
中に入れる必要がありますので注意してくださいね。