Difference between revisions of "drawLaser"

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "<tt>([a-zA-Z0-9\. _"\\'=-]+)<\/tt>" to "{{hl|$1}}")
m (Some wiki formatting)
 
(3 intermediate revisions by the same user not shown)
Line 4: Line 4:
  
 
|version1= 2.08
 
|version1= 2.08
 
|branch= dev
 
  
 
|eff= local
 
|eff= local
Line 19: Line 17:
 
|s1= [[drawLaser]] [position, direction, beamColor, dotColor, dotSize, beamThickness, beamMaxLength, isIR]
 
|s1= [[drawLaser]] [position, direction, beamColor, dotColor, dotSize, beamThickness, beamMaxLength, isIR]
  
|p1= position: [[PositionASL]] - the laser's origin position
+
|p1= position: [[Array]] format [[Position#PositionASL|PositionASL]] - the laser's origin position
  
 
|p2= direction: [[Array]] of [[Vector3D]] - the laser's direction vector
 
|p2= direction: [[Array]] of [[Vector3D]] - the laser's direction vector
Line 31: Line 29:
 
|p6= beamThickness: [[Number]] - laser beam's thickness scale; if set to 0, the beam will not render
 
|p6= beamThickness: [[Number]] - laser beam's thickness scale; if set to 0, the beam will not render
  
|p7= beamMaxLength: [[Number]] - (Optional, default: -1) laser beam's maximum length. {{hl|-1}} means maximum length (defined in {{hl|CfgIRLaserSettings}}), {{hl|0}} means no length at all and the command is ignored
+
|p7= beamMaxLength: [[Number]] - (Optional, default -1) laser beam's maximum length. {{hl|-1}} means maximum length (defined in {{hl|CfgIRLaserSettings}}), {{hl|0}} means no length at all and the command is ignored
  
|p8= isIR: [[Boolean]] - (Optional, default: [[true]]) whether the laser and impact dot are only visible with Night Vision / Thermal Imaging
+
|p8= isIR: [[Boolean]] - (Optional, default [[true]]) whether the laser and impact dot are only visible with Night Vision / Thermal Imaging
  
 
|r1= [[Nothing]]
 
|r1= [[Nothing]]
  
 
|x1= Give the player a laser eye:
 
|x1= Give the player a laser eye:
<code>[[addMissionEventHandler]] ["Draw3D", {
+
<sqf>
[[drawLaser]] [
+
addMissionEventHandler ["Draw3D", {
[[eyePos]] [[player]] [[vectorAdd]] [0, 0, 0.1],
+
drawLaser [
[[getCameraViewDirection]] [[player]],
+
eyePos player vectorAdd [0, 0, 0.1],
[1000, 0, 0], {{cc|Bright red}}
+
getCameraViewDirection player,
 +
[1000, 0, 0], // Bright red
 
[],
 
[],
 
5,
 
5,
 
20,
 
20,
 
-1,
 
-1,
[[false]]
+
false
 
];
 
];
}];</code>
+
}];
 +
</sqf>
  
 
|seealso= [[drawIcon3D]] [[drawLine3D]] {{HashLink|Arma 3: Mission Event Handlers#Draw3D}}
 
|seealso= [[drawIcon3D]] [[drawLine3D]] {{HashLink|Arma 3: Mission Event Handlers#Draw3D}}
 
}}
 
}}

Latest revision as of 13:44, 3 May 2022

Hover & click on the images for description

Description

Description:
Draws a laserbeam and a lightpoint at the impact location of the laser.
This command has to be executed every frame - see Arma 3: Mission Event Handlers - Draw3D.
Lasers drawn with this command are subject to the same limitations as weapon attachment lasers. These limitations are defined in the CfgIRLaserSettings config class.
Groups:
InteractionLights

Syntax

Syntax:
drawLaser [position, direction, beamColor, dotColor, dotSize, beamThickness, beamMaxLength, isIR]
Parameters:
position: Array format PositionASL - the laser's origin position
direction: Array of Vector3D - the laser's direction vector
beamColor: Array of Color (RGB) - laser beam color. The values can go way above the usual 0..1 range as they also act as emissivity brightness
dotColor: Array of Color (RGB) - impact dot color. Set to [] to use the same value as beamColor.
dotSize: Number - impact dot size; if set to 0 the impact dot will not render
beamThickness: Number - laser beam's thickness scale; if set to 0, the beam will not render
beamMaxLength: Number - (Optional, default -1) laser beam's maximum length. -1 means maximum length (defined in CfgIRLaserSettings), 0 means no length at all and the command is ignored
isIR: Boolean - (Optional, default true) whether the laser and impact dot are only visible with Night Vision / Thermal Imaging
Return Value:
Nothing

Examples

Example 1:
Give the player a laser eye:
addMissionEventHandler ["Draw3D", { drawLaser [ eyePos player vectorAdd [0, 0, 0.1], getCameraViewDirection player, [1000, 0, 0], // Bright red [], 5, 20, -1, false ]; }];

Additional Information

See also:
drawIcon3D drawLine3D Arma 3: Mission Event Handlers - Draw3D

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