Second Life 新世界的ものづくりのススメ--その16:余剰スペースで遊ぶパート3--ドア用スクリプトを解説 - (page 4)

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

2007-06-07 11:23

2.ドアが閉まっている状態

閉まっている状態

 閉まっているドアをタッチすると、ドアオブジェクトの回転を-90度変化させ、「ドアが開いている状態」に遷移する、という2つの処理が実行される。スクリプトでは、まず、ドアオブジェクトの回転を-90度変化させるための準備として、

  1. 「現在のドアの角度」を調査して
    ( rotation rot = llGetRot() )
  2. 「-90度」を数値で表し
    ( rotation delta = llEuler2Rot(<0,0,PI/-2>) )
  3. その「合計角度分」を割り出す
    ( rot = delta * rot )

という処理を実行している。その後、次の処理を実行する。

  1. ドアオブジェクトの回転を-90度変化させる
    ( llSetRot(rot) )
  2. 「ドアが開いている状態」に遷移する
    ( state open )

3.ドアが開いている状態

開いている状態

 基本的に「ドアが閉まっている状態」のスクリプトと同じだ。ただし、開いているドアをタッチして閉めるには、前項と逆方向の角度でドアを回転させる必要がある。つまり、ドアを開くために-90度( llEuler2Rot(<0,0,PI/-2>) )回転させているので、閉めるためには逆方向、つまり、+90度( llEuler2Rot(<0,0,PI/2>) )回転させる。すると、ドアは元の閉まった状態となる。

 ドアオブジェクトの回転を変化するための準備ができれば、次の処理を実行させる。

  1. ドアオブジェクトの回転を+90度変化させる
    ( llSetRot(rot) )
  2. 「ドアが閉まっている状態」に遷移する
    ( state closed )

 ドアのスクリプトは以上だ。

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

ホワイトペーパー

新着

ランキング

  1. セキュリティ

    「デジタル・フォレンジック」から始まるセキュリティ災禍論--活用したいIT業界の防災マニュアル

  2. 運用管理

    「無線LANがつながらない」という問い合わせにAIで対応、トラブル解決の切り札とは

  3. 運用管理

    Oracle DatabaseのAzure移行時におけるポイント、移行前に確認しておきたい障害対策

  4. 運用管理

    Google Chrome ブラウザ がセキュリティを強化、ゼロトラスト移行で高まるブラウザの重要性

  5. ビジネスアプリケーション

    技術進化でさらに発展するデータサイエンス/アナリティクス、最新の6大トレンドを解説

ZDNET Japan クイックポール

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

NEWSLETTERS

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

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

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