LlSetCameraEyeOffset
Looking for the current API? Open the llSetCameraEyeOffset reference →
Wiki description
Sets the camera eye
offset for avatars that sit on the object.Function notes
This is the position of the camera's eye, not the point it looks at.
Caveats
- Setting this will not update the cameras of seated avatars, it will only effect avatars that subsequently sit down. The camera settings have to be prepared in advance.
- The
offsetis locally relative to the object, if you want it relative to the seated avatar (which likely has a custom sit rotation and offset) or the region, you must do the computation yourself. - ZERO_VECTOR
offsetwill cancel any eye offset. - Camera position set by this function is a Prim Property. It will survive the script and it will survive prim taking and prim rezzing
Examples
// Sit the avatar looking at an arbitrary direction
// Look over the avatar's shoulders from behind once it sits down
back_view(float degrees)
{
rotation sitRot = llAxisAngle2Rot(<0, 0, 1>, degrees * DEG_TO_RAD);
llSitTarget(<0, 0, 0.1>, sitRot);
llSetCameraEyeOffset(<-2, 0, 1> * sitRot);
llSetCameraAtOffset(<2, 0, 1> * sitRot);
}
default
{
state_entry()
{
back_view( 208 );
llSay(0, "Please sit down");
}
}See also: functions
Shared wiki helpers
The original page also injects shared parameter notes, caveats or issue information through these helpers. Their conditional MediaWiki logic is not reproduced here; inspect the preserved helper source for additional material.
Original shared helper source (conditional wiki logic is not evaluated)
{{LSL Injection Test}}<noinclude></noinclude>{{#if:
{{#vardefine:p_{{{1|}}}_desc|offset relative to the {{#switch:{{{local|}}}|*|=prim's|#default={{{local|}}}|object=object's}} position and expressed in [[Viewer coordinate frames#Local|local coordinates]]{{#if:{{{dead|}}}| and is completely ignored.}}{{{desc|}}}}}
{{#vardefine:p_{{{1|}}}_hover|offset relative to the {{#switch:{{{local|}}}|*|=prim's|#default={{{local|}}}|object=object's}} position and expressed in local coordinates{{#if:{{{dead|}}}| and is completely ignored.}}{{#if:{{{hover|}}}|{{{hover|}}}|{{{desc|}}}}}}}
{{#if:{{{dead|}}}|{{#vardefine:caveats|{{#var:caveats}}
*{{LSLP|{{{1|}}}}} functionality {{#switch:{{{dead|}}}|never=has not been implemented|*|#default=has been removed}}, any value provided is completely ignored. For future proofing purposes, you should use a [[ZERO_VECTOR]] for it's value.}}
}}
{{#if:{{{sim|}}}{{{region|}}}|
{{#vardefine:header_footnote|{{#var:header_footnote}}{{PBR}}
The requested position needs to be in the same region.}}
}}
{{#if:{{{noZ|}}}|
{{#vardefine:header_footnote|{{#var:header_footnote}}{{PBR}}
Only the {{LSLP|x}} and {{LSLP|y}} coordinates in {{LSLP|offset}} are important, the {{lSLP|z}} component is ignored.}}
}}
}}<noinclude>
{| {{Prettytable}}
|-{{Hl2}}
!var
!value
|-
|desc
|{{#var:p_{{{1|}}}_desc}}
|-
|hover
|{{#var:p_{{{1|}}}_hover}}
|}
</noinclude>Original wiki source
Some wiki templates and tables need their original context. View this article on the Second Life Wiki. Technical wording and examples are retained from the source; historical guidance may differ from current behavior.