XII Release 0.1.0
Loading...
Searching...
No Matches
xiiGizmoGeometry Class Reference

#include <GizmoGeometry.h>

Public Member Functions

xiiResult Build (xiiEngineGizmoHandleType type, xiiStringView sMeshFile={})
 Replaces the geometry. Failure leaves it empty with invalid bounds.
const xiiGeometry & GetGeometry () const
const xiiBoundingBox & GetBounds () const
xiiResult PickRay (const xiiMat4 &transform, const xiiVec3 &vRayStart, const xiiVec3 &vRayDirection, float fLineRadius, float &out_fRayTime) const

Detailed Description

Reusable local geometry for Editor handles. Uses Core geometry generation and the Utilities OBJ loader. Rendering and picking consume the same vertices; this object owns no world objects or GPU resources.

Member Function Documentation

◆ PickRay()

xiiResult xiiGizmoGeometry::PickRay ( const xiiMat4 & transform,
const xiiVec3 & vRayStart,
const xiiVec3 & vRayDirection,
float fLineRadius,
float & out_fRayTime ) const

Finds the closest forward hit using the supplied local-to-world transform without allocating. Non-normalized ray directions are accepted; out_fRayTime is the ray parameter, not necessarily distance. Lines use world-space fLineRadius and return the time of closest approach. Triangles are double-sided. Invalid inputs, singular transforms, and misses return failure without changing out_fRayTime.


The documentation for this class was generated from the following files:
  • /home/runner/work/XII/XII/Source/Editor/EditorEngineProcessFramework/Gizmos/GizmoGeometry.h
  • /home/runner/work/XII/XII/Source/Editor/EditorEngineProcessFramework/Gizmos/Implementation/GizmoGeometry.cpp