 |
HitTesterHitTest(Ray, PositionNormalTextureVertex, Int32, Int32, Int32, Boolean, Boolean, Single) Method |
Hit test a ray against the mesh with specified vertex and index buffer.
Namespace: Ab4d.SharpEngine.UtilitiesAssembly: Ab4d.SharpEngine (in Ab4d.SharpEngine.dll) Version: 4.0.9584+ba1aaa26d4181dd3fa8ed7b6398391d1affa36c8
Syntaxpublic static RayHitTestResult? HitTest(
in Ray? localRay,
PositionNormalTextureVertex[]? vertexBufferArray,
int[]? indexBufferArray,
int startTriangleIndicesIndex,
int triangleIndicesCount,
bool hitOnlyFrontFacingTriangles,
bool getOnlyNextHitTest,
float zeroTolerance = 1E-07f
)
Parameters
- localRay Ray
- ray transformed to local coordinate system
- vertexBufferArray PositionNormalTextureVertex
- vertex buffer as array of PositionNormalTexture
- indexBufferArray Int32
- index buffer
- startTriangleIndicesIndex Int32
- index in the TriangleIndices array where the hit testing will begin
- triangleIndicesCount Int32
- number of TriangleIndices that will be checked
- hitOnlyFrontFacingTriangles Boolean
- When true then only triangles that have normals (calculated from triangle positions) oriented in the opposite direction as the ray are returned (because ray is usually created from the camera's position this returns only triangles that are facing the camera).
- getOnlyNextHitTest Boolean
- when true, then the next hit result is returned; when false all hit results are get and only the closest to the ray origin is returned.
- zeroTolerance Single (Optional)
- optional float that defines the zero tolerance - if value is smaller that this value, then it is considered zero. It is recommended that this value is based on the mesh's size. Default value is 1e-7.
Return Value
RayHitTestResultDXRayHitTestResult when ray hits the mesh otherwise null is returned
See Also