pub trait AccelerationStructureEncoder {
type AccelerationStructure: Send + Sync + Clone + Debug;
type AccelerationStructureMesh: Send + Sync + Clone + Debug;
type BufferPiece: Send + Sync + Clone + Copy + Debug;
// Required methods
fn build_bottom_level(
&mut self,
acceleration_structure: Self::AccelerationStructure,
meshes: &[Self::AccelerationStructureMesh],
scratch_data: Self::BufferPiece,
);
fn build_top_level(
&mut self,
acceleration_structure: Self::AccelerationStructure,
bottom_level: &[Self::AccelerationStructure],
instance_count: u32,
instance_data: Self::BufferPiece,
scratch_data: Self::BufferPiece,
);
}Required Associated Types§
type AccelerationStructure: Send + Sync + Clone + Debug
type AccelerationStructureMesh: Send + Sync + Clone + Debug
type BufferPiece: Send + Sync + Clone + Copy + Debug
Required Methods§
fn build_bottom_level( &mut self, acceleration_structure: Self::AccelerationStructure, meshes: &[Self::AccelerationStructureMesh], scratch_data: Self::BufferPiece, )
fn build_top_level( &mut self, acceleration_structure: Self::AccelerationStructure, bottom_level: &[Self::AccelerationStructure], instance_count: u32, instance_data: Self::BufferPiece, scratch_data: Self::BufferPiece, )
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".