Second Life 新世界的ものづくりのススメ--その32:エンジン1 - (page 4)

大槻透世二(サイバーアドベンチャー)

2007-11-22 08:00

 「llSitTarget()」は第10回でイスに座るときにも使った関数だ。通常、何かのオブジェクトに座るとき、そのオブジェクトの中心からどれくらい離れて座るか、またどんな向きで座るかをベクター形式のデータで指定する。

 ちなみに「Offset」とは日本語で「差し引勘定、相殺する」というような意味で、そこから転じて、基準点から目的点までの差を表す。

どこに座るか

 今回の場合、定義内の「offset」は、座りたいシート部分のオブジェクトの中心座標から、X、Y、Z方向にそれぞれ「何mずつずれて座る」か、ということを意味している。

 「llSitTarget(<0.6, 0.05, 0.20>, ZERO_ROTATION);」となっているので、シートとして使われ、スクリプトが入っている楕円形のオブジェクトの中心座標からX方向に0.6m、Y方向に0.05m、Z方向に0.2mずれる位置に座ることになる。

 ちなみに、下図はX方向に1.6mの値に設定した場合を示している。中央にあり、黄色枠に囲まれたシートのオブジェクトの中心座標から1.6m離れたところに座っている。

X方向に1.6mの値に設定した場合

座る向き

 さらに、座る向きを指定してみよう。今回は「ZERO_ROTATION」という組み込み定数(組み込み定数については第23回参照)が指定されている。日本語版LSL Wikiの「ローテーション」の説明によれば、「llSitTarget(<0.6, 0.05, 0.20>, ZERO_ROTATION);」は「llSitTarget(<0.6, 0.05, 0.20>, <0.0, 0.0, 0.0, 1.0>);」と同じとなる。

「llSitTarget(<0.6, 0.05, 0.20>,  <PI, 0.0, 0.0, 1.0>);」の挙動

 ここでの回転角度指定はラジアン(度数)指定となる(ラジアンについては第30回参照)。

 右図は「llSitTarget(<0.6, 0.05, 0.20>, );」の挙動を示している。X回転軸に沿って座る位置が回転しているのがわかる。

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

ZDNET Japan クイックポール

注目している大規模言語モデル(LLM)を教えてください

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]