pub struct PrimitiveAccelerationStructureDescriptor(/* private fields */);Expand description
Descriptor for primitive (bottom-level) acceleration structures.
C++ equivalent: MTL::PrimitiveAccelerationStructureDescriptor
Implementations§
Source§impl PrimitiveAccelerationStructureDescriptor
impl PrimitiveAccelerationStructureDescriptor
Sourcepub fn new() -> Option<Self>
pub fn new() -> Option<Self>
Create a new primitive acceleration structure descriptor.
C++ equivalent: static PrimitiveAccelerationStructureDescriptor* alloc()->init()
Sourcepub unsafe fn from_raw(ptr: *mut c_void) -> Option<Self>
pub unsafe fn from_raw(ptr: *mut c_void) -> Option<Self>
Create from a raw pointer.
§Safety
The pointer must be a valid Metal primitive acceleration structure descriptor.
Sourcepub fn usage(&self) -> AccelerationStructureUsage
pub fn usage(&self) -> AccelerationStructureUsage
Get the usage flags.
C++ equivalent: AccelerationStructureUsage usage() const
Sourcepub fn set_usage(&self, usage: AccelerationStructureUsage)
pub fn set_usage(&self, usage: AccelerationStructureUsage)
Set the usage flags.
C++ equivalent: void setUsage(AccelerationStructureUsage)
Sourcepub fn motion_start_border_mode(&self) -> MotionBorderMode
pub fn motion_start_border_mode(&self) -> MotionBorderMode
Get the motion start border mode.
C++ equivalent: MotionBorderMode motionStartBorderMode() const
Sourcepub fn set_motion_start_border_mode(&self, mode: MotionBorderMode)
pub fn set_motion_start_border_mode(&self, mode: MotionBorderMode)
Set the motion start border mode.
C++ equivalent: void setMotionStartBorderMode(MotionBorderMode)
Sourcepub fn motion_end_border_mode(&self) -> MotionBorderMode
pub fn motion_end_border_mode(&self) -> MotionBorderMode
Get the motion end border mode.
C++ equivalent: MotionBorderMode motionEndBorderMode() const
Sourcepub fn set_motion_end_border_mode(&self, mode: MotionBorderMode)
pub fn set_motion_end_border_mode(&self, mode: MotionBorderMode)
Set the motion end border mode.
C++ equivalent: void setMotionEndBorderMode(MotionBorderMode)
Sourcepub fn motion_start_time(&self) -> f32
pub fn motion_start_time(&self) -> f32
Get the motion start time.
C++ equivalent: float motionStartTime() const
Sourcepub fn set_motion_start_time(&self, time: f32)
pub fn set_motion_start_time(&self, time: f32)
Set the motion start time.
C++ equivalent: void setMotionStartTime(float)
Sourcepub fn motion_end_time(&self) -> f32
pub fn motion_end_time(&self) -> f32
Get the motion end time.
C++ equivalent: float motionEndTime() const
Sourcepub fn set_motion_end_time(&self, time: f32)
pub fn set_motion_end_time(&self, time: f32)
Set the motion end time.
C++ equivalent: void setMotionEndTime(float)
Sourcepub fn motion_keyframe_count(&self) -> UInteger
pub fn motion_keyframe_count(&self) -> UInteger
Get the motion keyframe count.
C++ equivalent: NS::UInteger motionKeyframeCount() const
Sourcepub fn set_motion_keyframe_count(&self, count: UInteger)
pub fn set_motion_keyframe_count(&self, count: UInteger)
Set the motion keyframe count.
C++ equivalent: void setMotionKeyframeCount(NS::UInteger)
Sourcepub fn geometry_descriptors_ptr(&self) -> *const c_void
pub fn geometry_descriptors_ptr(&self) -> *const c_void
Get the geometry descriptors as a raw NS::Array pointer.
C++ equivalent: NS::Array* geometryDescriptors() const
§Safety
The returned pointer is an NS::Array containing geometry descriptors. The caller must manage the memory appropriately.
Sourcepub unsafe fn set_geometry_descriptors_ptr(
&self,
geometry_descriptors: *const c_void,
)
pub unsafe fn set_geometry_descriptors_ptr( &self, geometry_descriptors: *const c_void, )
Set the geometry descriptors from a raw NS::Array pointer.
C++ equivalent: void setGeometryDescriptors(const NS::Array*)
§Safety
The geometry_descriptors pointer must be a valid NS::Array or null.