llGetSunDirection
vector llGetSunDirection()
太陽の位置を示す単位ベクトルを得る。
この関数はSL内で見かけ上の「昼」か「夜」かを判定するのに利用される。
この関数はSL内で見かけ上の「昼」か「夜」かを判定するのに利用される。
すなわち、llGetSunDirection関数の戻り値のZ値(垂直方向)が、
- プラスであれば太陽は地平線よりも「上」=「昼」
- マイナスであれば太陽は地平線よりも「下」=「夜」
と判断できる。
この関数の戻り値は、クライアントから変更可能な太陽位置とは無関係である。
たとえクライアント側で太陽の位置を「真昼」に設定していたとしても、実際にはSIMでは太陽が沈んでいるかもしれない。
関数の戻り値は実際の太陽の位置のほうである。
たとえクライアント側で太陽の位置を「真昼」に設定していたとしても、実際にはSIMでは太陽が沈んでいるかもしれない。
関数の戻り値は実際の太陽の位置のほうである。
以下の例は夜か昼かを太陽の位置で判断する。
default { touch_start(integer detected){ vector sun = llGetSunDirection(); if (sun.z > 0.0){ llSay(0, "Daytime."); }else{ llSay(0, "Nighttime."); } } }