Difference between revisions of "Math.raycast"
From GiderosMobile
m (Text replacement - "</source>" to "</syntaxhighlight>") |
|||
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
__NOTOC__ | __NOTOC__ | ||
− | + | '''Available since:''' Gideros 2020.9<br/> | |
− | ''' | + | '''Class:''' [[math]]<br/> |
− | ''' | + | |
− | === | + | === Description === |
− | + | Returns collisions between a ray and a shape. | |
− | < | + | <syntaxhighlight lang="lua"> |
(table) = math.raycast(origin,direction,shape) | (table) = math.raycast(origin,direction,shape) | ||
− | </ | + | </syntaxhighlight> |
Shapes are tables which can have the following forms: | Shapes are tables which can have the following forms: | ||
Line 17: | Line 17: | ||
Each resulting collison contains the following fields: | Each resulting collison contains the following fields: | ||
− | + | * point: collision point | |
− | + | * distance: distance of the collision point from the origin | |
− | + | * normal: normal vector of the shape surface at the collision point | |
− | + | * reflect: reflection direction | |
− | === | + | === Parameters === |
− | '''origin''': (table) | + | '''origin''': (table) the origin of the ray<br/> |
− | '''direction''': (table) | + | '''direction''': (table) the direction of the ray<br/> |
− | '''shape''': (table) | + | '''shape''': (table) the shape to test against<br/> |
− | === | + | === Return values === |
− | ''' | + | '''Returns''' (table) a list of intersections<br/> |
{{Math}} | {{Math}} |
Latest revision as of 14:30, 13 July 2023
Available since: Gideros 2020.9
Class: math
Description
Returns collisions between a ray and a shape.
(table) = math.raycast(origin,direction,shape)
Shapes are tables which can have the following forms:
- { x, y, z, radius }: Represent a sphere (3D) or a circle (2D)
- { x, y, z, normal }: Represent a plane (3D) or a line (2D)
- { x, y, z, normal, extent }: Represent a disk (3D) or a segment (2D)
- { x, y, x2, y2 }: Represent a segment (2D)
- { x, y, z, 1, 2, ... }: Represent a shape group
Each resulting collison contains the following fields:
- point: collision point
- distance: distance of the collision point from the origin
- normal: normal vector of the shape surface at the collision point
- reflect: reflection direction
Parameters
origin: (table) the origin of the ray
direction: (table) the direction of the ray
shape: (table) the shape to test against
Return values
Returns (table) a list of intersections
- Math
- Math.abs
- Math.acos
- Math.asin
- Math.atan
- Math.atan2
- Math.ceil
- Math.clamp
- Math.cos
- Math.cosh
- Math.cross
- Math.deg
- Math.distance
- Math.distances
- Math.dot
- Math.edge
- Math.exp
- Math.fft
- Math.floor
- Math.fmod
- Math.frexp
- Math.ifft
- Math.inside
- Math.ldexp
- Math.length
- Math.log
- Math.log10
- Math.max
- Math.min
- Math.modf
- Math.nearest
- Math.noise
- Math.normalize
- Math.pow
- Math.rad
- Math.random
- Math.randomseed
- Math.raycast
- Math.round
- Math.sign
- Math.sin
- Math.sinh
- Math.sqrt
- Math.tan
- Math.tanh