flagflag  If you want to see English page, please click "English" Button at Left.
1: 2015-02-26 (木) 22:16:24 iseki ソース
Line 1: Line 1:
 +*** llLookAt()  by Janus Dugong [#wb1da18a]
 +       public void llLookAt(LSL_Vector target, double strength, double damping)
 +       {
 +           m_host.AddScriptLPS(1);
 +           // Determine where we are looking from
 +           LSL_Vector from = llGetPos();
 +           // normalized direction to target
 +           LSL_Vector dir = llVecNorm(target - from);
 +
 +           // Janus Dugong & Fumi.Hax
 +           if (LSL_Vector.Mag(dir)<=0.0) return;
 +           //
 +           LSL_Vector vec_yaw = new LSL_Vector(0.0, 0.0, Math.Atan2(dir.y, dir.x));    // yaw
 +           LSL_Vector vec_pth = new LSL_Vector(0.0, Math.Acos(dir.z), 0.0);            // pitch
 +           LSL_Rotation rot_yaw = llEuler2Rot(vec_yaw);
 +           LSL_Rotation rot_pth = llEuler2Rot(vec_pth);
 +           LSL_Rotation rot = rot_pth * rot_yaw;
 +
 +           // Per discussion with Melanie, for non-physical objects llLookAt appears to simply
 +           // set the rotation of the object, copy that behavior
 +           PhysicsActor pa = m_host.PhysActor;
 +
 +           if (strength == 0 || pa == null || !pa.IsPhysical)
 +           {
 +               llSetRot(rot);
 +           }
 +           else
 +           {
 +               m_host.StartLookAt(rot, (float)strength, (float)damping);
 +           }
 +       }


トップ   新規 ページ一覧 単語検索 最終更新   ヘルプ   最終更新のRSS 1.0 最終更新のRSS 2.0 最終更新のRSS Atom

サイト内 検索

ログイン

ユーザー名:

パスワード:


パスワード紛失
新規登録

サブ メニュー

ミニカレンダー

前月2024年 5月翌月
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
<今日>

オンライン状況

106 人のユーザが現在オンラインです。 (22 人のユーザが xpwiki を参照しています。)

登録ユーザ: 0
ゲスト: 106

もっと...

アクセスカウンタ

今日 : 1704117041170411704117041
昨日 : 1615016150161501615016150
総計 : 2349633423496334234963342349633423496334234963342349633423496334
Powered by XOOPS Cube 2.1© 2001-2006 XOOPS Cube Project
Design by XoopsDesign.com