Package org.lwjgl.opengl
Class NVMeshShader
java.lang.Object
org.lwjgl.opengl.NVMeshShader
Native bindings to the NV_mesh_shader extension.
This extension provides a new mechanism allowing applications to use two new programmable shader types -- the task and mesh shader -- to generate collections of geometric primitives to be processed by fixed-function primitive assembly and rasterization logic. When the task and mesh shaders are drawn, they replace the standard programmable vertex processing pipeline, including vertex array attribute fetching, vertex shader processing, tessellation, and the geometry shader processing.
Requires OpenGL 4.5.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intAccepted by thepnameparameter ofGetActiveAtomicCounterBufferiv.static final intAccepted by thepnameparameter ofGetActiveAtomicCounterBufferiv.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegeri_v,GetBooleani_v,GetFloati_v,GetDoublei_vandGetInteger64i_v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegeri_v,GetBooleani_v,GetFloati_v,GetDoublei_vandGetInteger64i_v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.static final intAccepted by thepnameparameter ofGetProgramiv.static final intAccepted by thepnameparameter ofGetProgramiv.static final intAccepted by thestagesparameter ofUseProgramStages.static final intstatic final intAccepted by theprogramInterfaceparameter ofGetProgramInterfaceiv,GetProgramResourceIndex,GetProgramResourceName,GetProgramResourceiv,GetProgramResourceLocation, andGetProgramResourceLocationIndex.static final intAccepted by theprogramInterfaceparameter ofGetProgramInterfaceiv,GetProgramResourceIndex,GetProgramResourceName,GetProgramResourceiv,GetProgramResourceLocation, andGetProgramResourceLocationIndex.static final intAccepted by thepnameparameter ofGetProgramiv.static final intAccepted by thepnameparameter ofGetProgramiv.static final intAccepted in thepropsarray ofGetProgramResourceiv.static final intAccepted in thepropsarray ofGetProgramResourceiv.static final intAccepted by thestagesparameter ofUseProgramStages.static final intstatic final intAccepted by theprogramInterfaceparameter ofGetProgramInterfaceiv,GetProgramResourceIndex,GetProgramResourceName,GetProgramResourceiv,GetProgramResourceLocation, andGetProgramResourceLocationIndex.static final intAccepted by theprogramInterfaceparameter ofGetProgramInterfaceiv,GetProgramResourceIndex,GetProgramResourceName,GetProgramResourceiv,GetProgramResourceLocation, andGetProgramResourceLocationIndex.static final intAccepted by thepnameparameter ofGetProgramiv.static final intAccepted by thepnameparameter ofGetActiveUniformBlockiv.static final intAccepted by thepnameparameter ofGetActiveUniformBlockiv. -
Method Summary
Modifier and TypeMethodDescriptionstatic voidglDrawMeshTasksIndirectNV(long indirect) static voidglDrawMeshTasksNV(int first, int count) static voidglMultiDrawMeshTasksIndirectCountNV(long indirect, long drawcount, int maxdrawcount, int stride) static voidglMultiDrawMeshTasksIndirectNV(long indirect, int drawcount, int stride)
-
Field Details
-
GL_MESH_SHADER_NV
public static final int GL_MESH_SHADER_NV- See Also:
-
GL_TASK_SHADER_NV
public static final int GL_TASK_SHADER_NV- See Also:
-
GL_MAX_MESH_UNIFORM_BLOCKS_NV
public static final int GL_MAX_MESH_UNIFORM_BLOCKS_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_MESH_TEXTURE_IMAGE_UNITS_NV
public static final int GL_MAX_MESH_TEXTURE_IMAGE_UNITS_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_MESH_IMAGE_UNIFORMS_NV
public static final int GL_MAX_MESH_IMAGE_UNIFORMS_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_MESH_UNIFORM_COMPONENTS_NV
public static final int GL_MAX_MESH_UNIFORM_COMPONENTS_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_MESH_ATOMIC_COUNTER_BUFFERS_NV
public static final int GL_MAX_MESH_ATOMIC_COUNTER_BUFFERS_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_MESH_ATOMIC_COUNTERS_NV
public static final int GL_MAX_MESH_ATOMIC_COUNTERS_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_MESH_SHADER_STORAGE_BLOCKS_NV
public static final int GL_MAX_MESH_SHADER_STORAGE_BLOCKS_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NV
public static final int GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_TASK_UNIFORM_BLOCKS_NV
public static final int GL_MAX_TASK_UNIFORM_BLOCKS_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_TASK_TEXTURE_IMAGE_UNITS_NV
public static final int GL_MAX_TASK_TEXTURE_IMAGE_UNITS_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_TASK_IMAGE_UNIFORMS_NV
public static final int GL_MAX_TASK_IMAGE_UNIFORMS_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_TASK_UNIFORM_COMPONENTS_NV
public static final int GL_MAX_TASK_UNIFORM_COMPONENTS_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_TASK_ATOMIC_COUNTER_BUFFERS_NV
public static final int GL_MAX_TASK_ATOMIC_COUNTER_BUFFERS_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_TASK_ATOMIC_COUNTERS_NV
public static final int GL_MAX_TASK_ATOMIC_COUNTERS_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_TASK_SHADER_STORAGE_BLOCKS_NV
public static final int GL_MAX_TASK_SHADER_STORAGE_BLOCKS_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NV
public static final int GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_MESH_WORK_GROUP_INVOCATIONS_NV
public static final int GL_MAX_MESH_WORK_GROUP_INVOCATIONS_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_TASK_WORK_GROUP_INVOCATIONS_NV
public static final int GL_MAX_TASK_WORK_GROUP_INVOCATIONS_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_MESH_TOTAL_MEMORY_SIZE_NV
public static final int GL_MAX_MESH_TOTAL_MEMORY_SIZE_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_TASK_TOTAL_MEMORY_SIZE_NV
public static final int GL_MAX_TASK_TOTAL_MEMORY_SIZE_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_MESH_OUTPUT_VERTICES_NV
public static final int GL_MAX_MESH_OUTPUT_VERTICES_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_MESH_OUTPUT_PRIMITIVES_NV
public static final int GL_MAX_MESH_OUTPUT_PRIMITIVES_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_TASK_OUTPUT_COUNT_NV
public static final int GL_MAX_TASK_OUTPUT_COUNT_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_DRAW_MESH_TASKS_COUNT_NV
public static final int GL_MAX_DRAW_MESH_TASKS_COUNT_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_MESH_VIEWS_NV
public static final int GL_MAX_MESH_VIEWS_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MESH_OUTPUT_PER_VERTEX_GRANULARITY_NV
public static final int GL_MESH_OUTPUT_PER_VERTEX_GRANULARITY_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MESH_OUTPUT_PER_PRIMITIVE_GRANULARITY_NV
public static final int GL_MESH_OUTPUT_PER_PRIMITIVE_GRANULARITY_NVAccepted by thepnameparameter ofGetIntegerv,GetBooleanv,GetFloatv,GetDoublevandGetInteger64v.- See Also:
-
GL_MAX_MESH_WORK_GROUP_SIZE_NV
public static final int GL_MAX_MESH_WORK_GROUP_SIZE_NVAccepted by thepnameparameter ofGetIntegeri_v,GetBooleani_v,GetFloati_v,GetDoublei_vandGetInteger64i_v.- See Also:
-
GL_MAX_TASK_WORK_GROUP_SIZE_NV
public static final int GL_MAX_TASK_WORK_GROUP_SIZE_NVAccepted by thepnameparameter ofGetIntegeri_v,GetBooleani_v,GetFloati_v,GetDoublei_vandGetInteger64i_v.- See Also:
-
GL_MESH_WORK_GROUP_SIZE_NV
public static final int GL_MESH_WORK_GROUP_SIZE_NVAccepted by thepnameparameter ofGetProgramiv.- See Also:
-
GL_TASK_WORK_GROUP_SIZE_NV
public static final int GL_TASK_WORK_GROUP_SIZE_NVAccepted by thepnameparameter ofGetProgramiv.- See Also:
-
GL_MESH_VERTICES_OUT_NV
public static final int GL_MESH_VERTICES_OUT_NVAccepted by thepnameparameter ofGetProgramiv.- See Also:
-
GL_MESH_PRIMITIVES_OUT_NV
public static final int GL_MESH_PRIMITIVES_OUT_NVAccepted by thepnameparameter ofGetProgramiv.- See Also:
-
GL_MESH_OUTPUT_TYPE_NV
public static final int GL_MESH_OUTPUT_TYPE_NVAccepted by thepnameparameter ofGetProgramiv.- See Also:
-
GL_UNIFORM_BLOCK_REFERENCED_BY_MESH_SHADER_NV
public static final int GL_UNIFORM_BLOCK_REFERENCED_BY_MESH_SHADER_NVAccepted by thepnameparameter ofGetActiveUniformBlockiv.- See Also:
-
GL_UNIFORM_BLOCK_REFERENCED_BY_TASK_SHADER_NV
public static final int GL_UNIFORM_BLOCK_REFERENCED_BY_TASK_SHADER_NVAccepted by thepnameparameter ofGetActiveUniformBlockiv.- See Also:
-
GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_MESH_SHADER_NV
public static final int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_MESH_SHADER_NVAccepted by thepnameparameter ofGetActiveAtomicCounterBufferiv.- See Also:
-
GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TASK_SHADER_NV
public static final int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TASK_SHADER_NVAccepted by thepnameparameter ofGetActiveAtomicCounterBufferiv.- See Also:
-
GL_REFERENCED_BY_MESH_SHADER_NV
public static final int GL_REFERENCED_BY_MESH_SHADER_NVAccepted in thepropsarray ofGetProgramResourceiv.- See Also:
-
GL_REFERENCED_BY_TASK_SHADER_NV
public static final int GL_REFERENCED_BY_TASK_SHADER_NVAccepted in thepropsarray ofGetProgramResourceiv.- See Also:
-
GL_MESH_SUBROUTINE_NV
public static final int GL_MESH_SUBROUTINE_NVAccepted by theprogramInterfaceparameter ofGetProgramInterfaceiv,GetProgramResourceIndex,GetProgramResourceName,GetProgramResourceiv,GetProgramResourceLocation, andGetProgramResourceLocationIndex.- See Also:
-
GL_TASK_SUBROUTINE_NV
public static final int GL_TASK_SUBROUTINE_NVAccepted by theprogramInterfaceparameter ofGetProgramInterfaceiv,GetProgramResourceIndex,GetProgramResourceName,GetProgramResourceiv,GetProgramResourceLocation, andGetProgramResourceLocationIndex.- See Also:
-
GL_MESH_SUBROUTINE_UNIFORM_NV
public static final int GL_MESH_SUBROUTINE_UNIFORM_NVAccepted by theprogramInterfaceparameter ofGetProgramInterfaceiv,GetProgramResourceIndex,GetProgramResourceName,GetProgramResourceiv,GetProgramResourceLocation, andGetProgramResourceLocationIndex.- See Also:
-
GL_TASK_SUBROUTINE_UNIFORM_NV
public static final int GL_TASK_SUBROUTINE_UNIFORM_NVAccepted by theprogramInterfaceparameter ofGetProgramInterfaceiv,GetProgramResourceIndex,GetProgramResourceName,GetProgramResourceiv,GetProgramResourceLocation, andGetProgramResourceLocationIndex.- See Also:
-
GL_MESH_SHADER_BIT_NV
public static final int GL_MESH_SHADER_BIT_NVAccepted by thestagesparameter ofUseProgramStages.- See Also:
-
GL_TASK_SHADER_BIT_NV
public static final int GL_TASK_SHADER_BIT_NVAccepted by thestagesparameter ofUseProgramStages.- See Also:
-
-
Method Details
-
glDrawMeshTasksNV
public static void glDrawMeshTasksNV(int first, int count) -
glDrawMeshTasksIndirectNV
public static void glDrawMeshTasksIndirectNV(long indirect) -
glMultiDrawMeshTasksIndirectNV
public static void glMultiDrawMeshTasksIndirectNV(long indirect, int drawcount, int stride) -
glMultiDrawMeshTasksIndirectCountNV
public static void glMultiDrawMeshTasksIndirectCountNV(long indirect, long drawcount, int maxdrawcount, int stride)
-