気ままな一言
2007年07月01日
移動/回転/物理 【LSL】
llTarget | 到達目標地点を設定する。 |
llTargetRemove | 到達目標地点を解除する。 |
llMoveToTarget | 目標地点へ移動する。 |
llStopMoveToTarget | 移動目標地点を取り消す。 |
llEdgeOfWorld | 移動先が現在のSIM内か調べる。 |
llRotTarget | 回転目標値を設定する。 |
llRotTargetRemove | 回転目標値を取り消す。 |
llTargetOmega | 回転させる。(クライアント上) |
llGetOmega | 回転速度を取得する。 |
llRotLookAt | X軸を指定方向へ回転する。 |
llLookAt | Z軸を指定方向にする。 |
llStopLookAt | llLookAt、llRotLookAtの動作を止める。 |
llSetForce | 永続的な力を加える。 |
llGetForce | 永続的な力の方向と強さを取得する。 |
llSetTorque | 永続的な回転力を与える。 |
llGetTorque | 回転力を取得する。 |
llSetForceAndTorque | 物理的な力と回転力を加える。 |
llApplyImpulse | 瞬間的な力を加える。 |
llApplyRotationalImpulse | 瞬間的な回転力を加える。 |
llGetEnergy | 残エネルギーを取得する。 |
llGetAccel | 加速度を取得する。 |
llGetVel | 速度を取得する。 |
llGetMass | 質量を取得する。 |
llGetCenterOfMass | 重心を取得する。 |
llGroundRepel | 高度を制限する。 |
llPushObject | 相手に衝撃を加える。 |
llSetBuoyancy | 浮力を設定する。 |
llSetHoverHeight | 浮揚高度を設定する。 |
llStopHover | 浮揚状態を解除する。 |
integer llTarget(vector position, float range)
position | 目標座標(絶対座標) | |
range | 目標範囲 |
positionからrangeの範囲を目標地点に設定します。
目標の範囲に到達するとat_targetイベントが発生し、それまではnot_at_targetイベントが発生し続けます。
▲上へ ■LSL Portal ■LSL Portal (日本語)
llTargetRemove(integer number)
number | ターゲットID(llTargetの戻り値) |
llTargetにより設定された到達目標地点を解除します。
▲上へ ■LSL Portal ■LSL Portal (日本語)
llMoveToTarget(vector target, float tau)
target | 目標座標(絶対座標) | |
tau | 速度 |
物理オブジェクトをtargetへ向けて移動します。
targetは現在の座標から65mの範囲で有効です。(0m < target < 65m)
tauに0.0を指定すると移動を停止します。
▲上へ ■LSL Portal ■LSL Portal (日本語)
llStopMoveToTarget()
llMoveToTargetによる移動を停止します。
▲上へ ■LSL Portal ■LSL Portal (日本語)
integer llEdgeOfWorld(vector pos, vector dir)
pos | 基準座標 | |
dir | 基準からの距離? |
世界の端が調べられるらしいです。
▲上へ ■LSL Portal ■LSL Portal (日本語)
integer llRotTarget(rotation rot, float error)
rot | 目標角度 | |
error | 誤差範囲の角度(ラジアン) |
rotに回転目標値を設定します。
目標の範囲に到達するとat_rot_targetイベントが発生し、それまではnot_at_rot_targetイベントが発生し続けます。
▲上へ ■LSL Portal ■LSL Portal (日本語)
llRotTargetRemove(integer number)
number | ターゲットID(llRotTargetの戻り値) |
llRotTargetにより設定された目標値を解除します。
▲上へ ■LSL Portal ■LSL Portal (日本語)
llTargetOmega(vector axis, float spinrate, float gain)
axis | 回転軸 | |
spinrate | 回転速度(ラジアン毎秒) | |
gain | 物理オブジェクトに与える回転の強さ(0以外の値を設定すること) |
オブジェクトを回転させます。
この関数はクライアント上で実行されるため滑らかに回転しますが、他人が同じように見えているとは限りません。(同期を取る必要がある場合には向きません)
▲上へ ■LSL Portal ■LSL Portal (日本語)
vector llGetOmega()
現在の回転速度(ラジアン)を取得します。
▲上へ ■LSL Portal ■LSL Portal (日本語)
llRotLookAt(rotation target, float strength, float damping)
target | 角度(ラジアン) | |
strength | 強さ(物理オブジェクトの場合、0.2~1.0) | |
damping | 減衰値(物理オブジェクトの場合、0.2~1.0) |
オブジェクトのX軸をtargetになるまで回転します。
▲上へ ■LSL Portal ■LSL Portal (日本語)
llLookAt(vector target, float strength, float damping)
target | 目標(絶対座標) | |
strength | 強さ(物理オブジェクトの場合、0.2~1.0) | |
damping | 減衰値(物理オブジェクトの場合、0.2~1.0) |
オブジェクトのZ軸をtarget方向にします。
▲上へ ■LSL Portal ■LSL Portal (日本語)
llStopLookAt()
llLookAt、llStopLookAtによる動作を停止します。
▲上へ ■LSL Portal ■LSL Portal (日本語)
llSetForce(vector force, integer local)
force | 加える力 | |
local | TRUE … 自身の回転軸を使用する FALSE … リージョンの回転軸を使用する |
物理オブジェクトに永続的な力を加えます。
▲上へ ■LSL Portal ■LSL Portal (日本語)
vector llGetForce()
永続的な力の方向と強さを取得します。
▲上へ ■LSL Portal ■LSL Portal (日本語)
llSetTorque(vector torque, integer local)
torque | 加える回転力 | |
local | TRUE … 自身の回転軸を使用する FALSE … リージョンの回転軸を使用する |
物理オブジェクトに永続的な回転力を与えます。
▲上へ ■LSL Portal ■LSL Portal (日本語)
vector llGetTorque()
回転力を取得します。
▲上へ ■LSL Portal ■LSL Portal (日本語)
llSetForceAndTorque(vector force, vector torque, integer local)
force | 加える力 | |
torque | 加える回転力 | |
local | TRUE … 自身の回転軸を使用する FALSE … リージョンの回転軸を使用する |
物理オブジェクトに力と回転力を加えます。
▲上へ ■LSL Portal ■LSL Portal (日本語)
llApplyImpulse(vector force, integer local)
force | 加える力 | |
local | TRUE … 自身の回転軸を使用する FALSE … リージョンの回転軸を使用する |
物理オブジェクトに瞬間的な力を加えます。
▲上へ ■LSL Portal ■LSL Portal (日本語)
llApplyRotationalImpulse(vector force, integer local)
torque | 加える回転力 | |
local | TRUE … 自身の回転軸を使用する FALSE … リージョンの回転軸を使用する |
物理オブジェクトに瞬間的な回転力を加えます。
▲上へ ■LSL Portal ■LSL Portal (日本語)
float llGetEnergy()
残エネルギーを取得します。
▲上へ ■LSL Portal ■LSL Portal (日本語)
vector llGetAccel()
加速度を取得します。
▲上へ ■LSL Portal ■LSL Portal (日本語)
vector llGetVel()
速度を取得します。
▲上へ ■LSL Portal ■LSL Portal (日本語)
float llGetMass()
質量を取得します。
▲上へ ■LSL Portal ■LSL Portal (日本語)
vector llGetCenterOfMass()
重心を取得します。
▲上へ ■LSL Portal ■LSL Portal (日本語)
llGroundRepel(float height, integer water, float tau)
height | 地面から距離 | |
water | TRUE … 水中で浮上する FALSE … 水中では浮上しない | |
tau | 到達までにかかる時間(秒) |
高度を制限します。
▲上へ ■LSL Portal ■LSL Portal (日本語)
llPushObject(key target, vector impulse, vector ang_impulse, integer local)
target | 対象のUUID | |
impulse | 力を加える方向 | |
ang_impulse | 回転を加える方向 | |
local | TRUE … targetの回転軸を使用する FALSE … リージョンの回転軸を使用する |
物理オブジェクトに衝撃を加えます。
▲上へ ■LSL Portal ■LSL Portal (日本語)
llSetBuoyancy(float buoyancy)
buoyancy | 浮力 |
物理オブジェクトに浮力を設定します。
buoyancy = 0.0 … 通常の重力を受ける。
buoyancy < 1.0 … 通常より重力を受ける。
buoyancy = 1.0 … 宙に浮く。
buoyancy > 1.0 … 浮力により上昇する。
▲上へ ■LSL Portal ■LSL Portal (日本語)
llSetHoverHeight(float height, integer water, float tau)
height | 地面からの距離 | |
water | TRUE … 水中で浮上する FALSE … 水中では浮上しない | |
tau | 到達までにかかる時間(秒) |
物理オブジェクトをheightより上に移動させます。
この関数で地面より64メートル以上浮かぶことはできません。
▲上へ ■LSL Portal ■LSL Portal (日本語)
llStopHover()
llSetHoverHeightで設定した浮揚状態を解除します。
▲上へ ■LSL Portal ■LSL Portal (日本語)
Posted by れむ at 02:30
│LSLリファレンス