#[repr(i32)]
pub enum PxPvdInstrumentationFlag { Debug = 1, Profile = 2, Memory = 4, All = 7, }
Expand description

types of instrumentation that PVD can do.

Variants§

§

Debug = 1

Send debugging information to PVD.

This information is the actual object data of the rigid statics, shapes, articulations, etc. Sending this information has a noticeable impact on performance and thus this flag should not be set if you want an accurate performance profile.

§

Profile = 2

Send profile information to PVD.

This information populates PVD’s profile view. It has (at this time) negligible cost compared to Debug information and makes PVD much more useful so it is quite highly recommended.

This flag works together with a PxCreatePhysics parameter. Using it allows the SDK to send profile events to PVD.

§

Memory = 4

Send memory information to PVD.

The PVD sdk side hooks into the Foundation memory controller and listens to allocation/deallocation events. This has a noticable hit on the first frame, however, this data is somewhat compressed and the PhysX SDK doesn’t allocate much once it hits a steady state. This information also has a fairly negligible impact and thus is also highly recommended.

This flag works together with a PxCreatePhysics parameter, trackOutstandingAllocations. Using both of them together allows users to have an accurate view of the overall memory usage of the simulation at the cost of a hashtable lookup per allocation/deallocation. Again, PhysX makes a best effort attempt not to allocate or deallocate during simulation so this hashtable lookup tends to have no effect past the first frame.

Sending memory information without tracking outstanding allocations means that PVD will accurate information about the state of the memory system before the actual connection happened.

§

All = 7

Send memory information to PVD.

The PVD sdk side hooks into the Foundation memory controller and listens to allocation/deallocation events. This has a noticable hit on the first frame, however, this data is somewhat compressed and the PhysX SDK doesn’t allocate much once it hits a steady state. This information also has a fairly negligible impact and thus is also highly recommended.

This flag works together with a PxCreatePhysics parameter, trackOutstandingAllocations. Using both of them together allows users to have an accurate view of the overall memory usage of the simulation at the cost of a hashtable lookup per allocation/deallocation. Again, PhysX makes a best effort attempt not to allocate or deallocate during simulation so this hashtable lookup tends to have no effect past the first frame.

Sending memory information without tracking outstanding allocations means that PVD will accurate information about the state of the memory system before the actual connection happened.

Trait Implementations§

source§

impl Clone for PxPvdInstrumentationFlag

source§

fn clone(&self) -> PxPvdInstrumentationFlag

Returns a copy 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 Debug for PxPvdInstrumentationFlag

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for PxPvdInstrumentationFlag

source§

fn eq(&self, other: &PxPvdInstrumentationFlag) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Copy for PxPvdInstrumentationFlag

source§

impl Eq for PxPvdInstrumentationFlag

source§

impl StructuralEq for PxPvdInstrumentationFlag

source§

impl StructuralPartialEq for PxPvdInstrumentationFlag

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> 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,

§

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>,

§

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>,

§

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.