Skip to main content

PhysicalDeviceMeshShaderPropertiesNV

Struct PhysicalDeviceMeshShaderPropertiesNV 

Source
pub struct PhysicalDeviceMeshShaderPropertiesNV<'a> {
Show 15 fields pub s_type: StructureType, pub p_next: *mut c_void, pub max_draw_mesh_tasks_count: u32, pub max_task_work_group_invocations: u32, pub max_task_work_group_size: [u32; 3], pub max_task_total_memory_size: u32, pub max_task_output_count: u32, pub max_mesh_work_group_invocations: u32, pub max_mesh_work_group_size: [u32; 3], pub max_mesh_total_memory_size: u32, pub max_mesh_output_vertices: u32, pub max_mesh_output_primitives: u32, pub max_mesh_multiview_view_count: u32, pub mesh_output_per_vertex_granularity: u32, pub mesh_output_per_primitive_granularity: u32, /* private fields */
}
Expand description

Native structure VkPhysicalDeviceMeshShaderPropertiesNV.

Khronos reference: VkPhysicalDeviceMeshShaderPropertiesNV

Fields§

§s_type: StructureType

Native field sType.

§p_next: *mut c_void

Native field pNext.

§max_draw_mesh_tasks_count: u32

Native field maxDrawMeshTasksCount.

§max_task_work_group_invocations: u32

Native field maxTaskWorkGroupInvocations.

§max_task_work_group_size: [u32; 3]

Native field maxTaskWorkGroupSize.

§max_task_total_memory_size: u32

Native field maxTaskTotalMemorySize.

§max_task_output_count: u32

Native field maxTaskOutputCount.

§max_mesh_work_group_invocations: u32

Native field maxMeshWorkGroupInvocations.

§max_mesh_work_group_size: [u32; 3]

Native field maxMeshWorkGroupSize.

§max_mesh_total_memory_size: u32

Native field maxMeshTotalMemorySize.

§max_mesh_output_vertices: u32

Native field maxMeshOutputVertices.

§max_mesh_output_primitives: u32

Native field maxMeshOutputPrimitives.

§max_mesh_multiview_view_count: u32

Native field maxMeshMultiviewViewCount.

§mesh_output_per_vertex_granularity: u32

Native field meshOutputPerVertexGranularity.

§mesh_output_per_primitive_granularity: u32

Native field meshOutputPerPrimitiveGranularity.

Implementations§

Source§

impl<'a> PhysicalDeviceMeshShaderPropertiesNV<'a>

Source

pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

Source

pub fn set_max_draw_mesh_tasks_count(self, value: u32) -> Self

Set native field maxDrawMeshTasksCount without native effects.

Source

pub fn set_max_task_work_group_invocations(self, value: u32) -> Self

Set native field maxTaskWorkGroupInvocations without native effects.

Source

pub fn set_max_task_work_group_size(self, value: [u32; 3]) -> Self

Set native field maxTaskWorkGroupSize without native effects.

Source

pub fn set_max_task_total_memory_size(self, value: u32) -> Self

Set native field maxTaskTotalMemorySize without native effects.

Source

pub fn set_max_task_output_count(self, value: u32) -> Self

Set native field maxTaskOutputCount without native effects.

Source

pub fn set_max_mesh_work_group_invocations(self, value: u32) -> Self

Set native field maxMeshWorkGroupInvocations without native effects.

Source

pub fn set_max_mesh_work_group_size(self, value: [u32; 3]) -> Self

Set native field maxMeshWorkGroupSize without native effects.

Source

pub fn set_max_mesh_total_memory_size(self, value: u32) -> Self

Set native field maxMeshTotalMemorySize without native effects.

Source

pub fn set_max_mesh_output_vertices(self, value: u32) -> Self

Set native field maxMeshOutputVertices without native effects.

Source

pub fn set_max_mesh_output_primitives(self, value: u32) -> Self

Set native field maxMeshOutputPrimitives without native effects.

Source

pub fn set_max_mesh_multiview_view_count(self, value: u32) -> Self

Set native field maxMeshMultiviewViewCount without native effects.

Source

pub fn set_mesh_output_per_vertex_granularity(self, value: u32) -> Self

Set native field meshOutputPerVertexGranularity without native effects.

Source

pub fn set_mesh_output_per_primitive_granularity(self, value: u32) -> Self

Set native field meshOutputPerPrimitiveGranularity without native effects.

Source

pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

Prepend one registry-compatible node, retaining its exclusive borrow.

The node must have a null p_next and both headers must have canonical tags. Existing links are never traversed and remain written after the borrow ends. Type compatibility does not establish enabled extensions or Vulkan valid usage.

§Errors

Returns a construction error for a changed structure tag or already-linked node.

Trait Implementations§

Source§

impl<'a> Default for PhysicalDeviceMeshShaderPropertiesNV<'a>

Source§

fn default() -> Self

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

impl<'a, 'root> Extends<PhysicalDeviceProperties2<'root>> for PhysicalDeviceMeshShaderPropertiesNV<'a>

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, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

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

fn try_from(value: U) -> Result<T, !>

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.