eyeDirection: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Text replacement - "<sqf>([^↵][^\/]*↵[^\/]*)<\/sqf>" to "<sqf> $1 </sqf>") |
Lou Montana (talk | contribs) m (Some wiki formatting) |
||
Line 7: | Line 7: | ||
|gr1= Object Manipulation | |gr1= Object Manipulation | ||
|descr= Returns the direction object is watching (eyes, or a vehicle primary observer). | |descr= Returns the direction object is watching (eyes, or a vehicle's primary observer). | ||
|s1= [[eyeDirection]] unit | |s1= [[eyeDirection]] unit | ||
Line 15: | Line 15: | ||
|r1= [[Array]] - 3D Vector | |r1= [[Array]] - 3D Vector | ||
|x1= <sqf> | |x1= Keep a can in front of the player's ''face'': | ||
Can = "Land_Can_V3_F" createVehicle | <sqf> | ||
Can = "Land_Can_V3_F" createVehicle getPosATL player; | |||
onEachFrame { | onEachFrame { | ||
_eyePos = eyePos player; | |||
_eyeDir = eyeDirection player; | |||
Can setPosASL [ | Can setPosASL [ | ||
_eyePos select 0 + (_eyeDir select 0), | |||
_eyePos select 1 + (_eyeDir select 1), | |||
_eyePos select 2 + (_eyeDir select 2) | |||
] | ] | ||
}; | }; | ||
Line 32: | Line 35: | ||
onEachFrame { | onEachFrame { | ||
_beg = ASLToAGL eyePos Bob; | _beg = ASLToAGL eyePos Bob; | ||
_endE = | |||
_endE = _beg vectorAdd (eyeDirection Bob vectorMultiply 100); | |||
drawLine3D [_beg, _endE, [0,1,0,1]]; | drawLine3D [_beg, _endE, [0,1,0,1]]; | ||
_endW = | |||
_endW = _beg vectorAdd (Bob weaponDirection currentWeapon Bob vectorMultiply 100); | |||
drawLine3D [_beg, _endW, [1,0,0,1]]; | drawLine3D [_beg, _endW, [1,0,0,1]]; | ||
}; | }; | ||
Line 42: | Line 47: | ||
}} | }} | ||
{{Note | |||
|user= Killzone_Kid | |||
|timestamp= 20140526191000 | |||
|text= This command should have really been named ''headDirection'' instead of [[eyeDirection]] as one could mistakenly think that eyes direction of your avatar correspond to the direction of the centre of your screen. | |||
Play with the script in {{Link|#Example 1}} to find out limitations. If you need centre of screen direction, use [[positionCameraToWorld]] instead. | |||
}} | |||
This command should have really been named ''headDirection'' instead of [[eyeDirection]] as one could mistakenly think that eyes direction of your avatar correspond to the direction of the centre of your screen. Play with the script in | |||
Latest revision as of 00:12, 11 November 2024
Description
- Description:
- Returns the direction object is watching (eyes, or a vehicle's primary observer).
- Groups:
- Object Manipulation
Syntax
- Syntax:
- eyeDirection unit
- Parameters:
- unit: Object
- Return Value:
- Array - 3D Vector
Examples
- Example 1:
- Keep a can in front of the player's face:
- Example 2:
- Draw AI eye direction (green) and weapon direction (red) in 3D:
Bob = createGroup east createUnit ["O_Soldier_F", [0,0,0], [], 0, "NONE"]; Bob setVehiclePosition [player modelToWorld [0,100,0], [], 0, "NONE"]; onEachFrame { _beg = ASLToAGL eyePos Bob; _endE = _beg vectorAdd (eyeDirection Bob vectorMultiply 100); drawLine3D [_beg, _endE, [0,1,0,1]]; _endW = _beg vectorAdd (Bob weaponDirection currentWeapon Bob vectorMultiply 100); drawLine3D [_beg, _endW, [1,0,0,1]]; };
Additional Information
Notes
-
Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
- Posted on May 26, 2014 - 19:10 (UTC)
- This command should have really been named headDirection instead of eyeDirection as one could mistakenly think that eyes direction of your avatar correspond to the direction of the centre of your screen. Play with the script in Example 1 to find out limitations. If you need centre of screen direction, use positionCameraToWorld instead.