OpenGLRaw-3.3.4.1: A raw binding for the OpenGL graphics system

Copyright | (c) Sven Panne 2019
License | BSD3
Maintainer | Sven Panne <svenpanne@gmail.com>
Stability | stable
Portability | portable
Safe Haskell | None
Language | Haskell2010

Graphics.GL.NV.MeshShader

Contents

- Extension Support
- Enums
- Functions

Description

Synopsis

- glGetNVMeshShader :: MonadIO m => m Bool
- gl_NV_mesh_shader :: Bool
- pattern GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_MESH_SHADER_NV :: GLenum
- pattern GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TASK_SHADER_NV :: GLenum
- pattern GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NV :: GLenum
- pattern GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NV :: GLenum
- pattern GL_MAX_DRAW_MESH_TASKS_COUNT_NV :: GLenum
- pattern GL_MAX_MESH_ATOMIC_COUNTERS_NV :: GLenum
- pattern GL_MAX_MESH_ATOMIC_COUNTER_BUFFERS_NV :: GLenum
- pattern GL_MAX_MESH_IMAGE_UNIFORMS_NV :: GLenum
- pattern GL_MAX_MESH_OUTPUT_PRIMITIVES_NV :: GLenum
- pattern GL_MAX_MESH_OUTPUT_VERTICES_NV :: GLenum
- pattern GL_MAX_MESH_SHADER_STORAGE_BLOCKS_NV :: GLenum
- pattern GL_MAX_MESH_TEXTURE_IMAGE_UNITS_NV :: GLenum
- pattern GL_MAX_MESH_TOTAL_MEMORY_SIZE_NV :: GLenum
- pattern GL_MAX_MESH_UNIFORM_BLOCKS_NV :: GLenum
- pattern GL_MAX_MESH_UNIFORM_COMPONENTS_NV :: GLenum
- pattern GL_MAX_MESH_VIEWS_NV :: GLenum
- pattern GL_MAX_MESH_WORK_GROUP_INVOCATIONS_NV :: GLenum
- pattern GL_MAX_MESH_WORK_GROUP_SIZE_NV :: GLenum
- pattern GL_MAX_TASK_ATOMIC_COUNTERS_NV :: GLenum
- pattern GL_MAX_TASK_ATOMIC_COUNTER_BUFFERS_NV :: GLenum
- pattern GL_MAX_TASK_IMAGE_UNIFORMS_NV :: GLenum
- pattern GL_MAX_TASK_OUTPUT_COUNT_NV :: GLenum
- pattern GL_MAX_TASK_SHADER_STORAGE_BLOCKS_NV :: GLenum
- pattern GL_MAX_TASK_TEXTURE_IMAGE_UNITS_NV :: GLenum
- pattern GL_MAX_TASK_TOTAL_MEMORY_SIZE_NV :: GLenum
- pattern GL_MAX_TASK_UNIFORM_BLOCKS_NV :: GLenum
- pattern GL_MAX_TASK_UNIFORM_COMPONENTS_NV :: GLenum
- pattern GL_MAX_TASK_WORK_GROUP_INVOCATIONS_NV :: GLenum
- pattern GL_MAX_TASK_WORK_GROUP_SIZE_NV :: GLenum
- pattern GL_MESH_OUTPUT_PER_PRIMITIVE_GRANULARITY_NV :: GLenum
- pattern GL_MESH_OUTPUT_PER_VERTEX_GRANULARITY_NV :: GLenum
- pattern GL_MESH_OUTPUT_TYPE_NV :: GLenum
- pattern GL_MESH_PRIMITIVES_OUT_NV :: GLenum
- pattern GL_MESH_SHADER_BIT_NV :: GLbitfield
- pattern GL_MESH_SHADER_NV :: GLenum
- pattern GL_MESH_SUBROUTINE_NV :: GLenum
- pattern GL_MESH_SUBROUTINE_UNIFORM_NV :: GLenum
- pattern GL_MESH_VERTICES_OUT_NV :: GLenum
- pattern GL_MESH_WORK_GROUP_SIZE_NV :: GLenum
- pattern GL_REFERENCED_BY_MESH_SHADER_NV :: GLenum
- pattern GL_REFERENCED_BY_TASK_SHADER_NV :: GLenum
- pattern GL_TASK_SHADER_BIT_NV :: GLbitfield
- pattern GL_TASK_SHADER_NV :: GLenum
- pattern GL_TASK_SUBROUTINE_NV :: GLenum
- pattern GL_TASK_SUBROUTINE_UNIFORM_NV :: GLenum
- pattern GL_TASK_WORK_GROUP_SIZE_NV :: GLenum
- pattern GL_UNIFORM_BLOCK_REFERENCED_BY_MESH_SHADER_NV :: GLenum
- pattern GL_UNIFORM_BLOCK_REFERENCED_BY_TASK_SHADER_NV :: GLenum
- glDrawMeshTasksIndirectNV :: MonadIO m => GLintptr -> m ()
- glDrawMeshTasksNV :: MonadIO m => GLuint -> GLuint -> m ()
- glMultiDrawMeshTasksIndirectCountNV :: MonadIO m => GLintptr -> GLintptr -> GLsizei -> GLsizei -> m ()
- glMultiDrawMeshTasksIndirectNV :: MonadIO m => GLintptr -> GLsizei -> GLsizei -> m ()

# Extension Support

glGetNVMeshShader :: MonadIO m => m Bool Source #

Is the NV_mesh_shader extension supported?

gl_NV_mesh_shader :: Bool Source #

Is the NV_mesh_shader extension supported? Note that in the presence of multiple contexts with different capabilities, this might be wrong. Use `glGetNVMeshShader` in those cases instead.

# Enums

pattern GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_MESH_SHADER_NV :: GLenum Source #

pattern GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TASK_SHADER_NV :: GLenum Source #

pattern GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NV :: GLenum Source #

pattern GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NV :: GLenum Source #

pattern GL_MAX_DRAW_MESH_TASKS_COUNT_NV :: GLenum Source #

pattern GL_MAX_MESH_ATOMIC_COUNTERS_NV :: GLenum Source #

pattern GL_MAX_MESH_ATOMIC_COUNTER_BUFFERS_NV :: GLenum Source #

pattern GL_MAX_MESH_IMAGE_UNIFORMS_NV :: GLenum Source #

pattern GL_MAX_MESH_OUTPUT_PRIMITIVES_NV :: GLenum Source #

pattern GL_MAX_MESH_OUTPUT_VERTICES_NV :: GLenum Source #

pattern GL_MAX_MESH_SHADER_STORAGE_BLOCKS_NV :: GLenum Source #

pattern GL_MAX_MESH_TEXTURE_IMAGE_UNITS_NV :: GLenum Source #

pattern GL_MAX_MESH_TOTAL_MEMORY_SIZE_NV :: GLenum Source #

pattern GL_MAX_MESH_UNIFORM_BLOCKS_NV :: GLenum Source #

pattern GL_MAX_MESH_UNIFORM_COMPONENTS_NV :: GLenum Source #

pattern GL_MAX_MESH_VIEWS_NV :: GLenum Source #

pattern GL_MAX_MESH_WORK_GROUP_INVOCATIONS_NV :: GLenum Source #

pattern GL_MAX_MESH_WORK_GROUP_SIZE_NV :: GLenum Source #

pattern GL_MAX_TASK_ATOMIC_COUNTERS_NV :: GLenum Source #

pattern GL_MAX_TASK_ATOMIC_COUNTER_BUFFERS_NV :: GLenum Source #

pattern GL_MAX_TASK_IMAGE_UNIFORMS_NV :: GLenum Source #

pattern GL_MAX_TASK_OUTPUT_COUNT_NV :: GLenum Source #

pattern GL_MAX_TASK_SHADER_STORAGE_BLOCKS_NV :: GLenum Source #

pattern GL_MAX_TASK_TEXTURE_IMAGE_UNITS_NV :: GLenum Source #

pattern GL_MAX_TASK_TOTAL_MEMORY_SIZE_NV :: GLenum Source #

pattern GL_MAX_TASK_UNIFORM_BLOCKS_NV :: GLenum Source #

pattern GL_MAX_TASK_UNIFORM_COMPONENTS_NV :: GLenum Source #

pattern GL_MAX_TASK_WORK_GROUP_INVOCATIONS_NV :: GLenum Source #

pattern GL_MAX_TASK_WORK_GROUP_SIZE_NV :: GLenum Source #

pattern GL_MESH_OUTPUT_PER_PRIMITIVE_GRANULARITY_NV :: GLenum Source #

pattern GL_MESH_OUTPUT_PER_VERTEX_GRANULARITY_NV :: GLenum Source #

pattern GL_MESH_OUTPUT_TYPE_NV :: GLenum Source #

pattern GL_MESH_PRIMITIVES_OUT_NV :: GLenum Source #

pattern GL_MESH_SHADER_BIT_NV :: GLbitfield Source #

pattern GL_MESH_SHADER_NV :: GLenum Source #

pattern GL_MESH_SUBROUTINE_NV :: GLenum Source #

pattern GL_MESH_SUBROUTINE_UNIFORM_NV :: GLenum Source #

pattern GL_MESH_VERTICES_OUT_NV :: GLenum Source #

pattern GL_MESH_WORK_GROUP_SIZE_NV :: GLenum Source #

pattern GL_REFERENCED_BY_MESH_SHADER_NV :: GLenum Source #

pattern GL_REFERENCED_BY_TASK_SHADER_NV :: GLenum Source #

pattern GL_TASK_SHADER_BIT_NV :: GLbitfield Source #

pattern GL_TASK_SHADER_NV :: GLenum Source #

pattern GL_TASK_SUBROUTINE_NV :: GLenum Source #

pattern GL_TASK_SUBROUTINE_UNIFORM_NV :: GLenum Source #

pattern GL_TASK_WORK_GROUP_SIZE_NV :: GLenum Source #

pattern GL_UNIFORM_BLOCK_REFERENCED_BY_MESH_SHADER_NV :: GLenum Source #

pattern GL_UNIFORM_BLOCK_REFERENCED_BY_TASK_SHADER_NV :: GLenum Source #

# Functions

glDrawMeshTasksIndirectNV Source #

Arguments

:: MonadIO m |
=> GLintptr | `indirect`.
-> m () |

glDrawMeshTasksNV Source #

Arguments

:: MonadIO m |
=> GLuint | `first`.
-> GLuint | `count`.
-> m () |

glMultiDrawMeshTasksIndirectCountNV Source #

Arguments

:: MonadIO m |
=> GLintptr | `indirect`.
-> GLintptr | `drawcount`.
-> GLsizei | `maxdrawcount`.
-> GLsizei | `stride`.
-> m () |

glMultiDrawMeshTasksIndirectNV Source #

Arguments

:: MonadIO m |
=> GLintptr | `indirect`.
-> GLsizei | `drawcount`.
-> GLsizei | `stride`.
-> m () |