pub struct MeshRenderPipelineDescriptor(/* private fields */);Expand description
Descriptor for MTL4 mesh render pipelines.
C++ equivalent: MTL4::MeshRenderPipelineDescriptor
MeshRenderPipelineDescriptor configures mesh shading pipelines with object, mesh, and fragment stages.
Implementations§
Source§impl MeshRenderPipelineDescriptor
impl MeshRenderPipelineDescriptor
Sourcepub unsafe fn from_raw(ptr: *mut c_void) -> Option<Self>
pub unsafe fn from_raw(ptr: *mut c_void) -> Option<Self>
Create a MeshRenderPipelineDescriptor from a raw pointer.
Sourcepub fn options(&self) -> Option<PipelineOptions>
pub fn options(&self) -> Option<PipelineOptions>
Get the pipeline options.
Sourcepub fn set_options(&self, options: &PipelineOptions)
pub fn set_options(&self, options: &PipelineOptions)
Set the pipeline options.
Sourcepub fn object_function_descriptor(&self) -> Option<FunctionDescriptor>
pub fn object_function_descriptor(&self) -> Option<FunctionDescriptor>
Get the object function descriptor.
Sourcepub fn set_object_function_descriptor(&self, descriptor: &FunctionDescriptor)
pub fn set_object_function_descriptor(&self, descriptor: &FunctionDescriptor)
Set the object function descriptor.
Sourcepub fn object_static_linking_descriptor(
&self,
) -> Option<StaticLinkingDescriptor>
pub fn object_static_linking_descriptor( &self, ) -> Option<StaticLinkingDescriptor>
Get the object static linking descriptor.
Sourcepub fn set_object_static_linking_descriptor(
&self,
descriptor: &StaticLinkingDescriptor,
)
pub fn set_object_static_linking_descriptor( &self, descriptor: &StaticLinkingDescriptor, )
Set the object static linking descriptor.
Sourcepub fn mesh_function_descriptor(&self) -> Option<FunctionDescriptor>
pub fn mesh_function_descriptor(&self) -> Option<FunctionDescriptor>
Get the mesh function descriptor.
Sourcepub fn set_mesh_function_descriptor(&self, descriptor: &FunctionDescriptor)
pub fn set_mesh_function_descriptor(&self, descriptor: &FunctionDescriptor)
Set the mesh function descriptor.
Sourcepub fn mesh_static_linking_descriptor(&self) -> Option<StaticLinkingDescriptor>
pub fn mesh_static_linking_descriptor(&self) -> Option<StaticLinkingDescriptor>
Get the mesh static linking descriptor.
Sourcepub fn set_mesh_static_linking_descriptor(
&self,
descriptor: &StaticLinkingDescriptor,
)
pub fn set_mesh_static_linking_descriptor( &self, descriptor: &StaticLinkingDescriptor, )
Set the mesh static linking descriptor.
Sourcepub fn fragment_function_descriptor(&self) -> Option<FunctionDescriptor>
pub fn fragment_function_descriptor(&self) -> Option<FunctionDescriptor>
Get the fragment function descriptor.
Sourcepub fn set_fragment_function_descriptor(&self, descriptor: &FunctionDescriptor)
pub fn set_fragment_function_descriptor(&self, descriptor: &FunctionDescriptor)
Set the fragment function descriptor.
Sourcepub fn fragment_static_linking_descriptor(
&self,
) -> Option<StaticLinkingDescriptor>
pub fn fragment_static_linking_descriptor( &self, ) -> Option<StaticLinkingDescriptor>
Get the fragment static linking descriptor.
Sourcepub fn set_fragment_static_linking_descriptor(
&self,
descriptor: &StaticLinkingDescriptor,
)
pub fn set_fragment_static_linking_descriptor( &self, descriptor: &StaticLinkingDescriptor, )
Set the fragment static linking descriptor.
Sourcepub fn color_attachments(
&self,
) -> Option<RenderPipelineColorAttachmentDescriptorArray>
pub fn color_attachments( &self, ) -> Option<RenderPipelineColorAttachmentDescriptorArray>
Get the color attachments array.
Sourcepub fn color_attachment_mapping_state(
&self,
) -> LogicalToPhysicalColorAttachmentMappingState
pub fn color_attachment_mapping_state( &self, ) -> LogicalToPhysicalColorAttachmentMappingState
Get the color attachment mapping state.
Sourcepub fn set_color_attachment_mapping_state(
&self,
state: LogicalToPhysicalColorAttachmentMappingState,
)
pub fn set_color_attachment_mapping_state( &self, state: LogicalToPhysicalColorAttachmentMappingState, )
Set the color attachment mapping state.
Sourcepub fn is_rasterization_enabled(&self) -> bool
pub fn is_rasterization_enabled(&self) -> bool
Get whether rasterization is enabled.
Sourcepub fn set_rasterization_enabled(&self, enabled: bool)
pub fn set_rasterization_enabled(&self, enabled: bool)
Set whether rasterization is enabled.
Sourcepub fn raster_sample_count(&self) -> UInteger
pub fn raster_sample_count(&self) -> UInteger
Get the raster sample count.
Sourcepub fn set_raster_sample_count(&self, count: UInteger)
pub fn set_raster_sample_count(&self, count: UInteger)
Set the raster sample count.
Sourcepub fn alpha_to_coverage_state(&self) -> AlphaToCoverageState
pub fn alpha_to_coverage_state(&self) -> AlphaToCoverageState
Get the alpha to coverage state.
Sourcepub fn set_alpha_to_coverage_state(&self, state: AlphaToCoverageState)
pub fn set_alpha_to_coverage_state(&self, state: AlphaToCoverageState)
Set the alpha to coverage state.
Sourcepub fn alpha_to_one_state(&self) -> AlphaToOneState
pub fn alpha_to_one_state(&self) -> AlphaToOneState
Get the alpha to one state.
Sourcepub fn set_alpha_to_one_state(&self, state: AlphaToOneState)
pub fn set_alpha_to_one_state(&self, state: AlphaToOneState)
Set the alpha to one state.
Sourcepub fn max_total_threads_per_object_threadgroup(&self) -> UInteger
pub fn max_total_threads_per_object_threadgroup(&self) -> UInteger
Get the maximum total threads per object threadgroup.
Sourcepub fn set_max_total_threads_per_object_threadgroup(&self, max: UInteger)
pub fn set_max_total_threads_per_object_threadgroup(&self, max: UInteger)
Set the maximum total threads per object threadgroup.
Sourcepub fn required_threads_per_object_threadgroup(&self) -> Size
pub fn required_threads_per_object_threadgroup(&self) -> Size
Get the required threads per object threadgroup.
Sourcepub fn set_required_threads_per_object_threadgroup(&self, size: Size)
pub fn set_required_threads_per_object_threadgroup(&self, size: Size)
Set the required threads per object threadgroup.
Sourcepub fn object_threadgroup_size_is_multiple_of_thread_execution_width(
&self,
) -> bool
pub fn object_threadgroup_size_is_multiple_of_thread_execution_width( &self, ) -> bool
Get whether object threadgroup size is multiple of thread execution width.
Sourcepub fn set_object_threadgroup_size_is_multiple_of_thread_execution_width(
&self,
value: bool,
)
pub fn set_object_threadgroup_size_is_multiple_of_thread_execution_width( &self, value: bool, )
Set whether object threadgroup size is multiple of thread execution width.
Sourcepub fn max_total_threads_per_mesh_threadgroup(&self) -> UInteger
pub fn max_total_threads_per_mesh_threadgroup(&self) -> UInteger
Get the maximum total threads per mesh threadgroup.
Sourcepub fn set_max_total_threads_per_mesh_threadgroup(&self, max: UInteger)
pub fn set_max_total_threads_per_mesh_threadgroup(&self, max: UInteger)
Set the maximum total threads per mesh threadgroup.
Sourcepub fn required_threads_per_mesh_threadgroup(&self) -> Size
pub fn required_threads_per_mesh_threadgroup(&self) -> Size
Get the required threads per mesh threadgroup.
Sourcepub fn set_required_threads_per_mesh_threadgroup(&self, size: Size)
pub fn set_required_threads_per_mesh_threadgroup(&self, size: Size)
Set the required threads per mesh threadgroup.
Sourcepub fn mesh_threadgroup_size_is_multiple_of_thread_execution_width(
&self,
) -> bool
pub fn mesh_threadgroup_size_is_multiple_of_thread_execution_width( &self, ) -> bool
Get whether mesh threadgroup size is multiple of thread execution width.
Sourcepub fn set_mesh_threadgroup_size_is_multiple_of_thread_execution_width(
&self,
value: bool,
)
pub fn set_mesh_threadgroup_size_is_multiple_of_thread_execution_width( &self, value: bool, )
Set whether mesh threadgroup size is multiple of thread execution width.
Sourcepub fn max_total_threadgroups_per_mesh_grid(&self) -> UInteger
pub fn max_total_threadgroups_per_mesh_grid(&self) -> UInteger
Get the maximum total threadgroups per mesh grid.
Sourcepub fn set_max_total_threadgroups_per_mesh_grid(&self, max: UInteger)
pub fn set_max_total_threadgroups_per_mesh_grid(&self, max: UInteger)
Set the maximum total threadgroups per mesh grid.
Sourcepub fn payload_memory_length(&self) -> UInteger
pub fn payload_memory_length(&self) -> UInteger
Get the payload memory length.
Sourcepub fn set_payload_memory_length(&self, length: UInteger)
pub fn set_payload_memory_length(&self, length: UInteger)
Set the payload memory length.
Sourcepub fn max_vertex_amplification_count(&self) -> UInteger
pub fn max_vertex_amplification_count(&self) -> UInteger
Get the maximum vertex amplification count.
Sourcepub fn set_max_vertex_amplification_count(&self, count: UInteger)
pub fn set_max_vertex_amplification_count(&self, count: UInteger)
Set the maximum vertex amplification count.
Sourcepub fn support_object_binary_linking(&self) -> bool
pub fn support_object_binary_linking(&self) -> bool
Get whether object binary linking is supported.
Sourcepub fn set_support_object_binary_linking(&self, support: bool)
pub fn set_support_object_binary_linking(&self, support: bool)
Set whether object binary linking is supported.
Sourcepub fn support_mesh_binary_linking(&self) -> bool
pub fn support_mesh_binary_linking(&self) -> bool
Get whether mesh binary linking is supported.
Sourcepub fn set_support_mesh_binary_linking(&self, support: bool)
pub fn set_support_mesh_binary_linking(&self, support: bool)
Set whether mesh binary linking is supported.
Sourcepub fn support_fragment_binary_linking(&self) -> bool
pub fn support_fragment_binary_linking(&self) -> bool
Get whether fragment binary linking is supported.
Sourcepub fn set_support_fragment_binary_linking(&self, support: bool)
pub fn set_support_fragment_binary_linking(&self, support: bool)
Set whether fragment binary linking is supported.
Sourcepub fn support_indirect_command_buffers(
&self,
) -> IndirectCommandBufferSupportState
pub fn support_indirect_command_buffers( &self, ) -> IndirectCommandBufferSupportState
Get the indirect command buffer support state.
Sourcepub fn set_support_indirect_command_buffers(
&self,
state: IndirectCommandBufferSupportState,
)
pub fn set_support_indirect_command_buffers( &self, state: IndirectCommandBufferSupportState, )
Set the indirect command buffer support state.