some OpenGL constants
some OpenGL constants
This is from (https://github.com/peterderivaz/pyopengles/blob/master/gl2.py)
1 GL_DEPTH_BUFFER_BIT = 0x00000100 2 GL_STENCIL_BUFFER_BIT = 0x00000400 3 GL_COLOR_BUFFER_BIT = 0x00004000 4 GL_POINTS = 0x0000 5 GL_LINES = 0x0001 6 GL_LINE_LOOP = 0x0002 7 GL_LINE_STRIP = 0x0003 8 GL_TRIANGLES = 0x0004 9 GL_TRIANGLE_STRIP = 0x0005 10 GL_TRIANGLE_FAN = 0x0006 11 GL_SRC_COLOR = 0x0300 12 GL_ONE_MINUS_SRC_COLOR = 0x0301 13 GL_SRC_ALPHA = 0x0302 14 GL_ONE_MINUS_SRC_ALPHA = 0x0303 15 GL_DST_ALPHA = 0x0304 16 GL_ONE_MINUS_DST_ALPHA = 0x0305 17 GL_DST_COLOR = 0x0306 18 GL_ONE_MINUS_DST_COLOR = 0x0307 19 GL_SRC_ALPHA_SATURATE = 0x0308 20 GL_FUNC_ADD = 0x8006 21 GL_BLEND_EQUATION = 0x8009 22 GL_BLEND_EQUATION_RGB = 0x8009 23 GL_BLEND_EQUATION_ALPHA = 0x883D 24 GL_FUNC_SUBTRACT = 0x800A 25 GL_FUNC_REVERSE_SUBTRACT = 0x800B 26 GL_BLEND_DST_RGB = 0x80C8 27 GL_BLEND_SRC_RGB = 0x80C9 28 GL_BLEND_DST_ALPHA = 0x80CA 29 GL_BLEND_SRC_ALPHA = 0x80CB 30 GL_CONSTANT_COLOR = 0x8001 31 GL_ONE_MINUS_CONSTANT_COLOR = 0x8002 32 GL_CONSTANT_ALPHA = 0x8003 33 GL_ONE_MINUS_CONSTANT_ALPHA = 0x8004 34 GL_BLEND_COLOR = 0x8005 35 GL_ARRAY_BUFFER = 0x8892 36 GL_ELEMENT_ARRAY_BUFFER = 0x8893 37 GL_ARRAY_BUFFER_BINDING = 0x8894 38 GL_ELEMENT_ARRAY_BUFFER_BINDING = 0x8895 39 GL_STREAM_DRAW = 0x88E0 40 GL_STATIC_DRAW = 0x88E4 41 GL_DYNAMIC_DRAW = 0x88E8 42 GL_BUFFER_SIZE = 0x8764 43 GL_BUFFER_USAGE = 0x8765 44 GL_CURRENT_VERTEX_ATTRIB = 0x8626 45 GL_FRONT = 0x0404 46 GL_BACK = 0x0405 47 GL_FRONT_AND_BACK = 0x0408 48 GL_TEXTURE_2D = 0x0DE1 49 GL_CULL_FACE = 0x0B44 50 GL_BLEND = 0x0BE2 51 GL_DITHER = 0x0BD0 52 GL_STENCIL_TEST = 0x0B90 53 GL_DEPTH_TEST = 0x0B71 54 GL_SCISSOR_TEST = 0x0C11 55 GL_POLYGON_OFFSET_FILL = 0x8037 56 GL_SAMPLE_ALPHA_TO_COVERAGE = 0x809E 57 GL_SAMPLE_COVERAGE = 0x80A0 58 GL_INVALID_ENUM = 0x0500 59 GL_INVALID_VALUE = 0x0501 60 GL_INVALID_OPERATION = 0x0502 61 GL_OUT_OF_MEMORY = 0x0505 62 GL_CW = 0x0900 63 GL_CCW = 0x0901 64 GL_LINE_WIDTH = 0x0B21 65 GL_ALIASED_POINT_SIZE_RANGE = 0x846D 66 GL_ALIASED_LINE_WIDTH_RANGE = 0x846E 67 GL_CULL_FACE_MODE = 0x0B45 68 GL_FRONT_FACE = 0x0B46 69 GL_DEPTH_RANGE = 0x0B70 70 GL_DEPTH_WRITEMASK = 0x0B72 71 GL_DEPTH_CLEAR_VALUE = 0x0B73 72 GL_DEPTH_FUNC = 0x0B74 73 GL_STENCIL_CLEAR_VALUE = 0x0B91 74 GL_STENCIL_FUNC = 0x0B92 75 GL_STENCIL_FAIL = 0x0B94 76 GL_STENCIL_PASS_DEPTH_FAIL = 0x0B95 77 GL_STENCIL_PASS_DEPTH_PASS = 0x0B96 78 GL_STENCIL_REF = 0x0B97 79 GL_STENCIL_VALUE_MASK = 0x0B93 80 GL_STENCIL_WRITEMASK = 0x0B98 81 GL_STENCIL_BACK_FUNC = 0x8800 82 GL_STENCIL_BACK_FAIL = 0x8801 83 GL_STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802 84 GL_STENCIL_BACK_PASS_DEPTH_PASS = 0x8803 85 GL_STENCIL_BACK_REF = 0x8CA3 86 GL_STENCIL_BACK_VALUE_MASK = 0x8CA4 87 GL_STENCIL_BACK_WRITEMASK = 0x8CA5 88 GL_VIEWPORT = 0x0BA2 89 GL_SCISSOR_BOX = 0x0C10 90 GL_COLOR_CLEAR_VALUE = 0x0C22 91 GL_COLOR_WRITEMASK = 0x0C23 92 GL_UNPACK_ALIGNMENT = 0x0CF5 93 GL_PACK_ALIGNMENT = 0x0D05 94 GL_MAX_TEXTURE_SIZE = 0x0D33 95 GL_MAX_VIEWPORT_DIMS = 0x0D3A 96 GL_SUBPIXEL_BITS = 0x0D50 97 GL_RED_BITS = 0x0D52 98 GL_GREEN_BITS = 0x0D53 99 GL_BLUE_BITS = 0x0D54 100 GL_ALPHA_BITS = 0x0D55 101 GL_DEPTH_BITS = 0x0D56 102 GL_STENCIL_BITS = 0x0D57 103 GL_POLYGON_OFFSET_UNITS = 0x2A00 104 GL_POLYGON_OFFSET_FACTOR = 0x8038 105 GL_TEXTURE_BINDING_2D = 0x8069 106 GL_SAMPLE_BUFFERS = 0x80A8 107 GL_SAMPLES = 0x80A9 108 GL_SAMPLE_COVERAGE_VALUE = 0x80AA 109 GL_SAMPLE_COVERAGE_INVERT = 0x80AB 110 GL_NUM_COMPRESSED_TEXTURE_FORMATS = 0x86A2 111 GL_COMPRESSED_TEXTURE_FORMATS = 0x86A3 112 GL_DONT_CARE = 0x1100 113 GL_FASTEST = 0x1101 114 GL_NICEST = 0x1102 115 GL_GENERATE_MIPMAP_HINT = 0x8192 116 GL_BYTE = 0x1400 117 GL_UNSIGNED_BYTE = 0x1401 118 GL_SHORT = 0x1402 119 GL_UNSIGNED_SHORT = 0x1403 120 GL_INT = 0x1404 121 GL_UNSIGNED_INT = 0x1405 122 GL_FLOAT = 0x1406 123 GL_FIXED = 0x140C 124 GL_DEPTH_COMPONENT = 0x1902 125 GL_ALPHA = 0x1906 126 GL_RGB = 0x1907 127 GL_RGBA = 0x1908 128 GL_LUMINANCE = 0x1909 129 GL_LUMINANCE_ALPHA = 0x190A 130 GL_UNSIGNED_SHORT_4_4_4_4 = 0x8033 131 GL_UNSIGNED_SHORT_5_5_5_1 = 0x8034 132 GL_UNSIGNED_SHORT_5_6_5 = 0x8363 133 GL_FRAGMENT_SHADER = 0x8B30 134 GL_VERTEX_SHADER = 0x8B31 135 GL_MAX_VERTEX_ATTRIBS = 0x8869 136 GL_MAX_VERTEX_UNIFORM_VECTORS = 0x8DFB 137 GL_MAX_VARYING_VECTORS = 0x8DFC 138 GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8B4D 139 GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8B4C 140 GL_MAX_TEXTURE_IMAGE_UNITS = 0x8872 141 GL_MAX_FRAGMENT_UNIFORM_VECTORS = 0x8DFD 142 GL_SHADER_TYPE = 0x8B4F 143 GL_DELETE_STATUS = 0x8B80 144 GL_LINK_STATUS = 0x8B82 145 GL_VALIDATE_STATUS = 0x8B83 146 GL_ATTACHED_SHADERS = 0x8B85 147 GL_ACTIVE_UNIFORMS = 0x8B86 148 GL_ACTIVE_UNIFORM_MAX_LENGTH = 0x8B87 149 GL_ACTIVE_ATTRIBUTES = 0x8B89 150 GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = 0x8B8A 151 GL_SHADING_LANGUAGE_VERSION = 0x8B8C 152 GL_CURRENT_PROGRAM = 0x8B8D 153 GL_NEVER = 0x0200 154 GL_LESS = 0x0201 155 GL_EQUAL = 0x0202 156 GL_LEQUAL = 0x0203 157 GL_GREATER = 0x0204 158 GL_NOTEQUAL = 0x0205 159 GL_GEQUAL = 0x0206 160 GL_ALWAYS = 0x0207 161 GL_KEEP = 0x1E00 162 GL_REPLACE = 0x1E01 163 GL_INCR = 0x1E02 164 GL_DECR = 0x1E03 165 GL_INVERT = 0x150A 166 GL_INCR_WRAP = 0x8507 167 GL_DECR_WRAP = 0x8508 168 GL_VENDOR = 0x1F00 169 GL_RENDERER = 0x1F01 170 GL_VERSION = 0x1F02 171 GL_EXTENSIONS = 0x1F03 172 GL_NEAREST = 0x2600 173 GL_LINEAR = 0x2601 174 GL_NEAREST_MIPMAP_NEAREST = 0x2700 175 GL_LINEAR_MIPMAP_NEAREST = 0x2701 176 GL_NEAREST_MIPMAP_LINEAR = 0x2702 177 GL_LINEAR_MIPMAP_LINEAR = 0x2703 178 GL_TEXTURE_MAG_FILTER = 0x2800 179 GL_TEXTURE_MIN_FILTER = 0x2801 180 GL_TEXTURE_WRAP_S = 0x2802 181 GL_TEXTURE_WRAP_T = 0x2803 182 GL_TEXTURE = 0x1702 183 GL_TEXTURE_CUBE_MAP = 0x8513 184 GL_TEXTURE_BINDING_CUBE_MAP = 0x8514 185 GL_TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515 186 GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516 187 GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517 188 GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518 189 GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519 190 GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A 191 GL_MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C 192 GL_TEXTURE0 = 0x84C0 193 GL_TEXTURE1 = 0x84C1 194 GL_TEXTURE2 = 0x84C2 195 GL_TEXTURE3 = 0x84C3 196 GL_TEXTURE4 = 0x84C4 197 GL_TEXTURE5 = 0x84C5 198 GL_TEXTURE6 = 0x84C6 199 GL_TEXTURE7 = 0x84C7 200 GL_TEXTURE8 = 0x84C8 201 GL_TEXTURE9 = 0x84C9 202 GL_TEXTURE10 = 0x84CA 203 GL_TEXTURE11 = 0x84CB 204 GL_TEXTURE12 = 0x84CC 205 GL_TEXTURE13 = 0x84CD 206 GL_TEXTURE14 = 0x84CE 207 GL_TEXTURE15 = 0x84CF 208 GL_TEXTURE16 = 0x84D0 209 GL_TEXTURE17 = 0x84D1 210 GL_TEXTURE18 = 0x84D2 211 GL_TEXTURE19 = 0x84D3 212 GL_TEXTURE20 = 0x84D4 213 GL_TEXTURE21 = 0x84D5 214 GL_TEXTURE22 = 0x84D6 215 GL_TEXTURE23 = 0x84D7 216 GL_TEXTURE24 = 0x84D8 217 GL_TEXTURE25 = 0x84D9 218 GL_TEXTURE26 = 0x84DA 219 GL_TEXTURE27 = 0x84DB 220 GL_TEXTURE28 = 0x84DC 221 GL_TEXTURE29 = 0x84DD 222 GL_TEXTURE30 = 0x84DE 223 GL_TEXTURE31 = 0x84DF 224 GL_ACTIVE_TEXTURE = 0x84E0 225 GL_REPEAT = 0x2901 226 GL_CLAMP_TO_EDGE = 0x812F 227 GL_MIRRORED_REPEAT = 0x8370 228 GL_FLOAT_VEC2 = 0x8B50 229 GL_FLOAT_VEC3 = 0x8B51 230 GL_FLOAT_VEC4 = 0x8B52 231 GL_INT_VEC2 = 0x8B53 232 GL_INT_VEC3 = 0x8B54 233 GL_INT_VEC4 = 0x8B55 234 GL_BOOL = 0x8B56 235 GL_BOOL_VEC2 = 0x8B57 236 GL_BOOL_VEC3 = 0x8B58 237 GL_BOOL_VEC4 = 0x8B59 238 GL_FLOAT_MAT2 = 0x8B5A 239 GL_FLOAT_MAT3 = 0x8B5B 240 GL_FLOAT_MAT4 = 0x8B5C 241 GL_SAMPLER_2D = 0x8B5E 242 GL_SAMPLER_CUBE = 0x8B60 243 GL_VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622 244 GL_VERTEX_ATTRIB_ARRAY_SIZE = 0x8623 245 GL_VERTEX_ATTRIB_ARRAY_STRIDE = 0x8624 246 GL_VERTEX_ATTRIB_ARRAY_TYPE = 0x8625 247 GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = 0x886A 248 GL_VERTEX_ATTRIB_ARRAY_POINTER = 0x8645 249 GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 0x889F 250 GL_IMPLEMENTATION_COLOR_READ_TYPE = 0x8B9A 251 GL_IMPLEMENTATION_COLOR_READ_FORMAT = 0x8B9B 252 GL_COMPILE_STATUS = 0x8B81 253 GL_INFO_LOG_LENGTH = 0x8B84 254 GL_SHADER_SOURCE_LENGTH = 0x8B88 255 GL_SHADER_COMPILER = 0x8DFA 256 GL_SHADER_BINARY_FORMATS = 0x8DF8 257 GL_NUM_SHADER_BINARY_FORMATS = 0x8DF9 258 GL_LOW_FLOAT = 0x8DF0 259 GL_MEDIUM_FLOAT = 0x8DF1 260 GL_HIGH_FLOAT = 0x8DF2 261 GL_LOW_INT = 0x8DF3 262 GL_MEDIUM_INT = 0x8DF4 263 GL_HIGH_INT = 0x8DF5 264 GL_FRAMEBUFFER = 0x8D40 265 GL_RENDERBUFFER = 0x8D41 266 GL_RGBA4 = 0x8056 267 GL_RGB5_A1 = 0x8057 268 GL_RGB565 = 0x8D62 269 GL_DEPTH_COMPONENT16 = 0x81A5 270 GL_STENCIL_INDEX = 0x1901 271 GL_STENCIL_INDEX8 = 0x8D48 272 GL_RENDERBUFFER_WIDTH = 0x8D42 273 GL_RENDERBUFFER_HEIGHT = 0x8D43 274 GL_RENDERBUFFER_INTERNAL_FORMAT = 0x8D44 275 GL_RENDERBUFFER_RED_SIZE = 0x8D50 276 GL_RENDERBUFFER_GREEN_SIZE = 0x8D51 277 GL_RENDERBUFFER_BLUE_SIZE = 0x8D52 278 GL_RENDERBUFFER_ALPHA_SIZE = 0x8D53 279 GL_RENDERBUFFER_DEPTH_SIZE = 0x8D54 280 GL_RENDERBUFFER_STENCIL_SIZE = 0x8D55 281 GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 0x8CD0 282 GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 0x8CD1 283 GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 0x8CD2 284 GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 0x8CD3 285 GL_COLOR_ATTACHMENT0 = 0x8CE0 286 GL_DEPTH_ATTACHMENT = 0x8D00 287 GL_STENCIL_ATTACHMENT = 0x8D20 288 GL_FRAMEBUFFER_COMPLETE = 0x8CD5 289 GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 0x8CD6 290 GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 0x8CD7 291 GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS = 0x8CD9 292 GL_FRAMEBUFFER_UNSUPPORTED = 0x8CDD 293 GL_FRAMEBUFFER_BINDING = 0x8CA6 294 GL_RENDERBUFFER_BINDING = 0x8CA7 295 GL_MAX_RENDERBUFFER_SIZE = 0x84E8 296 GL_INVALID_FRAMEBUFFER_OPERATION = 0x0506
# Welcome to :art:CSharpGL
[CSharpGL](https://github.com/bitzhuwei/CSharpGL) is a pure C# project that allows for modern OpenGL rendering in a Objected-Oriented way. It meets common requirements in OpenGL rendering such as:
## :rocket:Modern Rendering
Objected-Oriented modern rendering using GLSL shaders and vertex buffer objects.
## :car:Uniform Variables
structs support setting values for uniform variables in GLSL shader.
## :movie_camera:Camera and Rotator
move or rotate camera to get projection and view matrix.
## :pushpin:Color-Coded Picking
PickableRenderer supports picking primitives in multiple vertex buffer objects using Mouse.
## :volcano:GLCanvas
A winform control that supports drag-drop and wraps initialization of creating OpenGL context.
## :slot_machine:GLControl
Rendering 'Control' at fixed position with fixed size. For example, GLAxis renders an axis at left bottom corner.
'Control' binding to specified border just like winform-control.
## :abcd:Text
Rendering text using ``glRasterPos()`` and CallList.
Rendering text using GLText(a special GLControl).
## :tea:Some Models
A Cube, Sphere, Teapot and some other models.
## :cancer:GLSwitch
Wraps OpenGL commands like
```
glEnable(GL_BLEND);
glBlendFunc(GL_SOURCE_ALPHA, GL_ONE_MINUS_DST_ALPHA);
```
or
```
glLineWidth(2.0f);
```
## :ideograph_advantage:Converting TTF file to picture
The project CSharpGL.Font2Picture in :open_file_folder:`Infrastructure` is a quick tool converting TTF files to pictures along with a xml config file.
微信扫码,自愿捐赠。天涯同道,共谱新篇。
微信捐赠不显示捐赠者个人信息,如需要,请注明联系方式。 |