FrustumCullingApi

Struct FrustumCullingApi 

Source
#[repr(C)]
pub struct FrustumCullingApi { pub viewer_from_projection_mat: Option<unsafe extern "C" fn(view_tm: *const Mat44T, projection_tm: *const Mat44T, visibility_mask: u64) -> CullingViewerT>, pub calc_size_of_objects_buffer: Option<unsafe extern "C" fn(bv_type: u32, num_objects: u32) -> u32>, pub calc_size_of_results_buffer: Option<unsafe extern "C" fn(num_viewers: u32, num_objects: u32) -> u32>, pub cull_fast: Option<unsafe extern "C" fn(viewers: *const CullingViewerT, num_viewers: u32, bv_type: u32, objects: *const u8, num_objects: u32, results: *mut u8, ta: *mut TempAllocatorI) -> *mut AtomicCounterO>, pub cull_precise: Option<unsafe extern "C" fn(viewers: *const CullingViewerT, num_viewers: u32, bv_type: u32, objects: *const u8, num_objects: u32, results: *mut u8, ta: *mut TempAllocatorI) -> *mut AtomicCounterO>, pub gpu_cull: Option<unsafe extern "C" fn(args: *mut GpuCullingArgsT, output: *mut RendererHandleT, output_desc: *mut RendererBufferDescT)>, }

Fields§

§viewer_from_projection_mat: Option<unsafe extern "C" fn(view_tm: *const Mat44T, projection_tm: *const Mat44T, visibility_mask: u64) -> CullingViewerT>§calc_size_of_objects_buffer: Option<unsafe extern "C" fn(bv_type: u32, num_objects: u32) -> u32>§calc_size_of_results_buffer: Option<unsafe extern "C" fn(num_viewers: u32, num_objects: u32) -> u32>§cull_fast: Option<unsafe extern "C" fn(viewers: *const CullingViewerT, num_viewers: u32, bv_type: u32, objects: *const u8, num_objects: u32, results: *mut u8, ta: *mut TempAllocatorI) -> *mut AtomicCounterO>§cull_precise: Option<unsafe extern "C" fn(viewers: *const CullingViewerT, num_viewers: u32, bv_type: u32, objects: *const u8, num_objects: u32, results: *mut u8, ta: *mut TempAllocatorI) -> *mut AtomicCounterO>§gpu_cull: Option<unsafe extern "C" fn(args: *mut GpuCullingArgsT, output: *mut RendererHandleT, output_desc: *mut RendererBufferDescT)>

Implementations§

Source§

impl FrustumCullingApi

Source

pub unsafe fn viewer_from_projection_mat( &self, view_tm: *const Mat44T, projection_tm: *const Mat44T, visibility_mask: u64, ) -> CullingViewerT

Source

pub unsafe fn calc_size_of_objects_buffer( &self, bv_type: u32, num_objects: u32, ) -> u32

Source

pub unsafe fn calc_size_of_results_buffer( &self, num_viewers: u32, num_objects: u32, ) -> u32

Source

pub unsafe fn cull_fast( &self, viewers: *const CullingViewerT, num_viewers: u32, bv_type: u32, objects: *const u8, num_objects: u32, results: *mut u8, ta: *mut TempAllocatorI, ) -> *mut AtomicCounterO

Source

pub unsafe fn cull_precise( &self, viewers: *const CullingViewerT, num_viewers: u32, bv_type: u32, objects: *const u8, num_objects: u32, results: *mut u8, ta: *mut TempAllocatorI, ) -> *mut AtomicCounterO

Source

pub unsafe fn gpu_cull( &self, args: *mut GpuCullingArgsT, output: *mut RendererHandleT, output_desc: *mut RendererBufferDescT, )

Trait Implementations§

Source§

impl Api for FrustumCullingApi

Source§

impl Clone for FrustumCullingApi

Source§

fn clone(&self) -> FrustumCullingApi

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Default for FrustumCullingApi

Source§

fn default() -> FrustumCullingApi

Returns the “default value” for a type. Read more
Source§

impl Copy for FrustumCullingApi

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.