From d30e253a60d810f5d8f8435e75423e21bffefd23 Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Wed, 23 Aug 2023 19:06:15 +0800 Subject: [PATCH 01/20] [OpenGL] Update extensions --- build.gradle.kts | 6 + modules/overrungl.opengl/build.gradle.kts | 16 +- .../java/overrungl/opengl/FuncParam.java | 24 - .../java/overrungl/opengl/GLExtFunc.java | 24 - .../java/overrungl/opengl/GLExtension.java | 26 - .../overrungl/opengl/OpenGLGenerator.java | 482 ---------- .../generator/java/overrungl/opengl/Type.java | 33 - .../overrungl/opengl/OpenGLGenerator.kt | 826 ++++++++++++++++++ .../main/java/overrungl/opengl/GLConstC.java | 97 -- .../main/java/overrungl/opengl/GLExtCaps.java | 48 +- .../java/overrungl/opengl/GLLoadFunc.java | 14 + .../opengl/ext/arb/GLARBRobustness.java | 137 ++- .../opengl/ext/arb/GLARBSampleLocations.java | 82 +- .../opengl/ext/arb/GLARBSampleShading.java | 43 +- .../opengl/ext/arb/GLARBShaderObjects.java | 557 ++++++------ .../ext/arb/GLARBShadingLanguageInclude.java | 115 +-- .../overrungl/opengl/ext/arb/GLARBShadow.java | 30 +- .../opengl/ext/arb/GLARBShadowAmbient.java | 28 +- .../opengl/ext/arb/GLARBSparseBuffer.java | 73 +- .../opengl/ext/arb/GLARBSparseTexture.java | 59 +- .../ext/arb/GLARBTextureBorderClamp.java | 28 +- .../ext/arb/GLARBTextureBufferObject.java | 47 +- .../ext/arb/GLARBTextureCompression.java | 139 ++- .../ext/arb/GLARBTextureCompressionBptc.java | 32 +- .../opengl/ext/arb/GLARBTextureCubeMap.java | 42 +- .../ext/arb/GLARBTextureCubeMapArray.java | 34 +- .../ext/arb/GLARBTextureEnvCombine.java | 58 +- .../opengl/ext/arb/GLARBTextureEnvDot3.java | 30 +- .../ext/arb/GLARBTextureFilterMinmax.java | 30 +- .../opengl/ext/arb/GLARBTextureFloat.java | 56 +- .../opengl/ext/arb/GLARBTextureGather.java | 30 +- .../ext/arb/GLARBTextureMirroredRepeat.java | 28 +- .../opengl/ext/arb/GLARBTextureRectangle.java | 30 +- .../GLARBTransformFeedbackOverflowQuery.java | 28 +- .../opengl/ext/arb/GLARBTransposeMatrix.java | 90 +- .../opengl/ext/arb/GLARBVertexBlend.java | 143 +++ .../ext/arb/GLARBVertexBufferObject.java | 143 +++ .../opengl/ext/arb/GLARBVertexProgram.java | 381 ++++++++ .../opengl/ext/arb/GLARBVertexShader.java | 53 ++ .../opengl/ext/arb/GLARBViewportArray.java | 37 + .../opengl/ext/arb/GLARBWindowPos.java | 149 ++++ 41 files changed, 2555 insertions(+), 1773 deletions(-) delete mode 100644 modules/overrungl.opengl/src/generator/java/overrungl/opengl/FuncParam.java delete mode 100644 modules/overrungl.opengl/src/generator/java/overrungl/opengl/GLExtFunc.java delete mode 100644 modules/overrungl.opengl/src/generator/java/overrungl/opengl/GLExtension.java delete mode 100644 modules/overrungl.opengl/src/generator/java/overrungl/opengl/OpenGLGenerator.java delete mode 100644 modules/overrungl.opengl/src/generator/java/overrungl/opengl/Type.java create mode 100644 modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBlend.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBufferObject.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexProgram.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexShader.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBViewportArray.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBWindowPos.java diff --git a/build.gradle.kts b/build.gradle.kts index 0e6decf0..20783b10 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,4 +1,5 @@ import org.gradle.plugins.ide.idea.model.IdeaModel +import org.jetbrains.kotlin.gradle.dsl.KotlinJvmProjectExtension import java.nio.file.Files import kotlin.io.path.Path @@ -7,6 +8,7 @@ plugins { `maven-publish` signing id("me.champeau.jmh") version "0.7.1" apply false + embeddedKotlin("jvm") apply false } val projGroupId: String by project @@ -22,6 +24,7 @@ val developers: String by project val jdkEABuildDoc: String? = "jdk21" val targetJavaVersion = 21 val enablePreview = true +rootProject.ext["enablePreview"] = enablePreview group = projGroupId version = projVersion @@ -121,6 +124,7 @@ subprojects { apply(plugin = "java-library") apply(plugin = "idea") apply(plugin = "me.champeau.jmh") + apply(plugin = "org.jetbrains.kotlin.jvm") group = projGroupId version = projVersion @@ -198,6 +202,8 @@ subprojects { } the().module.inheritOutputDirs = true + + the().jvmToolchain(20) } tasks.register("assembleJavadocArgs") { diff --git a/modules/overrungl.opengl/build.gradle.kts b/modules/overrungl.opengl/build.gradle.kts index 63e2c606..e9b367f2 100644 --- a/modules/overrungl.opengl/build.gradle.kts +++ b/modules/overrungl.opengl/build.gradle.kts @@ -1,10 +1,22 @@ +val enablePreview: Boolean by rootProject.ext + sourceSets { create("generator") } +tasks.named("compileGeneratorJava") { + javaCompiler.set(javaToolchains.compilerFor { + targetCompatibility = "20" + languageVersion.set(JavaLanguageVersion.of(21)) + }) +} + tasks.register("generate") { classpath(sourceSets["generator"].runtimeClasspath) - jvmArgs("--enable-preview") - mainClass.set("overrungl.opengl.OpenGLGenerator") + javaLauncher.set(javaToolchains.launcherFor { + languageVersion.set(JavaLanguageVersion.of(21)) + }) + if (enablePreview) jvmArgs("--enable-preview") + mainClass.set("overrungl.opengl.OpenGLGeneratorKt") workingDir = File("src/main/java/overrungl/opengl") } diff --git a/modules/overrungl.opengl/src/generator/java/overrungl/opengl/FuncParam.java b/modules/overrungl.opengl/src/generator/java/overrungl/opengl/FuncParam.java deleted file mode 100644 index 574da3ff..00000000 --- a/modules/overrungl.opengl/src/generator/java/overrungl/opengl/FuncParam.java +++ /dev/null @@ -1,24 +0,0 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - -package overrungl.opengl; - -/** - * @author squid233 - * @since 0.1.0 - */ -public record FuncParam(Type type, String name) { -} diff --git a/modules/overrungl.opengl/src/generator/java/overrungl/opengl/GLExtFunc.java b/modules/overrungl.opengl/src/generator/java/overrungl/opengl/GLExtFunc.java deleted file mode 100644 index bbbf1e36..00000000 --- a/modules/overrungl.opengl/src/generator/java/overrungl/opengl/GLExtFunc.java +++ /dev/null @@ -1,24 +0,0 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - -package overrungl.opengl; - -/** - * @author squid233 - * @since 0.1.0 - */ -public record GLExtFunc(String name, Type returnType, FuncParam... params) { -} diff --git a/modules/overrungl.opengl/src/generator/java/overrungl/opengl/GLExtension.java b/modules/overrungl.opengl/src/generator/java/overrungl/opengl/GLExtension.java deleted file mode 100644 index bc6089c4..00000000 --- a/modules/overrungl.opengl/src/generator/java/overrungl/opengl/GLExtension.java +++ /dev/null @@ -1,26 +0,0 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - -package overrungl.opengl; - -import java.util.Map; - -/** - * @author squid233 - * @since 0.1.0 - */ -public record GLExtension(String name, Map constants, GLExtFunc[] functions) { -} diff --git a/modules/overrungl.opengl/src/generator/java/overrungl/opengl/OpenGLGenerator.java b/modules/overrungl.opengl/src/generator/java/overrungl/opengl/OpenGLGenerator.java deleted file mode 100644 index 36d7c5d1..00000000 --- a/modules/overrungl.opengl/src/generator/java/overrungl/opengl/OpenGLGenerator.java +++ /dev/null @@ -1,482 +0,0 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - -package overrungl.opengl; - -import java.io.IOException; -import java.nio.file.Files; -import java.nio.file.Path; -import java.util.Map; - -/** - * @author squid233 - * @since 0.1.0 - */ -public final class OpenGLGenerator { - public static void main(String[] args) throws IOException { - generateFiles(); - } - - @SuppressWarnings("unchecked") - private static Map constants(String... strings) { - final int length = strings.length; - if (length % 2 != 0) { - throw new IllegalArgumentException(STR."strings.length must be an even; got \{length}"); - } - Map.Entry[] entries = new Map.Entry[length / 2]; - for (int i = 0; i < entries.length; i++) { - entries[i] = Map.entry(strings[i * 2], strings[i * 2 + 1]); - } - return Map.ofEntries(entries); - } - - private static Map constants(String constantsTable) { - return constants(constantsTable.split("\\s+")); - } - - private static GLExtFunc[] functions(GLExtFunc... functions) { - return functions; - } - - private static GLExtFunc func(String name, Type returnType, FuncParam... params) { - return new GLExtFunc(name, returnType, params); - } - - private static FuncParam z(String name) { - return new FuncParam(Type.Boolean, name); - } - - private static FuncParam i(String name) { - return new FuncParam(Type.Int, name); - } - - private static FuncParam j(String name) { - return new FuncParam(Type.Long, name); - } - - private static FuncParam f(String name) { - return new FuncParam(Type.Float, name); - } - - private static FuncParam p(String name) { - return new FuncParam(Type.Address, name); - } - - private static void generateFiles() throws IOException { - generateFile("GLARBRobustness", new GLExtension("GL_ARB_robustness", - constants( - "GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB", "0x00000004", - "GL_LOSE_CONTEXT_ON_RESET_ARB", "0x8252", - "GL_GUILTY_CONTEXT_RESET_ARB", "0x8253", - "GL_INNOCENT_CONTEXT_RESET_ARB", "0x8254", - "GL_UNKNOWN_CONTEXT_RESET_ARB", "0x8255", - "GL_RESET_NOTIFICATION_STRATEGY_ARB", "0x8256", - "GL_NO_RESET_NOTIFICATION_ARB", "0x8261" - ), functions( - func("glGetGraphicsResetStatusARB", Type.Int), - func("glGetnCompressedTexImageARB", Type.Void, i("target"), i("lod"), i("bufSize"), p("img")), - func("glGetnTexImageARB", Type.Void, i("target"), i("level"), i("format"), i("type"), i("bufSize"), p("img")), - func("glGetnUniformdvARB", Type.Void, i("program"), i("location"), i("bufSize"), p("params")), - func("glGetnUniformfvARB", Type.Void, i("program"), i("location"), i("bufSize"), p("params")), - func("glGetnUniformivARB", Type.Void, i("program"), i("location"), i("bufSize"), p("params")), - func("glGetnUniformuivARB", Type.Void, i("program"), i("location"), i("bufSize"), p("params")), - func("glReadnPixelsARB", Type.Void, i("x"), i("y"), i("width"), i("height"), i("format"), i("type"), i("bufSize"), p("data")) - ))); - generateFile("GLARBSampleLocations", new GLExtension("GL_ARB_sample_locations", - constants( - "GL_SAMPLE_LOCATION_SUBPIXEL_BITS_ARB", "0x933D", - "GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_ARB", "0x933E", - "GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_ARB", "0x933F", - "GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_ARB", "0x9340", - "GL_SAMPLE_LOCATION_ARB", "0x8E50", - "GL_PROGRAMMABLE_SAMPLE_LOCATION_ARB", "0x9341", - "GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_ARB", "0x9342", - "GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_ARB", "0x9343" - ), functions( - func("glEvaluateDepthValuesARB", Type.Void), - func("glFramebufferSampleLocationsfvARB", Type.Void, i("target"), i("start"), i("count"), p("v")), - func("glNamedFramebufferSampleLocationsfvARB", Type.Void, i("framebuffer"), i("start"), i("count"), p("v")) - ))); - generateFile("GLARBSampleShading", new GLExtension("GL_ARB_sample_shading", - constants( - "GL_SAMPLE_SHADING_ARB", "0x8C36", - "GL_MIN_SAMPLE_SHADING_VALUE_ARB", "0x8C37" - ), functions( - func("glMinSampleShadingARB", Type.Void, f("value")) - ))); - generateFile("GLARBShaderObjects", new GLExtension("GL_ARB_shader_objects", - constants( - "GL_PROGRAM_OBJECT_ARB", "0x8B40", - "GL_SHADER_OBJECT_ARB", "0x8B48", - "GL_OBJECT_TYPE_ARB", "0x8B4E", - "GL_OBJECT_SUBTYPE_ARB", "0x8B4F", - "GL_FLOAT_VEC2_ARB", "0x8B50", - "GL_FLOAT_VEC3_ARB", "0x8B51", - "GL_FLOAT_VEC4_ARB", "0x8B52", - "GL_INT_VEC2_ARB", "0x8B53", - "GL_INT_VEC3_ARB", "0x8B54", - "GL_INT_VEC4_ARB", "0x8B55", - "GL_BOOL_ARB", "0x8B56", - "GL_BOOL_VEC2_ARB", "0x8B57", - "GL_BOOL_VEC3_ARB", "0x8B58", - "GL_BOOL_VEC4_ARB", "0x8B59", - "GL_FLOAT_MAT2_ARB", "0x8B5A", - "GL_FLOAT_MAT3_ARB", "0x8B5B", - "GL_FLOAT_MAT4_ARB", "0x8B5C", - "GL_SAMPLER_1D_ARB", "0x8B5D", - "GL_SAMPLER_2D_ARB", "0x8B5E", - "GL_SAMPLER_3D_ARB", "0x8B5F", - "GL_SAMPLER_CUBE_ARB", "0x8B60", - "GL_SAMPLER_1D_SHADOW_ARB", "0x8B61", - "GL_SAMPLER_2D_SHADOW_ARB", "0x8B62", - "GL_SAMPLER_2D_RECT_ARB", "0x8B63", - "GL_SAMPLER_2D_RECT_SHADOW_ARB", "0x8B64", - "GL_OBJECT_DELETE_STATUS_ARB", "0x8B80", - "GL_OBJECT_COMPILE_STATUS_ARB", "0x8B81", - "GL_OBJECT_LINK_STATUS_ARB", "0x8B82", - "GL_OBJECT_VALIDATE_STATUS_ARB", "0x8B83", - "GL_OBJECT_INFO_LOG_LENGTH_ARB", "0x8B84", - "GL_OBJECT_ATTACHED_OBJECTS_ARB", "0x8B85", - "GL_OBJECT_ACTIVE_UNIFORMS_ARB", "0x8B86", - "GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB", "0x8B87", - "GL_OBJECT_SHADER_SOURCE_LENGTH_ARB", "0x8B88" - ), functions( - func("glDeleteObjectARB", Type.Void, i("obj")), - func("glGetHandleARB", Type.Int, i("pname")), - func("glDetachObjectARB", Type.Void, i("containerObj"), i("attachedObj")), - func("glCreateShaderObjectARB", Type.Int, i("shaderType")), - func("glShaderSourceARB", Type.Void, i("shaderObj"), i("count"), p("string"), p("length")), - func("glCompileShaderARB", Type.Void, i("shaderObj")), - func("glCreateProgramObjectARB", Type.Int), - func("glAttachObjectARB", Type.Void, i("containerObj"), i("obj")), - func("glLinkProgramARB", Type.Void, i("programObj")), - func("glUseProgramObjectARB", Type.Void, i("programObj")), - func("glValidateProgramARB", Type.Void, i("programObj")), - func("glUniform1fARB", Type.Void, i("location"), f("v0")), - func("glUniform2fARB", Type.Void, i("location"), f("v0"), f("v1")), - func("glUniform3fARB", Type.Void, i("location"), f("v0"), f("v1"), f("v2")), - func("glUniform4fARB", Type.Void, i("location"), f("v0"), f("v1"), f("v2"), f("v3")), - func("glUniform1iARB", Type.Void, i("location"), i("v0")), - func("glUniform2iARB", Type.Void, i("location"), i("v0"), i("v1")), - func("glUniform3iARB", Type.Void, i("location"), i("v0"), i("v1"), i("v2")), - func("glUniform4iARB", Type.Void, i("location"), i("v0"), i("v1"), i("v2"), i("v3")), - func("glUniform1fvARB", Type.Void, i("location"), i("count"), p("value")), - func("glUniform2fvARB", Type.Void, i("location"), i("count"), p("value")), - func("glUniform3fvARB", Type.Void, i("location"), i("count"), p("value")), - func("glUniform4fvARB", Type.Void, i("location"), i("count"), p("value")), - func("glUniform1ivARB", Type.Void, i("location"), i("count"), p("value")), - func("glUniform2ivARB", Type.Void, i("location"), i("count"), p("value")), - func("glUniform3ivARB", Type.Void, i("location"), i("count"), p("value")), - func("glUniform4ivARB", Type.Void, i("location"), i("count"), p("value")), - func("glUniformMatrix2fvARB", Type.Void, i("location"), i("count"), z("transpose"), p("value")), - func("glUniformMatrix3fvARB", Type.Void, i("location"), i("count"), z("transpose"), p("value")), - func("glUniformMatrix4fvARB", Type.Void, i("location"), i("count"), z("transpose"), p("value")), - func("glGetObjectParameterfvARB", Type.Void, i("obj"), i("pname"), p("params")), - func("glGetObjectParameterivARB", Type.Void, i("obj"), i("pname"), p("params")), - func("glGetInfoLogARB", Type.Void, i("obj"), i("maxLength"), p("length"), p("infoLog")), - func("glGetAttachedObjectsARB", Type.Void, i("containerObj"), i("maxCount"), p("count"), p("obj")), - func("glGetUniformLocationARB", Type.Int, i("programObj"), p("name")), - func("glGetActiveUniformARB", Type.Void, i("programObj"), i("index"), i("maxLength"), p("length"), p("size"), p("type"), p("name")), - func("glGetUniformfvARB", Type.Void, i("programObj"), i("location"), p("params")), - func("glGetUniformivARB", Type.Void, i("programObj"), i("location"), p("params")), - func("glGetShaderSourceARB", Type.Void, i("obj"), i("maxLength"), p("length"), p("source")) - ))); - generateFile("GLARBShadingLanguageInclude", new GLExtension("GL_ARB_shading_language_include", - constants( - "GL_SHADER_INCLUDE_ARB", "0x8DAE", - "GL_NAMED_STRING_LENGTH_ARB", "0x8DE9", - "GL_NAMED_STRING_TYPE_ARB", "0x8DEA" - ), functions( - func("glNamedStringARB", Type.Void, i("type"), i("nameLen"), p("name"), i("stringLen"), p("string")), - func("glDeleteNamedStringARB", Type.Void, i("nameLen"), p("name")), - func("glCompileShaderIncludeARB", Type.Void, i("shader"), i("count"), p("path"), p("length")), - func("glIsNamedStringARB", Type.Boolean, i("nameLen"), p("name")), - func("glGetNamedStringARB", Type.Void, i("nameLen"), p("name"), i("bufSize"), p("stringLen"), p("string")), - func("glGetNamedStringivARB", Type.Void, i("nameLen"), p("name"), i("pname"), p("params")) - ))); - generateFile("GLARBShadow", "GL_ARB_shadow", - "GL_TEXTURE_COMPARE_MODE_ARB", "0x884C", - "GL_TEXTURE_COMPARE_FUNC_ARB", "0x884D", - "GL_COMPARE_R_TO_TEXTURE_ARB", "0x884E" - ); - generateFile("GLARBShadowAmbient", "GL_ARB_shadow_ambient", - "GL_TEXTURE_COMPARE_FAIL_VALUE_ARB", "0x80BF"); - generateFile("GLARBSparseBuffer", new GLExtension("GL_ARB_sparse_buffer", - constants( - "GL_SPARSE_STORAGE_BIT_ARB", "0x0400", - "GL_SPARSE_BUFFER_PAGE_SIZE_ARB", "0x82F8" - ), functions( - func("glBufferPageCommitmentARB", Type.Void, i("target"), j("offset"), j("size"), z("commit")), - func("glNamedBufferPageCommitmentEXT", Type.Void, i("buffer"), j("offset"), j("size"), z("commit")), - func("glNamedBufferPageCommitmentARB", Type.Void, i("buffer"), j("offset"), j("size"), z("commit")) - ))); - generateFile("GLARBSparseTexture", new GLExtension("GL_ARB_sparse_texture", - constants( - "GL_TEXTURE_SPARSE_ARB", "0x91A6", - "GL_VIRTUAL_PAGE_SIZE_INDEX_ARB", "0x91A7", - "GL_NUM_SPARSE_LEVELS_ARB", "0x91AA", - "GL_NUM_VIRTUAL_PAGE_SIZES_ARB", "0x91A8", - "GL_VIRTUAL_PAGE_SIZE_X_ARB", "0x9195", - "GL_VIRTUAL_PAGE_SIZE_Y_ARB", "0x9196", - "GL_VIRTUAL_PAGE_SIZE_Z_ARB", "0x9197", - "GL_MAX_SPARSE_TEXTURE_SIZE_ARB", "0x9198", - "GL_MAX_SPARSE_3D_TEXTURE_SIZE_ARB", "0x9199", - "GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_ARB", "0x919A", - "GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_ARB", "0x91A9" - ), functions( - func("glTexPageCommitmentARB", Type.Void, i("target"), i("level"), i("xoffset"), i("yoffset"), i("zoffset"), i("width"), i("height"), i("depth"), z("commit")) - ))); - generateFile("GLARBTextureBorderClamp", "GL_ARB_texture_border_clamp", - "GL_CLAMP_TO_BORDER_ARB", "0x812D"); - generateFile("GLARBTextureBufferObject", new GLExtension("GL_ARB_texture_buffer_object", - constants( - "GL_TEXTURE_BUFFER_ARB", "0x8C2A", - "GL_MAX_TEXTURE_BUFFER_SIZE_ARB", "0x8C2B", - "GL_TEXTURE_BINDING_BUFFER_ARB", "0x8C2C", - "GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB", "0x8C2D", - "GL_TEXTURE_BUFFER_FORMAT_ARB", "0x8C2E" - ), functions( - func("glTexBufferARB", Type.Void, i("target"), i("internalFormat"), i("buffer")) - ))); - generateFile("GLARBTextureCompression", new GLExtension("GL_ARB_texture_compression", - constants( - "GL_COMPRESSED_ALPHA_ARB", "0x84E9", - "GL_COMPRESSED_LUMINANCE_ARB", "0x84EA", - "GL_COMPRESSED_LUMINANCE_ALPHA_ARB", "0x84EB", - "GL_COMPRESSED_INTENSITY_ARB", "0x84EC", - "GL_COMPRESSED_RGB_ARB", "0x84ED", - "GL_COMPRESSED_RGBA_ARB", "0x84EE", - "GL_TEXTURE_COMPRESSION_HINT_ARB", "0x84EF", - "GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB", "0x86A0", - "GL_TEXTURE_COMPRESSED_ARB", "0x86A1", - "GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB", "0x86A2", - "GL_COMPRESSED_TEXTURE_FORMATS_ARB", "0x86A3" - ), functions( - func("glCompressedTexImage3DARB", Type.Void, i("target"), i("level"), i("internalFormat"), i("width"), i("height"), i("depth"), i("border"), i("imageSize"), p("data")), - func("glCompressedTexImage2DARB", Type.Void, i("target"), i("level"), i("internalFormat"), i("width"), i("height"), i("border"), i("imageSize"), p("data")), - func("glCompressedTexImage1DARB", Type.Void, i("target"), i("level"), i("internalFormat"), i("width"), i("border"), i("imageSize"), p("data")), - func("glCompressedTexSubImage3DARB", Type.Void, i("target"), i("level"), i("xoffset"), i("yoffset"), i("zoffset"), i("width"), i("height"), i("depth"), i("format"), i("imageSize"), p("data")), - func("glCompressedTexSubImage2DARB", Type.Void, i("target"), i("level"), i("xoffset"), i("yoffset"), i("width"), i("height"), i("format"), i("imageSize"), p("data")), - func("glCompressedTexSubImage1DARB", Type.Void, i("target"), i("level"), i("xoffset"), i("width"), i("format"), i("imageSize"), p("data")), - func("glGetCompressedTexImageARB", Type.Void, i("target"), i("level"), p("img")) - ))); - generateFile("GLARBTextureCompressionBptc", "GL_ARB_texture_compression_bptc", - "GL_COMPRESSED_RGBA_BPTC_UNORM_ARB", "0x8E8C", - "GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB", "0x8E8D", - "GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB", "0x8E8E", - "GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB", "0x8E8F" - ); - generateFile("GLARBTextureCubeMap", "GL_ARB_texture_cube_map", - "GL_NORMAL_MAP_ARB", "0x8511", - "GL_REFLECTION_MAP_ARB", "0x8512", - "GL_TEXTURE_CUBE_MAP_ARB", "0x8513", - "GL_TEXTURE_BINDING_CUBE_MAP_ARB", "0x8514", - "GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB", "0x8515", - "GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB", "0x8516", - "GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB", "0x8517", - "GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB", "0x8518", - "GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB", "0x8519", - "GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB", "0x851A", - "GL_PROXY_TEXTURE_CUBE_MAP_ARB", "0x851B", - "GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB", "0x851C" - ); - generateFile("GLARBTextureCubeMapArray", "GL_ARB_texture_cube_map_array", - "GL_TEXTURE_CUBE_MAP_ARRAY_ARB", "0x9009", - "GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB", "0x900A", - "GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB", "0x900B", - "GL_SAMPLER_CUBE_MAP_ARRAY_ARB", "0x900C", - "GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB", "0x900D", - "GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB", "0x900E", - "GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB", "0x900F" - ); - generateFile("GLARBTextureEnvCombine", "GL_ARB_texture_env_combine", - "GL_COMBINE_ARB", "0x8570", - "GL_COMBINE_RGB_ARB", "0x8571", - "GL_COMBINE_ALPHA_ARB", "0x8572", - "GL_SOURCE0_RGB_ARB", "0x8580", - "GL_SOURCE1_RGB_ARB", "0x8581", - "GL_SOURCE2_RGB_ARB", "0x8582", - "GL_SOURCE0_ALPHA_ARB", "0x8588", - "GL_SOURCE1_ALPHA_ARB", "0x8589", - "GL_SOURCE2_ALPHA_ARB", "0x858A", - "GL_OPERAND0_RGB_ARB", "0x8590", - "GL_OPERAND1_RGB_ARB", "0x8591", - "GL_OPERAND2_RGB_ARB", "0x8592", - "GL_OPERAND0_ALPHA_ARB", "0x8598", - "GL_OPERAND1_ALPHA_ARB", "0x8599", - "GL_OPERAND2_ALPHA_ARB", "0x859A", - "GL_RGB_SCALE_ARB", "0x8573", - "GL_ADD_SIGNED_ARB", "0x8574", - "GL_INTERPOLATE_ARB", "0x8575", - "GL_SUBTRACT_ARB", "0x84E7", - "GL_CONSTANT_ARB", "0x8576", - "GL_PRIMARY_COLOR_ARB", "0x8577", - "GL_PREVIOUS_ARB", "0x8578" - ); - generateFile("GLARBTextureEnvDot3", "GL_ARB_texture_env_dot3", - "GL_DOT3_RGB_ARB", "0x86AE", - "GL_DOT3_RGBA_ARB", "0x86AF" - ); - generateFile("GLARBTextureFilterMinmax", "GL_ARB_texture_filter_minmax", - "GL_TEXTURE_REDUCTION_MODE_ARB", "0x9366", - "GL_WEIGHTED_AVERAGE_ARB", "0x9367" - ); - generateFile("GLARBTextureFloat", "GL_ARB_texture_float", - "GL_TEXTURE_RED_TYPE_ARB", "0x8C10", - "GL_TEXTURE_GREEN_TYPE_ARB", "0x8C11", - "GL_TEXTURE_BLUE_TYPE_ARB", "0x8C12", - "GL_TEXTURE_ALPHA_TYPE_ARB", "0x8C13", - "GL_TEXTURE_LUMINANCE_TYPE_ARB", "0x8C14", - "GL_TEXTURE_INTENSITY_TYPE_ARB", "0x8C15", - "GL_TEXTURE_DEPTH_TYPE_ARB", "0x8C16", - "GL_UNSIGNED_NORMALIZED_ARB", "0x8C17", - "GL_RGBA32F_ARB", "0x8814", - "GL_RGB32F_ARB", "0x8815", - "GL_ALPHA32F_ARB", "0x8816", - "GL_INTENSITY32F_ARB", "0x8817", - "GL_LUMINANCE32F_ARB", "0x8818", - "GL_LUMINANCE_ALPHA32F_ARB", "0x8819", - "GL_RGBA16F_ARB", "0x881A", - "GL_RGB16F_ARB", "0x881B", - "GL_ALPHA16F_ARB", "0x881C", - "GL_INTENSITY16F_ARB", "0x881D", - "GL_LUMINANCE16F_ARB", "0x881E", - "GL_LUMINANCE_ALPHA16F_ARB", "0x881F" - ); - generateFile("GLARBTextureGather", "GL_ARB_texture_gather", """ - GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB 0x8E5E - GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB 0x8E5F - GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB 0x8F9F"""); - generateFile("GLARBTextureMirroredRepeat", "GL_ARB_texture_mirrored_repeat", - "GL_MIRRORED_REPEAT_ARB", "0x8370"); - generateFile("GLARBTextureRectangle", "GL_ARB_texture_rectangle", """ - GL_TEXTURE_RECTANGLE_ARB 0x84F5 - GL_TEXTURE_BINDING_RECTANGLE_ARB 0x84F6 - GL_PROXY_TEXTURE_RECTANGLE_ARB 0x84F7 - GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB 0x84F8"""); - generateFile("GLARBTransformFeedbackOverflowQuery", "GL_ARB_transform_feedback_overflow_query", """ - GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB 0x82EC - GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB 0x82ED"""); - generateFile("GLARBTransposeMatrix", new GLExtension("GL_ARB_transpose_matrix", - constants(""" - GL_TRANSPOSE_MODELVIEW_MATRIX_ARB 0x84E3 - GL_TRANSPOSE_PROJECTION_MATRIX_ARB 0x84E4 - GL_TRANSPOSE_TEXTURE_MATRIX_ARB 0x84E5 - GL_TRANSPOSE_COLOR_MATRIX_ARB 0x84E6"""), functions( - func("glLoadTransposeMatrixfARB", Type.Void, p("m")), - func("glLoadTransposeMatrixdARB", Type.Void, p("m")), - func("glMultTransposeMatrixfARB", Type.Void, p("m")), - func("glMultTransposeMatrixdARB", Type.Void, p("m")) - ))); - } - - private static void generateFile(String filename, String extName, String constantsTable) throws IOException { - generateFile(filename, new GLExtension(extName, constants(constantsTable), null)); - } - - private static void generateFile(String filename, String extName, String... constants) throws IOException { - generateFile(filename, new GLExtension(extName, constants(constants), null)); - } - - private static void generateFile(String filename, GLExtension extension) throws IOException { - final StringBuilder sb = new StringBuilder(2048); - final boolean isArb = filename.startsWith("GLARB"); - // file-header - sb.append(""" - // this file is auto-generated. DO NOT EDIT! - package overrungl.opengl.ext"""); - if (isArb) { - sb.append(".arb"); - } - sb.append(";").append(""" - - - import overrungl.*; - import overrungl.opengl.*; - import java.lang.foreign.MemorySegment; - import static overrungl.FunctionDescriptors.*; - - /** - *""").append(" {@code ").append(extension.name()).append(""" - } - */ - public final class\s""").append(filename).append(" {"); - // constants - for (var e : extension.constants().entrySet()) { - sb.append("\n public static final int ").append(e.getKey()).append(" = ").append(e.getValue()).append(';'); - } - // load functions - final GLExtFunc[] functions = extension.functions(); - if (functions != null) { - sb.append(""" - \n - public static void load(GLExtCaps ext, GLLoadFunc load) { - if (!ext.""").append(extension.name()).append(") return;"); - for (GLExtFunc(String name, Type returnType, FuncParam[] params) : functions) { - sb.append("\n ext.").append(name).append(" = load.invoke(\"").append(name).append("\", "); - for (FuncParam param : params) { - sb.append(param.type().shortStr()); - } - sb.append(returnType.shortStr()); - sb.append(");"); - } - sb.append("\n }\n"); - // declare methods - for (GLExtFunc(String name, Type returnType, FuncParam[] params) : functions) { - sb.append("\n public static ").append(returnType.name()).append(' ').append(name).append("("); - // parameters - int i = 0; - for (FuncParam(Type type, String paramName) : params) { - if (i > 0) sb.append(", "); - sb.append(type.name()).append(' ').append(paramName); - i++; - } - // method body - sb.append(""" - ) { - final var ext = GLLoader.getExtCapabilities(); - try { - \s"""); - if (!returnType.equals(Type.Void)) { - sb.append("return (").append(returnType.name()).append(") "); - } - // invoke function - sb.append("GLLoader.check(ext.").append(name).append(").invokeExact("); - i = 0; - for (FuncParam param : params) { - if (i > 0) sb.append(", "); - sb.append(param.name()); - i++; - } - sb.append(""" - ); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - }"""); - } - } - // eof - sb.append("\n}\n"); - String prefix; - if (isArb) { - prefix = "arb/"; - } else { - prefix = ""; - } - Files.writeString(Path.of(STR."ext/\{prefix}\{filename}.java"), sb); - } -} diff --git a/modules/overrungl.opengl/src/generator/java/overrungl/opengl/Type.java b/modules/overrungl.opengl/src/generator/java/overrungl/opengl/Type.java deleted file mode 100644 index db4df07e..00000000 --- a/modules/overrungl.opengl/src/generator/java/overrungl/opengl/Type.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - -package overrungl.opengl; - -/** - * @author squid233 - * @since 0.1.0 - */ -public record Type(String name, String shortStr) { - public static final Type Void = new Type("void", "V"); - public static final Type Boolean = new Type("byte", "Z"); - public static final Type Byte = new Type("byte", "B"); - public static final Type Short = new Type("short", "S"); - public static final Type Int = new Type("int", "I"); - public static final Type Long = new Type("long", "J"); - public static final Type Float = new Type("float", "F"); - public static final Type Double = new Type("double", "D"); - public static final Type Address = new Type("MemorySegment", "P"); -} diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt new file mode 100644 index 00000000..68ea9466 --- /dev/null +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt @@ -0,0 +1,826 @@ +/* + * MIT License + * + * Copyright (c) 2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +package overrungl.opengl + +import overrungl.opengl.OpenGLExt.ARB +import overrungl.opengl.OpenGLExt.CORE +import java.nio.file.Files +import kotlin.io.path.Path + +enum class OpenGLExt(val dir: String, val packageName: String, val extName: String) { + CORE("", "", ""), + ARB("ext/arb", ".ext.arb", "ARB") +} + +data class Type(val name: String, val layout: String?) { + operator fun invoke(name: String, nativeType: String? = null): Parameter = Parameter(this, name, nativeType) + override fun toString(): String = name +} + +val void = Type("void", null) +val boolean = Type("boolean", "JAVA_BYTE") +val byte = Type("byte", "JAVA_BYTE") +val short = Type("short", "JAVA_SHORT") +val int = Type("int", "JAVA_INT") +val long = Type("long", "JAVA_LONG") +val float = Type("float", "JAVA_FLOAT") +val double = Type("double", "JAVA_DOUBLE") +val address = Type("MemorySegment", "ADDRESS") +val GLboolean = boolean +val GLbyte = byte +val GLubyte = byte +val GLshort = short +val GLushort = short +val GLint = int +val GLuint = int +val GLenum = int +val GLsizei = int +val GLfloat = float +val GLdouble = double + +val GLsizeiptrARB = long +val GLintptrARB = long +val GLhandleARB = int // Don't know how to handle on APPLE +val GLcharARB = byte + +data class Parameter( + val type: Type, + val name: String, + val nativeType: String? +) + +data class Function( + val name: String, + val returnType: Type = void, + val nativeType: String?, + val params: List +) + +class OpenGLFile( + private val name: String, + private val ext: OpenGLExt = CORE, + private val extName: String = "EXT" +) { + private val constants = LinkedHashMap() + private val functions = ArrayList() + + operator fun String.invoke(value: String) { + constants[this] = value + } + + operator fun String.invoke(returnType: Type, vararg params: Parameter, nativeType: String?=null) { + functions.add(Function(this, returnType, nativeType, params.toList())) + } + + internal fun generate() { + Files.writeString(Path("${ext.dir}/GL${ext.extName}$name.java"), buildString { + // file-header + appendLine( + """ + // this file is auto-generated. DO NOT EDIT! + package overrungl.opengl${ext.packageName}; + + import overrungl.*; + import overrungl.opengl.*; + import java.lang.foreign.*; + import static java.lang.foreign.FunctionDescriptor.of; + import static java.lang.foreign.FunctionDescriptor.ofVoid; + import static java.lang.foreign.ValueLayout.*; + import static overrungl.opengl.GLLoader.*; + + /** + * {@code $extName} + */ + public final class GL${ext.extName}$name { + """.trimIndent() + ) + // constants + constants.forEach { (name, value) -> + appendLine(" public static final int $name = $value;") + } + if (functions.isNotEmpty()) { + appendLine() + // loader + appendLine(" public static void load(GLExtCaps ext, GLLoadFunc load) {") + appendLine(" if (!ext.$extName) return;") + functions.forEach { f -> + append(" ext.${f.name} = load.invoke(\"${f.name}\", ${if (f.returnType == void) "ofVoid" else "of"}(") + if (f.returnType != void) + append(f.returnType.layout) + f.params.forEachIndexed { index, it -> + if (index != 0 || f.returnType != void) append(", ") + append(it.type.layout) + } + appendLine("));") + } + appendLine(" }") + appendLine() + // functions + functions.forEach { f -> + append(" public static ") + if (f.nativeType!=null) + append("@NativeType(\"${f.nativeType}\") ") + append("${f.returnType} ${f.name}(") + f.params.forEachIndexed { index, it -> + if (index != 0) append(", ") + if (it.nativeType != null) + append("@NativeType(\"${it.nativeType}\") ") + append("${it.type} ${it.name}") + } + appendLine(") {") + appendLine(" final var ext = getExtCapabilities();") + appendLine(" try {") + if (f.returnType != void) + appendLine(" return (${f.returnType})") + append(" check(ext.${f.name}).invokeExact(") + f.params.forEachIndexed { index, it -> + if (index != 0) append(", ") + append(it.name) + } + appendLine( + """); + | } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + | } + """.trimMargin() + ) + appendLine() + } + } + appendLine("}") + }) + } +} + +fun file( + name: String, + ext: OpenGLExt = CORE, + extName: String = "EXT", + block: OpenGLFile.() -> Unit +) { + OpenGLFile(name, ext, extName).also(block).generate() +} + +fun file( + name: String, + ext: OpenGLExt = CORE, + extName: String = "EXT", + vararg const: Pair +) { + file(name, ext, extName) { + const.forEach { (name, value) -> name(value) } + } +} + +/** + * @author squid233 + * @since 0.1.0 + */ +fun main() { + file("Robustness", ARB, "GL_ARB_robustness") { + "GL_NO_RESET_NOTIFICATION_ARB"("0x8261") + "GL_RESET_NOTIFICATION_STRATEGY_ARB"("0x8256") + "GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB"("0x00000004") + "GL_UNKNOWN_CONTEXT_RESET_ARB"("0x8255") + "GL_LOSE_CONTEXT_ON_RESET_ARB"("0x8252") + "GL_INNOCENT_CONTEXT_RESET_ARB"("0x8254") + "GL_GUILTY_CONTEXT_RESET_ARB"("0x8253") + "glGetGraphicsResetStatusARB"(int) + "glGetnCompressedTexImageARB"(void, int("target"), int("lod"), int("bufSize"), address("img", "void*")) + "glGetnTexImageARB"( + void, + int("target"), + int("level"), + int("format"), + int("type"), + int("bufSize"), + address("img", "void*") + ) + "glGetnUniformdvARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLdouble*")) + "glGetnUniformfvARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLfloat*")) + "glGetnUniformivARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLint*")) + "glGetnUniformuivARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLuint*")) + "glReadnPixelsARB"( + void, + int("x"), + int("y"), + int("width"), + int("height"), + int("format"), + int("type"), + int("bufSize"), + address("data", "void*") + ) + } + file("SampleLocations", ARB, "GL_ARB_sample_locations") { + "GL_SAMPLE_LOCATION_SUBPIXEL_BITS_ARB"("0x933D") + "GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_ARB"("0x933E") + "GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_ARB"("0x933F") + "GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_ARB"("0x9340") + "GL_SAMPLE_LOCATION_ARB"("0x8E50") + "GL_PROGRAMMABLE_SAMPLE_LOCATION_ARB"("0x9341") + "GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_ARB"("0x9342") + "GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_ARB"("0x9343") + "glEvaluateDepthValuesARB"(void) + "glFramebufferSampleLocationsfvARB"(void, int("target"), int("start"), int("count"), address("v", "const GLfloat *v")) + "glNamedFramebufferSampleLocationsfvARB"(void, int("framebuffer"), int("start"), int("count"), address("v", "const GLfloat *v")) + } + file("SampleShading", ARB, "GL_ARB_sample_shading") { + "GL_SAMPLE_SHADING_ARB"("0x8C36") + "GL_MIN_SAMPLE_SHADING_VALUE_ARB"("0x8C37") + "glMinSampleShadingARB"(void, float("value")) + } + file("ShaderObjects", ARB, "GL_ARB_shader_objects") { + "GL_PROGRAM_OBJECT_ARB"("0x8B40") + "GL_SHADER_OBJECT_ARB"("0x8B48") + "GL_OBJECT_TYPE_ARB"("0x8B4E") + "GL_OBJECT_SUBTYPE_ARB"("0x8B4F") + "GL_FLOAT_VEC2_ARB"("0x8B50") + "GL_FLOAT_VEC3_ARB"("0x8B51") + "GL_FLOAT_VEC4_ARB"("0x8B52") + "GL_INT_VEC2_ARB"("0x8B53") + "GL_INT_VEC3_ARB"("0x8B54") + "GL_INT_VEC4_ARB"("0x8B55") + "GL_BOOL_ARB"("0x8B56") + "GL_BOOL_VEC2_ARB"("0x8B57") + "GL_BOOL_VEC3_ARB"("0x8B58") + "GL_BOOL_VEC4_ARB"("0x8B59") + "GL_FLOAT_MAT2_ARB"("0x8B5A") + "GL_FLOAT_MAT3_ARB"("0x8B5B") + "GL_FLOAT_MAT4_ARB"("0x8B5C") + "GL_SAMPLER_1D_ARB"("0x8B5D") + "GL_SAMPLER_2D_ARB"("0x8B5E") + "GL_SAMPLER_3D_ARB"("0x8B5F") + "GL_SAMPLER_CUBE_ARB"("0x8B60") + "GL_SAMPLER_1D_SHADOW_ARB"("0x8B61") + "GL_SAMPLER_2D_SHADOW_ARB"("0x8B62") + "GL_SAMPLER_2D_RECT_ARB"("0x8B63") + "GL_SAMPLER_2D_RECT_SHADOW_ARB"("0x8B64") + "GL_OBJECT_DELETE_STATUS_ARB"("0x8B80") + "GL_OBJECT_COMPILE_STATUS_ARB"("0x8B81") + "GL_OBJECT_LINK_STATUS_ARB"("0x8B82") + "GL_OBJECT_VALIDATE_STATUS_ARB"("0x8B83") + "GL_OBJECT_INFO_LOG_LENGTH_ARB"("0x8B84") + "GL_OBJECT_ATTACHED_OBJECTS_ARB"("0x8B85") + "GL_OBJECT_ACTIVE_UNIFORMS_ARB"("0x8B86") + "GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB"("0x8B87") + "GL_OBJECT_SHADER_SOURCE_LENGTH_ARB"("0x8B88") + "glDeleteObjectARB"(void, int("obj")) + "glGetHandleARB"(int, int("pname")) + "glDetachObjectARB"(void, int("containerObj"), int("attachedObj")) + "glCreateShaderObjectARB"(int, int("shaderType")) + "glShaderSourceARB"(void, int("shaderObj"), int("count"), address("string", "const GLcharARB**"), address("length", "const GLint*")) + "glCompileShaderARB"(void, int("shaderObj")) + "glCreateProgramObjectARB"(int) + "glAttachObjectARB"(void, int("containerObj"), int("obj")) + "glLinkProgramARB"(void, int("programObj")) + "glUseProgramObjectARB"(void, int("programObj")) + "glValidateProgramARB"(void, int("programObj")) + "glUniform1fARB"(void, int("location"), float("v0")) + "glUniform2fARB"(void, int("location"), float("v0"), float("v1")) + "glUniform3fARB"(void, int("location"), float("v0"), float("v1"), float("v2")) + "glUniform4fARB"(void, int("location"), float("v0"), float("v1"), float("v2"), float("v3")) + "glUniform1iARB"(void, int("location"), int("v0")) + "glUniform2iARB"(void, int("location"), int("v0"), int("v1")) + "glUniform3iARB"(void, int("location"), int("v0"), int("v1"), int("v2")) + "glUniform4iARB"(void, int("location"), int("v0"), int("v1"), int("v2"), int("v3")) + "glUniform1fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) + "glUniform2fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) + "glUniform3fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) + "glUniform4fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) + "glUniform1ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) + "glUniform2ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) + "glUniform3ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) + "glUniform4ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) + "glUniformMatrix2fvARB"(void, int("location"), int("count"), boolean("transpose"), address("value", "const GLfloat*")) + "glUniformMatrix3fvARB"(void, int("location"), int("count"), boolean("transpose"), address("value", "const GLfloat*")) + "glUniformMatrix4fvARB"(void, int("location"), int("count"), boolean("transpose"), address("value", "const GLfloat*")) + "glGetObjectParameterfvARB"(void, int("obj"), int("pname"), address("params", "GLfloat*")) + "glGetObjectParameterivARB"(void, int("obj"), int("pname"), address("params", "GLint*")) + "glGetInfoLogARB"(void, int("obj"), int("maxLength"), address("length", "GLsizei*"), address("infoLog", "GLcharARB*")) + "glGetAttachedObjectsARB"(void, int("containerObj"), int("maxCount"), address("count", "GLsizei*"), address("obj", "GLhandleARB*")) + "glGetUniformLocationARB"(int, int("programObj"), address("name", "const GLcharARB*")) + "glGetActiveUniformARB"( + void, + int("programObj"), + int("index"), + int("maxLength"), + address("length", "GLsizei*"), + address("size", "GLint*"), + address("type", "GLenum*"), + address("name", "GLcharARB*") + ) + "glGetUniformfvARB"(void, int("programObj"), int("location"), address("params", "GLfloat*")) + "glGetUniformivARB"(void, int("programObj"), int("location"), address("params", "GLint*")) + "glGetShaderSourceARB"(void, int("obj"), int("maxLength"), address("length", "GLsizei*"), address("source", "GLcharARB*")) + } + file("ShadingLanguageInclude", ARB, "GL_ARB_shading_language_include") { + "GL_SHADER_INCLUDE_ARB"("0x8DAE") + "GL_NAMED_STRING_LENGTH_ARB"("0x8DE9") + "GL_NAMED_STRING_TYPE_ARB"("0x8DEA") + "glNamedStringARB"(void, int("type"), int("nameLen"), address("name", "const GLchar*"), int("stringLen"), address("string", "const GLchar*")) + "glDeleteNamedStringARB"(void, int("nameLen"), address("name", "const GLchar*")) + "glCompileShaderIncludeARB"(void, int("shader"), int("count"), address("path", "const GLchar *const*"), address("length", "const GLint*")) + "glIsNamedStringARB"(boolean, int("nameLen"), address("name", "const GLchar*")) + "glGetNamedStringARB"( + void, + int("nameLen"), + address("name", "const GLchar*"), + int("bufSize"), + address("stringLen", "GLint*"), + address("string", "GLchar*") + ) + "glGetNamedStringivARB"(void, int("nameLen"), address("name", "const GLchar*"), int("pname"), address("params", "GLint*")) + } + file("Shadow", ARB, "GL_ARB_shadow") { + "GL_TEXTURE_COMPARE_MODE_ARB"("0x884C") + "GL_TEXTURE_COMPARE_FUNC_ARB"("0x884D") + "GL_COMPARE_R_TO_TEXTURE_ARB"("0x884E") + } + file("ShadowAmbient", ARB, "GL_ARB_shadow_ambient") { + "GL_TEXTURE_COMPARE_FAIL_VALUE_ARB"("0x80BF") + } + file("SparseBuffer", ARB, "GL_ARB_sparse_buffer") { + "GL_SPARSE_STORAGE_BIT_ARB"("0x0400") + "GL_SPARSE_BUFFER_PAGE_SIZE_ARB"("0x82F8") + "glBufferPageCommitmentARB"(void, int("target"), long("offset"), long("size"), boolean("commit")) + "glNamedBufferPageCommitmentEXT"(void, int("buffer"), long("offset"), long("size"), boolean("commit")) + "glNamedBufferPageCommitmentARB"(void, int("buffer"), long("offset"), long("size"), boolean("commit")) + } + file("SparseTexture", ARB, "GL_ARB_sparse_texture") { + "GL_TEXTURE_SPARSE_ARB"("0x91A6") + "GL_VIRTUAL_PAGE_SIZE_INDEX_ARB"("0x91A7") + "GL_NUM_SPARSE_LEVELS_ARB"("0x91AA") + "GL_NUM_VIRTUAL_PAGE_SIZES_ARB"("0x91A8") + "GL_VIRTUAL_PAGE_SIZE_X_ARB"("0x9195") + "GL_VIRTUAL_PAGE_SIZE_Y_ARB"("0x9196") + "GL_VIRTUAL_PAGE_SIZE_Z_ARB"("0x9197") + "GL_MAX_SPARSE_TEXTURE_SIZE_ARB"("0x9198") + "GL_MAX_SPARSE_3D_TEXTURE_SIZE_ARB"("0x9199") + "GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_ARB"("0x919A") + "GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_ARB"("0x91A9") + "glTexPageCommitmentARB"( + void, + int("target"), + int("level"), + int("xoffset"), + int("yoffset"), + int("zoffset"), + int("width"), + int("height"), + int("depth"), + boolean("commit") + ) + } + file("TextureBorderClamp", ARB, "GL_ARB_texture_border_clamp") { + "GL_CLAMP_TO_BORDER_ARB"("0x812D") + } + file("TextureBufferObject", ARB, "GL_ARB_texture_buffer_object") { + "GL_TEXTURE_BUFFER_ARB"("0x8C2A") + "GL_MAX_TEXTURE_BUFFER_SIZE_ARB"("0x8C2B") + "GL_TEXTURE_BINDING_BUFFER_ARB"("0x8C2C") + "GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB"("0x8C2D") + "GL_TEXTURE_BUFFER_FORMAT_ARB"("0x8C2E") + "glTexBufferARB"(void, int("target"), int("internalFormat"), int("buffer")) + } + file("TextureCompression", ARB, "GL_ARB_texture_compression") { + "GL_COMPRESSED_ALPHA_ARB"("0x84E9") + "GL_COMPRESSED_LUMINANCE_ARB"("0x84EA") + "GL_COMPRESSED_LUMINANCE_ALPHA_ARB"("0x84EB") + "GL_COMPRESSED_INTENSITY_ARB"("0x84EC") + "GL_COMPRESSED_RGB_ARB"("0x84ED") + "GL_COMPRESSED_RGBA_ARB"("0x84EE") + "GL_TEXTURE_COMPRESSION_HINT_ARB"("0x84EF") + "GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB"("0x86A0") + "GL_TEXTURE_COMPRESSED_ARB"("0x86A1") + "GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB"("0x86A2") + "GL_COMPRESSED_TEXTURE_FORMATS_ARB"("0x86A3") + "glCompressedTexImage3DARB"( + void, + int("target"), + int("level"), + int("internalFormat"), + int("width"), + int("height"), + int("depth"), + int("border"), + int("imageSize"), + address("data", "const void*") + ) + "glCompressedTexImage2DARB"( + void, + int("target"), + int("level"), + int("internalFormat"), + int("width"), + int("height"), + int("border"), + int("imageSize"), + address("data", "const void*") + ) + "glCompressedTexImage1DARB"( + void, + int("target"), + int("level"), + int("internalFormat"), + int("width"), + int("border"), + int("imageSize"), + address("data", "const void*") + ) + "glCompressedTexSubImage3DARB"( + void, + int("target"), + int("level"), + int("xoffset"), + int("yoffset"), + int("zoffset"), + int("width"), + int("height"), + int("depth"), + int("format"), + int("imageSize"), + address("data", "const void*") + ) + "glCompressedTexSubImage2DARB"( + void, + int("target"), + int("level"), + int("xoffset"), + int("yoffset"), + int("width"), + int("height"), + int("format"), + int("imageSize"), + address("data", "const void*") + ) + "glCompressedTexSubImage1DARB"( + void, + int("target"), + int("level"), + int("xoffset"), + int("width"), + int("format"), + int("imageSize"), + address("data", "const void*") + ) + "glGetCompressedTexImageARB"(void, int("target"), int("level"), address("img", "void*")) + } + file("TextureCompressionBptc", ARB, "GL_ARB_texture_compression_bptc") { + "GL_COMPRESSED_RGBA_BPTC_UNORM_ARB"("0x8E8C") + "GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB"("0x8E8D") + "GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB"("0x8E8E") + "GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB"("0x8E8F") + } + file("TextureCubeMap", ARB, "GL_ARB_texture_cube_map") { + "GL_NORMAL_MAP_ARB"("0x8511") + "GL_REFLECTION_MAP_ARB"("0x8512") + "GL_TEXTURE_CUBE_MAP_ARB"("0x8513") + "GL_TEXTURE_BINDING_CUBE_MAP_ARB"("0x8514") + "GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB"("0x8515") + "GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB"("0x8516") + "GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB"("0x8517") + "GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB"("0x8518") + "GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB"("0x8519") + "GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB"("0x851A") + "GL_PROXY_TEXTURE_CUBE_MAP_ARB"("0x851B") + "GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB"("0x851C") + } + file("TextureCubeMapArray", ARB, "GL_ARB_texture_cube_map_array") { + "GL_TEXTURE_CUBE_MAP_ARRAY_ARB"("0x9009") + "GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB"("0x900A") + "GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB"("0x900B") + "GL_SAMPLER_CUBE_MAP_ARRAY_ARB"("0x900C") + "GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB"("0x900D") + "GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB"("0x900E") + "GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB"("0x900F") + } + file("TextureEnvCombine", ARB, "GL_ARB_texture_env_combine") { + "GL_COMBINE_ARB"("0x8570") + "GL_COMBINE_RGB_ARB"("0x8571") + "GL_COMBINE_ALPHA_ARB"("0x8572") + "GL_SOURCE0_RGB_ARB"("0x8580") + "GL_SOURCE1_RGB_ARB"("0x8581") + "GL_SOURCE2_RGB_ARB"("0x8582") + "GL_SOURCE0_ALPHA_ARB"("0x8588") + "GL_SOURCE1_ALPHA_ARB"("0x8589") + "GL_SOURCE2_ALPHA_ARB"("0x858A") + "GL_OPERAND0_RGB_ARB"("0x8590") + "GL_OPERAND1_RGB_ARB"("0x8591") + "GL_OPERAND2_RGB_ARB"("0x8592") + "GL_OPERAND0_ALPHA_ARB"("0x8598") + "GL_OPERAND1_ALPHA_ARB"("0x8599") + "GL_OPERAND2_ALPHA_ARB"("0x859A") + "GL_RGB_SCALE_ARB"("0x8573") + "GL_ADD_SIGNED_ARB"("0x8574") + "GL_INTERPOLATE_ARB"("0x8575") + "GL_SUBTRACT_ARB"("0x84E7") + "GL_CONSTANT_ARB"("0x8576") + "GL_PRIMARY_COLOR_ARB"("0x8577") + "GL_PREVIOUS_ARB"("0x8578") + } + file("TextureEnvDot3", ARB, "GL_ARB_texture_env_dot3") { + "GL_DOT3_RGB_ARB"("0x86AE") + "GL_DOT3_RGBA_ARB"("0x86AF") + } + file("TextureFilterMinmax", ARB, "GL_ARB_texture_filter_minmax") { + "GL_TEXTURE_REDUCTION_MODE_ARB"("0x9366") + "GL_WEIGHTED_AVERAGE_ARB"("0x9367") + } + file("TextureFloat", ARB, "GL_ARB_texture_float") { + "GL_TEXTURE_RED_TYPE_ARB"("0x8C10") + "GL_TEXTURE_GREEN_TYPE_ARB"("0x8C11") + "GL_TEXTURE_BLUE_TYPE_ARB"("0x8C12") + "GL_TEXTURE_ALPHA_TYPE_ARB"("0x8C13") + "GL_TEXTURE_LUMINANCE_TYPE_ARB"("0x8C14") + "GL_TEXTURE_INTENSITY_TYPE_ARB"("0x8C15") + "GL_TEXTURE_DEPTH_TYPE_ARB"("0x8C16") + "GL_UNSIGNED_NORMALIZED_ARB"("0x8C17") + "GL_RGBA32F_ARB"("0x8814") + "GL_RGB32F_ARB"("0x8815") + "GL_ALPHA32F_ARB"("0x8816") + "GL_INTENSITY32F_ARB"("0x8817") + "GL_LUMINANCE32F_ARB"("0x8818") + "GL_LUMINANCE_ALPHA32F_ARB"("0x8819") + "GL_RGBA16F_ARB"("0x881A") + "GL_RGB16F_ARB"("0x881B") + "GL_ALPHA16F_ARB"("0x881C") + "GL_INTENSITY16F_ARB"("0x881D") + "GL_LUMINANCE16F_ARB"("0x881E") + "GL_LUMINANCE_ALPHA16F_ARB"("0x881F") + } + file("TextureGather", ARB, "GL_ARB_texture_gather") { + "GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB"("0x8E5E") + "GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB"("0x8E5F") + "GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB"("0x8F9F") + } + file("TextureMirroredRepeat", ARB, "GL_ARB_texture_mirrored_repeat") { + "GL_MIRRORED_REPEAT_ARB"("0x8370") + } + file("TextureRectangle", ARB, "GL_ARB_texture_rectangle") { + "GL_TEXTURE_RECTANGLE_ARB"("0x84F5") + "GL_TEXTURE_BINDING_RECTANGLE_ARB"("0x84F6") + "GL_PROXY_TEXTURE_RECTANGLE_ARB"("0x84F7") + "GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB"("0x84F8") + } + file("TransformFeedbackOverflowQuery", ARB, "GL_ARB_transform_feedback_overflow_query") { + "GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB"("0x82EC") + "GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB"("0x82ED") + } + file("TransposeMatrix", ARB, "GL_ARB_transpose_matrix") { + "GL_TRANSPOSE_MODELVIEW_MATRIX_ARB"("0x84E3") + "GL_TRANSPOSE_PROJECTION_MATRIX_ARB"("0x84E4") + "GL_TRANSPOSE_TEXTURE_MATRIX_ARB"("0x84E5") + "GL_TRANSPOSE_COLOR_MATRIX_ARB"("0x84E6") + "glLoadTransposeMatrixfARB"(void, address("m", "const GLfloat*")) + "glLoadTransposeMatrixdARB"(void, address("m", "const GLdouble*")) + "glMultTransposeMatrixfARB"(void, address("m", "const GLfloat*")) + "glMultTransposeMatrixdARB"(void, address("m", "const GLdouble*")) + } + file("VertexBlend", ARB, "GL_ARB_vertex_blend") { + "GL_MAX_VERTEX_UNITS_ARB"("0x86A4") + "GL_ACTIVE_VERTEX_UNITS_ARB"("0x86A5") + "GL_WEIGHT_SUM_UNITY_ARB"("0x86A6") + "GL_VERTEX_BLEND_ARB"("0x86A7") + "GL_CURRENT_WEIGHT_ARB"("0x86A8") + "GL_WEIGHT_ARRAY_TYPE_ARB"("0x86A9") + "GL_WEIGHT_ARRAY_STRIDE_ARB"("0x86AA") + "GL_WEIGHT_ARRAY_SIZE_ARB"("0x86AB") + "GL_WEIGHT_ARRAY_POINTER_ARB"("0x86AC") + "GL_WEIGHT_ARRAY_ARB"("0x86AD") + "GL_MODELVIEW0_ARB"("0x1700") + "GL_MODELVIEW1_ARB"("0x850A") + "GL_MODELVIEW2_ARB"("0x8722") + "GL_MODELVIEW3_ARB"("0x8723") + "GL_MODELVIEW4_ARB"("0x8724") + "GL_MODELVIEW5_ARB"("0x8725") + "GL_MODELVIEW6_ARB"("0x8726") + "GL_MODELVIEW7_ARB"("0x8727") + "GL_MODELVIEW8_ARB"("0x8728") + "GL_MODELVIEW9_ARB"("0x8729") + "GL_MODELVIEW10_ARB"("0x872A") + "GL_MODELVIEW11_ARB"("0x872B") + "GL_MODELVIEW12_ARB"("0x872C") + "GL_MODELVIEW13_ARB"("0x872D") + "GL_MODELVIEW14_ARB"("0x872E") + "GL_MODELVIEW15_ARB"("0x872F") + "GL_MODELVIEW16_ARB"("0x8730") + "GL_MODELVIEW17_ARB"("0x8731") + "GL_MODELVIEW18_ARB"("0x8732") + "GL_MODELVIEW19_ARB"("0x8733") + "GL_MODELVIEW20_ARB"("0x8734") + "GL_MODELVIEW21_ARB"("0x8735") + "GL_MODELVIEW22_ARB"("0x8736") + "GL_MODELVIEW23_ARB"("0x8737") + "GL_MODELVIEW24_ARB"("0x8738") + "GL_MODELVIEW25_ARB"("0x8739") + "GL_MODELVIEW26_ARB"("0x873A") + "GL_MODELVIEW27_ARB"("0x873B") + "GL_MODELVIEW28_ARB"("0x873C") + "GL_MODELVIEW29_ARB"("0x873D") + "GL_MODELVIEW30_ARB"("0x873E") + "GL_MODELVIEW31_ARB"("0x873F") + "glWeightbvARB"(void, GLint("size"), address("weights", "const GLbyte*")) + "glWeightsvARB"(void, GLint("size"), address("weights", "const GLshort*")) + "glWeightivARB"(void, GLint("size"), address("weights", "const GLint*")) + "glWeightfvARB"(void, GLint("size"), address("weights", "const GLfloat*")) + "glWeightdvARB"(void, GLint("size"), address("weights", "const GLdouble*")) + "glWeightubvARB"(void, GLint("size"), address("weights", "const GLubyte*")) + "glWeightusvARB"(void, GLint("size"), address("weights", "const GLushort*")) + "glWeightuivARB"(void, GLint("size"), address("weights", "const GLuint*")) + "glWeightPointerARB"(void, GLint("size"), GLenum("type"), GLsizei("stride"), address("pointer", "const void*")) + "glVertexBlendARB"(void, GLint("count")) + } + file("VertexBufferObject", ARB, "GL_ARB_vertex_buffer_object") { + "GL_BUFFER_SIZE_ARB"("0x8764") + "GL_BUFFER_USAGE_ARB"("0x8765") + "GL_ARRAY_BUFFER_ARB"("0x8892") + "GL_ELEMENT_ARRAY_BUFFER_ARB"("0x8893") + "GL_ARRAY_BUFFER_BINDING_ARB"("0x8894") + "GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB"("0x8895") + "GL_VERTEX_ARRAY_BUFFER_BINDING_ARB"("0x8896") + "GL_NORMAL_ARRAY_BUFFER_BINDING_ARB"("0x8897") + "GL_COLOR_ARRAY_BUFFER_BINDING_ARB"("0x8898") + "GL_INDEX_ARRAY_BUFFER_BINDING_ARB"("0x8899") + "GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB"("0x889A") + "GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB"("0x889B") + "GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB"("0x889C") + "GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB"("0x889D") + "GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB"("0x889E") + "GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB"("0x889F") + "GL_READ_ONLY_ARB"("0x88B8") + "GL_WRITE_ONLY_ARB"("0x88B9") + "GL_READ_WRITE_ARB"("0x88BA") + "GL_BUFFER_ACCESS_ARB"("0x88BB") + "GL_BUFFER_MAPPED_ARB"("0x88BC") + "GL_BUFFER_MAP_POINTER_ARB"("0x88BD") + "GL_STREAM_DRAW_ARB"("0x88E0") + "GL_STREAM_READ_ARB"("0x88E1") + "GL_STREAM_COPY_ARB"("0x88E2") + "GL_STATIC_DRAW_ARB"("0x88E4") + "GL_STATIC_READ_ARB"("0x88E5") + "GL_STATIC_COPY_ARB"("0x88E6") + "GL_DYNAMIC_DRAW_ARB"("0x88E8") + "GL_DYNAMIC_READ_ARB"("0x88E9") + "GL_DYNAMIC_COPY_ARB"("0x88EA") + "glBindBufferARB"(void, GLenum("target"), GLuint("buffer")) + "glDeleteBuffersARB"(void, GLsizei("n"), address("buffers", "const GLuint*")) + "glGenBuffersARB"(void, GLsizei("n"), address("buffers", "GLuint*")) + "glIsBufferARB"(boolean, GLuint("buffer")) + "glBufferDataARB"( + void, + GLenum("target"), + GLsizeiptrARB("size"), + address("data", "const void*"), + GLenum("usage") + ) + "glBufferSubDataARB"( + void, + GLenum("target"), + GLintptrARB("offset"), + GLsizeiptrARB("size"), + address("data", "const void*") + ) + "glGetBufferSubDataARB"( + void, + GLenum("target"), + GLintptrARB("offset"), + GLsizeiptrARB("size"), + address("data", "void*") + ) + "glMapBufferARB"(address, GLenum("target"), GLenum("access"), nativeType = "void*") + "glUnmapBufferARB"(boolean, GLenum("target")) + "glGetBufferParameterivARB"(void, GLenum("target"), GLenum("pname"), address("params", "GLint*")) + "glGetBufferPointervARB"(void, GLenum("target"), GLenum("pname"), address("params", "void**")) + } + file("VertexProgram", ARB, "GL_ARB_vertex_program") { + "GL_COLOR_SUM_ARB"("0x8458") + "GL_VERTEX_PROGRAM_ARB"("0x8620") + "GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB"("0x8622") + "GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB"("0x8623") + "GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB"("0x8624") + "GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB"("0x8625") + "GL_CURRENT_VERTEX_ATTRIB_ARB"("0x8626") + "GL_VERTEX_PROGRAM_POINT_SIZE_ARB"("0x8642") + "GL_VERTEX_PROGRAM_TWO_SIDE_ARB"("0x8643") + "GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB"("0x8645") + "GL_MAX_VERTEX_ATTRIBS_ARB"("0x8869") + "GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB"("0x886A") + "GL_PROGRAM_ADDRESS_REGISTERS_ARB"("0x88B0") + "GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB"("0x88B1") + "GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB"("0x88B2") + "GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB"("0x88B3") + "glVertexAttrib1dARB"(void, GLuint("index"), GLdouble("x")) + "glVertexAttrib1dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttrib1fARB"(void, GLuint("index"), GLfloat("x")) + "glVertexAttrib1fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) + "glVertexAttrib1sARB"(void, GLuint("index"), GLshort("x")) + "glVertexAttrib1svARB"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttrib2dARB"(void, GLuint("index"), GLdouble("x"), GLdouble("y")) + "glVertexAttrib2dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttrib2fARB"(void, GLuint("index"), GLfloat("x"), GLfloat("y")) + "glVertexAttrib2fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) + "glVertexAttrib2sARB"(void, GLuint("index"), GLshort("x"), GLshort("y")) + "glVertexAttrib2svARB"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttrib3dARB"(void, GLuint("index"), GLdouble("x"), GLdouble("y"), GLdouble("z")) + "glVertexAttrib3dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttrib3fARB"(void, GLuint("index"), GLfloat("x"), GLfloat("y"), GLfloat("z")) + "glVertexAttrib3fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) + "glVertexAttrib3sARB"(void, GLuint("index"), GLshort("x"), GLshort("y"), GLshort("z")) + "glVertexAttrib3svARB"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttrib4NbvARB"(void, GLuint("index"), address("v", "const GLbyte *")) + "glVertexAttrib4NivARB"(void, GLuint("index"), address("v", "const GLint *")) + "glVertexAttrib4NsvARB"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttrib4NubARB"(void, GLuint("index"), GLubyte("x"), GLubyte("y"), GLubyte("z"), GLubyte("w")) + "glVertexAttrib4NubvARB"(void, GLuint("index"), address("v", "const GLubyte *")) + "glVertexAttrib4NuivARB"(void, GLuint("index"), address("v", "const GLuint *")) + "glVertexAttrib4NusvARB"(void, GLuint("index"), address("v", "const GLushort *")) + "glVertexAttrib4bvARB"(void, GLuint("index"), address("v", "const GLbyte *")) + "glVertexAttrib4dARB"(void, GLuint("index"), GLdouble("x"), GLdouble("y"), GLdouble("z"), GLdouble("w")) + "glVertexAttrib4dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttrib4fARB"(void, GLuint("index"), GLfloat("x"), GLfloat("y"), GLfloat("z"), GLfloat("w")) + "glVertexAttrib4fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) + "glVertexAttrib4ivARB"(void, GLuint("index"), address("v", "const GLint *")) + "glVertexAttrib4sARB"(void, GLuint("index"), GLshort("x"), GLshort("y"), GLshort("z"), GLshort("w")) + "glVertexAttrib4svARB"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttrib4ubvARB"(void, GLuint("index"), address("v", "const GLubyte *")) + "glVertexAttrib4uivARB"(void, GLuint("index"), address("v", "const GLuint *")) + "glVertexAttrib4usvARB"(void, GLuint("index"), address("v", "const GLushort *")) + "glVertexAttribPointerARB"( + void, + GLuint("index"), + GLint("size"), + GLenum("type"), + GLboolean("normalized"), + GLsizei("stride"), + address("pointer", "const void *") + ) + "glEnableVertexAttribArrayARB"(void, GLuint("index")) + "glDisableVertexAttribArrayARB"(void, GLuint("index")) + "glGetVertexAttribdvARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLdouble *")) + "glGetVertexAttribfvARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLfloat *")) + "glGetVertexAttribivARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLint *")) + "glGetVertexAttribPointervARB"(void, GLuint("index"), GLenum("pname"), address("pointer", "void **")) + } + file("VertexShader", ARB, "GL_ARB_vertex_shader") { + "GL_VERTEX_SHADER_ARB"("0x8B31") + "GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB"("0x8B4A") + "GL_MAX_VARYING_FLOATS_ARB"("0x8B4B") + "GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB"("0x8B4C") + "GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB"("0x8B4D") + "GL_OBJECT_ACTIVE_ATTRIBUTES_ARB"("0x8B89") + "GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB"("0x8B8A") + "glBindAttribLocationARB"( + void, + GLhandleARB("programObj"), + GLuint("index"), + address("name", "const GLcharARB *") + ) + "glGetActiveAttribARB"( + void, + GLhandleARB("programObj"), + GLuint("index"), + GLsizei("maxLength"), + address("length", "GLsizei *"), + address("size", "GLint *"), + address("type", "GLenum *"), + address("name", "GLcharARB *") + ) + "glGetAttribLocationARB"(GLint, GLhandleARB("programObj"), address("name", "const GLcharARB *")) + } + file("ViewportArray", ARB, "GL_ARB_viewport_array") { + "glDepthRangeArraydvNV"(void, GLuint("first"), GLsizei("count"), address("v", "const GLdouble *")) + "glDepthRangeIndexeddNV"(void, GLuint("index"), GLdouble("n"), GLdouble("f")) + } + file("WindowPos", ARB, "GL_ARB_window_pos") { + "glWindowPos2dARB"(void, GLdouble("x"), GLdouble("y")) + "glWindowPos2dvARB"(void, address("v", "const GLdouble *")) + "glWindowPos2fARB"(void, GLfloat("x"), GLfloat("y")) + "glWindowPos2fvARB"(void, address("v", "const GLfloat *")) + "glWindowPos2iARB"(void, GLint("x"), GLint("y")) + "glWindowPos2ivARB"(void, address("v", "const GLint *")) + "glWindowPos2sARB"(void, GLshort("x"), GLshort("y")) + "glWindowPos2svARB"(void, address("v", "const GLshort *")) + "glWindowPos3dARB"(void, GLdouble("x"), GLdouble("y"), GLdouble("z")) + "glWindowPos3dvARB"(void, address("v", "const GLdouble *")) + "glWindowPos3fARB"(void, GLfloat("x"), GLfloat("y"), GLfloat("z")) + "glWindowPos3fvARB"(void, address("v", "const GLfloat *")) + "glWindowPos3iARB"(void, GLint("x"), GLint("y"), GLint("z")) + "glWindowPos3ivARB"(void, address("v", "const GLint *")) + "glWindowPos3sARB"(void, GLshort("x"), GLshort("y"), GLshort("z")) + "glWindowPos3svARB"(void, address("v", "const GLshort *")) + } +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLConstC.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLConstC.java index ac5f4e93..91a9e0a4 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLConstC.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLConstC.java @@ -52,7 +52,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_ACTIVE_TEXTURE_ARB = 0x84E0; public static final int GL_ACTIVE_VARYINGS_NV = 0x8C81; public static final int GL_ACTIVE_VARYING_MAX_LENGTH_NV = 0x8C82; - public static final int GL_ACTIVE_VERTEX_UNITS_ARB = 0x86A5; public static final int GL_ADD_ATI = 0x8963; public static final int GL_ADD_SIGNED_EXT = 0x8574; public static final int GL_ADJACENT_PAIRS_NV = 0x90AE; @@ -95,8 +94,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_ALWAYS_FAST_HINT_PGI = 0x1A20C; public static final int GL_ALWAYS_SOFT_HINT_PGI = 0x1A20D; public static final int GL_ARC_TO_NV = 0xFE; - public static final int GL_ARRAY_BUFFER_ARB = 0x8892; - public static final int GL_ARRAY_BUFFER_BINDING_ARB = 0x8894; public static final int GL_ARRAY_ELEMENT_LOCK_COUNT_EXT = 0x81A9; public static final int GL_ARRAY_ELEMENT_LOCK_FIRST_EXT = 0x81A8; public static final int GL_ARRAY_OBJECT_BUFFER_ATI = 0x8766; @@ -157,17 +154,12 @@ public sealed class GLConstC permits GLConst { public static final int GL_BOLD_BIT_NV = 0x01; public static final int GL_BOUNDING_BOX_NV = 0x908D; public static final int GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV = 0x909C; - public static final int GL_BUFFER_ACCESS_ARB = 0x88BB; public static final int GL_BUFFER_FLUSHING_UNMAP_APPLE = 0x8A13; public static final int GL_BUFFER_GPU_ADDRESS_NV = 0x8F1D; - public static final int GL_BUFFER_MAPPED_ARB = 0x88BC; - public static final int GL_BUFFER_MAP_POINTER_ARB = 0x88BD; public static final int GL_BUFFER_OBJECT_APPLE = 0x85B3; public static final int GL_BUFFER_OBJECT_EXT = 0x9151; public static final int GL_BUFFER_SERIALIZED_MODIFY_APPLE = 0x8A12; - public static final int GL_BUFFER_SIZE_ARB = 0x8764; public static final int GL_BUFFER_UPDATE_BARRIER_BIT_EXT = 0x00000200; - public static final int GL_BUFFER_USAGE_ARB = 0x8765; public static final int GL_BUMP_ENVMAP_ATI = 0x877B; public static final int GL_BUMP_NUM_TEX_UNITS_ATI = 0x8777; public static final int GL_BUMP_ROT_MATRIX_ATI = 0x8775; @@ -201,7 +193,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_COLORDODGE_NV = 0x9299; public static final int GL_COLOR_ALPHA_PAIRING_ATI = 0x8975; public static final int GL_COLOR_ARRAY_ADDRESS_NV = 0x8F23; - public static final int GL_COLOR_ARRAY_BUFFER_BINDING_ARB = 0x8898; public static final int GL_COLOR_ARRAY_COUNT_EXT = 0x8084; public static final int GL_COLOR_ARRAY_EXT = 0x8076; public static final int GL_COLOR_ARRAY_LENGTH_NV = 0x8F2D; @@ -239,7 +230,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_COLOR_MATRIX_SGI = 0x80B1; public static final int GL_COLOR_MATRIX_STACK_DEPTH_SGI = 0x80B2; public static final int GL_COLOR_SAMPLES_NV = 0x8E20; - public static final int GL_COLOR_SUM_ARB = 0x8458; public static final int GL_COLOR_SUM_CLAMP_NV = 0x854F; public static final int GL_COLOR_SUM_EXT = 0x8458; public static final int GL_COLOR_TABLE_ALPHA_SIZE_SGI = 0x80DD; @@ -430,10 +420,8 @@ public sealed class GLConstC permits GLConst { public static final int GL_CURRENT_SECONDARY_COLOR_EXT = 0x8459; public static final int GL_CURRENT_TANGENT_EXT = 0x843B; public static final int GL_CURRENT_TIME_NV = 0x8E28; - public static final int GL_CURRENT_VERTEX_ATTRIB_ARB = 0x8626; public static final int GL_CURRENT_VERTEX_EXT = 0x87E2; public static final int GL_CURRENT_VERTEX_WEIGHT_EXT = 0x850B; - public static final int GL_CURRENT_WEIGHT_ARB = 0x86A8; public static final int GL_D3D12_FENCE_VALUE_EXT = 0x9595; public static final int GL_DARKEN_KHR = 0x9297; public static final int GL_DARKEN_NV = 0x9297; @@ -599,12 +587,8 @@ public sealed class GLConstC permits GLConst { public static final int GL_DUP_FIRST_CUBIC_CURVE_TO_NV = 0xF2; public static final int GL_DUP_LAST_CUBIC_CURVE_TO_NV = 0xF4; public static final int GL_DYNAMIC_ATI = 0x8761; - public static final int GL_DYNAMIC_COPY_ARB = 0x88EA; - public static final int GL_DYNAMIC_DRAW_ARB = 0x88E8; - public static final int GL_DYNAMIC_READ_ARB = 0x88E9; public static final int GL_EDGEFLAG_BIT_PGI = 0x00040000; public static final int GL_EDGE_FLAG_ARRAY_ADDRESS_NV = 0x8F26; - public static final int GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB = 0x889B; public static final int GL_EDGE_FLAG_ARRAY_COUNT_EXT = 0x808D; public static final int GL_EDGE_FLAG_ARRAY_EXT = 0x8079; public static final int GL_EDGE_FLAG_ARRAY_LENGTH_NV = 0x8F30; @@ -619,8 +603,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_ELEMENT_ARRAY_APPLE = 0x8A0C; public static final int GL_ELEMENT_ARRAY_ATI = 0x8768; public static final int GL_ELEMENT_ARRAY_BARRIER_BIT_EXT = 0x00000002; - public static final int GL_ELEMENT_ARRAY_BUFFER_ARB = 0x8893; - public static final int GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB = 0x8895; public static final int GL_ELEMENT_ARRAY_LENGTH_NV = 0x8F33; public static final int GL_ELEMENT_ARRAY_POINTER_APPLE = 0x8A0E; public static final int GL_ELEMENT_ARRAY_POINTER_ATI = 0x876A; @@ -706,7 +688,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_FLOAT_RGB_NV = 0x8882; public static final int GL_FLOAT_RG_NV = 0x8881; public static final int GL_FLOAT_R_NV = 0x8880; - public static final int GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB = 0x889D; public static final int GL_FOG_COORDINATE_ARRAY_EXT = 0x8457; public static final int GL_FOG_COORDINATE_ARRAY_LIST_IBM = 103076; public static final int GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM = 103086; @@ -918,7 +899,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_INCLUSIVE_EXT = 0x8F10; public static final int GL_INCR_WRAP_EXT = 0x8507; public static final int GL_INDEX_ARRAY_ADDRESS_NV = 0x8F24; - public static final int GL_INDEX_ARRAY_BUFFER_BINDING_ARB = 0x8899; public static final int GL_INDEX_ARRAY_COUNT_EXT = 0x8087; public static final int GL_INDEX_ARRAY_EXT = 0x8077; public static final int GL_INDEX_ARRAY_LENGTH_NV = 0x8F2E; @@ -1205,7 +1185,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS_EXT = 0x8F39; public static final int GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NV = 0x8E67; public static final int GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NV = 0x8E6F; - public static final int GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB = 0x8B4D; public static final int GL_MAX_CONVOLUTION_HEIGHT_EXT = 0x801B; public static final int GL_MAX_CONVOLUTION_WIDTH_EXT = 0x801A; public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT = 0x851C; @@ -1263,7 +1242,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_MAX_PALETTE_MATRICES_ARB = 0x8842; public static final int GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT = 0x8337; public static final int GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI = 0x87F1; - public static final int GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB = 0x88B1; public static final int GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB = 0x880B; public static final int GL_MAX_PROGRAM_ATTRIBS_ARB = 0x88AD; public static final int GL_MAX_PROGRAM_ATTRIB_COMPONENTS_NV = 0x8908; @@ -1279,7 +1257,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_MAX_PROGRAM_LOOP_DEPTH_NV = 0x88F7; public static final int GL_MAX_PROGRAM_MATRICES_ARB = 0x862F; public static final int GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB = 0x862E; - public static final int GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88B3; public static final int GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = 0x880E; public static final int GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AF; public static final int GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A3; @@ -1344,9 +1321,7 @@ public sealed class GLConstC permits GLConst { public static final int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT = 0x8C80; public static final int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV = 0x8C80; public static final int GL_MAX_VARYING_COMPONENTS_EXT = 0x8B4B; - public static final int GL_MAX_VARYING_FLOATS_ARB = 0x8B4B; public static final int GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV = 0x8520; - public static final int GL_MAX_VERTEX_ATTRIBS_ARB = 0x8869; public static final int GL_MAX_VERTEX_BINDABLE_UNIFORMS_EXT = 0x8DE2; public static final int GL_MAX_VERTEX_HINT_PGI = 0x1A22D; public static final int GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87C5; @@ -1355,9 +1330,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87C8; public static final int GL_MAX_VERTEX_SHADER_VARIANTS_EXT = 0x87C6; public static final int GL_MAX_VERTEX_STREAMS_ATI = 0x876B; - public static final int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB = 0x8B4C; - public static final int GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB = 0x8B4A; - public static final int GL_MAX_VERTEX_UNITS_ARB = 0x86A4; public static final int GL_MAX_VERTEX_VARYING_COMPONENTS_EXT = 0x8DDE; public static final int GL_MAX_WINDOW_RECTANGLES_EXT = 0x8F14; public static final int GL_MEMORY_ATTACHABLE_ALIGNMENT_NV = 0x95A6; @@ -1395,44 +1367,11 @@ public sealed class GLConstC permits GLConst { public static final int GL_MITER_TRUNCATE_NV = 0x90A8; public static final int GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV = 0x932F; public static final int GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV = 0x9330; - public static final int GL_MODELVIEW0_ARB = 0x1700; public static final int GL_MODELVIEW0_EXT = 0x1700; public static final int GL_MODELVIEW0_MATRIX_EXT = 0x0BA6; - public static final int GL_MODELVIEW0_STACK_DEPTH_EXT = 0x0BA3; - public static final int GL_MODELVIEW10_ARB = 0x872A; - public static final int GL_MODELVIEW11_ARB = 0x872B; - public static final int GL_MODELVIEW12_ARB = 0x872C; - public static final int GL_MODELVIEW13_ARB = 0x872D; - public static final int GL_MODELVIEW14_ARB = 0x872E; - public static final int GL_MODELVIEW15_ARB = 0x872F; - public static final int GL_MODELVIEW16_ARB = 0x8730; - public static final int GL_MODELVIEW17_ARB = 0x8731; - public static final int GL_MODELVIEW18_ARB = 0x8732; - public static final int GL_MODELVIEW19_ARB = 0x8733; - public static final int GL_MODELVIEW1_ARB = 0x850A; public static final int GL_MODELVIEW1_EXT = 0x850A; public static final int GL_MODELVIEW1_MATRIX_EXT = 0x8506; public static final int GL_MODELVIEW1_STACK_DEPTH_EXT = 0x8502; - public static final int GL_MODELVIEW20_ARB = 0x8734; - public static final int GL_MODELVIEW21_ARB = 0x8735; - public static final int GL_MODELVIEW22_ARB = 0x8736; - public static final int GL_MODELVIEW23_ARB = 0x8737; - public static final int GL_MODELVIEW24_ARB = 0x8738; - public static final int GL_MODELVIEW25_ARB = 0x8739; - public static final int GL_MODELVIEW26_ARB = 0x873A; - public static final int GL_MODELVIEW27_ARB = 0x873B; - public static final int GL_MODELVIEW28_ARB = 0x873C; - public static final int GL_MODELVIEW29_ARB = 0x873D; - public static final int GL_MODELVIEW2_ARB = 0x8722; - public static final int GL_MODELVIEW30_ARB = 0x873E; - public static final int GL_MODELVIEW31_ARB = 0x873F; - public static final int GL_MODELVIEW3_ARB = 0x8723; - public static final int GL_MODELVIEW4_ARB = 0x8724; - public static final int GL_MODELVIEW5_ARB = 0x8725; - public static final int GL_MODELVIEW6_ARB = 0x8726; - public static final int GL_MODELVIEW7_ARB = 0x8727; - public static final int GL_MODELVIEW8_ARB = 0x8728; - public static final int GL_MODELVIEW9_ARB = 0x8729; public static final int GL_MODELVIEW_PROJECTION_NV = 0x8629; public static final int GL_MODULATE_ADD_ATI = 0x8744; public static final int GL_MODULATE_SIGNED_ADD_ATI = 0x8745; @@ -1474,7 +1413,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_NOP_COMMAND_NV = 0x0001; public static final int GL_NORMALIZED_RANGE_EXT = 0x87E0; public static final int GL_NORMAL_ARRAY_ADDRESS_NV = 0x8F22; - public static final int GL_NORMAL_ARRAY_BUFFER_BINDING_ARB = 0x8897; public static final int GL_NORMAL_ARRAY_COUNT_EXT = 0x8080; public static final int GL_NORMAL_ARRAY_EXT = 0x8075; public static final int GL_NORMAL_ARRAY_LENGTH_NV = 0x8F2C; @@ -1501,8 +1439,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_NUM_TILING_TYPES_EXT = 0x9582; public static final int GL_NUM_VIDEO_CAPTURE_STREAMS_NV = 0x9024; public static final int GL_NUM_WINDOW_RECTANGLES_EXT = 0x8F15; - public static final int GL_OBJECT_ACTIVE_ATTRIBUTES_ARB = 0x8B89; - public static final int GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB = 0x8B8A; public static final int GL_OBJECT_BUFFER_SIZE_ATI = 0x8764; public static final int GL_OBJECT_BUFFER_USAGE_ATI = 0x8765; public static final int GL_OBJECT_DISTANCE_TO_LINE_SGIS = 0x81F3; @@ -1781,7 +1717,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_PRIMITIVE_RESTART_NV = 0x8558; public static final int GL_PROGRAMMABLE_SAMPLE_LOCATION_NV = 0x9341; public static final int GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_NV = 0x9340; - public static final int GL_PROGRAM_ADDRESS_REGISTERS_ARB = 0x88B0; public static final int GL_PROGRAM_ALU_INSTRUCTIONS_ARB = 0x8805; public static final int GL_PROGRAM_ATTRIBS_ARB = 0x88AC; public static final int GL_PROGRAM_ATTRIB_COMPONENTS_NV = 0x8906; @@ -1798,7 +1733,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_PROGRAM_LENGTH_NV = 0x8627; public static final int GL_PROGRAM_MATRIX_EXT = 0x8E2D; public static final int GL_PROGRAM_MATRIX_STACK_DEPTH_EXT = 0x8E2F; - public static final int GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88B2; public static final int GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = 0x8808; public static final int GL_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AE; public static final int GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A2; @@ -1891,11 +1825,9 @@ public sealed class GLConstC permits GLConst { public static final int GL_RASTER_SAMPLES_EXT = 0x9328; public static final int GL_READ_FRAMEBUFFER_BINDING_EXT = 0x8CAA; public static final int GL_READ_FRAMEBUFFER_EXT = 0x8CA8; - public static final int GL_READ_ONLY_ARB = 0x88B8; public static final int GL_READ_PIXEL_DATA_RANGE_LENGTH_NV = 0x887B; public static final int GL_READ_PIXEL_DATA_RANGE_NV = 0x8879; public static final int GL_READ_PIXEL_DATA_RANGE_POINTER_NV = 0x887D; - public static final int GL_READ_WRITE_ARB = 0x88BA; public static final int GL_RECLAIM_MEMORY_HINT_PGI = 0x1A1FE; public static final int GL_RECT_NV = 0xF6; public static final int GL_REDUCE_EXT = 0x8016; @@ -2117,7 +2049,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_SCREEN_KHR = 0x9295; public static final int GL_SCREEN_NV = 0x9295; public static final int GL_SECONDARY_COLOR_ARRAY_ADDRESS_NV = 0x8F27; - public static final int GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB = 0x889C; public static final int GL_SECONDARY_COLOR_ARRAY_EXT = 0x845E; public static final int GL_SECONDARY_COLOR_ARRAY_LENGTH_NV = 0x8F31; public static final int GL_SECONDARY_COLOR_ARRAY_LIST_IBM = 103077; @@ -2241,9 +2172,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_STANDARD_FONT_FORMAT_NV = 0x936C; public static final int GL_STANDARD_FONT_NAME_NV = 0x9072; public static final int GL_STATIC_ATI = 0x8760; - public static final int GL_STATIC_COPY_ARB = 0x88E6; - public static final int GL_STATIC_DRAW_ARB = 0x88E4; - public static final int GL_STATIC_READ_ARB = 0x88E5; public static final int GL_STATIC_VERTEX_ARRAY_IBM = 103061; public static final int GL_STENCIL_ATTACHMENT_EXT = 0x8D20; public static final int GL_STENCIL_BACK_FAIL_ATI = 0x8801; @@ -2265,10 +2193,7 @@ public sealed class GLConstC permits GLConst { public static final int GL_STORAGE_CLIENT_APPLE = 0x85B4; public static final int GL_STORAGE_PRIVATE_APPLE = 0x85BD; public static final int GL_STORAGE_SHARED_APPLE = 0x85BF; - public static final int GL_STREAM_COPY_ARB = 0x88E2; - public static final int GL_STREAM_DRAW_ARB = 0x88E0; public static final int GL_STREAM_RASTERIZATION_AMD = 0x91A0; - public static final int GL_STREAM_READ_ARB = 0x88E1; public static final int GL_STRICT_DEPTHFUNC_HINT_PGI = 0x1A216; public static final int GL_STRICT_LIGHTING_HINT_PGI = 0x1A217; public static final int GL_STRICT_SCISSOR_HINT_PGI = 0x1A218; @@ -2369,7 +2294,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_TEXTURE_COMPARE_SGIX = 0x819A; public static final int GL_TEXTURE_CONSTANT_DATA_SUNX = 0x81D6; public static final int GL_TEXTURE_COORD_ARRAY_ADDRESS_NV = 0x8F25; - public static final int GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB = 0x889A; public static final int GL_TEXTURE_COORD_ARRAY_COUNT_EXT = 0x808B; public static final int GL_TEXTURE_COORD_ARRAY_EXT = 0x8078; public static final int GL_TEXTURE_COORD_ARRAY_LENGTH_NV = 0x8F2F; @@ -2604,7 +2528,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_VERTEX4_BIT_PGI = 0x00000008; public static final int GL_VERTEX_ARRAY_ADDRESS_NV = 0x8F21; public static final int GL_VERTEX_ARRAY_BINDING_APPLE = 0x85B5; - public static final int GL_VERTEX_ARRAY_BUFFER_BINDING_ARB = 0x8896; public static final int GL_VERTEX_ARRAY_COUNT_EXT = 0x807D; public static final int GL_VERTEX_ARRAY_EXT = 0x8074; public static final int GL_VERTEX_ARRAY_LENGTH_NV = 0x8F2B; @@ -2644,16 +2567,9 @@ public sealed class GLConstC permits GLConst { public static final int GL_VERTEX_ATTRIB_ARRAY9_NV = 0x8659; public static final int GL_VERTEX_ATTRIB_ARRAY_ADDRESS_NV = 0x8F20; public static final int GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT = 0x00000001; - public static final int GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB = 0x889F; - public static final int GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB = 0x8622; public static final int GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT = 0x88FD; public static final int GL_VERTEX_ATTRIB_ARRAY_INTEGER_NV = 0x88FD; public static final int GL_VERTEX_ATTRIB_ARRAY_LENGTH_NV = 0x8F2A; - public static final int GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB = 0x886A; - public static final int GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB = 0x8645; - public static final int GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB = 0x8623; - public static final int GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB = 0x8624; - public static final int GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB = 0x8625; public static final int GL_VERTEX_ATTRIB_ARRAY_UNIFIED_NV = 0x8F1E; public static final int GL_VERTEX_ATTRIB_MAP1_APPLE = 0x8A00; public static final int GL_VERTEX_ATTRIB_MAP1_COEFF_APPLE = 0x8A03; @@ -2665,7 +2581,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_VERTEX_ATTRIB_MAP2_DOMAIN_APPLE = 0x8A09; public static final int GL_VERTEX_ATTRIB_MAP2_ORDER_APPLE = 0x8A08; public static final int GL_VERTEX_ATTRIB_MAP2_SIZE_APPLE = 0x8A06; - public static final int GL_VERTEX_BLEND_ARB = 0x86A7; public static final int GL_VERTEX_CONSISTENT_HINT_PGI = 0x1A22B; public static final int GL_VERTEX_DATA_HINT_PGI = 0x1A22A; public static final int GL_VERTEX_ELEMENT_SWIZZLE_AMD = 0x91A4; @@ -2673,15 +2588,11 @@ public sealed class GLConstC permits GLConst { public static final int GL_VERTEX_ID_SWIZZLE_AMD = 0x91A5; public static final int GL_VERTEX_PRECLIP_HINT_SGIX = 0x83EF; public static final int GL_VERTEX_PRECLIP_SGIX = 0x83EE; - public static final int GL_VERTEX_PROGRAM_ARB = 0x8620; public static final int GL_VERTEX_PROGRAM_BINDING_NV = 0x864A; public static final int GL_VERTEX_PROGRAM_NV = 0x8620; public static final int GL_VERTEX_PROGRAM_PARAMETER_BUFFER_NV = 0x8DA2; - public static final int GL_VERTEX_PROGRAM_POINT_SIZE_ARB = 0x8642; public static final int GL_VERTEX_PROGRAM_POINT_SIZE_NV = 0x8642; - public static final int GL_VERTEX_PROGRAM_TWO_SIDE_ARB = 0x8643; public static final int GL_VERTEX_PROGRAM_TWO_SIDE_NV = 0x8643; - public static final int GL_VERTEX_SHADER_ARB = 0x8B31; public static final int GL_VERTEX_SHADER_BINDING_EXT = 0x8781; public static final int GL_VERTEX_SHADER_EXT = 0x8780; public static final int GL_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87CF; @@ -2747,19 +2658,11 @@ public sealed class GLConstC permits GLConst { public static final int GL_WARPS_PER_SM_NV = 0x933A; public static final int GL_WARP_SIZE_NV = 0x9339; public static final int GL_WEIGHTED_AVERAGE_EXT = 0x9367; - public static final int GL_WEIGHT_ARRAY_ARB = 0x86AD; - public static final int GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB = 0x889E; - public static final int GL_WEIGHT_ARRAY_POINTER_ARB = 0x86AC; - public static final int GL_WEIGHT_ARRAY_SIZE_ARB = 0x86AB; - public static final int GL_WEIGHT_ARRAY_STRIDE_ARB = 0x86AA; - public static final int GL_WEIGHT_ARRAY_TYPE_ARB = 0x86A9; - public static final int GL_WEIGHT_SUM_UNITY_ARB = 0x86A6; public static final int GL_WIDE_LINE_HINT_PGI = 0x1A222; public static final int GL_WINDOW_RECTANGLE_EXT = 0x8F12; public static final int GL_WINDOW_RECTANGLE_MODE_EXT = 0x8F13; public static final int GL_WRAP_BORDER_SUN = 0x81D4; public static final int GL_WRITE_DISCARD_NV = 0x88BE; - public static final int GL_WRITE_ONLY_ARB = 0x88B9; public static final int GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV = 0x887A; public static final int GL_WRITE_PIXEL_DATA_RANGE_NV = 0x8878; public static final int GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV = 0x887C; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java index ee53aac4..4da6ee9a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java @@ -451,6 +451,41 @@ public final class GLExtCaps { * {@code GL_ARB_transpose_matrix} extension method handles. */ public MethodHandle glLoadTransposeMatrixfARB, glLoadTransposeMatrixdARB, glMultTransposeMatrixfARB, glMultTransposeMatrixdARB; + /** + * {@code GL_ARB_vertex_blend} extension method handles. + */ + public MethodHandle glWeightbvARB, glWeightsvARB, glWeightivARB, glWeightfvARB, glWeightdvARB, glWeightubvARB, glWeightusvARB, + glWeightuivARB, glWeightPointerARB, glVertexBlendARB; + /** + * {@code GL_ARB_vertex_buffer_object} extension method handles. + */ + public MethodHandle glBindBufferARB, glDeleteBuffersARB, glGenBuffersARB, glIsBufferARB, glBufferDataARB, glBufferSubDataARB, + glGetBufferSubDataARB, glMapBufferARB, glUnmapBufferARB, glGetBufferParameterivARB, glGetBufferPointervARB; + /** + * {@code GL_ARB_vertex_program} extension method handles. + */ + public MethodHandle glVertexAttrib1dARB, glVertexAttrib1dvARB, glVertexAttrib1fARB, glVertexAttrib1fvARB, glVertexAttrib1sARB, glVertexAttrib1svARB, + glVertexAttrib2dARB, glVertexAttrib2dvARB, glVertexAttrib2fARB, glVertexAttrib2fvARB, glVertexAttrib2sARB, glVertexAttrib2svARB, + glVertexAttrib3dARB, glVertexAttrib3dvARB, glVertexAttrib3fARB, glVertexAttrib3fvARB, glVertexAttrib3sARB, glVertexAttrib3svARB, + glVertexAttrib4NbvARB, glVertexAttrib4NivARB, glVertexAttrib4NsvARB, glVertexAttrib4NubARB, glVertexAttrib4NubvARB, glVertexAttrib4NuivARB, + glVertexAttrib4NusvARB, glVertexAttrib4bvARB, glVertexAttrib4dARB, glVertexAttrib4dvARB, glVertexAttrib4fARB, glVertexAttrib4fvARB, + glVertexAttrib4ivARB, glVertexAttrib4sARB, glVertexAttrib4svARB, glVertexAttrib4ubvARB, glVertexAttrib4uivARB, glVertexAttrib4usvARB, + glVertexAttribPointerARB, glEnableVertexAttribArrayARB, glDisableVertexAttribArrayARB, glGetVertexAttribdvARB, glGetVertexAttribfvARB, glGetVertexAttribivARB, + glGetVertexAttribPointervARB; + /** + * {@code GL_ARB_vertex_shader} extension method handles. + */ + public MethodHandle glBindAttribLocationARB, glGetActiveAttribARB, glGetAttribLocationARB; + /** + * {@code GL_ARB_viewport_array} extension method handles. + */ + public MethodHandle glDepthRangeArraydvNV, glDepthRangeIndexeddNV; + /** + * {@code GL_ARB_window_pos} extension method handles. + */ + public MethodHandle glWindowPos2dARB, glWindowPos2dvARB, glWindowPos2fARB, glWindowPos2fvARB, glWindowPos2iARB, glWindowPos2ivARB, + glWindowPos2sARB, glWindowPos2svARB, glWindowPos3dARB, glWindowPos3dvARB, glWindowPos3fARB, glWindowPos3fvARB, + glWindowPos3iARB, glWindowPos3ivARB, glWindowPos3sARB, glWindowPos3svARB; // endregion @@ -731,12 +766,13 @@ void load(GLLoadFunc load) { GLARBSparseTexture.load(this, load); GLARBTextureBufferObject.load(this, load); GLARBTextureCompression.load(this, load); - // GLARBTranspose_matrix.load(load); - // GLARBVertex_blend.load(load); - // GLARBVertex_buffer_object.load(load); - // GLARBVertex_program.load(load); - // GLARBVertex_shader.load(load); - // GLARBWindow_pos.load(load); + GLARBTransposeMatrix.load(this, load); + GLARBVertexBlend.load(this, load); + GLARBVertexBufferObject.load(this, load); + GLARBVertexProgram.load(this, load); + GLARBVertexShader.load(this, load); + GLARBViewportArray.load(this, load); + GLARBWindowPos.load(this, load); // GLATIDraw_buffers.load(load); // GLATIElement_array.load(load); // GLATIEnvmap_bumpmap.load(load); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLLoadFunc.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLLoadFunc.java index bfe76fd0..b9890e25 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLLoadFunc.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLLoadFunc.java @@ -20,6 +20,7 @@ import overrungl.FunctionDescriptors; import overrungl.internal.RuntimeHelper; +import java.lang.foreign.FunctionDescriptor; import java.lang.foreign.Linker; import java.lang.foreign.MemorySegment; import java.lang.invoke.MethodHandle; @@ -46,6 +47,19 @@ public interface GLLoadFunc { */ MemorySegment invoke(String string); + /** + * Load a function by the given name and creates a downcall handle or {@code null}. + * + * @param procName the function name + * @param function the function descriptor of the target function. + * @param options the linker options associated with this linkage request. + * @return a downcall method handle, or {@code null} if the symbol is {@link MemorySegment#NULL} + */ + @Nullable + default MethodHandle invoke(String procName, FunctionDescriptor function, Linker.Option... options) { + return RuntimeHelper.downcallSafe(invoke(procName), function, options); + } + /** * Load a function by the given name and creates a downcall handle or {@code null}. * diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBRobustness.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBRobustness.java index 5cb450d0..9ac8c9e7 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBRobustness.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBRobustness.java @@ -1,33 +1,17 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import java.lang.foreign.MemorySegment; - -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_robustness} - */ + * {@code GL_ARB_robustness} + */ public final class GLARBRobustness { public static final int GL_NO_RESET_NOTIFICATION_ARB = 0x8261; public static final int GL_RESET_NOTIFICATION_STRATEGY_ARB = 0x8256; @@ -39,78 +23,71 @@ public final class GLARBRobustness { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_robustness) return; - ext.glGetGraphicsResetStatusARB = load.invoke("glGetGraphicsResetStatusARB", I); - ext.glGetnCompressedTexImageARB = load.invoke("glGetnCompressedTexImageARB", IIIPV); - ext.glGetnTexImageARB = load.invoke("glGetnTexImageARB", IIIIIPV); - ext.glGetnUniformdvARB = load.invoke("glGetnUniformdvARB", IIIPV); - ext.glGetnUniformfvARB = load.invoke("glGetnUniformfvARB", IIIPV); - ext.glGetnUniformivARB = load.invoke("glGetnUniformivARB", IIIPV); - ext.glGetnUniformuivARB = load.invoke("glGetnUniformuivARB", IIIPV); - ext.glReadnPixelsARB = load.invoke("glReadnPixelsARB", IIIIIIIPV); + ext.glGetGraphicsResetStatusARB = load.invoke("glGetGraphicsResetStatusARB", of(JAVA_INT)); + ext.glGetnCompressedTexImageARB = load.invoke("glGetnCompressedTexImageARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetnTexImageARB = load.invoke("glGetnTexImageARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetnUniformdvARB = load.invoke("glGetnUniformdvARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetnUniformfvARB = load.invoke("glGetnUniformfvARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetnUniformivARB = load.invoke("glGetnUniformivARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetnUniformuivARB = load.invoke("glGetnUniformuivARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glReadnPixelsARB = load.invoke("glReadnPixelsARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); } public static int glGetGraphicsResetStatusARB() { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - return (int) GLLoader.check(ext.glGetGraphicsResetStatusARB).invokeExact(); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + return (int) + check(ext.glGetGraphicsResetStatusARB).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetnCompressedTexImageARB(int target, int lod, int bufSize, MemorySegment img) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glGetnCompressedTexImageARB(int target, int lod, int bufSize, @NativeType("void*") MemorySegment img) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetnCompressedTexImageARB).invokeExact(target, lod, bufSize, img); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetnCompressedTexImageARB).invokeExact(target, lod, bufSize, img); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetnTexImageARB(int target, int level, int format, int type, int bufSize, MemorySegment img) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glGetnTexImageARB(int target, int level, int format, int type, int bufSize, @NativeType("void*") MemorySegment img) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetnTexImageARB).invokeExact(target, level, format, type, bufSize, img); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetnTexImageARB).invokeExact(target, level, format, type, bufSize, img); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetnUniformdvARB(int program, int location, int bufSize, MemorySegment params) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glGetnUniformdvARB(int program, int location, int bufSize, @NativeType("GLdouble*") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetnUniformdvARB).invokeExact(program, location, bufSize, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetnUniformdvARB).invokeExact(program, location, bufSize, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetnUniformfvARB(int program, int location, int bufSize, MemorySegment params) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glGetnUniformfvARB(int program, int location, int bufSize, @NativeType("GLfloat*") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetnUniformfvARB).invokeExact(program, location, bufSize, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetnUniformfvARB).invokeExact(program, location, bufSize, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetnUniformivARB(int program, int location, int bufSize, MemorySegment params) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glGetnUniformivARB(int program, int location, int bufSize, @NativeType("GLint*") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetnUniformivARB).invokeExact(program, location, bufSize, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetnUniformivARB).invokeExact(program, location, bufSize, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetnUniformuivARB(int program, int location, int bufSize, MemorySegment params) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glGetnUniformuivARB(int program, int location, int bufSize, @NativeType("GLuint*") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetnUniformuivARB).invokeExact(program, location, bufSize, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetnUniformuivARB).invokeExact(program, location, bufSize, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReadnPixelsARB(int x, int y, int width, int height, int format, int type, int bufSize, MemorySegment data) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glReadnPixelsARB(int x, int y, int width, int height, int format, int type, int bufSize, @NativeType("void*") MemorySegment data) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReadnPixelsARB).invokeExact(x, y, width, height, format, type, bufSize, data); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReadnPixelsARB).invokeExact(x, y, width, height, format, type, bufSize, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleLocations.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleLocations.java index 370c1a05..05d15769 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleLocations.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleLocations.java @@ -1,73 +1,53 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import java.lang.foreign.MemorySegment; - -import static overrungl.FunctionDescriptors.IIIPV; -import static overrungl.FunctionDescriptors.V; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_sample_locations} - */ + * {@code GL_ARB_sample_locations} + */ public final class GLARBSampleLocations { + public static final int GL_SAMPLE_LOCATION_SUBPIXEL_BITS_ARB = 0x933D; public static final int GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_ARB = 0x933E; - public static final int GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_ARB = 0x9343; + public static final int GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_ARB = 0x933F; + public static final int GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_ARB = 0x9340; public static final int GL_SAMPLE_LOCATION_ARB = 0x8E50; - public static final int GL_SAMPLE_LOCATION_SUBPIXEL_BITS_ARB = 0x933D; - public static final int GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_ARB = 0x9342; public static final int GL_PROGRAMMABLE_SAMPLE_LOCATION_ARB = 0x9341; - public static final int GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_ARB = 0x9340; - public static final int GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_ARB = 0x933F; + public static final int GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_ARB = 0x9342; + public static final int GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_ARB = 0x9343; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_sample_locations) return; - ext.glEvaluateDepthValuesARB = load.invoke("glEvaluateDepthValuesARB", V); - ext.glFramebufferSampleLocationsfvARB = load.invoke("glFramebufferSampleLocationsfvARB", IIIPV); - ext.glNamedFramebufferSampleLocationsfvARB = load.invoke("glNamedFramebufferSampleLocationsfvARB", IIIPV); + ext.glEvaluateDepthValuesARB = load.invoke("glEvaluateDepthValuesARB", ofVoid()); + ext.glFramebufferSampleLocationsfvARB = load.invoke("glFramebufferSampleLocationsfvARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glNamedFramebufferSampleLocationsfvARB = load.invoke("glNamedFramebufferSampleLocationsfvARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); } public static void glEvaluateDepthValuesARB() { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glEvaluateDepthValuesARB).invokeExact(); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glEvaluateDepthValuesARB).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glFramebufferSampleLocationsfvARB(int target, int start, int count, MemorySegment v) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glFramebufferSampleLocationsfvARB(int target, int start, int count, @NativeType("const GLfloat *v") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glFramebufferSampleLocationsfvARB).invokeExact(target, start, count, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glFramebufferSampleLocationsfvARB).invokeExact(target, start, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glNamedFramebufferSampleLocationsfvARB(int framebuffer, int start, int count, MemorySegment v) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glNamedFramebufferSampleLocationsfvARB(int framebuffer, int start, int count, @NativeType("const GLfloat *v") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glNamedFramebufferSampleLocationsfvARB).invokeExact(framebuffer, start, count, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glNamedFramebufferSampleLocationsfvARB).invokeExact(framebuffer, start, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleShading.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleShading.java index a246d0c6..f211d241 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleShading.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleShading.java @@ -1,46 +1,31 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import static overrungl.FunctionDescriptors.FV; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_sample_shading} - */ + * {@code GL_ARB_sample_shading} + */ public final class GLARBSampleShading { public static final int GL_SAMPLE_SHADING_ARB = 0x8C36; public static final int GL_MIN_SAMPLE_SHADING_VALUE_ARB = 0x8C37; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_sample_shading) return; - ext.glMinSampleShadingARB = load.invoke("glMinSampleShadingARB", FV); + ext.glMinSampleShadingARB = load.invoke("glMinSampleShadingARB", ofVoid(JAVA_FLOAT)); } public static void glMinSampleShadingARB(float value) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMinSampleShadingARB).invokeExact(value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMinSampleShadingARB).invokeExact(value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShaderObjects.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShaderObjects.java index 013e4776..04407a15 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShaderObjects.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShaderObjects.java @@ -1,422 +1,371 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import java.lang.foreign.MemorySegment; - -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_shader_objects} - */ + * {@code GL_ARB_shader_objects} + */ public final class GLARBShaderObjects { + public static final int GL_PROGRAM_OBJECT_ARB = 0x8B40; + public static final int GL_SHADER_OBJECT_ARB = 0x8B48; + public static final int GL_OBJECT_TYPE_ARB = 0x8B4E; + public static final int GL_OBJECT_SUBTYPE_ARB = 0x8B4F; + public static final int GL_FLOAT_VEC2_ARB = 0x8B50; + public static final int GL_FLOAT_VEC3_ARB = 0x8B51; public static final int GL_FLOAT_VEC4_ARB = 0x8B52; - public static final int GL_FLOAT_MAT3_ARB = 0x8B5B; - public static final int GL_OBJECT_ATTACHED_OBJECTS_ARB = 0x8B85; + public static final int GL_INT_VEC2_ARB = 0x8B53; + public static final int GL_INT_VEC3_ARB = 0x8B54; + public static final int GL_INT_VEC4_ARB = 0x8B55; public static final int GL_BOOL_ARB = 0x8B56; - public static final int GL_SAMPLER_2D_RECT_SHADOW_ARB = 0x8B64; - public static final int GL_OBJECT_LINK_STATUS_ARB = 0x8B82; - public static final int GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB = 0x8B87; - public static final int GL_OBJECT_INFO_LOG_LENGTH_ARB = 0x8B84; - public static final int GL_FLOAT_MAT2_ARB = 0x8B5A; - public static final int GL_FLOAT_VEC3_ARB = 0x8B51; + public static final int GL_BOOL_VEC2_ARB = 0x8B57; + public static final int GL_BOOL_VEC3_ARB = 0x8B58; public static final int GL_BOOL_VEC4_ARB = 0x8B59; - public static final int GL_OBJECT_TYPE_ARB = 0x8B4E; - public static final int GL_OBJECT_SHADER_SOURCE_LENGTH_ARB = 0x8B88; - public static final int GL_INT_VEC4_ARB = 0x8B55; - public static final int GL_OBJECT_VALIDATE_STATUS_ARB = 0x8B83; + public static final int GL_FLOAT_MAT2_ARB = 0x8B5A; + public static final int GL_FLOAT_MAT3_ARB = 0x8B5B; + public static final int GL_FLOAT_MAT4_ARB = 0x8B5C; public static final int GL_SAMPLER_1D_ARB = 0x8B5D; - public static final int GL_FLOAT_VEC2_ARB = 0x8B50; - public static final int GL_BOOL_VEC3_ARB = 0x8B58; - public static final int GL_SAMPLER_2D_RECT_ARB = 0x8B63; public static final int GL_SAMPLER_2D_ARB = 0x8B5E; public static final int GL_SAMPLER_3D_ARB = 0x8B5F; - public static final int GL_INT_VEC3_ARB = 0x8B54; public static final int GL_SAMPLER_CUBE_ARB = 0x8B60; - public static final int GL_BOOL_VEC2_ARB = 0x8B57; - public static final int GL_OBJECT_COMPILE_STATUS_ARB = 0x8B81; - public static final int GL_SHADER_OBJECT_ARB = 0x8B48; - public static final int GL_INT_VEC2_ARB = 0x8B53; public static final int GL_SAMPLER_1D_SHADOW_ARB = 0x8B61; - public static final int GL_OBJECT_DELETE_STATUS_ARB = 0x8B80; - public static final int GL_FLOAT_MAT4_ARB = 0x8B5C; public static final int GL_SAMPLER_2D_SHADOW_ARB = 0x8B62; + public static final int GL_SAMPLER_2D_RECT_ARB = 0x8B63; + public static final int GL_SAMPLER_2D_RECT_SHADOW_ARB = 0x8B64; + public static final int GL_OBJECT_DELETE_STATUS_ARB = 0x8B80; + public static final int GL_OBJECT_COMPILE_STATUS_ARB = 0x8B81; + public static final int GL_OBJECT_LINK_STATUS_ARB = 0x8B82; + public static final int GL_OBJECT_VALIDATE_STATUS_ARB = 0x8B83; + public static final int GL_OBJECT_INFO_LOG_LENGTH_ARB = 0x8B84; + public static final int GL_OBJECT_ATTACHED_OBJECTS_ARB = 0x8B85; public static final int GL_OBJECT_ACTIVE_UNIFORMS_ARB = 0x8B86; - public static final int GL_PROGRAM_OBJECT_ARB = 0x8B40; - public static final int GL_OBJECT_SUBTYPE_ARB = 0x8B4F; + public static final int GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB = 0x8B87; + public static final int GL_OBJECT_SHADER_SOURCE_LENGTH_ARB = 0x8B88; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_shader_objects) return; - ext.glDeleteObjectARB = load.invoke("glDeleteObjectARB", IV); - ext.glGetHandleARB = load.invoke("glGetHandleARB", II); - ext.glDetachObjectARB = load.invoke("glDetachObjectARB", IIV); - ext.glCreateShaderObjectARB = load.invoke("glCreateShaderObjectARB", II); - ext.glShaderSourceARB = load.invoke("glShaderSourceARB", IIPPV); - ext.glCompileShaderARB = load.invoke("glCompileShaderARB", IV); - ext.glCreateProgramObjectARB = load.invoke("glCreateProgramObjectARB", I); - ext.glAttachObjectARB = load.invoke("glAttachObjectARB", IIV); - ext.glLinkProgramARB = load.invoke("glLinkProgramARB", IV); - ext.glUseProgramObjectARB = load.invoke("glUseProgramObjectARB", IV); - ext.glValidateProgramARB = load.invoke("glValidateProgramARB", IV); - ext.glUniform1fARB = load.invoke("glUniform1fARB", IFV); - ext.glUniform2fARB = load.invoke("glUniform2fARB", IFFV); - ext.glUniform3fARB = load.invoke("glUniform3fARB", IFFFV); - ext.glUniform4fARB = load.invoke("glUniform4fARB", IFFFFV); - ext.glUniform1iARB = load.invoke("glUniform1iARB", IIV); - ext.glUniform2iARB = load.invoke("glUniform2iARB", IIIV); - ext.glUniform3iARB = load.invoke("glUniform3iARB", IIIIV); - ext.glUniform4iARB = load.invoke("glUniform4iARB", IIIIIV); - ext.glUniform1fvARB = load.invoke("glUniform1fvARB", IIPV); - ext.glUniform2fvARB = load.invoke("glUniform2fvARB", IIPV); - ext.glUniform3fvARB = load.invoke("glUniform3fvARB", IIPV); - ext.glUniform4fvARB = load.invoke("glUniform4fvARB", IIPV); - ext.glUniform1ivARB = load.invoke("glUniform1ivARB", IIPV); - ext.glUniform2ivARB = load.invoke("glUniform2ivARB", IIPV); - ext.glUniform3ivARB = load.invoke("glUniform3ivARB", IIPV); - ext.glUniform4ivARB = load.invoke("glUniform4ivARB", IIPV); - ext.glUniformMatrix2fvARB = load.invoke("glUniformMatrix2fvARB", IIZPV); - ext.glUniformMatrix3fvARB = load.invoke("glUniformMatrix3fvARB", IIZPV); - ext.glUniformMatrix4fvARB = load.invoke("glUniformMatrix4fvARB", IIZPV); - ext.glGetObjectParameterfvARB = load.invoke("glGetObjectParameterfvARB", IIPV); - ext.glGetObjectParameterivARB = load.invoke("glGetObjectParameterivARB", IIPV); - ext.glGetInfoLogARB = load.invoke("glGetInfoLogARB", IIPPV); - ext.glGetAttachedObjectsARB = load.invoke("glGetAttachedObjectsARB", IIPPV); - ext.glGetUniformLocationARB = load.invoke("glGetUniformLocationARB", IPI); - ext.glGetActiveUniformARB = load.invoke("glGetActiveUniformARB", IIIPPPPV); - ext.glGetUniformfvARB = load.invoke("glGetUniformfvARB", IIPV); - ext.glGetUniformivARB = load.invoke("glGetUniformivARB", IIPV); - ext.glGetShaderSourceARB = load.invoke("glGetShaderSourceARB", IIPPV); + ext.glDeleteObjectARB = load.invoke("glDeleteObjectARB", ofVoid(JAVA_INT)); + ext.glGetHandleARB = load.invoke("glGetHandleARB", of(JAVA_INT, JAVA_INT)); + ext.glDetachObjectARB = load.invoke("glDetachObjectARB", ofVoid(JAVA_INT, JAVA_INT)); + ext.glCreateShaderObjectARB = load.invoke("glCreateShaderObjectARB", of(JAVA_INT, JAVA_INT)); + ext.glShaderSourceARB = load.invoke("glShaderSourceARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glCompileShaderARB = load.invoke("glCompileShaderARB", ofVoid(JAVA_INT)); + ext.glCreateProgramObjectARB = load.invoke("glCreateProgramObjectARB", of(JAVA_INT)); + ext.glAttachObjectARB = load.invoke("glAttachObjectARB", ofVoid(JAVA_INT, JAVA_INT)); + ext.glLinkProgramARB = load.invoke("glLinkProgramARB", ofVoid(JAVA_INT)); + ext.glUseProgramObjectARB = load.invoke("glUseProgramObjectARB", ofVoid(JAVA_INT)); + ext.glValidateProgramARB = load.invoke("glValidateProgramARB", ofVoid(JAVA_INT)); + ext.glUniform1fARB = load.invoke("glUniform1fARB", ofVoid(JAVA_INT, JAVA_FLOAT)); + ext.glUniform2fARB = load.invoke("glUniform2fARB", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glUniform3fARB = load.invoke("glUniform3fARB", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glUniform4fARB = load.invoke("glUniform4fARB", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glUniform1iARB = load.invoke("glUniform1iARB", ofVoid(JAVA_INT, JAVA_INT)); + ext.glUniform2iARB = load.invoke("glUniform2iARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glUniform3iARB = load.invoke("glUniform3iARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glUniform4iARB = load.invoke("glUniform4iARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glUniform1fvARB = load.invoke("glUniform1fvARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform2fvARB = load.invoke("glUniform2fvARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform3fvARB = load.invoke("glUniform3fvARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform4fvARB = load.invoke("glUniform4fvARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform1ivARB = load.invoke("glUniform1ivARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform2ivARB = load.invoke("glUniform2ivARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform3ivARB = load.invoke("glUniform3ivARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform4ivARB = load.invoke("glUniform4ivARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniformMatrix2fvARB = load.invoke("glUniformMatrix2fvARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glUniformMatrix3fvARB = load.invoke("glUniformMatrix3fvARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glUniformMatrix4fvARB = load.invoke("glUniformMatrix4fvARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glGetObjectParameterfvARB = load.invoke("glGetObjectParameterfvARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetObjectParameterivARB = load.invoke("glGetObjectParameterivARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetInfoLogARB = load.invoke("glGetInfoLogARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glGetAttachedObjectsARB = load.invoke("glGetAttachedObjectsARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glGetUniformLocationARB = load.invoke("glGetUniformLocationARB", of(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetActiveUniformARB = load.invoke("glGetActiveUniformARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, ADDRESS, ADDRESS, ADDRESS)); + ext.glGetUniformfvARB = load.invoke("glGetUniformfvARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetUniformivARB = load.invoke("glGetUniformivARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetShaderSourceARB = load.invoke("glGetShaderSourceARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); } public static void glDeleteObjectARB(int obj) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDeleteObjectARB).invokeExact(obj); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glDeleteObjectARB).invokeExact(obj); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + public static int glGetHandleARB(int pname) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - return (int) GLLoader.check(ext.glGetHandleARB).invokeExact(pname); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + return (int) + check(ext.glGetHandleARB).invokeExact(pname); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + public static void glDetachObjectARB(int containerObj, int attachedObj) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDetachObjectARB).invokeExact(containerObj, attachedObj); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glDetachObjectARB).invokeExact(containerObj, attachedObj); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + public static int glCreateShaderObjectARB(int shaderType) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - return (int) GLLoader.check(ext.glCreateShaderObjectARB).invokeExact(shaderType); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + return (int) + check(ext.glCreateShaderObjectARB).invokeExact(shaderType); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glShaderSourceARB(int shaderObj, int count, MemorySegment string, MemorySegment length) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glShaderSourceARB(int shaderObj, int count, @NativeType("const GLcharARB**") MemorySegment string, @NativeType("const GLint*") MemorySegment length) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glShaderSourceARB).invokeExact(shaderObj, count, string, length); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glShaderSourceARB).invokeExact(shaderObj, count, string, length); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + public static void glCompileShaderARB(int shaderObj) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glCompileShaderARB).invokeExact(shaderObj); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glCompileShaderARB).invokeExact(shaderObj); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + public static int glCreateProgramObjectARB() { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - return (int) GLLoader.check(ext.glCreateProgramObjectARB).invokeExact(); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + return (int) + check(ext.glCreateProgramObjectARB).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + public static void glAttachObjectARB(int containerObj, int obj) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glAttachObjectARB).invokeExact(containerObj, obj); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glAttachObjectARB).invokeExact(containerObj, obj); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + public static void glLinkProgramARB(int programObj) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glLinkProgramARB).invokeExact(programObj); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glLinkProgramARB).invokeExact(programObj); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + public static void glUseProgramObjectARB(int programObj) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUseProgramObjectARB).invokeExact(programObj); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUseProgramObjectARB).invokeExact(programObj); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + public static void glValidateProgramARB(int programObj) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glValidateProgramARB).invokeExact(programObj); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glValidateProgramARB).invokeExact(programObj); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + public static void glUniform1fARB(int location, float v0) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniform1fARB).invokeExact(location, v0); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniform1fARB).invokeExact(location, v0); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + public static void glUniform2fARB(int location, float v0, float v1) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniform2fARB).invokeExact(location, v0, v1); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniform2fARB).invokeExact(location, v0, v1); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + public static void glUniform3fARB(int location, float v0, float v1, float v2) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniform3fARB).invokeExact(location, v0, v1, v2); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniform3fARB).invokeExact(location, v0, v1, v2); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + public static void glUniform4fARB(int location, float v0, float v1, float v2, float v3) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniform4fARB).invokeExact(location, v0, v1, v2, v3); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniform4fARB).invokeExact(location, v0, v1, v2, v3); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + public static void glUniform1iARB(int location, int v0) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniform1iARB).invokeExact(location, v0); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniform1iARB).invokeExact(location, v0); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + public static void glUniform2iARB(int location, int v0, int v1) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniform2iARB).invokeExact(location, v0, v1); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniform2iARB).invokeExact(location, v0, v1); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + public static void glUniform3iARB(int location, int v0, int v1, int v2) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniform3iARB).invokeExact(location, v0, v1, v2); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniform3iARB).invokeExact(location, v0, v1, v2); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + public static void glUniform4iARB(int location, int v0, int v1, int v2, int v3) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniform4iARB).invokeExact(location, v0, v1, v2, v3); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniform4iARB).invokeExact(location, v0, v1, v2, v3); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glUniform1fvARB(int location, int count, MemorySegment value) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glUniform1fvARB(int location, int count, @NativeType("const GLfloat*") MemorySegment value) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniform1fvARB).invokeExact(location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniform1fvARB).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glUniform2fvARB(int location, int count, MemorySegment value) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glUniform2fvARB(int location, int count, @NativeType("const GLfloat*") MemorySegment value) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniform2fvARB).invokeExact(location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniform2fvARB).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glUniform3fvARB(int location, int count, MemorySegment value) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glUniform3fvARB(int location, int count, @NativeType("const GLfloat*") MemorySegment value) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniform3fvARB).invokeExact(location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniform3fvARB).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glUniform4fvARB(int location, int count, MemorySegment value) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glUniform4fvARB(int location, int count, @NativeType("const GLfloat*") MemorySegment value) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniform4fvARB).invokeExact(location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniform4fvARB).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glUniform1ivARB(int location, int count, MemorySegment value) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glUniform1ivARB(int location, int count, @NativeType("const GLint*") MemorySegment value) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniform1ivARB).invokeExact(location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniform1ivARB).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glUniform2ivARB(int location, int count, MemorySegment value) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glUniform2ivARB(int location, int count, @NativeType("const GLint*") MemorySegment value) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniform2ivARB).invokeExact(location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniform2ivARB).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glUniform3ivARB(int location, int count, MemorySegment value) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glUniform3ivARB(int location, int count, @NativeType("const GLint*") MemorySegment value) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniform3ivARB).invokeExact(location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniform3ivARB).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glUniform4ivARB(int location, int count, MemorySegment value) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glUniform4ivARB(int location, int count, @NativeType("const GLint*") MemorySegment value) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniform4ivARB).invokeExact(location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniform4ivARB).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glUniformMatrix2fvARB(int location, int count, byte transpose, MemorySegment value) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glUniformMatrix2fvARB(int location, int count, boolean transpose, @NativeType("const GLfloat*") MemorySegment value) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniformMatrix2fvARB).invokeExact(location, count, transpose, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniformMatrix2fvARB).invokeExact(location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glUniformMatrix3fvARB(int location, int count, byte transpose, MemorySegment value) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glUniformMatrix3fvARB(int location, int count, boolean transpose, @NativeType("const GLfloat*") MemorySegment value) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniformMatrix3fvARB).invokeExact(location, count, transpose, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniformMatrix3fvARB).invokeExact(location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glUniformMatrix4fvARB(int location, int count, byte transpose, MemorySegment value) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glUniformMatrix4fvARB(int location, int count, boolean transpose, @NativeType("const GLfloat*") MemorySegment value) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniformMatrix4fvARB).invokeExact(location, count, transpose, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniformMatrix4fvARB).invokeExact(location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetObjectParameterfvARB(int obj, int pname, MemorySegment params) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glGetObjectParameterfvARB(int obj, int pname, @NativeType("GLfloat*") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetObjectParameterfvARB).invokeExact(obj, pname, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetObjectParameterfvARB).invokeExact(obj, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetObjectParameterivARB(int obj, int pname, MemorySegment params) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glGetObjectParameterivARB(int obj, int pname, @NativeType("GLint*") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetObjectParameterivARB).invokeExact(obj, pname, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetObjectParameterivARB).invokeExact(obj, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetInfoLogARB(int obj, int maxLength, MemorySegment length, MemorySegment infoLog) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glGetInfoLogARB(int obj, int maxLength, @NativeType("GLsizei*") MemorySegment length, @NativeType("GLcharARB*") MemorySegment infoLog) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetInfoLogARB).invokeExact(obj, maxLength, length, infoLog); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetInfoLogARB).invokeExact(obj, maxLength, length, infoLog); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetAttachedObjectsARB(int containerObj, int maxCount, MemorySegment count, MemorySegment obj) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glGetAttachedObjectsARB(int containerObj, int maxCount, @NativeType("GLsizei*") MemorySegment count, @NativeType("GLhandleARB*") MemorySegment obj) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetAttachedObjectsARB).invokeExact(containerObj, maxCount, count, obj); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetAttachedObjectsARB).invokeExact(containerObj, maxCount, count, obj); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static int glGetUniformLocationARB(int programObj, MemorySegment name) { - final var ext = GLLoader.getExtCapabilities(); + + public static int glGetUniformLocationARB(int programObj, @NativeType("const GLcharARB*") MemorySegment name) { + final var ext = getExtCapabilities(); try { - return (int) GLLoader.check(ext.glGetUniformLocationARB).invokeExact(programObj, name); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + return (int) + check(ext.glGetUniformLocationARB).invokeExact(programObj, name); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetActiveUniformARB(int programObj, int index, int maxLength, MemorySegment length, MemorySegment size, MemorySegment type, MemorySegment name) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glGetActiveUniformARB(int programObj, int index, int maxLength, @NativeType("GLsizei*") MemorySegment length, @NativeType("GLint*") MemorySegment size, @NativeType("GLenum*") MemorySegment type, @NativeType("GLcharARB*") MemorySegment name) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetActiveUniformARB).invokeExact(programObj, index, maxLength, length, size, type, name); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetActiveUniformARB).invokeExact(programObj, index, maxLength, length, size, type, name); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetUniformfvARB(int programObj, int location, MemorySegment params) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glGetUniformfvARB(int programObj, int location, @NativeType("GLfloat*") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetUniformfvARB).invokeExact(programObj, location, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetUniformfvARB).invokeExact(programObj, location, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetUniformivARB(int programObj, int location, MemorySegment params) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glGetUniformivARB(int programObj, int location, @NativeType("GLint*") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetUniformivARB).invokeExact(programObj, location, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetUniformivARB).invokeExact(programObj, location, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetShaderSourceARB(int obj, int maxLength, MemorySegment length, MemorySegment source) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glGetShaderSourceARB(int obj, int maxLength, @NativeType("GLsizei*") MemorySegment length, @NativeType("GLcharARB*") MemorySegment source) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetShaderSourceARB).invokeExact(obj, maxLength, length, source); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetShaderSourceARB).invokeExact(obj, maxLength, length, source); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadingLanguageInclude.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadingLanguageInclude.java index 13591bf6..e515781d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadingLanguageInclude.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadingLanguageInclude.java @@ -1,94 +1,73 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import java.lang.foreign.MemorySegment; - -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_shading_language_include} - */ + * {@code GL_ARB_shading_language_include} + */ public final class GLARBShadingLanguageInclude { + public static final int GL_SHADER_INCLUDE_ARB = 0x8DAE; public static final int GL_NAMED_STRING_LENGTH_ARB = 0x8DE9; public static final int GL_NAMED_STRING_TYPE_ARB = 0x8DEA; - public static final int GL_SHADER_INCLUDE_ARB = 0x8DAE; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_shading_language_include) return; - ext.glNamedStringARB = load.invoke("glNamedStringARB", IIPIPV); - ext.glDeleteNamedStringARB = load.invoke("glDeleteNamedStringARB", IPV); - ext.glCompileShaderIncludeARB = load.invoke("glCompileShaderIncludeARB", IIPPV); - ext.glIsNamedStringARB = load.invoke("glIsNamedStringARB", IPZ); - ext.glGetNamedStringARB = load.invoke("glGetNamedStringARB", IPIPPV); - ext.glGetNamedStringivARB = load.invoke("glGetNamedStringivARB", IPIPV); + ext.glNamedStringARB = load.invoke("glNamedStringARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, ADDRESS)); + ext.glDeleteNamedStringARB = load.invoke("glDeleteNamedStringARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glCompileShaderIncludeARB = load.invoke("glCompileShaderIncludeARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glIsNamedStringARB = load.invoke("glIsNamedStringARB", of(JAVA_BYTE, JAVA_INT, ADDRESS)); + ext.glGetNamedStringARB = load.invoke("glGetNamedStringARB", ofVoid(JAVA_INT, ADDRESS, JAVA_INT, ADDRESS, ADDRESS)); + ext.glGetNamedStringivARB = load.invoke("glGetNamedStringivARB", ofVoid(JAVA_INT, ADDRESS, JAVA_INT, ADDRESS)); } - public static void glNamedStringARB(int type, int nameLen, MemorySegment name, int stringLen, MemorySegment string) { - final var ext = GLLoader.getExtCapabilities(); + public static void glNamedStringARB(int type, int nameLen, @NativeType("const GLchar*") MemorySegment name, int stringLen, @NativeType("const GLchar*") MemorySegment string) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glNamedStringARB).invokeExact(type, nameLen, name, stringLen, string); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glNamedStringARB).invokeExact(type, nameLen, name, stringLen, string); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glDeleteNamedStringARB(int nameLen, MemorySegment name) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glDeleteNamedStringARB(int nameLen, @NativeType("const GLchar*") MemorySegment name) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDeleteNamedStringARB).invokeExact(nameLen, name); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glDeleteNamedStringARB).invokeExact(nameLen, name); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glCompileShaderIncludeARB(int shader, int count, MemorySegment path, MemorySegment length) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glCompileShaderIncludeARB(int shader, int count, @NativeType("const GLchar *const*") MemorySegment path, @NativeType("const GLint*") MemorySegment length) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glCompileShaderIncludeARB).invokeExact(shader, count, path, length); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glCompileShaderIncludeARB).invokeExact(shader, count, path, length); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static byte glIsNamedStringARB(int nameLen, MemorySegment name) { - final var ext = GLLoader.getExtCapabilities(); + + public static boolean glIsNamedStringARB(int nameLen, @NativeType("const GLchar*") MemorySegment name) { + final var ext = getExtCapabilities(); try { - return (byte) GLLoader.check(ext.glIsNamedStringARB).invokeExact(nameLen, name); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + return (boolean) + check(ext.glIsNamedStringARB).invokeExact(nameLen, name); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetNamedStringARB(int nameLen, MemorySegment name, int bufSize, MemorySegment stringLen, MemorySegment string) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glGetNamedStringARB(int nameLen, @NativeType("const GLchar*") MemorySegment name, int bufSize, @NativeType("GLint*") MemorySegment stringLen, @NativeType("GLchar*") MemorySegment string) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetNamedStringARB).invokeExact(nameLen, name, bufSize, stringLen, string); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetNamedStringARB).invokeExact(nameLen, name, bufSize, stringLen, string); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetNamedStringivARB(int nameLen, MemorySegment name, int pname, MemorySegment params) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glGetNamedStringivARB(int nameLen, @NativeType("const GLchar*") MemorySegment name, int pname, @NativeType("GLint*") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetNamedStringivARB).invokeExact(nameLen, name, pname, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetNamedStringivARB).invokeExact(nameLen, name, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadow.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadow.java index 0bf0b168..a749a987 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadow.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadow.java @@ -1,27 +1,19 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + /** - * {@code GL_ARB_shadow} - */ + * {@code GL_ARB_shadow} + */ public final class GLARBShadow { + public static final int GL_TEXTURE_COMPARE_MODE_ARB = 0x884C; public static final int GL_TEXTURE_COMPARE_FUNC_ARB = 0x884D; public static final int GL_COMPARE_R_TO_TEXTURE_ARB = 0x884E; - public static final int GL_TEXTURE_COMPARE_MODE_ARB = 0x884C; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadowAmbient.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadowAmbient.java index 68b8fdb5..7d34cb66 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadowAmbient.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadowAmbient.java @@ -1,25 +1,17 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + /** - * {@code GL_ARB_shadow_ambient} - */ + * {@code GL_ARB_shadow_ambient} + */ public final class GLARBShadowAmbient { public static final int GL_TEXTURE_COMPARE_FAIL_VALUE_ARB = 0x80BF; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseBuffer.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseBuffer.java index f5179e88..36809721 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseBuffer.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseBuffer.java @@ -1,64 +1,47 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import static overrungl.FunctionDescriptors.IJJZV; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_sparse_buffer} - */ + * {@code GL_ARB_sparse_buffer} + */ public final class GLARBSparseBuffer { - public static final int GL_SPARSE_BUFFER_PAGE_SIZE_ARB = 0x82F8; public static final int GL_SPARSE_STORAGE_BIT_ARB = 0x0400; + public static final int GL_SPARSE_BUFFER_PAGE_SIZE_ARB = 0x82F8; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_sparse_buffer) return; - ext.glBufferPageCommitmentARB = load.invoke("glBufferPageCommitmentARB", IJJZV); - ext.glNamedBufferPageCommitmentEXT = load.invoke("glNamedBufferPageCommitmentEXT", IJJZV); - ext.glNamedBufferPageCommitmentARB = load.invoke("glNamedBufferPageCommitmentARB", IJJZV); + ext.glBufferPageCommitmentARB = load.invoke("glBufferPageCommitmentARB", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_BYTE)); + ext.glNamedBufferPageCommitmentEXT = load.invoke("glNamedBufferPageCommitmentEXT", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_BYTE)); + ext.glNamedBufferPageCommitmentARB = load.invoke("glNamedBufferPageCommitmentARB", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_BYTE)); } - public static void glBufferPageCommitmentARB(int target, long offset, long size, byte commit) { - final var ext = GLLoader.getExtCapabilities(); + public static void glBufferPageCommitmentARB(int target, long offset, long size, boolean commit) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glBufferPageCommitmentARB).invokeExact(target, offset, size, commit); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glBufferPageCommitmentARB).invokeExact(target, offset, size, commit); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glNamedBufferPageCommitmentEXT(int buffer, long offset, long size, byte commit) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glNamedBufferPageCommitmentEXT(int buffer, long offset, long size, boolean commit) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glNamedBufferPageCommitmentEXT).invokeExact(buffer, offset, size, commit); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glNamedBufferPageCommitmentEXT).invokeExact(buffer, offset, size, commit); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glNamedBufferPageCommitmentARB(int buffer, long offset, long size, byte commit) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glNamedBufferPageCommitmentARB(int buffer, long offset, long size, boolean commit) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glNamedBufferPageCommitmentARB).invokeExact(buffer, offset, size, commit); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glNamedBufferPageCommitmentARB).invokeExact(buffer, offset, size, commit); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseTexture.java index f821311b..216082d4 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseTexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseTexture.java @@ -1,55 +1,40 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import static overrungl.FunctionDescriptors.IIIIIIIIZV; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_sparse_texture} - */ + * {@code GL_ARB_sparse_texture} + */ public final class GLARBSparseTexture { + public static final int GL_TEXTURE_SPARSE_ARB = 0x91A6; + public static final int GL_VIRTUAL_PAGE_SIZE_INDEX_ARB = 0x91A7; + public static final int GL_NUM_SPARSE_LEVELS_ARB = 0x91AA; + public static final int GL_NUM_VIRTUAL_PAGE_SIZES_ARB = 0x91A8; + public static final int GL_VIRTUAL_PAGE_SIZE_X_ARB = 0x9195; + public static final int GL_VIRTUAL_PAGE_SIZE_Y_ARB = 0x9196; public static final int GL_VIRTUAL_PAGE_SIZE_Z_ARB = 0x9197; public static final int GL_MAX_SPARSE_TEXTURE_SIZE_ARB = 0x9198; - public static final int GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_ARB = 0x91A9; - public static final int GL_VIRTUAL_PAGE_SIZE_Y_ARB = 0x9196; public static final int GL_MAX_SPARSE_3D_TEXTURE_SIZE_ARB = 0x9199; - public static final int GL_VIRTUAL_PAGE_SIZE_INDEX_ARB = 0x91A7; - public static final int GL_TEXTURE_SPARSE_ARB = 0x91A6; - public static final int GL_VIRTUAL_PAGE_SIZE_X_ARB = 0x9195; - public static final int GL_NUM_VIRTUAL_PAGE_SIZES_ARB = 0x91A8; - public static final int GL_NUM_SPARSE_LEVELS_ARB = 0x91AA; public static final int GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_ARB = 0x919A; + public static final int GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_ARB = 0x91A9; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_sparse_texture) return; - ext.glTexPageCommitmentARB = load.invoke("glTexPageCommitmentARB", IIIIIIIIZV); + ext.glTexPageCommitmentARB = load.invoke("glTexPageCommitmentARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE)); } - public static void glTexPageCommitmentARB(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, byte commit) { - final var ext = GLLoader.getExtCapabilities(); + public static void glTexPageCommitmentARB(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, boolean commit) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTexPageCommitmentARB).invokeExact(target, level, xoffset, yoffset, zoffset, width, height, depth, commit); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glTexPageCommitmentARB).invokeExact(target, level, xoffset, yoffset, zoffset, width, height, depth, commit); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBorderClamp.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBorderClamp.java index 95e12f44..4b7e2020 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBorderClamp.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBorderClamp.java @@ -1,25 +1,17 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + /** - * {@code GL_ARB_texture_border_clamp} - */ + * {@code GL_ARB_texture_border_clamp} + */ public final class GLARBTextureBorderClamp { public static final int GL_CLAMP_TO_BORDER_ARB = 0x812D; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBufferObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBufferObject.java index b63b6981..308b4a6a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBufferObject.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBufferObject.java @@ -1,49 +1,34 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import static overrungl.FunctionDescriptors.IIIV; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_texture_buffer_object} - */ + * {@code GL_ARB_texture_buffer_object} + */ public final class GLARBTextureBufferObject { - public static final int GL_TEXTURE_BUFFER_FORMAT_ARB = 0x8C2E; - public static final int GL_MAX_TEXTURE_BUFFER_SIZE_ARB = 0x8C2B; public static final int GL_TEXTURE_BUFFER_ARB = 0x8C2A; + public static final int GL_MAX_TEXTURE_BUFFER_SIZE_ARB = 0x8C2B; public static final int GL_TEXTURE_BINDING_BUFFER_ARB = 0x8C2C; public static final int GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB = 0x8C2D; + public static final int GL_TEXTURE_BUFFER_FORMAT_ARB = 0x8C2E; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_texture_buffer_object) return; - ext.glTexBufferARB = load.invoke("glTexBufferARB", IIIV); + ext.glTexBufferARB = load.invoke("glTexBufferARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); } public static void glTexBufferARB(int target, int internalFormat, int buffer) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTexBufferARB).invokeExact(target, internalFormat, buffer); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glTexBufferARB).invokeExact(target, internalFormat, buffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompression.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompression.java index 620c166f..d75f5ea5 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompression.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompression.java @@ -1,111 +1,88 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import java.lang.foreign.MemorySegment; - -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_texture_compression} - */ + * {@code GL_ARB_texture_compression} + */ public final class GLARBTextureCompression { public static final int GL_COMPRESSED_ALPHA_ARB = 0x84E9; - public static final int GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB = 0x86A0; - public static final int GL_COMPRESSED_RGBA_ARB = 0x84EE; - public static final int GL_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86A3; public static final int GL_COMPRESSED_LUMINANCE_ARB = 0x84EA; - public static final int GL_TEXTURE_COMPRESSED_ARB = 0x86A1; - public static final int GL_COMPRESSED_RGB_ARB = 0x84ED; - public static final int GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86A2; + public static final int GL_COMPRESSED_LUMINANCE_ALPHA_ARB = 0x84EB; public static final int GL_COMPRESSED_INTENSITY_ARB = 0x84EC; + public static final int GL_COMPRESSED_RGB_ARB = 0x84ED; + public static final int GL_COMPRESSED_RGBA_ARB = 0x84EE; public static final int GL_TEXTURE_COMPRESSION_HINT_ARB = 0x84EF; - public static final int GL_COMPRESSED_LUMINANCE_ALPHA_ARB = 0x84EB; + public static final int GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB = 0x86A0; + public static final int GL_TEXTURE_COMPRESSED_ARB = 0x86A1; + public static final int GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86A2; + public static final int GL_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86A3; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_texture_compression) return; - ext.glCompressedTexImage3DARB = load.invoke("glCompressedTexImage3DARB", IIIIIIIIPV); - ext.glCompressedTexImage2DARB = load.invoke("glCompressedTexImage2DARB", IIIIIIIPV); - ext.glCompressedTexImage1DARB = load.invoke("glCompressedTexImage1DARB", IIIIIIPV); - ext.glCompressedTexSubImage3DARB = load.invoke("glCompressedTexSubImage3DARB", IIIIIIIIIIPV); - ext.glCompressedTexSubImage2DARB = load.invoke("glCompressedTexSubImage2DARB", IIIIIIIIPV); - ext.glCompressedTexSubImage1DARB = load.invoke("glCompressedTexSubImage1DARB", IIIIIIPV); - ext.glGetCompressedTexImageARB = load.invoke("glGetCompressedTexImageARB", IIPV); + ext.glCompressedTexImage3DARB = load.invoke("glCompressedTexImage3DARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCompressedTexImage2DARB = load.invoke("glCompressedTexImage2DARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCompressedTexImage1DARB = load.invoke("glCompressedTexImage1DARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCompressedTexSubImage3DARB = load.invoke("glCompressedTexSubImage3DARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCompressedTexSubImage2DARB = load.invoke("glCompressedTexSubImage2DARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCompressedTexSubImage1DARB = load.invoke("glCompressedTexSubImage1DARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetCompressedTexImageARB = load.invoke("glGetCompressedTexImageARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); } - public static void glCompressedTexImage3DARB(int target, int level, int internalFormat, int width, int height, int depth, int border, int imageSize, MemorySegment data) { - final var ext = GLLoader.getExtCapabilities(); + public static void glCompressedTexImage3DARB(int target, int level, int internalFormat, int width, int height, int depth, int border, int imageSize, @NativeType("const void*") MemorySegment data) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glCompressedTexImage3DARB).invokeExact(target, level, internalFormat, width, height, depth, border, imageSize, data); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glCompressedTexImage3DARB).invokeExact(target, level, internalFormat, width, height, depth, border, imageSize, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glCompressedTexImage2DARB(int target, int level, int internalFormat, int width, int height, int border, int imageSize, MemorySegment data) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glCompressedTexImage2DARB(int target, int level, int internalFormat, int width, int height, int border, int imageSize, @NativeType("const void*") MemorySegment data) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glCompressedTexImage2DARB).invokeExact(target, level, internalFormat, width, height, border, imageSize, data); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glCompressedTexImage2DARB).invokeExact(target, level, internalFormat, width, height, border, imageSize, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glCompressedTexImage1DARB(int target, int level, int internalFormat, int width, int border, int imageSize, MemorySegment data) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glCompressedTexImage1DARB(int target, int level, int internalFormat, int width, int border, int imageSize, @NativeType("const void*") MemorySegment data) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glCompressedTexImage1DARB).invokeExact(target, level, internalFormat, width, border, imageSize, data); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glCompressedTexImage1DARB).invokeExact(target, level, internalFormat, width, border, imageSize, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glCompressedTexSubImage3DARB(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, MemorySegment data) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glCompressedTexSubImage3DARB(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, @NativeType("const void*") MemorySegment data) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glCompressedTexSubImage3DARB).invokeExact(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glCompressedTexSubImage3DARB).invokeExact(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glCompressedTexSubImage2DARB(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, MemorySegment data) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glCompressedTexSubImage2DARB(int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, @NativeType("const void*") MemorySegment data) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glCompressedTexSubImage2DARB).invokeExact(target, level, xoffset, yoffset, width, height, format, imageSize, data); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glCompressedTexSubImage2DARB).invokeExact(target, level, xoffset, yoffset, width, height, format, imageSize, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glCompressedTexSubImage1DARB(int target, int level, int xoffset, int width, int format, int imageSize, MemorySegment data) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glCompressedTexSubImage1DARB(int target, int level, int xoffset, int width, int format, int imageSize, @NativeType("const void*") MemorySegment data) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glCompressedTexSubImage1DARB).invokeExact(target, level, xoffset, width, format, imageSize, data); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glCompressedTexSubImage1DARB).invokeExact(target, level, xoffset, width, format, imageSize, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetCompressedTexImageARB(int target, int level, MemorySegment img) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glGetCompressedTexImageARB(int target, int level, @NativeType("void*") MemorySegment img) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetCompressedTexImageARB).invokeExact(target, level, img); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetCompressedTexImageARB).invokeExact(target, level, img); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompressionBptc.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompressionBptc.java index 9f522cff..577880e7 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompressionBptc.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompressionBptc.java @@ -1,28 +1,20 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + /** - * {@code GL_ARB_texture_compression_bptc} - */ + * {@code GL_ARB_texture_compression_bptc} + */ public final class GLARBTextureCompressionBptc { - public static final int GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB = 0x8E8D; - public static final int GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB = 0x8E8F; public static final int GL_COMPRESSED_RGBA_BPTC_UNORM_ARB = 0x8E8C; + public static final int GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB = 0x8E8D; public static final int GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB = 0x8E8E; + public static final int GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB = 0x8E8F; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMap.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMap.java index 49204a5c..bc30709f 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMap.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMap.java @@ -1,36 +1,28 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + /** - * {@code GL_ARB_texture_cube_map} - */ + * {@code GL_ARB_texture_cube_map} + */ public final class GLARBTextureCubeMap { - public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB = 0x8517; - public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB = 0x8515; public static final int GL_NORMAL_MAP_ARB = 0x8511; - public static final int GL_TEXTURE_BINDING_CUBE_MAP_ARB = 0x8514; public static final int GL_REFLECTION_MAP_ARB = 0x8512; - public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB = 0x851C; public static final int GL_TEXTURE_CUBE_MAP_ARB = 0x8513; - public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB = 0x851A; - public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB = 0x8518; + public static final int GL_TEXTURE_BINDING_CUBE_MAP_ARB = 0x8514; + public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB = 0x8515; public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB = 0x8516; - public static final int GL_PROXY_TEXTURE_CUBE_MAP_ARB = 0x851B; + public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB = 0x8517; + public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB = 0x8518; public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB = 0x8519; + public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB = 0x851A; + public static final int GL_PROXY_TEXTURE_CUBE_MAP_ARB = 0x851B; + public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB = 0x851C; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMapArray.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMapArray.java index c6894083..e8578f9d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMapArray.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMapArray.java @@ -1,31 +1,23 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + /** - * {@code GL_ARB_texture_cube_map_array} - */ + * {@code GL_ARB_texture_cube_map_array} + */ public final class GLARBTextureCubeMapArray { public static final int GL_TEXTURE_CUBE_MAP_ARRAY_ARB = 0x9009; - public static final int GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB = 0x900D; + public static final int GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB = 0x900A; + public static final int GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB = 0x900B; public static final int GL_SAMPLER_CUBE_MAP_ARRAY_ARB = 0x900C; + public static final int GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB = 0x900D; public static final int GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB = 0x900E; - public static final int GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB = 0x900B; public static final int GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB = 0x900F; - public static final int GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB = 0x900A; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvCombine.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvCombine.java index 7e546d15..a37dbb78 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvCombine.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvCombine.java @@ -1,46 +1,38 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + /** - * {@code GL_ARB_texture_env_combine} - */ + * {@code GL_ARB_texture_env_combine} + */ public final class GLARBTextureEnvCombine { - public static final int GL_SUBTRACT_ARB = 0x84E7; - public static final int GL_INTERPOLATE_ARB = 0x8575; - public static final int GL_RGB_SCALE_ARB = 0x8573; - public static final int GL_OPERAND1_RGB_ARB = 0x8591; + public static final int GL_COMBINE_ARB = 0x8570; public static final int GL_COMBINE_RGB_ARB = 0x8571; - public static final int GL_SOURCE0_ALPHA_ARB = 0x8588; public static final int GL_COMBINE_ALPHA_ARB = 0x8572; + public static final int GL_SOURCE0_RGB_ARB = 0x8580; public static final int GL_SOURCE1_RGB_ARB = 0x8581; - public static final int GL_OPERAND1_ALPHA_ARB = 0x8599; + public static final int GL_SOURCE2_RGB_ARB = 0x8582; + public static final int GL_SOURCE0_ALPHA_ARB = 0x8588; + public static final int GL_SOURCE1_ALPHA_ARB = 0x8589; public static final int GL_SOURCE2_ALPHA_ARB = 0x858A; - public static final int GL_COMBINE_ARB = 0x8570; - public static final int GL_CONSTANT_ARB = 0x8576; - public static final int GL_PREVIOUS_ARB = 0x8578; - public static final int GL_OPERAND2_RGB_ARB = 0x8592; - public static final int GL_PRIMARY_COLOR_ARB = 0x8577; public static final int GL_OPERAND0_RGB_ARB = 0x8590; - public static final int GL_ADD_SIGNED_ARB = 0x8574; + public static final int GL_OPERAND1_RGB_ARB = 0x8591; + public static final int GL_OPERAND2_RGB_ARB = 0x8592; public static final int GL_OPERAND0_ALPHA_ARB = 0x8598; - public static final int GL_SOURCE1_ALPHA_ARB = 0x8589; - public static final int GL_SOURCE2_RGB_ARB = 0x8582; - public static final int GL_SOURCE0_RGB_ARB = 0x8580; + public static final int GL_OPERAND1_ALPHA_ARB = 0x8599; public static final int GL_OPERAND2_ALPHA_ARB = 0x859A; + public static final int GL_RGB_SCALE_ARB = 0x8573; + public static final int GL_ADD_SIGNED_ARB = 0x8574; + public static final int GL_INTERPOLATE_ARB = 0x8575; + public static final int GL_SUBTRACT_ARB = 0x84E7; + public static final int GL_CONSTANT_ARB = 0x8576; + public static final int GL_PRIMARY_COLOR_ARB = 0x8577; + public static final int GL_PREVIOUS_ARB = 0x8578; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvDot3.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvDot3.java index 38f909f5..5ab60e84 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvDot3.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvDot3.java @@ -1,26 +1,18 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + /** - * {@code GL_ARB_texture_env_dot3} - */ + * {@code GL_ARB_texture_env_dot3} + */ public final class GLARBTextureEnvDot3 { - public static final int GL_DOT3_RGBA_ARB = 0x86AF; public static final int GL_DOT3_RGB_ARB = 0x86AE; + public static final int GL_DOT3_RGBA_ARB = 0x86AF; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFilterMinmax.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFilterMinmax.java index f7ae8ecf..ed94f2b2 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFilterMinmax.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFilterMinmax.java @@ -1,26 +1,18 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + /** - * {@code GL_ARB_texture_filter_minmax} - */ + * {@code GL_ARB_texture_filter_minmax} + */ public final class GLARBTextureFilterMinmax { - public static final int GL_WEIGHTED_AVERAGE_ARB = 0x9367; public static final int GL_TEXTURE_REDUCTION_MODE_ARB = 0x9366; + public static final int GL_WEIGHTED_AVERAGE_ARB = 0x9367; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFloat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFloat.java index b8fcad2e..4ae8853a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFloat.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFloat.java @@ -1,44 +1,36 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + /** - * {@code GL_ARB_texture_float} - */ + * {@code GL_ARB_texture_float} + */ public final class GLARBTextureFloat { - public static final int GL_LUMINANCE_ALPHA32F_ARB = 0x8819; - public static final int GL_LUMINANCE16F_ARB = 0x881E; - public static final int GL_LUMINANCE32F_ARB = 0x8818; + public static final int GL_TEXTURE_RED_TYPE_ARB = 0x8C10; + public static final int GL_TEXTURE_GREEN_TYPE_ARB = 0x8C11; public static final int GL_TEXTURE_BLUE_TYPE_ARB = 0x8C12; - public static final int GL_INTENSITY16F_ARB = 0x881D; - public static final int GL_INTENSITY32F_ARB = 0x8817; - public static final int GL_ALPHA16F_ARB = 0x881C; - public static final int GL_RGB32F_ARB = 0x8815; - public static final int GL_ALPHA32F_ARB = 0x8816; - public static final int GL_UNSIGNED_NORMALIZED_ARB = 0x8C17; + public static final int GL_TEXTURE_ALPHA_TYPE_ARB = 0x8C13; public static final int GL_TEXTURE_LUMINANCE_TYPE_ARB = 0x8C14; + public static final int GL_TEXTURE_INTENSITY_TYPE_ARB = 0x8C15; public static final int GL_TEXTURE_DEPTH_TYPE_ARB = 0x8C16; - public static final int GL_TEXTURE_GREEN_TYPE_ARB = 0x8C11; - public static final int GL_RGBA16F_ARB = 0x881A; + public static final int GL_UNSIGNED_NORMALIZED_ARB = 0x8C17; public static final int GL_RGBA32F_ARB = 0x8814; - public static final int GL_TEXTURE_RED_TYPE_ARB = 0x8C10; - public static final int GL_TEXTURE_INTENSITY_TYPE_ARB = 0x8C15; - public static final int GL_TEXTURE_ALPHA_TYPE_ARB = 0x8C13; + public static final int GL_RGB32F_ARB = 0x8815; + public static final int GL_ALPHA32F_ARB = 0x8816; + public static final int GL_INTENSITY32F_ARB = 0x8817; + public static final int GL_LUMINANCE32F_ARB = 0x8818; + public static final int GL_LUMINANCE_ALPHA32F_ARB = 0x8819; + public static final int GL_RGBA16F_ARB = 0x881A; public static final int GL_RGB16F_ARB = 0x881B; + public static final int GL_ALPHA16F_ARB = 0x881C; + public static final int GL_INTENSITY16F_ARB = 0x881D; + public static final int GL_LUMINANCE16F_ARB = 0x881E; public static final int GL_LUMINANCE_ALPHA16F_ARB = 0x881F; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureGather.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureGather.java index dc1ca1a1..ac6f67f1 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureGather.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureGather.java @@ -1,27 +1,19 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + /** - * {@code GL_ARB_texture_gather} - */ + * {@code GL_ARB_texture_gather} + */ public final class GLARBTextureGather { public static final int GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB = 0x8E5E; - public static final int GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB = 0x8F9F; public static final int GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB = 0x8E5F; + public static final int GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB = 0x8F9F; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureMirroredRepeat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureMirroredRepeat.java index 04176485..2ef4c6c2 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureMirroredRepeat.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureMirroredRepeat.java @@ -1,25 +1,17 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + /** - * {@code GL_ARB_texture_mirrored_repeat} - */ + * {@code GL_ARB_texture_mirrored_repeat} + */ public final class GLARBTextureMirroredRepeat { public static final int GL_MIRRORED_REPEAT_ARB = 0x8370; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureRectangle.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureRectangle.java index 582f477a..cc795cff 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureRectangle.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureRectangle.java @@ -1,28 +1,20 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + /** - * {@code GL_ARB_texture_rectangle} - */ + * {@code GL_ARB_texture_rectangle} + */ public final class GLARBTextureRectangle { public static final int GL_TEXTURE_RECTANGLE_ARB = 0x84F5; - public static final int GL_PROXY_TEXTURE_RECTANGLE_ARB = 0x84F7; public static final int GL_TEXTURE_BINDING_RECTANGLE_ARB = 0x84F6; + public static final int GL_PROXY_TEXTURE_RECTANGLE_ARB = 0x84F7; public static final int GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB = 0x84F8; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransformFeedbackOverflowQuery.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransformFeedbackOverflowQuery.java index 9322a17c..b5a65caf 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransformFeedbackOverflowQuery.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransformFeedbackOverflowQuery.java @@ -1,25 +1,17 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + /** - * {@code GL_ARB_transform_feedback_overflow_query} - */ + * {@code GL_ARB_transform_feedback_overflow_query} + */ public final class GLARBTransformFeedbackOverflowQuery { public static final int GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB = 0x82EC; public static final int GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB = 0x82ED; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransposeMatrix.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransposeMatrix.java index 37cc20da..46e7906c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransposeMatrix.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransposeMatrix.java @@ -1,77 +1,57 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - // this file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import java.lang.foreign.MemorySegment; - -import static overrungl.FunctionDescriptors.PV; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_transpose_matrix} - */ + * {@code GL_ARB_transpose_matrix} + */ public final class GLARBTransposeMatrix { + public static final int GL_TRANSPOSE_MODELVIEW_MATRIX_ARB = 0x84E3; public static final int GL_TRANSPOSE_PROJECTION_MATRIX_ARB = 0x84E4; - public static final int GL_TRANSPOSE_COLOR_MATRIX_ARB = 0x84E6; public static final int GL_TRANSPOSE_TEXTURE_MATRIX_ARB = 0x84E5; - public static final int GL_TRANSPOSE_MODELVIEW_MATRIX_ARB = 0x84E3; + public static final int GL_TRANSPOSE_COLOR_MATRIX_ARB = 0x84E6; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_transpose_matrix) return; - ext.glLoadTransposeMatrixfARB = load.invoke("glLoadTransposeMatrixfARB", PV); - ext.glLoadTransposeMatrixdARB = load.invoke("glLoadTransposeMatrixdARB", PV); - ext.glMultTransposeMatrixfARB = load.invoke("glMultTransposeMatrixfARB", PV); - ext.glMultTransposeMatrixdARB = load.invoke("glMultTransposeMatrixdARB", PV); + ext.glLoadTransposeMatrixfARB = load.invoke("glLoadTransposeMatrixfARB", ofVoid(ADDRESS)); + ext.glLoadTransposeMatrixdARB = load.invoke("glLoadTransposeMatrixdARB", ofVoid(ADDRESS)); + ext.glMultTransposeMatrixfARB = load.invoke("glMultTransposeMatrixfARB", ofVoid(ADDRESS)); + ext.glMultTransposeMatrixdARB = load.invoke("glMultTransposeMatrixdARB", ofVoid(ADDRESS)); } - public static void glLoadTransposeMatrixfARB(MemorySegment m) { - final var ext = GLLoader.getExtCapabilities(); + public static void glLoadTransposeMatrixfARB(@NativeType("const GLfloat*") MemorySegment m) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glLoadTransposeMatrixfARB).invokeExact(m); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glLoadTransposeMatrixfARB).invokeExact(m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glLoadTransposeMatrixdARB(MemorySegment m) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glLoadTransposeMatrixdARB(@NativeType("const GLdouble*") MemorySegment m) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glLoadTransposeMatrixdARB).invokeExact(m); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glLoadTransposeMatrixdARB).invokeExact(m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultTransposeMatrixfARB(MemorySegment m) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glMultTransposeMatrixfARB(@NativeType("const GLfloat*") MemorySegment m) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultTransposeMatrixfARB).invokeExact(m); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultTransposeMatrixfARB).invokeExact(m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultTransposeMatrixdARB(MemorySegment m) { - final var ext = GLLoader.getExtCapabilities(); + + public static void glMultTransposeMatrixdARB(@NativeType("const GLdouble*") MemorySegment m) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultTransposeMatrixdARB).invokeExact(m); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultTransposeMatrixdARB).invokeExact(m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBlend.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBlend.java new file mode 100644 index 00000000..aa67c9f1 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBlend.java @@ -0,0 +1,143 @@ +// this file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.arb; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ARB_vertex_blend} + */ +public final class GLARBVertexBlend { + public static final int GL_MAX_VERTEX_UNITS_ARB = 0x86A4; + public static final int GL_ACTIVE_VERTEX_UNITS_ARB = 0x86A5; + public static final int GL_WEIGHT_SUM_UNITY_ARB = 0x86A6; + public static final int GL_VERTEX_BLEND_ARB = 0x86A7; + public static final int GL_CURRENT_WEIGHT_ARB = 0x86A8; + public static final int GL_WEIGHT_ARRAY_TYPE_ARB = 0x86A9; + public static final int GL_WEIGHT_ARRAY_STRIDE_ARB = 0x86AA; + public static final int GL_WEIGHT_ARRAY_SIZE_ARB = 0x86AB; + public static final int GL_WEIGHT_ARRAY_POINTER_ARB = 0x86AC; + public static final int GL_WEIGHT_ARRAY_ARB = 0x86AD; + public static final int GL_MODELVIEW0_ARB = 0x1700; + public static final int GL_MODELVIEW1_ARB = 0x850A; + public static final int GL_MODELVIEW2_ARB = 0x8722; + public static final int GL_MODELVIEW3_ARB = 0x8723; + public static final int GL_MODELVIEW4_ARB = 0x8724; + public static final int GL_MODELVIEW5_ARB = 0x8725; + public static final int GL_MODELVIEW6_ARB = 0x8726; + public static final int GL_MODELVIEW7_ARB = 0x8727; + public static final int GL_MODELVIEW8_ARB = 0x8728; + public static final int GL_MODELVIEW9_ARB = 0x8729; + public static final int GL_MODELVIEW10_ARB = 0x872A; + public static final int GL_MODELVIEW11_ARB = 0x872B; + public static final int GL_MODELVIEW12_ARB = 0x872C; + public static final int GL_MODELVIEW13_ARB = 0x872D; + public static final int GL_MODELVIEW14_ARB = 0x872E; + public static final int GL_MODELVIEW15_ARB = 0x872F; + public static final int GL_MODELVIEW16_ARB = 0x8730; + public static final int GL_MODELVIEW17_ARB = 0x8731; + public static final int GL_MODELVIEW18_ARB = 0x8732; + public static final int GL_MODELVIEW19_ARB = 0x8733; + public static final int GL_MODELVIEW20_ARB = 0x8734; + public static final int GL_MODELVIEW21_ARB = 0x8735; + public static final int GL_MODELVIEW22_ARB = 0x8736; + public static final int GL_MODELVIEW23_ARB = 0x8737; + public static final int GL_MODELVIEW24_ARB = 0x8738; + public static final int GL_MODELVIEW25_ARB = 0x8739; + public static final int GL_MODELVIEW26_ARB = 0x873A; + public static final int GL_MODELVIEW27_ARB = 0x873B; + public static final int GL_MODELVIEW28_ARB = 0x873C; + public static final int GL_MODELVIEW29_ARB = 0x873D; + public static final int GL_MODELVIEW30_ARB = 0x873E; + public static final int GL_MODELVIEW31_ARB = 0x873F; + + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_ARB_vertex_blend) return; + ext.glWeightbvARB = load.invoke("glWeightbvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glWeightsvARB = load.invoke("glWeightsvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glWeightivARB = load.invoke("glWeightivARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glWeightfvARB = load.invoke("glWeightfvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glWeightdvARB = load.invoke("glWeightdvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glWeightubvARB = load.invoke("glWeightubvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glWeightusvARB = load.invoke("glWeightusvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glWeightuivARB = load.invoke("glWeightuivARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glWeightPointerARB = load.invoke("glWeightPointerARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexBlendARB = load.invoke("glVertexBlendARB", ofVoid(JAVA_INT)); + } + + public static void glWeightbvARB(int size, @NativeType("const GLbyte*") MemorySegment weights) { + final var ext = getExtCapabilities(); + try { + check(ext.glWeightbvARB).invokeExact(size, weights); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWeightsvARB(int size, @NativeType("const GLshort*") MemorySegment weights) { + final var ext = getExtCapabilities(); + try { + check(ext.glWeightsvARB).invokeExact(size, weights); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWeightivARB(int size, @NativeType("const GLint*") MemorySegment weights) { + final var ext = getExtCapabilities(); + try { + check(ext.glWeightivARB).invokeExact(size, weights); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWeightfvARB(int size, @NativeType("const GLfloat*") MemorySegment weights) { + final var ext = getExtCapabilities(); + try { + check(ext.glWeightfvARB).invokeExact(size, weights); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWeightdvARB(int size, @NativeType("const GLdouble*") MemorySegment weights) { + final var ext = getExtCapabilities(); + try { + check(ext.glWeightdvARB).invokeExact(size, weights); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWeightubvARB(int size, @NativeType("const GLubyte*") MemorySegment weights) { + final var ext = getExtCapabilities(); + try { + check(ext.glWeightubvARB).invokeExact(size, weights); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWeightusvARB(int size, @NativeType("const GLushort*") MemorySegment weights) { + final var ext = getExtCapabilities(); + try { + check(ext.glWeightusvARB).invokeExact(size, weights); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWeightuivARB(int size, @NativeType("const GLuint*") MemorySegment weights) { + final var ext = getExtCapabilities(); + try { + check(ext.glWeightuivARB).invokeExact(size, weights); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWeightPointerARB(int size, int type, int stride, @NativeType("const void*") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glWeightPointerARB).invokeExact(size, type, stride, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexBlendARB(int count) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexBlendARB).invokeExact(count); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBufferObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBufferObject.java new file mode 100644 index 00000000..ddac7154 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBufferObject.java @@ -0,0 +1,143 @@ +// this file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.arb; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ARB_vertex_buffer_object} + */ +public final class GLARBVertexBufferObject { + public static final int GL_BUFFER_SIZE_ARB = 0x8764; + public static final int GL_BUFFER_USAGE_ARB = 0x8765; + public static final int GL_ARRAY_BUFFER_ARB = 0x8892; + public static final int GL_ELEMENT_ARRAY_BUFFER_ARB = 0x8893; + public static final int GL_ARRAY_BUFFER_BINDING_ARB = 0x8894; + public static final int GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB = 0x8895; + public static final int GL_VERTEX_ARRAY_BUFFER_BINDING_ARB = 0x8896; + public static final int GL_NORMAL_ARRAY_BUFFER_BINDING_ARB = 0x8897; + public static final int GL_COLOR_ARRAY_BUFFER_BINDING_ARB = 0x8898; + public static final int GL_INDEX_ARRAY_BUFFER_BINDING_ARB = 0x8899; + public static final int GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB = 0x889A; + public static final int GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB = 0x889B; + public static final int GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB = 0x889C; + public static final int GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB = 0x889D; + public static final int GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB = 0x889E; + public static final int GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB = 0x889F; + public static final int GL_READ_ONLY_ARB = 0x88B8; + public static final int GL_WRITE_ONLY_ARB = 0x88B9; + public static final int GL_READ_WRITE_ARB = 0x88BA; + public static final int GL_BUFFER_ACCESS_ARB = 0x88BB; + public static final int GL_BUFFER_MAPPED_ARB = 0x88BC; + public static final int GL_BUFFER_MAP_POINTER_ARB = 0x88BD; + public static final int GL_STREAM_DRAW_ARB = 0x88E0; + public static final int GL_STREAM_READ_ARB = 0x88E1; + public static final int GL_STREAM_COPY_ARB = 0x88E2; + public static final int GL_STATIC_DRAW_ARB = 0x88E4; + public static final int GL_STATIC_READ_ARB = 0x88E5; + public static final int GL_STATIC_COPY_ARB = 0x88E6; + public static final int GL_DYNAMIC_DRAW_ARB = 0x88E8; + public static final int GL_DYNAMIC_READ_ARB = 0x88E9; + public static final int GL_DYNAMIC_COPY_ARB = 0x88EA; + + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_ARB_vertex_buffer_object) return; + ext.glBindBufferARB = load.invoke("glBindBufferARB", ofVoid(JAVA_INT, JAVA_INT)); + ext.glDeleteBuffersARB = load.invoke("glDeleteBuffersARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glGenBuffersARB = load.invoke("glGenBuffersARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glIsBufferARB = load.invoke("glIsBufferARB", of(JAVA_BYTE, JAVA_INT)); + ext.glBufferDataARB = load.invoke("glBufferDataARB", ofVoid(JAVA_INT, JAVA_LONG, ADDRESS, JAVA_INT)); + ext.glBufferSubDataARB = load.invoke("glBufferSubDataARB", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, ADDRESS)); + ext.glGetBufferSubDataARB = load.invoke("glGetBufferSubDataARB", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, ADDRESS)); + ext.glMapBufferARB = load.invoke("glMapBufferARB", of(ADDRESS, JAVA_INT, JAVA_INT)); + ext.glUnmapBufferARB = load.invoke("glUnmapBufferARB", of(JAVA_BYTE, JAVA_INT)); + ext.glGetBufferParameterivARB = load.invoke("glGetBufferParameterivARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetBufferPointervARB = load.invoke("glGetBufferPointervARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glBindBufferARB(int target, int buffer) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindBufferARB).invokeExact(target, buffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeleteBuffersARB(int n, @NativeType("const GLuint*") MemorySegment buffers) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeleteBuffersARB).invokeExact(n, buffers); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGenBuffersARB(int n, @NativeType("GLuint*") MemorySegment buffers) { + final var ext = getExtCapabilities(); + try { + check(ext.glGenBuffersARB).invokeExact(n, buffers); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsBufferARB(int buffer) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsBufferARB).invokeExact(buffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBufferDataARB(int target, long size, @NativeType("const void*") MemorySegment data, int usage) { + final var ext = getExtCapabilities(); + try { + check(ext.glBufferDataARB).invokeExact(target, size, data, usage); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBufferSubDataARB(int target, long offset, long size, @NativeType("const void*") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glBufferSubDataARB).invokeExact(target, offset, size, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetBufferSubDataARB(int target, long offset, long size, @NativeType("void*") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetBufferSubDataARB).invokeExact(target, offset, size, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static @NativeType("void*") MemorySegment glMapBufferARB(int target, int access) { + final var ext = getExtCapabilities(); + try { + return (MemorySegment) + check(ext.glMapBufferARB).invokeExact(target, access); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glUnmapBufferARB(int target) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glUnmapBufferARB).invokeExact(target); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetBufferParameterivARB(int target, int pname, @NativeType("GLint*") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetBufferParameterivARB).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetBufferPointervARB(int target, int pname, @NativeType("void**") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetBufferPointervARB).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexProgram.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexProgram.java new file mode 100644 index 00000000..49200ad6 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexProgram.java @@ -0,0 +1,381 @@ +// this file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.arb; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ARB_vertex_program} + */ +public final class GLARBVertexProgram { + public static final int GL_COLOR_SUM_ARB = 0x8458; + public static final int GL_VERTEX_PROGRAM_ARB = 0x8620; + public static final int GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB = 0x8622; + public static final int GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB = 0x8623; + public static final int GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB = 0x8624; + public static final int GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB = 0x8625; + public static final int GL_CURRENT_VERTEX_ATTRIB_ARB = 0x8626; + public static final int GL_VERTEX_PROGRAM_POINT_SIZE_ARB = 0x8642; + public static final int GL_VERTEX_PROGRAM_TWO_SIDE_ARB = 0x8643; + public static final int GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB = 0x8645; + public static final int GL_MAX_VERTEX_ATTRIBS_ARB = 0x8869; + public static final int GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB = 0x886A; + public static final int GL_PROGRAM_ADDRESS_REGISTERS_ARB = 0x88B0; + public static final int GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB = 0x88B1; + public static final int GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88B2; + public static final int GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88B3; + + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_ARB_vertex_program) return; + ext.glVertexAttrib1dARB = load.invoke("glVertexAttrib1dARB", ofVoid(JAVA_INT, JAVA_DOUBLE)); + ext.glVertexAttrib1dvARB = load.invoke("glVertexAttrib1dvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib1fARB = load.invoke("glVertexAttrib1fARB", ofVoid(JAVA_INT, JAVA_FLOAT)); + ext.glVertexAttrib1fvARB = load.invoke("glVertexAttrib1fvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib1sARB = load.invoke("glVertexAttrib1sARB", ofVoid(JAVA_INT, JAVA_SHORT)); + ext.glVertexAttrib1svARB = load.invoke("glVertexAttrib1svARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib2dARB = load.invoke("glVertexAttrib2dARB", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glVertexAttrib2dvARB = load.invoke("glVertexAttrib2dvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib2fARB = load.invoke("glVertexAttrib2fARB", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glVertexAttrib2fvARB = load.invoke("glVertexAttrib2fvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib2sARB = load.invoke("glVertexAttrib2sARB", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT)); + ext.glVertexAttrib2svARB = load.invoke("glVertexAttrib2svARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib3dARB = load.invoke("glVertexAttrib3dARB", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glVertexAttrib3dvARB = load.invoke("glVertexAttrib3dvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib3fARB = load.invoke("glVertexAttrib3fARB", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glVertexAttrib3fvARB = load.invoke("glVertexAttrib3fvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib3sARB = load.invoke("glVertexAttrib3sARB", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glVertexAttrib3svARB = load.invoke("glVertexAttrib3svARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4NbvARB = load.invoke("glVertexAttrib4NbvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4NivARB = load.invoke("glVertexAttrib4NivARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4NsvARB = load.invoke("glVertexAttrib4NsvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4NubARB = load.invoke("glVertexAttrib4NubARB", ofVoid(JAVA_INT, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE)); + ext.glVertexAttrib4NubvARB = load.invoke("glVertexAttrib4NubvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4NuivARB = load.invoke("glVertexAttrib4NuivARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4NusvARB = load.invoke("glVertexAttrib4NusvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4bvARB = load.invoke("glVertexAttrib4bvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4dARB = load.invoke("glVertexAttrib4dARB", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glVertexAttrib4dvARB = load.invoke("glVertexAttrib4dvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4fARB = load.invoke("glVertexAttrib4fARB", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glVertexAttrib4fvARB = load.invoke("glVertexAttrib4fvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4ivARB = load.invoke("glVertexAttrib4ivARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4sARB = load.invoke("glVertexAttrib4sARB", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glVertexAttrib4svARB = load.invoke("glVertexAttrib4svARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4ubvARB = load.invoke("glVertexAttrib4ubvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4uivARB = load.invoke("glVertexAttrib4uivARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4usvARB = load.invoke("glVertexAttrib4usvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribPointerARB = load.invoke("glVertexAttribPointerARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, JAVA_INT, ADDRESS)); + ext.glEnableVertexAttribArrayARB = load.invoke("glEnableVertexAttribArrayARB", ofVoid(JAVA_INT)); + ext.glDisableVertexAttribArrayARB = load.invoke("glDisableVertexAttribArrayARB", ofVoid(JAVA_INT)); + ext.glGetVertexAttribdvARB = load.invoke("glGetVertexAttribdvARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVertexAttribfvARB = load.invoke("glGetVertexAttribfvARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVertexAttribivARB = load.invoke("glGetVertexAttribivARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVertexAttribPointervARB = load.invoke("glGetVertexAttribPointervARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glVertexAttrib1dARB(int index, double x) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib1dARB).invokeExact(index, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib1dvARB(int index, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib1dvARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib1fARB(int index, float x) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib1fARB).invokeExact(index, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib1fvARB(int index, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib1fvARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib1sARB(int index, short x) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib1sARB).invokeExact(index, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib1svARB(int index, @NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib1svARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib2dARB(int index, double x, double y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib2dARB).invokeExact(index, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib2dvARB(int index, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib2dvARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib2fARB(int index, float x, float y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib2fARB).invokeExact(index, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib2fvARB(int index, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib2fvARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib2sARB(int index, short x, short y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib2sARB).invokeExact(index, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib2svARB(int index, @NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib2svARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib3dARB(int index, double x, double y, double z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib3dARB).invokeExact(index, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib3dvARB(int index, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib3dvARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib3fARB(int index, float x, float y, float z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib3fARB).invokeExact(index, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib3fvARB(int index, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib3fvARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib3sARB(int index, short x, short y, short z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib3sARB).invokeExact(index, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib3svARB(int index, @NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib3svARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4NbvARB(int index, @NativeType("const GLbyte *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4NbvARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4NivARB(int index, @NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4NivARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4NsvARB(int index, @NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4NsvARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4NubARB(int index, byte x, byte y, byte z, byte w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4NubARB).invokeExact(index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4NubvARB(int index, @NativeType("const GLubyte *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4NubvARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4NuivARB(int index, @NativeType("const GLuint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4NuivARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4NusvARB(int index, @NativeType("const GLushort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4NusvARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4bvARB(int index, @NativeType("const GLbyte *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4bvARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4dARB(int index, double x, double y, double z, double w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4dARB).invokeExact(index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4dvARB(int index, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4dvARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4fARB(int index, float x, float y, float z, float w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4fARB).invokeExact(index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4fvARB(int index, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4fvARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4ivARB(int index, @NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4ivARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4sARB(int index, short x, short y, short z, short w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4sARB).invokeExact(index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4svARB(int index, @NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4svARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4ubvARB(int index, @NativeType("const GLubyte *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4ubvARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4uivARB(int index, @NativeType("const GLuint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4uivARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4usvARB(int index, @NativeType("const GLushort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4usvARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribPointerARB(int index, int size, int type, boolean normalized, int stride, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribPointerARB).invokeExact(index, size, type, normalized, stride, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEnableVertexAttribArrayARB(int index) { + final var ext = getExtCapabilities(); + try { + check(ext.glEnableVertexAttribArrayARB).invokeExact(index); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDisableVertexAttribArrayARB(int index) { + final var ext = getExtCapabilities(); + try { + check(ext.glDisableVertexAttribArrayARB).invokeExact(index); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVertexAttribdvARB(int index, int pname, @NativeType("GLdouble *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexAttribdvARB).invokeExact(index, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVertexAttribfvARB(int index, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexAttribfvARB).invokeExact(index, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVertexAttribivARB(int index, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexAttribivARB).invokeExact(index, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVertexAttribPointervARB(int index, int pname, @NativeType("void **") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexAttribPointervARB).invokeExact(index, pname, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexShader.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexShader.java new file mode 100644 index 00000000..55e05c24 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexShader.java @@ -0,0 +1,53 @@ +// this file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.arb; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ARB_vertex_shader} + */ +public final class GLARBVertexShader { + public static final int GL_VERTEX_SHADER_ARB = 0x8B31; + public static final int GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB = 0x8B4A; + public static final int GL_MAX_VARYING_FLOATS_ARB = 0x8B4B; + public static final int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB = 0x8B4C; + public static final int GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB = 0x8B4D; + public static final int GL_OBJECT_ACTIVE_ATTRIBUTES_ARB = 0x8B89; + public static final int GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB = 0x8B8A; + + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_ARB_vertex_shader) return; + ext.glBindAttribLocationARB = load.invoke("glBindAttribLocationARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetActiveAttribARB = load.invoke("glGetActiveAttribARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, ADDRESS, ADDRESS, ADDRESS)); + ext.glGetAttribLocationARB = load.invoke("glGetAttribLocationARB", of(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glBindAttribLocationARB(int programObj, int index, @NativeType("const GLcharARB *") MemorySegment name) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindAttribLocationARB).invokeExact(programObj, index, name); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetActiveAttribARB(int programObj, int index, int maxLength, @NativeType("GLsizei *") MemorySegment length, @NativeType("GLint *") MemorySegment size, @NativeType("GLenum *") MemorySegment type, @NativeType("GLcharARB *") MemorySegment name) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetActiveAttribARB).invokeExact(programObj, index, maxLength, length, size, type, name); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glGetAttribLocationARB(int programObj, @NativeType("const GLcharARB *") MemorySegment name) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glGetAttribLocationARB).invokeExact(programObj, name); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBViewportArray.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBViewportArray.java new file mode 100644 index 00000000..5c624400 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBViewportArray.java @@ -0,0 +1,37 @@ +// this file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.arb; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ARB_viewport_array} + */ +public final class GLARBViewportArray { + + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_ARB_viewport_array) return; + ext.glDepthRangeArraydvNV = load.invoke("glDepthRangeArraydvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glDepthRangeIndexeddNV = load.invoke("glDepthRangeIndexeddNV", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE)); + } + + public static void glDepthRangeArraydvNV(int first, int count, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glDepthRangeArraydvNV).invokeExact(first, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDepthRangeIndexeddNV(int index, double n, double f) { + final var ext = getExtCapabilities(); + try { + check(ext.glDepthRangeIndexeddNV).invokeExact(index, n, f); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBWindowPos.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBWindowPos.java new file mode 100644 index 00000000..a9b1b49f --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBWindowPos.java @@ -0,0 +1,149 @@ +// this file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.arb; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ARB_window_pos} + */ +public final class GLARBWindowPos { + + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_ARB_window_pos) return; + ext.glWindowPos2dARB = load.invoke("glWindowPos2dARB", ofVoid(JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glWindowPos2dvARB = load.invoke("glWindowPos2dvARB", ofVoid(ADDRESS)); + ext.glWindowPos2fARB = load.invoke("glWindowPos2fARB", ofVoid(JAVA_FLOAT, JAVA_FLOAT)); + ext.glWindowPos2fvARB = load.invoke("glWindowPos2fvARB", ofVoid(ADDRESS)); + ext.glWindowPos2iARB = load.invoke("glWindowPos2iARB", ofVoid(JAVA_INT, JAVA_INT)); + ext.glWindowPos2ivARB = load.invoke("glWindowPos2ivARB", ofVoid(ADDRESS)); + ext.glWindowPos2sARB = load.invoke("glWindowPos2sARB", ofVoid(JAVA_SHORT, JAVA_SHORT)); + ext.glWindowPos2svARB = load.invoke("glWindowPos2svARB", ofVoid(ADDRESS)); + ext.glWindowPos3dARB = load.invoke("glWindowPos3dARB", ofVoid(JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glWindowPos3dvARB = load.invoke("glWindowPos3dvARB", ofVoid(ADDRESS)); + ext.glWindowPos3fARB = load.invoke("glWindowPos3fARB", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glWindowPos3fvARB = load.invoke("glWindowPos3fvARB", ofVoid(ADDRESS)); + ext.glWindowPos3iARB = load.invoke("glWindowPos3iARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glWindowPos3ivARB = load.invoke("glWindowPos3ivARB", ofVoid(ADDRESS)); + ext.glWindowPos3sARB = load.invoke("glWindowPos3sARB", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glWindowPos3svARB = load.invoke("glWindowPos3svARB", ofVoid(ADDRESS)); + } + + public static void glWindowPos2dARB(double x, double y) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos2dARB).invokeExact(x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos2dvARB(@NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos2dvARB).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos2fARB(float x, float y) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos2fARB).invokeExact(x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos2fvARB(@NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos2fvARB).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos2iARB(int x, int y) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos2iARB).invokeExact(x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos2ivARB(@NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos2ivARB).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos2sARB(short x, short y) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos2sARB).invokeExact(x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos2svARB(@NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos2svARB).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos3dARB(double x, double y, double z) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos3dARB).invokeExact(x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos3dvARB(@NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos3dvARB).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos3fARB(float x, float y, float z) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos3fARB).invokeExact(x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos3fvARB(@NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos3fvARB).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos3iARB(int x, int y, int z) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos3iARB).invokeExact(x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos3ivARB(@NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos3ivARB).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos3sARB(short x, short y, short z) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos3sARB).invokeExact(x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos3svARB(@NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos3svARB).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} From 105383f45146e984e00a6ff496ab69502dd8bf69 Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Wed, 23 Aug 2023 20:26:54 +0800 Subject: [PATCH 02/20] [OpenGL] Add KHR extensions --- .../overrungl/opengl/OpenGLGenerator.kt | 100 ++++++++++++++++-- .../src/main/java/overrungl/opengl/GL14.java | 7 ++ .../src/main/java/overrungl/opengl/GL15C.java | 4 +- .../src/main/java/overrungl/opengl/GL20C.java | 4 +- .../src/main/java/overrungl/opengl/GL41C.java | 3 +- .../main/java/overrungl/opengl/GLConstC.java | 59 ----------- .../main/java/overrungl/opengl/GLExtCaps.java | 2 + .../ext/GLKHRBlendEquationAdvanced.java | 44 -------- .../ext/GLKHRParallelShaderCompile.java | 44 -------- .../ext/khr/GLKHRBlendEquationAdvanced.java | 44 ++++++++ .../GLKHRBlendEquationAdvancedCoherent.java | 17 +++ .../opengl/ext/khr/GLKHRNoError.java | 17 +++ .../ext/khr/GLKHRParallelShaderCompile.java | 31 ++++++ .../opengl/ext/khr/GLKHRRobustness.java | 17 +++ .../opengl/ext/khr/GLKHRShaderSubgroup.java | 28 +++++ .../khr/GLKHRTextureCompressionAstcHdr.java | 44 ++++++++ 16 files changed, 307 insertions(+), 158 deletions(-) delete mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLKHRBlendEquationAdvanced.java delete mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLKHRParallelShaderCompile.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvanced.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvancedCoherent.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRNoError.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRParallelShaderCompile.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRRobustness.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRShaderSubgroup.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRTextureCompressionAstcHdr.java diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt index 68ea9466..9d3a926b 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt @@ -16,14 +16,14 @@ package overrungl.opengl -import overrungl.opengl.OpenGLExt.ARB -import overrungl.opengl.OpenGLExt.CORE +import overrungl.opengl.OpenGLExt.* import java.nio.file.Files import kotlin.io.path.Path enum class OpenGLExt(val dir: String, val packageName: String, val extName: String) { CORE("", "", ""), - ARB("ext/arb", ".ext.arb", "ARB") + ARB("ext/arb", ".ext.arb", "ARB"), + KHR("ext/khr", ".ext.khr", "KHR") } data class Type(val name: String, val layout: String?) { @@ -185,11 +185,7 @@ fun file( } } -/** - * @author squid233 - * @since 0.1.0 - */ -fun main() { +fun arb() { file("Robustness", ARB, "GL_ARB_robustness") { "GL_NO_RESET_NOTIFICATION_ARB"("0x8261") "GL_RESET_NOTIFICATION_STRATEGY_ARB"("0x8256") @@ -824,3 +820,91 @@ fun main() { "glWindowPos3svARB"(void, address("v", "const GLshort *")) } } + +fun khr() { + file("BlendEquationAdvanced", KHR, "GL_KHR_blend_equation_advanced") { + "GL_MULTIPLY_KHR"("0x9294") + "GL_SCREEN_KHR"("0x9295") + "GL_OVERLAY_KHR"("0x9296") + "GL_DARKEN_KHR"("0x9297") + "GL_LIGHTEN_KHR"("0x9298") + "GL_COLORDODGE_KHR"("0x9299") + "GL_COLORBURN_KHR"("0x929A") + "GL_HARDLIGHT_KHR"("0x929B") + "GL_SOFTLIGHT_KHR"("0x929C") + "GL_DIFFERENCE_KHR"("0x929E") + "GL_EXCLUSION_KHR"("0x92A0") + "GL_HSL_HUE_KHR"("0x92AD") + "GL_HSL_SATURATION_KHR"("0x92AE") + "GL_HSL_COLOR_KHR"("0x92AF") + "GL_HSL_LUMINOSITY_KHR"("0x92B0") + "glBlendBarrierKHR"(void) + } + file("BlendEquationAdvancedCoherent", KHR, "GL_KHR_blend_equation_advanced_coherent") { + "GL_BLEND_ADVANCED_COHERENT_KHR"("0x9285") + } + file("NoError", KHR, "GL_KHR_no_error") { + "GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR"("0x00000008") + } + file("ParallelShaderCompile", KHR, "GL_KHR_parallel_shader_compile") { + "GL_MAX_SHADER_COMPILER_THREADS_KHR"("0x91B0") + "GL_COMPLETION_STATUS_KHR"("0x91B1") + "glMaxShaderCompilerThreadsKHR"(void, GLuint("count")) + } + file("Robustness", KHR, "GL_KHR_robustness") { + "GL_CONTEXT_ROBUST_ACCESS"("0x90F3") + } + file("ShaderSubgroup", KHR, "GL_KHR_shader_subgroup") { + "GL_SUBGROUP_SIZE_KHR"("0x9532") + "GL_SUBGROUP_SUPPORTED_STAGES_KHR"("0x9533") + "GL_SUBGROUP_SUPPORTED_FEATURES_KHR"("0x9534") + "GL_SUBGROUP_QUAD_ALL_STAGES_KHR"("0x9535") + "GL_SUBGROUP_FEATURE_BASIC_BIT_KHR"("0x00000001") + "GL_SUBGROUP_FEATURE_VOTE_BIT_KHR"("0x00000002") + "GL_SUBGROUP_FEATURE_ARITHMETIC_BIT_KHR"("0x00000004") + "GL_SUBGROUP_FEATURE_BALLOT_BIT_KHR"("0x00000008") + "GL_SUBGROUP_FEATURE_SHUFFLE_BIT_KHR"("0x00000010") + "GL_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT_KHR"("0x00000020") + "GL_SUBGROUP_FEATURE_CLUSTERED_BIT_KHR"("0x00000040") + "GL_SUBGROUP_FEATURE_QUAD_BIT_KHR"("0x00000080") + } + file("TextureCompressionAstcHdr", KHR, "GL_KHR_texture_compression_astc_hdr") { + "GL_COMPRESSED_RGBA_ASTC_4x4_KHR"("0x93B0") + "GL_COMPRESSED_RGBA_ASTC_5x4_KHR"("0x93B1") + "GL_COMPRESSED_RGBA_ASTC_5x5_KHR"("0x93B2") + "GL_COMPRESSED_RGBA_ASTC_6x5_KHR"("0x93B3") + "GL_COMPRESSED_RGBA_ASTC_6x6_KHR"("0x93B4") + "GL_COMPRESSED_RGBA_ASTC_8x5_KHR"("0x93B5") + "GL_COMPRESSED_RGBA_ASTC_8x6_KHR"("0x93B6") + "GL_COMPRESSED_RGBA_ASTC_8x8_KHR"("0x93B7") + "GL_COMPRESSED_RGBA_ASTC_10x5_KHR"("0x93B8") + "GL_COMPRESSED_RGBA_ASTC_10x6_KHR"("0x93B9") + "GL_COMPRESSED_RGBA_ASTC_10x8_KHR"("0x93BA") + "GL_COMPRESSED_RGBA_ASTC_10x10_KHR"("0x93BB") + "GL_COMPRESSED_RGBA_ASTC_12x10_KHR"("0x93BC") + "GL_COMPRESSED_RGBA_ASTC_12x12_KHR"("0x93BD") + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR"("0x93D0") + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR"("0x93D1") + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR"("0x93D2") + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR"("0x93D3") + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR"("0x93D4") + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR"("0x93D5") + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR"("0x93D6") + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR"("0x93D7") + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR"("0x93D8") + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR"("0x93D9") + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR"("0x93DA") + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR"("0x93DB") + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR"("0x93DC") + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR"("0x93DD") + } +} + +/** + * @author squid233 + * @since 0.1.0 + */ +fun main() { + arb() + khr() +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL14.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL14.java index 56328c42..596d064c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL14.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL14.java @@ -16,6 +16,8 @@ package overrungl.opengl; +import overrungl.opengl.ext.arb.GLARBWindowPos; + import java.lang.foreign.MemorySegment; import java.lang.foreign.SegmentAllocator; @@ -24,6 +26,11 @@ /** * The OpenGL 1.4 functions. + *

+ * These extensions are promoted in this version: + *

    + *
  • {@linkplain GLARBWindowPos GL_ARB_window_pos}
  • + *
* * @author squid233 * @since 0.1.0 diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL15C.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL15C.java index 69fe470c..afd1ecc5 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL15C.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL15C.java @@ -16,8 +16,9 @@ package overrungl.opengl; -import overrungl.opengl.ext.arb.GLARBOcclusionQuery; import overrungl.internal.RuntimeHelper; +import overrungl.opengl.ext.arb.GLARBOcclusionQuery; +import overrungl.opengl.ext.arb.GLARBVertexBufferObject; import overrungl.util.MemoryStack; import java.lang.foreign.MemorySegment; @@ -32,6 +33,7 @@ * These extensions are promoted in this version: *
    *
  • {@linkplain GLARBOcclusionQuery GL_ARB_occlusion_query}
  • + *
  • {@linkplain GLARBVertexBufferObject GL_ARB_vertex_buffer_object}
  • *
* * @author squid233 diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL20C.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL20C.java index 99d60b1f..37eeaffd 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL20C.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL20C.java @@ -17,10 +17,11 @@ package overrungl.opengl; import org.jetbrains.annotations.Nullable; +import overrungl.internal.RuntimeHelper; import overrungl.opengl.ext.arb.GLARBDrawBuffers; import overrungl.opengl.ext.arb.GLARBFragmentProgram; import overrungl.opengl.ext.arb.GLARBShaderObjects; -import overrungl.internal.RuntimeHelper; +import overrungl.opengl.ext.arb.GLARBVertexProgram; import overrungl.util.MemoryStack; import java.lang.foreign.Arena; @@ -39,6 +40,7 @@ *
  • {@linkplain GLARBDrawBuffers GL_ARB_draw_buffers}
  • *
  • {@linkplain GLARBFragmentProgram GL_ARB_fragment_program}
  • *
  • {@linkplain GLARBShaderObjects GL_ARB_shader_objects}
  • + *
  • {@linkplain GLARBVertexProgram GL_ARB_vertex_program}
  • * * * @author squid233 diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL41C.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL41C.java index 7518051b..e3acb89f 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL41C.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL41C.java @@ -18,6 +18,7 @@ import org.jetbrains.annotations.Nullable; import overrungl.internal.RuntimeHelper; +import overrungl.opengl.ext.arb.GLARBViewportArray; import overrungl.util.MemoryStack; import java.lang.foreign.MemorySegment; @@ -36,7 +37,7 @@ *
  • GL_ARB_get_program_binary
  • *
  • GL_ARB_separate_shader_objects
  • *
  • GL_ARB_vertex_attrib_64bit
  • - *
  • GL_ARB_viewport_array
  • + *
  • {@link GLARBViewportArray GL_ARB_viewport_array}
  • * * * @author squid233 diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLConstC.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLConstC.java index 91a9e0a4..02ff6d4b 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLConstC.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLConstC.java @@ -133,7 +133,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_BINORMAL_ARRAY_STRIDE_EXT = 0x8441; public static final int GL_BINORMAL_ARRAY_TYPE_EXT = 0x8440; public static final int GL_BLACKHOLE_RENDER_INTEL = 0x83FC; - public static final int GL_BLEND_ADVANCED_COHERENT_KHR = 0x9285; public static final int GL_BLEND_ADVANCED_COHERENT_NV = 0x9285; public static final int GL_BLEND_COLOR_COMMAND_NV = 0x000B; public static final int GL_BLEND_COLOR_EXT = 0x8005; @@ -187,9 +186,7 @@ public sealed class GLConstC permits GLConst { public static final int GL_CND_ATI = 0x896A; public static final int GL_COLOR3_BIT_PGI = 0x00010000; public static final int GL_COLOR4_BIT_PGI = 0x00020000; - public static final int GL_COLORBURN_KHR = 0x929A; public static final int GL_COLORBURN_NV = 0x929A; - public static final int GL_COLORDODGE_KHR = 0x9299; public static final int GL_COLORDODGE_NV = 0x9299; public static final int GL_COLOR_ALPHA_PAIRING_ATI = 0x8975; public static final int GL_COLOR_ARRAY_ADDRESS_NV = 0x8F23; @@ -268,25 +265,10 @@ public sealed class GLConstC permits GLConst { public static final int GL_COMBINE_RGB_EXT = 0x8571; public static final int GL_COMMAND_BARRIER_BIT_EXT = 0x00000040; public static final int GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT = 0x884E; - public static final int GL_COMPLETION_STATUS_KHR = 0x91B1; public static final int GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT = 0x8C72; public static final int GL_COMPRESSED_LUMINANCE_LATC1_EXT = 0x8C70; public static final int GL_COMPRESSED_RED_GREEN_RGTC2_EXT = 0x8DBD; public static final int GL_COMPRESSED_RED_RGTC1_EXT = 0x8DBB; - public static final int GL_COMPRESSED_RGBA_ASTC_10x10_KHR = 0x93BB; - public static final int GL_COMPRESSED_RGBA_ASTC_10x5_KHR = 0x93B8; - public static final int GL_COMPRESSED_RGBA_ASTC_10x6_KHR = 0x93B9; - public static final int GL_COMPRESSED_RGBA_ASTC_10x8_KHR = 0x93BA; - public static final int GL_COMPRESSED_RGBA_ASTC_12x10_KHR = 0x93BC; - public static final int GL_COMPRESSED_RGBA_ASTC_12x12_KHR = 0x93BD; - public static final int GL_COMPRESSED_RGBA_ASTC_4x4_KHR = 0x93B0; - public static final int GL_COMPRESSED_RGBA_ASTC_5x4_KHR = 0x93B1; - public static final int GL_COMPRESSED_RGBA_ASTC_5x5_KHR = 0x93B2; - public static final int GL_COMPRESSED_RGBA_ASTC_6x5_KHR = 0x93B3; - public static final int GL_COMPRESSED_RGBA_ASTC_6x6_KHR = 0x93B4; - public static final int GL_COMPRESSED_RGBA_ASTC_8x5_KHR = 0x93B5; - public static final int GL_COMPRESSED_RGBA_ASTC_8x6_KHR = 0x93B6; - public static final int GL_COMPRESSED_RGBA_ASTC_8x8_KHR = 0x93B7; public static final int GL_COMPRESSED_RGBA_FXT1_3DFX = 0x86B1; public static final int GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83F1; public static final int GL_COMPRESSED_RGBA_S3TC_DXT3_EXT = 0x83F2; @@ -299,20 +281,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_COMPRESSED_SIGNED_RED_RGTC1_EXT = 0x8DBC; public static final int GL_COMPRESSED_SLUMINANCE_ALPHA_EXT = 0x8C4B; public static final int GL_COMPRESSED_SLUMINANCE_EXT = 0x8C4A; - public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR = 0x93DB; - public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR = 0x93D8; - public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR = 0x93D9; - public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR = 0x93DA; - public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR = 0x93DC; - public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR = 0x93DD; - public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR = 0x93D0; - public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR = 0x93D1; - public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR = 0x93D2; - public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR = 0x93D3; - public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR = 0x93D4; - public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR = 0x93D5; - public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR = 0x93D6; - public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR = 0x93D7; public static final int GL_COMPRESSED_SRGB_ALPHA_EXT = 0x8C49; public static final int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT = 0x8C4D; public static final int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT = 0x8C4E; @@ -342,7 +310,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_CONSTANT_COLOR_EXT = 0x8001; public static final int GL_CONSTANT_EXT = 0x8576; public static final int GL_CONST_EYE_NV = 0x86E5; - public static final int GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR = 0x00000008; public static final int GL_CONTINUOUS_AMD = 0x9007; public static final int GL_CONTRAST_NV = 0x92A1; public static final int GL_CONVEX_HULL_NV = 0x908B; @@ -423,7 +390,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_CURRENT_VERTEX_EXT = 0x87E2; public static final int GL_CURRENT_VERTEX_WEIGHT_EXT = 0x850B; public static final int GL_D3D12_FENCE_VALUE_EXT = 0x9595; - public static final int GL_DARKEN_KHR = 0x9297; public static final int GL_DARKEN_NV = 0x9297; public static final int GL_DATA_BUFFER_AMD = 0x9151; public static final int GL_DECODE_EXT = 0x8A49; @@ -469,7 +435,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_DEVICE_LUID_EXT = 0x9599; public static final int GL_DEVICE_NODE_MASK_EXT = 0x959A; public static final int GL_DEVICE_UUID_EXT = 0x9597; - public static final int GL_DIFFERENCE_KHR = 0x929E; public static final int GL_DIFFERENCE_NV = 0x929E; public static final int GL_DISCARD_ATI = 0x8763; public static final int GL_DISCARD_NV = 0x8530; @@ -631,7 +596,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_EVAL_VERTEX_ATTRIB7_NV = 0x86CD; public static final int GL_EVAL_VERTEX_ATTRIB8_NV = 0x86CE; public static final int GL_EVAL_VERTEX_ATTRIB9_NV = 0x86CF; - public static final int GL_EXCLUSION_KHR = 0x92A0; public static final int GL_EXCLUSION_NV = 0x92A0; public static final int GL_EXCLUSIVE_EXT = 0x8F11; public static final int GL_EXPAND_NEGATE_NV = 0x8539; @@ -838,7 +802,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_HANDLE_TYPE_OPAQUE_FD_EXT = 0x9586; public static final int GL_HANDLE_TYPE_OPAQUE_WIN32_EXT = 0x9587; public static final int GL_HANDLE_TYPE_OPAQUE_WIN32_KMT_EXT = 0x9588; - public static final int GL_HARDLIGHT_KHR = 0x929B; public static final int GL_HARDLIGHT_NV = 0x929B; public static final int GL_HARDMIX_NV = 0x92A9; public static final int GL_HILO16_NV = 0x86F8; @@ -856,13 +819,9 @@ public sealed class GLConstC permits GLConst { public static final int GL_HI_BIAS_NV = 0x8714; public static final int GL_HI_SCALE_NV = 0x870E; public static final int GL_HORIZONTAL_LINE_TO_NV = 0x06; - public static final int GL_HSL_COLOR_KHR = 0x92AF; public static final int GL_HSL_COLOR_NV = 0x92AF; - public static final int GL_HSL_HUE_KHR = 0x92AD; public static final int GL_HSL_HUE_NV = 0x92AD; - public static final int GL_HSL_LUMINOSITY_KHR = 0x92B0; public static final int GL_HSL_LUMINOSITY_NV = 0x92B0; - public static final int GL_HSL_SATURATION_KHR = 0x92AE; public static final int GL_HSL_SATURATION_NV = 0x92AE; public static final int GL_IDENTITY_NV = 0x862A; public static final int GL_IGNORE_BORDER_HP = 0x8150; @@ -1004,7 +963,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_LAYOUT_TRANSFER_SRC_EXT = 0x9592; public static final int GL_LERP_ATI = 0x8969; public static final int GL_LGPU_SEPARATE_STORAGE_BIT_NVX = 0x0800; - public static final int GL_LIGHTEN_KHR = 0x9298; public static final int GL_LIGHTEN_NV = 0x9298; public static final int GL_LIGHT_ENV_MODE_SGIX = 0x8407; public static final int GL_LIGHT_MODEL_COLOR_CONTROL_EXT = 0x81F8; @@ -1286,7 +1244,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_MAX_SAMPLES_EXT = 0x8D57; public static final int GL_MAX_SAMPLE_MASK_WORDS_NV = 0x8E59; public static final int GL_MAX_SHADER_BUFFER_ADDRESS_NV = 0x8F35; - public static final int GL_MAX_SHADER_COMPILER_THREADS_KHR = 0x91B0; public static final int GL_MAX_SHININESS_NV = 0x8504; public static final int GL_MAX_SPARSE_3D_TEXTURE_SIZE_AMD = 0x9199; public static final int GL_MAX_SPARSE_TEXTURE_SIZE_AMD = 0x9198; @@ -1382,7 +1339,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_MOV_ATI = 0x8961; public static final int GL_MULTICAST_GPUS_NV = 0x92BA; public static final int GL_MULTICAST_PROGRAMMABLE_SAMPLE_LOCATION_NV = 0x9549; - public static final int GL_MULTIPLY_KHR = 0x9294; public static final int GL_MULTIPLY_NV = 0x9294; public static final int GL_MULTISAMPLES_NV = 0x9371; public static final int GL_MULTISAMPLE_3DFX = 0x86B2; @@ -1537,7 +1493,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_OUTPUT_TEXTURE_COORD8_EXT = 0x87A5; public static final int GL_OUTPUT_TEXTURE_COORD9_EXT = 0x87A6; public static final int GL_OUTPUT_VERTEX_EXT = 0x879A; - public static final int GL_OVERLAY_KHR = 0x9296; public static final int GL_OVERLAY_NV = 0x9296; public static final int GL_PACK_CMYK_HINT_EXT = 0x800E; public static final int GL_PACK_IMAGE_DEPTH_SGIS = 0x8131; @@ -2046,7 +2001,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_SCISSOR_BOX_EXCLUSIVE_NV = 0x9556; public static final int GL_SCISSOR_COMMAND_NV = 0x0011; public static final int GL_SCISSOR_TEST_EXCLUSIVE_NV = 0x9555; - public static final int GL_SCREEN_KHR = 0x9295; public static final int GL_SCREEN_NV = 0x9295; public static final int GL_SECONDARY_COLOR_ARRAY_ADDRESS_NV = 0x8F27; public static final int GL_SECONDARY_COLOR_ARRAY_EXT = 0x845E; @@ -2136,7 +2090,6 @@ public sealed class GLConstC permits GLConst { public static final int GL_SMOOTH_CUBIC_CURVE_TO_NV = 0x10; public static final int GL_SMOOTH_QUADRATIC_CURVE_TO_NV = 0x0E; public static final int GL_SM_COUNT_NV = 0x933B; - public static final int GL_SOFTLIGHT_KHR = 0x929C; public static final int GL_SOFTLIGHT_NV = 0x929C; public static final int GL_SOURCE0_ALPHA_EXT = 0x8588; public static final int GL_SOURCE0_RGB_EXT = 0x8580; @@ -2197,19 +2150,7 @@ public sealed class GLConstC permits GLConst { public static final int GL_STRICT_DEPTHFUNC_HINT_PGI = 0x1A216; public static final int GL_STRICT_LIGHTING_HINT_PGI = 0x1A217; public static final int GL_STRICT_SCISSOR_HINT_PGI = 0x1A218; - public static final int GL_SUBGROUP_FEATURE_ARITHMETIC_BIT_KHR = 0x00000004; - public static final int GL_SUBGROUP_FEATURE_BALLOT_BIT_KHR = 0x00000008; - public static final int GL_SUBGROUP_FEATURE_BASIC_BIT_KHR = 0x00000001; - public static final int GL_SUBGROUP_FEATURE_CLUSTERED_BIT_KHR = 0x00000040; public static final int GL_SUBGROUP_FEATURE_PARTITIONED_BIT_NV = 0x00000100; - public static final int GL_SUBGROUP_FEATURE_QUAD_BIT_KHR = 0x00000080; - public static final int GL_SUBGROUP_FEATURE_SHUFFLE_BIT_KHR = 0x00000010; - public static final int GL_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT_KHR = 0x00000020; - public static final int GL_SUBGROUP_FEATURE_VOTE_BIT_KHR = 0x00000002; - public static final int GL_SUBGROUP_QUAD_ALL_STAGES_KHR = 0x9535; - public static final int GL_SUBGROUP_SIZE_KHR = 0x9532; - public static final int GL_SUBGROUP_SUPPORTED_FEATURES_KHR = 0x9534; - public static final int GL_SUBGROUP_SUPPORTED_STAGES_KHR = 0x9533; public static final int GL_SUBPIXEL_PRECISION_BIAS_X_BITS_NV = 0x9347; public static final int GL_SUBPIXEL_PRECISION_BIAS_Y_BITS_NV = 0x9348; public static final int GL_SUBSAMPLE_DISTANCE_AMD = 0x883F; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java index 4da6ee9a..60258238 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java @@ -20,6 +20,8 @@ import overrungl.opengl.ext.amd.*; import overrungl.opengl.ext.apple.*; import overrungl.opengl.ext.arb.*; +import overrungl.opengl.ext.khr.GLKHRBlendEquationAdvanced; +import overrungl.opengl.ext.khr.GLKHRParallelShaderCompile; import overrungl.opengl.ext.sun.*; import java.lang.invoke.MethodHandle; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLKHRBlendEquationAdvanced.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLKHRBlendEquationAdvanced.java deleted file mode 100644 index 92fe73c9..00000000 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLKHRBlendEquationAdvanced.java +++ /dev/null @@ -1,44 +0,0 @@ -/* - * MIT License - * - * Copyright (c) 2022-2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - -package overrungl.opengl.ext; - -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; - -/** - * {@code GL_KHR_blend_equation_advanced} - * - * @author squid233 - * @since 0.1.0 - */ -public final class GLKHRBlendEquationAdvanced { - public static void load(GLExtCaps ext, GLLoadFunc load) { - if (!ext.GL_KHR_blend_equation_advanced) return; - ext.glBlendBarrierKHR = load.invoke("glBlendBarrierKHR", FunctionDescriptors.V); - } - - public static void glBlendBarrierKHR() { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glBlendBarrierKHR).invokeExact(); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } -} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLKHRParallelShaderCompile.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLKHRParallelShaderCompile.java deleted file mode 100644 index 201601ea..00000000 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLKHRParallelShaderCompile.java +++ /dev/null @@ -1,44 +0,0 @@ -/* - * MIT License - * - * Copyright (c) 2022-2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - -package overrungl.opengl.ext; - -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; - -/** - * {@code GL_KHR_parallel_shader_compile} - * - * @author squid233 - * @since 0.1.0 - */ -public final class GLKHRParallelShaderCompile { - public static void load(GLExtCaps ext, GLLoadFunc load) { - if (!ext.GL_KHR_parallel_shader_compile) return; - ext.glMaxShaderCompilerThreadsKHR = load.invoke("glMaxShaderCompilerThreadsKHR", FunctionDescriptors.IV); - } - - public static void glMaxShaderCompilerThreadsKHR(int count) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glMaxShaderCompilerThreadsKHR).invokeExact(count); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } -} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvanced.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvanced.java new file mode 100644 index 00000000..f3139a28 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvanced.java @@ -0,0 +1,44 @@ +// this file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.khr; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_KHR_blend_equation_advanced} + */ +public final class GLKHRBlendEquationAdvanced { + public static final int GL_MULTIPLY_KHR = 0x9294; + public static final int GL_SCREEN_KHR = 0x9295; + public static final int GL_OVERLAY_KHR = 0x9296; + public static final int GL_DARKEN_KHR = 0x9297; + public static final int GL_LIGHTEN_KHR = 0x9298; + public static final int GL_COLORDODGE_KHR = 0x9299; + public static final int GL_COLORBURN_KHR = 0x929A; + public static final int GL_HARDLIGHT_KHR = 0x929B; + public static final int GL_SOFTLIGHT_KHR = 0x929C; + public static final int GL_DIFFERENCE_KHR = 0x929E; + public static final int GL_EXCLUSION_KHR = 0x92A0; + public static final int GL_HSL_HUE_KHR = 0x92AD; + public static final int GL_HSL_SATURATION_KHR = 0x92AE; + public static final int GL_HSL_COLOR_KHR = 0x92AF; + public static final int GL_HSL_LUMINOSITY_KHR = 0x92B0; + + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_KHR_blend_equation_advanced) return; + ext.glBlendBarrierKHR = load.invoke("glBlendBarrierKHR", ofVoid()); + } + + public static void glBlendBarrierKHR() { + final var ext = getExtCapabilities(); + try { + check(ext.glBlendBarrierKHR).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvancedCoherent.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvancedCoherent.java new file mode 100644 index 00000000..6f80eded --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvancedCoherent.java @@ -0,0 +1,17 @@ +// this file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.khr; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_KHR_blend_equation_advanced_coherent} + */ +public final class GLKHRBlendEquationAdvancedCoherent { + public static final int GL_BLEND_ADVANCED_COHERENT_KHR = 0x9285; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRNoError.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRNoError.java new file mode 100644 index 00000000..c25ba91f --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRNoError.java @@ -0,0 +1,17 @@ +// this file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.khr; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_KHR_no_error} + */ +public final class GLKHRNoError { + public static final int GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR = 0x00000008; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRParallelShaderCompile.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRParallelShaderCompile.java new file mode 100644 index 00000000..0baafa66 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRParallelShaderCompile.java @@ -0,0 +1,31 @@ +// this file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.khr; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_KHR_parallel_shader_compile} + */ +public final class GLKHRParallelShaderCompile { + public static final int GL_MAX_SHADER_COMPILER_THREADS_KHR = 0x91B0; + public static final int GL_COMPLETION_STATUS_KHR = 0x91B1; + + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_KHR_parallel_shader_compile) return; + ext.glMaxShaderCompilerThreadsKHR = load.invoke("glMaxShaderCompilerThreadsKHR", ofVoid(JAVA_INT)); + } + + public static void glMaxShaderCompilerThreadsKHR(int count) { + final var ext = getExtCapabilities(); + try { + check(ext.glMaxShaderCompilerThreadsKHR).invokeExact(count); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRRobustness.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRRobustness.java new file mode 100644 index 00000000..95909150 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRRobustness.java @@ -0,0 +1,17 @@ +// this file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.khr; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_KHR_robustness} + */ +public final class GLKHRRobustness { + public static final int GL_CONTEXT_ROBUST_ACCESS = 0x90F3; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRShaderSubgroup.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRShaderSubgroup.java new file mode 100644 index 00000000..b7128680 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRShaderSubgroup.java @@ -0,0 +1,28 @@ +// this file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.khr; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_KHR_shader_subgroup} + */ +public final class GLKHRShaderSubgroup { + public static final int GL_SUBGROUP_SIZE_KHR = 0x9532; + public static final int GL_SUBGROUP_SUPPORTED_STAGES_KHR = 0x9533; + public static final int GL_SUBGROUP_SUPPORTED_FEATURES_KHR = 0x9534; + public static final int GL_SUBGROUP_QUAD_ALL_STAGES_KHR = 0x9535; + public static final int GL_SUBGROUP_FEATURE_BASIC_BIT_KHR = 0x00000001; + public static final int GL_SUBGROUP_FEATURE_VOTE_BIT_KHR = 0x00000002; + public static final int GL_SUBGROUP_FEATURE_ARITHMETIC_BIT_KHR = 0x00000004; + public static final int GL_SUBGROUP_FEATURE_BALLOT_BIT_KHR = 0x00000008; + public static final int GL_SUBGROUP_FEATURE_SHUFFLE_BIT_KHR = 0x00000010; + public static final int GL_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT_KHR = 0x00000020; + public static final int GL_SUBGROUP_FEATURE_CLUSTERED_BIT_KHR = 0x00000040; + public static final int GL_SUBGROUP_FEATURE_QUAD_BIT_KHR = 0x00000080; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRTextureCompressionAstcHdr.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRTextureCompressionAstcHdr.java new file mode 100644 index 00000000..5554a404 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRTextureCompressionAstcHdr.java @@ -0,0 +1,44 @@ +// this file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.khr; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.of; +import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_KHR_texture_compression_astc_hdr} + */ +public final class GLKHRTextureCompressionAstcHdr { + public static final int GL_COMPRESSED_RGBA_ASTC_4x4_KHR = 0x93B0; + public static final int GL_COMPRESSED_RGBA_ASTC_5x4_KHR = 0x93B1; + public static final int GL_COMPRESSED_RGBA_ASTC_5x5_KHR = 0x93B2; + public static final int GL_COMPRESSED_RGBA_ASTC_6x5_KHR = 0x93B3; + public static final int GL_COMPRESSED_RGBA_ASTC_6x6_KHR = 0x93B4; + public static final int GL_COMPRESSED_RGBA_ASTC_8x5_KHR = 0x93B5; + public static final int GL_COMPRESSED_RGBA_ASTC_8x6_KHR = 0x93B6; + public static final int GL_COMPRESSED_RGBA_ASTC_8x8_KHR = 0x93B7; + public static final int GL_COMPRESSED_RGBA_ASTC_10x5_KHR = 0x93B8; + public static final int GL_COMPRESSED_RGBA_ASTC_10x6_KHR = 0x93B9; + public static final int GL_COMPRESSED_RGBA_ASTC_10x8_KHR = 0x93BA; + public static final int GL_COMPRESSED_RGBA_ASTC_10x10_KHR = 0x93BB; + public static final int GL_COMPRESSED_RGBA_ASTC_12x10_KHR = 0x93BC; + public static final int GL_COMPRESSED_RGBA_ASTC_12x12_KHR = 0x93BD; + public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR = 0x93D0; + public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR = 0x93D1; + public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR = 0x93D2; + public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR = 0x93D3; + public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR = 0x93D4; + public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR = 0x93D5; + public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR = 0x93D6; + public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR = 0x93D7; + public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR = 0x93D8; + public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR = 0x93D9; + public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR = 0x93DA; + public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR = 0x93DB; + public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR = 0x93DC; + public static final int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR = 0x93DD; +} From e1f9ebda99b28dfe9458c84e77df3ca27f5323c4 Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Wed, 20 Sep 2023 13:40:18 +0800 Subject: [PATCH 03/20] [OpenGL] Update Generator --- .../overrungl/opengl/OpenGLGenerator.kt | 1175 ++++++++++++++--- 1 file changed, 988 insertions(+), 187 deletions(-) diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt index 9d3a926b..35bb146c 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt @@ -18,12 +18,40 @@ package overrungl.opengl import overrungl.opengl.OpenGLExt.* import java.nio.file.Files +import java.time.Clock +import java.time.LocalDate import kotlin.io.path.Path enum class OpenGLExt(val dir: String, val packageName: String, val extName: String) { CORE("", "", ""), - ARB("ext/arb", ".ext.arb", "ARB"), - KHR("ext/khr", ".ext.khr", "KHR") + ARB("ext/arb/", ".ext.arb", "ARB"), + KHR("ext/khr/", ".ext.khr", "KHR"), + OES("ext/oes/", ".ext.oes", "OES"), + `3DFX`("ext/", ".ext", "3DFX"), + AMD("ext/amd/", ".ext.amd", "AMD"), + APPLE("ext/apple/", ".ext.apple", "APPLE"), + ATI("ext/ati/", ".ext.ati", "ATI"), + EXT("ext/ext/", ".ext.ext", "EXT"), + GREMEDY("ext/", ".ext", "GREMEDY"), + HP("ext/", ".ext", "HP"), + IBM("ext/ibm/", ".ext.ibm", "IBM"), + INGR("ext/", ".ext", "INGR"), + INTEL("ext/intel/", ".ext.intel", "INTEL"), + MESAX("ext/mesa/", ".ext.mesa", "MESAX"), + MESA("ext/mesa/", ".ext.mesa", "MESA"), + NVX("ext/nv/", ".ext.nv", "NVX"), + NV("ext/nv/", ".ext.nv", "NV"), + OML("ext/", ".ext", "OML"), + OVR("ext/", ".ext", "OVR"), + PGI("ext/", ".ext", "PGI"), + REND("ext/", ".ext", "REND"), + S3("ext/", ".ext", "S3"), + SGIS("ext/sgi/", ".ext.sgi", "SGIS"), + SGIX("ext/sgi/", ".ext.sgi", "SGIX"), + SGI("ext/sgi/", ".ext.sgi", "SGI"), + SUNX("ext/sun/", ".ext.sun", "SUNX"), + SUN("ext/sun/", ".ext.sun", "SUN"), + WIN("ext/", ".ext", "WIN") } data class Type(val name: String, val layout: String?) { @@ -31,6 +59,29 @@ data class Type(val name: String, val layout: String?) { override fun toString(): String = name } +val fileHeader = """/* + * MIT License + * + * Copyright (c) 2022-${LocalDate.now(Clock.systemUTC()).year} Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT!""" + +private val generatedFunctions = ArrayList() +private val generatedExtFunctions = ArrayList() +private val generatedClasses = ArrayList() +private val generatedExtClasses = ArrayList() + val void = Type("void", null) val boolean = Type("boolean", "JAVA_BYTE") val byte = Type("byte", "JAVA_BYTE") @@ -71,9 +122,9 @@ data class Function( ) class OpenGLFile( - private val name: String, - private val ext: OpenGLExt = CORE, - private val extName: String = "EXT" + val name: String, + val ext: OpenGLExt, + private val extName: String ) { private val constants = LinkedHashMap() private val functions = ArrayList() @@ -82,16 +133,22 @@ class OpenGLFile( constants[this] = value } - operator fun String.invoke(returnType: Type, vararg params: Parameter, nativeType: String?=null) { - functions.add(Function(this, returnType, nativeType, params.toList())) + operator fun String.invoke(returnType: Type, vararg params: Parameter, nativeType: String? = null) { + Function(this, returnType, nativeType, params.toList()).also { + functions.add(it) + when (ext) { + CORE -> generatedFunctions.add(it) + else -> generatedExtFunctions.add(it) + } + } } internal fun generate() { - Files.writeString(Path("${ext.dir}/GL${ext.extName}$name.java"), buildString { + Files.writeString(Path("${ext.dir}GL${ext.extName}$name.java"), buildString { // file-header appendLine( """ - // this file is auto-generated. DO NOT EDIT! + $fileHeader package overrungl.opengl${ext.packageName}; import overrungl.*; @@ -132,7 +189,7 @@ class OpenGLFile( // functions functions.forEach { f -> append(" public static ") - if (f.nativeType!=null) + if (f.nativeType != null) append("@NativeType(\"${f.nativeType}\") ") append("${f.returnType} ${f.name}(") f.params.forEachIndexed { index, it -> @@ -168,16 +225,22 @@ class OpenGLFile( fun file( name: String, ext: OpenGLExt = CORE, - extName: String = "EXT", + extName: String = "GL", block: OpenGLFile.() -> Unit ) { - OpenGLFile(name, ext, extName).also(block).generate() + OpenGLFile(name, ext, extName).also { + block(it) + when (ext) { + CORE -> generatedClasses.add(it) + else -> generatedExtClasses.add(it) + } + }.generate() } fun file( name: String, ext: OpenGLExt = CORE, - extName: String = "EXT", + extName: String = "GL", vararg const: Pair ) { file(name, ext, extName) { @@ -231,8 +294,20 @@ fun arb() { "GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_ARB"("0x9342") "GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_ARB"("0x9343") "glEvaluateDepthValuesARB"(void) - "glFramebufferSampleLocationsfvARB"(void, int("target"), int("start"), int("count"), address("v", "const GLfloat *v")) - "glNamedFramebufferSampleLocationsfvARB"(void, int("framebuffer"), int("start"), int("count"), address("v", "const GLfloat *v")) + "glFramebufferSampleLocationsfvARB"( + void, + int("target"), + int("start"), + int("count"), + address("v", "const GLfloat *v") + ) + "glNamedFramebufferSampleLocationsfvARB"( + void, + int("framebuffer"), + int("start"), + int("count"), + address("v", "const GLfloat *v") + ) } file("SampleShading", ARB, "GL_ARB_sample_shading") { "GL_SAMPLE_SHADING_ARB"("0x8C36") @@ -278,7 +353,13 @@ fun arb() { "glGetHandleARB"(int, int("pname")) "glDetachObjectARB"(void, int("containerObj"), int("attachedObj")) "glCreateShaderObjectARB"(int, int("shaderType")) - "glShaderSourceARB"(void, int("shaderObj"), int("count"), address("string", "const GLcharARB**"), address("length", "const GLint*")) + "glShaderSourceARB"( + void, + int("shaderObj"), + int("count"), + address("string", "const GLcharARB**"), + address("length", "const GLint*") + ) "glCompileShaderARB"(void, int("shaderObj")) "glCreateProgramObjectARB"(int) "glAttachObjectARB"(void, int("containerObj"), int("obj")) @@ -301,13 +382,43 @@ fun arb() { "glUniform2ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) "glUniform3ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) "glUniform4ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) - "glUniformMatrix2fvARB"(void, int("location"), int("count"), boolean("transpose"), address("value", "const GLfloat*")) - "glUniformMatrix3fvARB"(void, int("location"), int("count"), boolean("transpose"), address("value", "const GLfloat*")) - "glUniformMatrix4fvARB"(void, int("location"), int("count"), boolean("transpose"), address("value", "const GLfloat*")) + "glUniformMatrix2fvARB"( + void, + int("location"), + int("count"), + boolean("transpose"), + address("value", "const GLfloat*") + ) + "glUniformMatrix3fvARB"( + void, + int("location"), + int("count"), + boolean("transpose"), + address("value", "const GLfloat*") + ) + "glUniformMatrix4fvARB"( + void, + int("location"), + int("count"), + boolean("transpose"), + address("value", "const GLfloat*") + ) "glGetObjectParameterfvARB"(void, int("obj"), int("pname"), address("params", "GLfloat*")) "glGetObjectParameterivARB"(void, int("obj"), int("pname"), address("params", "GLint*")) - "glGetInfoLogARB"(void, int("obj"), int("maxLength"), address("length", "GLsizei*"), address("infoLog", "GLcharARB*")) - "glGetAttachedObjectsARB"(void, int("containerObj"), int("maxCount"), address("count", "GLsizei*"), address("obj", "GLhandleARB*")) + "glGetInfoLogARB"( + void, + int("obj"), + int("maxLength"), + address("length", "GLsizei*"), + address("infoLog", "GLcharARB*") + ) + "glGetAttachedObjectsARB"( + void, + int("containerObj"), + int("maxCount"), + address("count", "GLsizei*"), + address("obj", "GLhandleARB*") + ) "glGetUniformLocationARB"(int, int("programObj"), address("name", "const GLcharARB*")) "glGetActiveUniformARB"( void, @@ -321,15 +432,34 @@ fun arb() { ) "glGetUniformfvARB"(void, int("programObj"), int("location"), address("params", "GLfloat*")) "glGetUniformivARB"(void, int("programObj"), int("location"), address("params", "GLint*")) - "glGetShaderSourceARB"(void, int("obj"), int("maxLength"), address("length", "GLsizei*"), address("source", "GLcharARB*")) + "glGetShaderSourceARB"( + void, + int("obj"), + int("maxLength"), + address("length", "GLsizei*"), + address("source", "GLcharARB*") + ) } file("ShadingLanguageInclude", ARB, "GL_ARB_shading_language_include") { "GL_SHADER_INCLUDE_ARB"("0x8DAE") "GL_NAMED_STRING_LENGTH_ARB"("0x8DE9") "GL_NAMED_STRING_TYPE_ARB"("0x8DEA") - "glNamedStringARB"(void, int("type"), int("nameLen"), address("name", "const GLchar*"), int("stringLen"), address("string", "const GLchar*")) + "glNamedStringARB"( + void, + int("type"), + int("nameLen"), + address("name", "const GLchar*"), + int("stringLen"), + address("string", "const GLchar*") + ) "glDeleteNamedStringARB"(void, int("nameLen"), address("name", "const GLchar*")) - "glCompileShaderIncludeARB"(void, int("shader"), int("count"), address("path", "const GLchar *const*"), address("length", "const GLint*")) + "glCompileShaderIncludeARB"( + void, + int("shader"), + int("count"), + address("path", "const GLchar *const*"), + address("length", "const GLint*") + ) "glIsNamedStringARB"(boolean, int("nameLen"), address("name", "const GLchar*")) "glGetNamedStringARB"( void, @@ -339,16 +469,24 @@ fun arb() { address("stringLen", "GLint*"), address("string", "GLchar*") ) - "glGetNamedStringivARB"(void, int("nameLen"), address("name", "const GLchar*"), int("pname"), address("params", "GLint*")) - } - file("Shadow", ARB, "GL_ARB_shadow") { - "GL_TEXTURE_COMPARE_MODE_ARB"("0x884C") - "GL_TEXTURE_COMPARE_FUNC_ARB"("0x884D") - "GL_COMPARE_R_TO_TEXTURE_ARB"("0x884E") - } - file("ShadowAmbient", ARB, "GL_ARB_shadow_ambient") { - "GL_TEXTURE_COMPARE_FAIL_VALUE_ARB"("0x80BF") + "glGetNamedStringivARB"( + void, + int("nameLen"), + address("name", "const GLchar*"), + int("pname"), + address("params", "GLint*") + ) } + file( + "Shadow", ARB, "GL_ARB_shadow", + "GL_TEXTURE_COMPARE_MODE_ARB" to "0x884C", + "GL_TEXTURE_COMPARE_FUNC_ARB" to "0x884D", + "GL_COMPARE_R_TO_TEXTURE_ARB" to "0x884E" + ) + file( + "ShadowAmbient", ARB, "GL_ARB_shadow_ambient", + "GL_TEXTURE_COMPARE_FAIL_VALUE_ARB" to "0x80BF" + ) file("SparseBuffer", ARB, "GL_ARB_sparse_buffer") { "GL_SPARSE_STORAGE_BIT_ARB"("0x0400") "GL_SPARSE_BUFFER_PAGE_SIZE_ARB"("0x82F8") @@ -381,9 +519,10 @@ fun arb() { boolean("commit") ) } - file("TextureBorderClamp", ARB, "GL_ARB_texture_border_clamp") { - "GL_CLAMP_TO_BORDER_ARB"("0x812D") - } + file( + "TextureBorderClamp", ARB, "GL_ARB_texture_border_clamp", + "GL_CLAMP_TO_BORDER_ARB" to "0x812D" + ) file("TextureBufferObject", ARB, "GL_ARB_texture_buffer_object") { "GL_TEXTURE_BUFFER_ARB"("0x8C2A") "GL_MAX_TEXTURE_BUFFER_SIZE_ARB"("0x8C2B") @@ -475,107 +614,118 @@ fun arb() { ) "glGetCompressedTexImageARB"(void, int("target"), int("level"), address("img", "void*")) } - file("TextureCompressionBptc", ARB, "GL_ARB_texture_compression_bptc") { - "GL_COMPRESSED_RGBA_BPTC_UNORM_ARB"("0x8E8C") - "GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB"("0x8E8D") - "GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB"("0x8E8E") - "GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB"("0x8E8F") - } - file("TextureCubeMap", ARB, "GL_ARB_texture_cube_map") { - "GL_NORMAL_MAP_ARB"("0x8511") - "GL_REFLECTION_MAP_ARB"("0x8512") - "GL_TEXTURE_CUBE_MAP_ARB"("0x8513") - "GL_TEXTURE_BINDING_CUBE_MAP_ARB"("0x8514") - "GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB"("0x8515") - "GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB"("0x8516") - "GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB"("0x8517") - "GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB"("0x8518") - "GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB"("0x8519") - "GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB"("0x851A") - "GL_PROXY_TEXTURE_CUBE_MAP_ARB"("0x851B") - "GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB"("0x851C") - } - file("TextureCubeMapArray", ARB, "GL_ARB_texture_cube_map_array") { - "GL_TEXTURE_CUBE_MAP_ARRAY_ARB"("0x9009") - "GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB"("0x900A") - "GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB"("0x900B") - "GL_SAMPLER_CUBE_MAP_ARRAY_ARB"("0x900C") - "GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB"("0x900D") - "GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB"("0x900E") - "GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB"("0x900F") - } - file("TextureEnvCombine", ARB, "GL_ARB_texture_env_combine") { - "GL_COMBINE_ARB"("0x8570") - "GL_COMBINE_RGB_ARB"("0x8571") - "GL_COMBINE_ALPHA_ARB"("0x8572") - "GL_SOURCE0_RGB_ARB"("0x8580") - "GL_SOURCE1_RGB_ARB"("0x8581") - "GL_SOURCE2_RGB_ARB"("0x8582") - "GL_SOURCE0_ALPHA_ARB"("0x8588") - "GL_SOURCE1_ALPHA_ARB"("0x8589") - "GL_SOURCE2_ALPHA_ARB"("0x858A") - "GL_OPERAND0_RGB_ARB"("0x8590") - "GL_OPERAND1_RGB_ARB"("0x8591") - "GL_OPERAND2_RGB_ARB"("0x8592") - "GL_OPERAND0_ALPHA_ARB"("0x8598") - "GL_OPERAND1_ALPHA_ARB"("0x8599") - "GL_OPERAND2_ALPHA_ARB"("0x859A") - "GL_RGB_SCALE_ARB"("0x8573") - "GL_ADD_SIGNED_ARB"("0x8574") - "GL_INTERPOLATE_ARB"("0x8575") - "GL_SUBTRACT_ARB"("0x84E7") - "GL_CONSTANT_ARB"("0x8576") - "GL_PRIMARY_COLOR_ARB"("0x8577") - "GL_PREVIOUS_ARB"("0x8578") - } - file("TextureEnvDot3", ARB, "GL_ARB_texture_env_dot3") { - "GL_DOT3_RGB_ARB"("0x86AE") - "GL_DOT3_RGBA_ARB"("0x86AF") - } - file("TextureFilterMinmax", ARB, "GL_ARB_texture_filter_minmax") { - "GL_TEXTURE_REDUCTION_MODE_ARB"("0x9366") - "GL_WEIGHTED_AVERAGE_ARB"("0x9367") - } - file("TextureFloat", ARB, "GL_ARB_texture_float") { - "GL_TEXTURE_RED_TYPE_ARB"("0x8C10") - "GL_TEXTURE_GREEN_TYPE_ARB"("0x8C11") - "GL_TEXTURE_BLUE_TYPE_ARB"("0x8C12") - "GL_TEXTURE_ALPHA_TYPE_ARB"("0x8C13") - "GL_TEXTURE_LUMINANCE_TYPE_ARB"("0x8C14") - "GL_TEXTURE_INTENSITY_TYPE_ARB"("0x8C15") - "GL_TEXTURE_DEPTH_TYPE_ARB"("0x8C16") - "GL_UNSIGNED_NORMALIZED_ARB"("0x8C17") - "GL_RGBA32F_ARB"("0x8814") - "GL_RGB32F_ARB"("0x8815") - "GL_ALPHA32F_ARB"("0x8816") - "GL_INTENSITY32F_ARB"("0x8817") - "GL_LUMINANCE32F_ARB"("0x8818") - "GL_LUMINANCE_ALPHA32F_ARB"("0x8819") - "GL_RGBA16F_ARB"("0x881A") - "GL_RGB16F_ARB"("0x881B") - "GL_ALPHA16F_ARB"("0x881C") - "GL_INTENSITY16F_ARB"("0x881D") - "GL_LUMINANCE16F_ARB"("0x881E") - "GL_LUMINANCE_ALPHA16F_ARB"("0x881F") - } - file("TextureGather", ARB, "GL_ARB_texture_gather") { - "GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB"("0x8E5E") - "GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB"("0x8E5F") - "GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB"("0x8F9F") - } - file("TextureMirroredRepeat", ARB, "GL_ARB_texture_mirrored_repeat") { - "GL_MIRRORED_REPEAT_ARB"("0x8370") - } - file("TextureRectangle", ARB, "GL_ARB_texture_rectangle") { - "GL_TEXTURE_RECTANGLE_ARB"("0x84F5") - "GL_TEXTURE_BINDING_RECTANGLE_ARB"("0x84F6") - "GL_PROXY_TEXTURE_RECTANGLE_ARB"("0x84F7") - "GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB"("0x84F8") - } - file("TransformFeedbackOverflowQuery", ARB, "GL_ARB_transform_feedback_overflow_query") { - "GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB"("0x82EC") - "GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB"("0x82ED") - } + file( + "TextureCompressionBptc", ARB, "GL_ARB_texture_compression_bptc", + "GL_COMPRESSED_RGBA_BPTC_UNORM_ARB" to "0x8E8C", + "GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB" to "0x8E8D", + "GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB" to "0x8E8E", + "GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB" to "0x8E8F" + ) + file( + "TextureCubeMap", ARB, "GL_ARB_texture_cube_map", + "GL_NORMAL_MAP_ARB" to "0x8511", + "GL_REFLECTION_MAP_ARB" to "0x8512", + "GL_TEXTURE_CUBE_MAP_ARB" to "0x8513", + "GL_TEXTURE_BINDING_CUBE_MAP_ARB" to "0x8514", + "GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB" to "0x8515", + "GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB" to "0x8516", + "GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB" to "0x8517", + "GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB" to "0x8518", + "GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB" to "0x8519", + "GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB" to "0x851A", + "GL_PROXY_TEXTURE_CUBE_MAP_ARB" to "0x851B", + "GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB" to "0x851C" + ) + file( + "TextureCubeMapArray", ARB, "GL_ARB_texture_cube_map_array", + "GL_TEXTURE_CUBE_MAP_ARRAY_ARB" to "0x9009", + "GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB" to "0x900A", + "GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB" to "0x900B", + "GL_SAMPLER_CUBE_MAP_ARRAY_ARB" to "0x900C", + "GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB" to "0x900D", + "GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB" to "0x900E", + "GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB" to "0x900F" + ) + file( + "TextureEnvCombine", ARB, "GL_ARB_texture_env_combine", + "GL_COMBINE_ARB" to "0x8570", + "GL_COMBINE_RGB_ARB" to "0x8571", + "GL_COMBINE_ALPHA_ARB" to "0x8572", + "GL_SOURCE0_RGB_ARB" to "0x8580", + "GL_SOURCE1_RGB_ARB" to "0x8581", + "GL_SOURCE2_RGB_ARB" to "0x8582", + "GL_SOURCE0_ALPHA_ARB" to "0x8588", + "GL_SOURCE1_ALPHA_ARB" to "0x8589", + "GL_SOURCE2_ALPHA_ARB" to "0x858A", + "GL_OPERAND0_RGB_ARB" to "0x8590", + "GL_OPERAND1_RGB_ARB" to "0x8591", + "GL_OPERAND2_RGB_ARB" to "0x8592", + "GL_OPERAND0_ALPHA_ARB" to "0x8598", + "GL_OPERAND1_ALPHA_ARB" to "0x8599", + "GL_OPERAND2_ALPHA_ARB" to "0x859A", + "GL_RGB_SCALE_ARB" to "0x8573", + "GL_ADD_SIGNED_ARB" to "0x8574", + "GL_INTERPOLATE_ARB" to "0x8575", + "GL_SUBTRACT_ARB" to "0x84E7", + "GL_CONSTANT_ARB" to "0x8576", + "GL_PRIMARY_COLOR_ARB" to "0x8577", + "GL_PREVIOUS_ARB" to "0x8578" + ) + file( + "TextureEnvDot3", ARB, "GL_ARB_texture_env_dot3", + "GL_DOT3_RGB_ARB" to "0x86AE", + "GL_DOT3_RGBA_ARB" to "0x86AF" + ) + file( + "TextureFilterMinmax", ARB, "GL_ARB_texture_filter_minmax", + "GL_TEXTURE_REDUCTION_MODE_ARB" to "0x9366", + "GL_WEIGHTED_AVERAGE_ARB" to "0x9367" + ) + file( + "TextureFloat", ARB, "GL_ARB_texture_float", + "GL_TEXTURE_RED_TYPE_ARB" to "0x8C10", + "GL_TEXTURE_GREEN_TYPE_ARB" to "0x8C11", + "GL_TEXTURE_BLUE_TYPE_ARB" to "0x8C12", + "GL_TEXTURE_ALPHA_TYPE_ARB" to "0x8C13", + "GL_TEXTURE_LUMINANCE_TYPE_ARB" to "0x8C14", + "GL_TEXTURE_INTENSITY_TYPE_ARB" to "0x8C15", + "GL_TEXTURE_DEPTH_TYPE_ARB" to "0x8C16", + "GL_UNSIGNED_NORMALIZED_ARB" to "0x8C17", + "GL_RGBA32F_ARB" to "0x8814", + "GL_RGB32F_ARB" to "0x8815", + "GL_ALPHA32F_ARB" to "0x8816", + "GL_INTENSITY32F_ARB" to "0x8817", + "GL_LUMINANCE32F_ARB" to "0x8818", + "GL_LUMINANCE_ALPHA32F_ARB" to "0x8819", + "GL_RGBA16F_ARB" to "0x881A", + "GL_RGB16F_ARB" to "0x881B", + "GL_ALPHA16F_ARB" to "0x881C", + "GL_INTENSITY16F_ARB" to "0x881D", + "GL_LUMINANCE16F_ARB" to "0x881E", + "GL_LUMINANCE_ALPHA16F_ARB" to "0x881F" + ) + file( + "TextureGather", ARB, "GL_ARB_texture_gather", + "GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB" to "0x8E5E", + "GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB" to "0x8E5F", + "GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB" to "0x8F9F" + ) + file( + "TextureMirroredRepeat", ARB, "GL_ARB_texture_mirrored_repeat", + "GL_MIRRORED_REPEAT_ARB" to "0x8370" + ) + file( + "TextureRectangle", ARB, "GL_ARB_texture_rectangle", + "GL_TEXTURE_RECTANGLE_ARB" to "0x84F5", + "GL_TEXTURE_BINDING_RECTANGLE_ARB" to "0x84F6", + "GL_PROXY_TEXTURE_RECTANGLE_ARB" to "0x84F7", + "GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB" to "0x84F8" + ) + file( + "TransformFeedbackOverflowQuery", ARB, "GL_ARB_transform_feedback_overflow_query", + "GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB" to "0x82EC", + "GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB" to "0x82ED" + ) file("TransposeMatrix", ARB, "GL_ARB_transpose_matrix") { "GL_TRANSPOSE_MODELVIEW_MATRIX_ARB"("0x84E3") "GL_TRANSPOSE_PROJECTION_MATRIX_ARB"("0x84E4") @@ -840,66 +990,695 @@ fun khr() { "GL_HSL_LUMINOSITY_KHR"("0x92B0") "glBlendBarrierKHR"(void) } - file("BlendEquationAdvancedCoherent", KHR, "GL_KHR_blend_equation_advanced_coherent") { - "GL_BLEND_ADVANCED_COHERENT_KHR"("0x9285") - } - file("NoError", KHR, "GL_KHR_no_error") { - "GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR"("0x00000008") - } + file( + "BlendEquationAdvancedCoherent", KHR, "GL_KHR_blend_equation_advanced_coherent", + "GL_BLEND_ADVANCED_COHERENT_KHR" to "0x9285" + ) + file( + "NoError", KHR, "GL_KHR_no_error", + "GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR" to "0x00000008" + ) file("ParallelShaderCompile", KHR, "GL_KHR_parallel_shader_compile") { "GL_MAX_SHADER_COMPILER_THREADS_KHR"("0x91B0") "GL_COMPLETION_STATUS_KHR"("0x91B1") "glMaxShaderCompilerThreadsKHR"(void, GLuint("count")) } - file("Robustness", KHR, "GL_KHR_robustness") { - "GL_CONTEXT_ROBUST_ACCESS"("0x90F3") + file( + "Robustness", KHR, "GL_KHR_robustness", + "GL_CONTEXT_ROBUST_ACCESS" to "0x90F3" + ) + file( + "ShaderSubgroup", KHR, "GL_KHR_shader_subgroup", + "GL_SUBGROUP_SIZE_KHR" to "0x9532", + "GL_SUBGROUP_SUPPORTED_STAGES_KHR" to "0x9533", + "GL_SUBGROUP_SUPPORTED_FEATURES_KHR" to "0x9534", + "GL_SUBGROUP_QUAD_ALL_STAGES_KHR" to "0x9535", + "GL_SUBGROUP_FEATURE_BASIC_BIT_KHR" to "0x00000001", + "GL_SUBGROUP_FEATURE_VOTE_BIT_KHR" to "0x00000002", + "GL_SUBGROUP_FEATURE_ARITHMETIC_BIT_KHR" to "0x00000004", + "GL_SUBGROUP_FEATURE_BALLOT_BIT_KHR" to "0x00000008", + "GL_SUBGROUP_FEATURE_SHUFFLE_BIT_KHR" to "0x00000010", + "GL_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT_KHR" to "0x00000020", + "GL_SUBGROUP_FEATURE_CLUSTERED_BIT_KHR" to "0x00000040", + "GL_SUBGROUP_FEATURE_QUAD_BIT_KHR" to "0x00000080" + ) + file( + "TextureCompressionAstcHdr", KHR, "GL_KHR_texture_compression_astc_hdr", + "GL_COMPRESSED_RGBA_ASTC_4x4_KHR" to "0x93B0", + "GL_COMPRESSED_RGBA_ASTC_5x4_KHR" to "0x93B1", + "GL_COMPRESSED_RGBA_ASTC_5x5_KHR" to "0x93B2", + "GL_COMPRESSED_RGBA_ASTC_6x5_KHR" to "0x93B3", + "GL_COMPRESSED_RGBA_ASTC_6x6_KHR" to "0x93B4", + "GL_COMPRESSED_RGBA_ASTC_8x5_KHR" to "0x93B5", + "GL_COMPRESSED_RGBA_ASTC_8x6_KHR" to "0x93B6", + "GL_COMPRESSED_RGBA_ASTC_8x8_KHR" to "0x93B7", + "GL_COMPRESSED_RGBA_ASTC_10x5_KHR" to "0x93B8", + "GL_COMPRESSED_RGBA_ASTC_10x6_KHR" to "0x93B9", + "GL_COMPRESSED_RGBA_ASTC_10x8_KHR" to "0x93BA", + "GL_COMPRESSED_RGBA_ASTC_10x10_KHR" to "0x93BB", + "GL_COMPRESSED_RGBA_ASTC_12x10_KHR" to "0x93BC", + "GL_COMPRESSED_RGBA_ASTC_12x12_KHR" to "0x93BD", + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR" to "0x93D0", + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR" to "0x93D1", + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR" to "0x93D2", + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR" to "0x93D3", + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR" to "0x93D4", + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR" to "0x93D5", + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR" to "0x93D6", + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR" to "0x93D7", + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR" to "0x93D8", + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR" to "0x93D9", + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR" to "0x93DA", + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR" to "0x93DB", + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR" to "0x93DC", + "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR" to "0x93DD" + ) +} + +fun oes() { +} + +fun `3dfx`() { + file( + "Multisample", `3DFX`, "GL_3DFX_multisample", + "GL_MULTISAMPLE_3DFX" to "0x86B2", + "GL_SAMPLE_BUFFERS_3DFX" to "0x86B3", + "GL_SAMPLES_3DFX" to "0x86B4", + "GL_MULTISAMPLE_BIT_3DFX" to "0x20000000" + ) + file("Tbuffer", `3DFX`, "GL_3DFX_tbuffer") { + "glTbufferMask3DFX"(void, GLuint("mask")) + } + file( + "TextureCompressionFXT1", `3DFX`, "GL_3DFX_texture_compression_FXT1", + "GL_COMPRESSED_RGB_FXT1_3DFX" to "0x86B0", + "GL_COMPRESSED_RGBA_FXT1_3DFX" to "0x86B1" + ) +} + +fun amd() {} + +fun apple() {} + +fun ati() {} + +fun ext() {} + +fun gremedy() {} + +fun hp() {} + +fun ibm() {} + +fun ingr() {} + +fun intel() {} + +fun mesa() {} + +fun nv() {} + +fun oml() {} + +fun ovr() {} + +fun pgi() {} + +fun rend() {} + +fun s3() {} + +fun sgi() {} + +fun sun() { + file("ConstantData", SUNX, "GL_SUNX_constant_data") { + "GL_UNPACK_CONSTANT_DATA_SUNX"("0x81D5") + "GL_TEXTURE_CONSTANT_DATA_SUNX"("0x81D6") + "glFinishTextureSUNX"(void) + } + file( + "ConvolutionBorderModes", SUN, "GL_SUN_convolution_border_modes", + "GL_WRAP_BORDER_SUN" to "0x81D4" + ) + file("GlobalAlpha", SUN, "GL_SUN_global_alpha") { + "GL_GLOBAL_ALPHA_SUN"("0x81D9") + "GL_GLOBAL_ALPHA_FACTOR_SUN"("0x81DA") + "glGlobalAlphaFactorbSUN"(void, GLbyte("factor")) + "glGlobalAlphaFactorsSUN"(void, GLshort("factor")) + "glGlobalAlphaFactoriSUN"(void, GLint("factor")) + "glGlobalAlphaFactorfSUN"(void, GLfloat("factor")) + "glGlobalAlphaFactordSUN"(void, GLdouble("factor")) + "glGlobalAlphaFactorubSUN"(void, GLubyte("factor")) + "glGlobalAlphaFactorusSUN"(void, GLushort("factor")) + "glGlobalAlphaFactoruiSUN"(void, GLuint("factor")) } - file("ShaderSubgroup", KHR, "GL_KHR_shader_subgroup") { - "GL_SUBGROUP_SIZE_KHR"("0x9532") - "GL_SUBGROUP_SUPPORTED_STAGES_KHR"("0x9533") - "GL_SUBGROUP_SUPPORTED_FEATURES_KHR"("0x9534") - "GL_SUBGROUP_QUAD_ALL_STAGES_KHR"("0x9535") - "GL_SUBGROUP_FEATURE_BASIC_BIT_KHR"("0x00000001") - "GL_SUBGROUP_FEATURE_VOTE_BIT_KHR"("0x00000002") - "GL_SUBGROUP_FEATURE_ARITHMETIC_BIT_KHR"("0x00000004") - "GL_SUBGROUP_FEATURE_BALLOT_BIT_KHR"("0x00000008") - "GL_SUBGROUP_FEATURE_SHUFFLE_BIT_KHR"("0x00000010") - "GL_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT_KHR"("0x00000020") - "GL_SUBGROUP_FEATURE_CLUSTERED_BIT_KHR"("0x00000040") - "GL_SUBGROUP_FEATURE_QUAD_BIT_KHR"("0x00000080") + file("MeshArray", SUN, "GL_SUN_mesh_array") { + "GL_QUAD_MESH_SUN"("0x8614") + "GL_TRIANGLE_MESH_SUN"("0x8615") + "glDrawMeshArraysSUN"(void, GLenum("mode"), GLint("first"), GLsizei("count"), GLsizei("width")) } - file("TextureCompressionAstcHdr", KHR, "GL_KHR_texture_compression_astc_hdr") { - "GL_COMPRESSED_RGBA_ASTC_4x4_KHR"("0x93B0") - "GL_COMPRESSED_RGBA_ASTC_5x4_KHR"("0x93B1") - "GL_COMPRESSED_RGBA_ASTC_5x5_KHR"("0x93B2") - "GL_COMPRESSED_RGBA_ASTC_6x5_KHR"("0x93B3") - "GL_COMPRESSED_RGBA_ASTC_6x6_KHR"("0x93B4") - "GL_COMPRESSED_RGBA_ASTC_8x5_KHR"("0x93B5") - "GL_COMPRESSED_RGBA_ASTC_8x6_KHR"("0x93B6") - "GL_COMPRESSED_RGBA_ASTC_8x8_KHR"("0x93B7") - "GL_COMPRESSED_RGBA_ASTC_10x5_KHR"("0x93B8") - "GL_COMPRESSED_RGBA_ASTC_10x6_KHR"("0x93B9") - "GL_COMPRESSED_RGBA_ASTC_10x8_KHR"("0x93BA") - "GL_COMPRESSED_RGBA_ASTC_10x10_KHR"("0x93BB") - "GL_COMPRESSED_RGBA_ASTC_12x10_KHR"("0x93BC") - "GL_COMPRESSED_RGBA_ASTC_12x12_KHR"("0x93BD") - "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR"("0x93D0") - "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR"("0x93D1") - "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR"("0x93D2") - "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR"("0x93D3") - "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR"("0x93D4") - "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR"("0x93D5") - "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR"("0x93D6") - "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR"("0x93D7") - "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR"("0x93D8") - "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR"("0x93D9") - "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR"("0x93DA") - "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR"("0x93DB") - "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR"("0x93DC") - "GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR"("0x93DD") + file( + "SliceAccum", SUN, "GL_SUN_slice_accum", + "GL_SLICE_ACCUM_SUN" to "0x85CC" + ) + file("TriangleList", SUN, "GL_SUN_triangle_list") { + "GL_RESTART_SUN"("0x0001") + "GL_REPLACE_MIDDLE_SUN"("0x0002") + "GL_REPLACE_OLDEST_SUN"("0x0003") + "GL_TRIANGLE_LIST_SUN"("0x81D7") + "GL_REPLACEMENT_CODE_SUN"("0x81D8") + "GL_REPLACEMENT_CODE_ARRAY_SUN"("0x85C0") + "GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN"("0x85C1") + "GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN"("0x85C2") + "GL_REPLACEMENT_CODE_ARRAY_POINTER_SUN"("0x85C3") + "GL_R1UI_V3F_SUN"("0x85C4") + "GL_R1UI_C4UB_V3F_SUN"("0x85C5") + "GL_R1UI_C3F_V3F_SUN"("0x85C6") + "GL_R1UI_N3F_V3F_SUN"("0x85C7") + "GL_R1UI_C4F_N3F_V3F_SUN"("0x85C8") + "GL_R1UI_T2F_V3F_SUN"("0x85C9") + "GL_R1UI_T2F_N3F_V3F_SUN"("0x85CA") + "GL_R1UI_T2F_C4F_N3F_V3F_SUN"("0x85CB") + "glReplacementCodeuiSUN"(void, GLuint("code")) + "glReplacementCodeusSUN"(void, GLushort("code")) + "glReplacementCodeubSUN"(void, GLubyte("code")) + "glReplacementCodeuivSUN"(void, address("code", "const GLuint *")) + "glReplacementCodeusvSUN"(void, address("code", "const GLushort *")) + "glReplacementCodeubvSUN"(void, address("code", "const GLubyte *")) + "glReplacementCodePointerSUN"(void, GLenum("type"), GLsizei("stride"), address("pointer", "const void **")) + } + file("Vertex", SUN, "GL_SUN_vertex") { + "glColor4ubVertex2fSUN"( + void, + GLubyte("r"), + GLubyte("g"), + GLubyte("b"), + GLubyte("a"), + GLfloat("x"), + GLfloat("y") + ) + "glColor4ubVertex2fvSUN"(void, address("c", "const GLubyte *"), address("v", "const GLfloat *")) + "glColor4ubVertex3fSUN"( + void, + GLubyte("r"), + GLubyte("g"), + GLubyte("b"), + GLubyte("a"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z") + ) + "glColor4ubVertex3fvSUN"(void, address("c", "const GLubyte *"), address("v", "const GLfloat *")) + "glColor3fVertex3fSUN"(void, GLfloat("r"), GLfloat("g"), GLfloat("b"), GLfloat("x"), GLfloat("y"), GLfloat("z")) + "glColor3fVertex3fvSUN"(void, address("c", "const GLfloat *"), address("v", "const GLfloat *")) + "glNormal3fVertex3fSUN"( + void, + GLfloat("nx"), + GLfloat("ny"), + GLfloat("nz"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z") + ) + "glNormal3fVertex3fvSUN"(void, address("n", "const GLfloat *"), address("v", "const GLfloat *")) + "glColor4fNormal3fVertex3fSUN"( + void, + GLfloat("r"), + GLfloat("g"), + GLfloat("b"), + GLfloat("a"), + GLfloat("nx"), + GLfloat("ny"), + GLfloat("nz"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z") + ) + "glColor4fNormal3fVertex3fvSUN"( + void, + address("c", "const GLfloat *"), + address("n", "const GLfloat *"), + address("v", "const GLfloat *") + ) + "glTexCoord2fVertex3fSUN"(void, GLfloat("s"), GLfloat("t"), GLfloat("x"), GLfloat("y"), GLfloat("z")) + "glTexCoord2fVertex3fvSUN"(void, address("tc", "const GLfloat *"), address("v", "const GLfloat *")) + "glTexCoord4fVertex4fSUN"( + void, + GLfloat("s"), + GLfloat("t"), + GLfloat("p"), + GLfloat("q"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z"), + GLfloat("w") + ) + "glTexCoord4fVertex4fvSUN"(void, address("tc", "const GLfloat *"), address("v", "const GLfloat *")) + "glTexCoord2fColor4ubVertex3fSUN"( + void, + GLfloat("s"), + GLfloat("t"), + GLubyte("r"), + GLubyte("g"), + GLubyte("b"), + GLubyte("a"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z") + ) + "glTexCoord2fColor4ubVertex3fvSUN"( + void, + address("tc", "const GLfloat *"), + address("c", "const GLubyte *"), + address("v", "const GLfloat *") + ) + "glTexCoord2fColor3fVertex3fSUN"( + void, + GLfloat("s"), + GLfloat("t"), + GLfloat("r"), + GLfloat("g"), + GLfloat("b"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z") + ) + "glTexCoord2fColor3fVertex3fvSUN"( + void, + address("tc", "const GLfloat *"), + address("c", "const GLfloat *"), + address("v", "const GLfloat *") + ) + "glTexCoord2fNormal3fVertex3fSUN"( + void, + GLfloat("s"), + GLfloat("t"), + GLfloat("nx"), + GLfloat("ny"), + GLfloat("nz"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z") + ) + "glTexCoord2fNormal3fVertex3fvSUN"( + void, + address("tc", "const GLfloat *"), + address("n", "const GLfloat *"), + address("v", "const GLfloat *") + ) + "glTexCoord2fColor4fNormal3fVertex3fSUN"( + void, + GLfloat("s"), + GLfloat("t"), + GLfloat("r"), + GLfloat("g"), + GLfloat("b"), + GLfloat("a"), + GLfloat("nx"), + GLfloat("ny"), + GLfloat("nz"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z") + ) + "glTexCoord2fColor4fNormal3fVertex3fvSUN"( + void, + address("tc", "const GLfloat *"), + address("c", "const GLfloat *"), + address("n", "const GLfloat *"), + address("v", "const GLfloat *") + ) + "glTexCoord4fColor4fNormal3fVertex4fSUN"( + void, + GLfloat("s"), + GLfloat("t"), + GLfloat("p"), + GLfloat("q"), + GLfloat("r"), + GLfloat("g"), + GLfloat("b"), + GLfloat("a"), + GLfloat("nx"), + GLfloat("ny"), + GLfloat("nz"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z"), + GLfloat("w") + ) + "glTexCoord4fColor4fNormal3fVertex4fvSUN"( + void, + address("tc", "const GLfloat *"), + address("c", "const GLfloat *"), + address("n", "const GLfloat *"), + address("v", "const GLfloat *") + ) + "glReplacementCodeuiVertex3fSUN"(void, GLuint("rc"), GLfloat("x"), GLfloat("y"), GLfloat("z")) + "glReplacementCodeuiVertex3fvSUN"(void, address("rc", "const GLuint *"), address("v", "const GLfloat *")) + "glReplacementCodeuiColor4ubVertex3fSUN"( + void, + GLuint("rc"), + GLubyte("r"), + GLubyte("g"), + GLubyte("b"), + GLubyte("a"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z") + ) + "glReplacementCodeuiColor4ubVertex3fvSUN"( + void, + address("rc", "const GLuint *"), + address("c", "const GLubyte *"), + address("v", "const GLfloat *") + ) + "glReplacementCodeuiColor3fVertex3fSUN"( + void, + GLuint("rc"), + GLfloat("r"), + GLfloat("g"), + GLfloat("b"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z") + ) + "glReplacementCodeuiColor3fVertex3fvSUN"( + void, + address("rc", "const GLuint *"), + address("c", "const GLfloat *"), + address("v", "const GLfloat *") + ) + "glReplacementCodeuiNormal3fVertex3fSUN"( + void, + GLuint("rc"), + GLfloat("nx"), + GLfloat("ny"), + GLfloat("nz"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z") + ) + "glReplacementCodeuiNormal3fVertex3fvSUN"( + void, + address("rc", "const GLuint *"), + address("n", "const GLfloat *"), + address("v", "const GLfloat *") + ) + "glReplacementCodeuiColor4fNormal3fVertex3fSUN"( + void, + GLuint("rc"), + GLfloat("r"), + GLfloat("g"), + GLfloat("b"), + GLfloat("a"), + GLfloat("nx"), + GLfloat("ny"), + GLfloat("nz"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z") + ) + "glReplacementCodeuiColor4fNormal3fVertex3fvSUN"( + void, + address("rc", "const GLuint *"), + address("c", "const GLfloat *"), + address("n", "const GLfloat *"), + address("v", "const GLfloat *") + ) + "glReplacementCodeuiTexCoord2fVertex3fSUN"( + void, + GLuint("rc"), + GLfloat("s"), + GLfloat("t"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z") + ) + "glReplacementCodeuiTexCoord2fVertex3fvSUN"( + void, + address("rc", "const GLuint *"), + address("tc", "const GLfloat *"), + address("v", "const GLfloat *") + ) + "glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN"( + void, + GLuint("rc"), + GLfloat("s"), + GLfloat("t"), + GLfloat("nx"), + GLfloat("ny"), + GLfloat("nz"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z") + ) + "glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN"( + void, + address("rc", "const GLuint *"), + address("tc", "const GLfloat *"), + address("n", "const GLfloat *"), + address("v", "const GLfloat *") + ) + "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN"( + void, + GLuint("rc"), + GLfloat("s"), + GLfloat("t"), + GLfloat("r"), + GLfloat("g"), + GLfloat("b"), + GLfloat("a"), + GLfloat("nx"), + GLfloat("ny"), + GLfloat("nz"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z") + ) + "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN"( + void, + address("rc", "const GLuint *"), + address("tc", "const GLfloat *"), + address("c", "const GLfloat *"), + address("n", "const GLfloat *"), + address("v", "const GLfloat *") + ) } } +fun win() { + file( + "PhongShading", WIN, "GL_WIN_phong_shading", + "GL_PHONG_WIN" to "0x80EA", + "GL_PHONG_HINT_WIN" to "0x80EB" + ) + file( + "SpecularFog", WIN, "GL_WIN_specular_fog", + "GL_FOG_SPECULAR_TEXTURE_WIN" to "0x80EC" + ) +} + +fun glExtCaps() { + Files.writeString(Path("GLExtCaps.java"), buildString { + appendLine( + """ + $fileHeader + package overrungl.opengl; + + import overrungl.opengl.ext.*; + import overrungl.opengl.ext.arb.*; + import overrungl.opengl.ext.khr.*; + import overrungl.opengl.ext.amd.*; + import overrungl.opengl.ext.apple.*; + import overrungl.opengl.ext.sun.*; + + import java.lang.invoke.MethodHandle; + + /** + * The OpenGL extension capabilities. + * + * @since 0.1.0 + */ + public final class GLExtCaps { + /** The OpenGL extension flags. */ + public boolean GL_3DFX_multisample, GL_3DFX_tbuffer, GL_3DFX_texture_compression_FXT1, GL_AMD_blend_minmax_factor, + GL_AMD_conservative_depth, GL_AMD_debug_output, GL_AMD_depth_clamp_separate, GL_AMD_draw_buffers_blend, + GL_AMD_framebuffer_multisample_advanced, GL_AMD_framebuffer_sample_positions, GL_AMD_gcn_shader, + GL_AMD_gpu_shader_half_float, GL_AMD_gpu_shader_int16, GL_AMD_gpu_shader_int64, GL_AMD_interleaved_elements, + GL_AMD_multi_draw_indirect, GL_AMD_name_gen_delete, GL_AMD_occlusion_query_event, GL_AMD_performance_monitor, + GL_AMD_pinned_memory, GL_AMD_query_buffer_object, GL_AMD_sample_positions, GL_AMD_seamless_cubemap_per_texture, + GL_AMD_shader_atomic_counter_ops, GL_AMD_shader_ballot, GL_AMD_shader_explicit_vertex_parameter, + GL_AMD_shader_gpu_shader_half_float_fetch, GL_AMD_shader_image_load_store_lod, GL_AMD_shader_stencil_export, + GL_AMD_shader_trinary_minmax, GL_AMD_sparse_texture, GL_AMD_stencil_operation_extended, + GL_AMD_texture_gather_bias_lod, GL_AMD_texture_texture4, GL_AMD_transform_feedback3_lines_triangles, + GL_AMD_transform_feedback4, GL_AMD_vertex_shader_layer, GL_AMD_vertex_shader_tessellator, + GL_AMD_vertex_shader_viewport_index, GL_APPLE_aux_depth_stencil, GL_APPLE_client_storage, GL_APPLE_element_array, + GL_APPLE_fence, GL_APPLE_float_pixels, GL_APPLE_flush_buffer_range, GL_APPLE_object_purgeable, GL_APPLE_rgb_422, + GL_APPLE_row_bytes, GL_APPLE_specular_vector, GL_APPLE_texture_range, GL_APPLE_transform_hint, + GL_APPLE_vertex_array_object, GL_APPLE_vertex_array_range, GL_APPLE_vertex_program_evaluators, GL_APPLE_ycbcr_422, + GL_ARB_ES2_compatibility, GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, GL_ARB_ES3_compatibility, + GL_ARB_arrays_of_arrays, GL_ARB_base_instance, GL_ARB_bindless_texture, GL_ARB_blend_func_extended, + GL_ARB_buffer_storage, GL_ARB_cl_event, GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, + GL_ARB_color_buffer_float, GL_ARB_compatibility, GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, + GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, GL_ARB_copy_buffer, + GL_ARB_copy_image, GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float, GL_ARB_depth_clamp, + GL_ARB_depth_texture, GL_ARB_derivative_control, GL_ARB_direct_state_access, GL_ARB_draw_buffers, + GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex, GL_ARB_draw_indirect, GL_ARB_draw_instanced, + GL_ARB_enhanced_layouts, GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, + GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, GL_ARB_fragment_program, + GL_ARB_fragment_program_shadow, GL_ARB_fragment_shader, GL_ARB_fragment_shader_interlock, + GL_ARB_framebuffer_no_attachments, GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB, GL_ARB_geometry_shader4, + GL_ARB_get_program_binary, GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64, + GL_ARB_gpu_shader_int64, GL_ARB_half_float_pixel, GL_ARB_half_float_vertex, GL_ARB_imaging, GL_ARB_indirect_parameters, + GL_ARB_instanced_arrays, GL_ARB_internalformat_query, GL_ARB_internalformat_query2, GL_ARB_invalidate_subdata, + GL_ARB_map_buffer_alignment, GL_ARB_map_buffer_range, GL_ARB_matrix_palette, GL_ARB_multi_bind, + GL_ARB_multi_draw_indirect, GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_occlusion_query, GL_ARB_occlusion_query2, + GL_ARB_parallel_shader_compile, GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, + GL_ARB_point_sprite, GL_ARB_polygon_offset_clamp, GL_ARB_post_depth_coverage, GL_ARB_program_interface_query, + GL_ARB_provoking_vertex, GL_ARB_query_buffer_object, GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness, + GL_ARB_robustness_isolation, GL_ARB_sample_locations, GL_ARB_sample_shading, GL_ARB_sampler_objects, + GL_ARB_seamless_cube_map, GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects, + GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters, GL_ARB_shader_ballot, GL_ARB_shader_bit_encoding, + GL_ARB_shader_clock, GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote, GL_ARB_shader_image_load_store, + GL_ARB_shader_image_size, GL_ARB_shader_objects, GL_ARB_shader_precision, GL_ARB_shader_stencil_export, + GL_ARB_shader_storage_buffer_object, GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, + GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, GL_ARB_shading_language_100, + GL_ARB_shading_language_420pack, GL_ARB_shading_language_include, GL_ARB_shading_language_packing, GL_ARB_shadow, + GL_ARB_shadow_ambient, GL_ARB_sparse_buffer, GL_ARB_sparse_texture, GL_ARB_sparse_texture2, GL_ARB_sparse_texture_clamp, + GL_ARB_spirv_extensions, GL_ARB_stencil_texturing, GL_ARB_sync, GL_ARB_tessellation_shader, GL_ARB_texture_barrier, + GL_ARB_texture_border_clamp, GL_ARB_texture_buffer_object, GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range, + GL_ARB_texture_compression, GL_ARB_texture_compression_bptc, GL_ARB_texture_compression_rgtc, + GL_ARB_texture_cube_map, GL_ARB_texture_cube_map_array, GL_ARB_texture_env_add, GL_ARB_texture_env_combine, + GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3, GL_ARB_texture_filter_anisotropic, GL_ARB_texture_filter_minmax, + GL_ARB_texture_float, GL_ARB_texture_gather, GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_mirrored_repeat, + GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two, GL_ARB_texture_query_levels, GL_ARB_texture_query_lod, + GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui, GL_ARB_texture_stencil8, GL_ARB_texture_storage, + GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle, GL_ARB_texture_view, GL_ARB_timer_query, + GL_ARB_transform_feedback2, GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced, + GL_ARB_transform_feedback_overflow_query, GL_ARB_transpose_matrix, GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra, + GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_64bit, GL_ARB_vertex_attrib_binding, GL_ARB_vertex_blend, + GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_vertex_shader, GL_ARB_vertex_type_10f_11f_11f_rev, + GL_ARB_vertex_type_2_10_10_10_rev, GL_ARB_viewport_array, GL_ARB_window_pos, GL_ATI_draw_buffers, GL_ATI_element_array, + GL_ATI_envmap_bumpmap, GL_ATI_fragment_shader, GL_ATI_map_object_buffer, GL_ATI_meminfo, GL_ATI_pixel_format_float, + GL_ATI_pn_triangles, GL_ATI_separate_stencil, GL_ATI_text_fragment_shader, GL_ATI_texture_env_combine3, GL_ATI_texture_float, + GL_ATI_texture_mirror_once, GL_ATI_vertex_array_object, GL_ATI_vertex_attrib_array_object, GL_ATI_vertex_streams, + GL_EXT_422_pixels, GL_EXT_EGL_image_storage, GL_EXT_EGL_sync, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_bindable_uniform, + GL_EXT_blend_color, GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate, GL_EXT_blend_logic_op, GL_EXT_blend_minmax, + GL_EXT_blend_subtract, GL_EXT_clip_volume_hint, GL_EXT_cmyka, GL_EXT_color_subtable, GL_EXT_compiled_vertex_array, + GL_EXT_convolution, GL_EXT_coordinate_frame, GL_EXT_copy_texture, GL_EXT_cull_vertex, GL_EXT_debug_label, GL_EXT_debug_marker, + GL_EXT_depth_bounds_test, GL_EXT_direct_state_access, GL_EXT_draw_buffers2, GL_EXT_draw_instanced, GL_EXT_draw_range_elements, + GL_EXT_external_buffer, GL_EXT_fog_coord, GL_EXT_framebuffer_blit, GL_EXT_framebuffer_multisample, + GL_EXT_framebuffer_multisample_blit_scaled, GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, GL_EXT_geometry_shader4, + GL_EXT_gpu_program_parameters, GL_EXT_gpu_shader4, GL_EXT_histogram, GL_EXT_index_array_formats, GL_EXT_index_func, + GL_EXT_index_material, GL_EXT_index_texture, GL_EXT_light_texture, GL_EXT_memory_object, GL_EXT_memory_object_fd, + GL_EXT_memory_object_win32, GL_EXT_misc_attribute, GL_EXT_multi_draw_arrays, GL_EXT_multisample, + GL_EXT_multiview_tessellation_geometry_shader, GL_EXT_multiview_texture_multisample, GL_EXT_multiview_timer_query, + GL_EXT_packed_depth_stencil, GL_EXT_packed_float, GL_EXT_packed_pixels, GL_EXT_paletted_texture, + GL_EXT_pixel_buffer_object, GL_EXT_pixel_transform, GL_EXT_pixel_transform_color_table, GL_EXT_point_parameters, + GL_EXT_polygon_offset, GL_EXT_polygon_offset_clamp, GL_EXT_post_depth_coverage, GL_EXT_provoking_vertex, + GL_EXT_raster_multisample, GL_EXT_rescale_normal, GL_EXT_secondary_color, GL_EXT_semaphore, GL_EXT_semaphore_fd, + GL_EXT_semaphore_win32, GL_EXT_separate_shader_objects, GL_EXT_separate_specular_color, GL_EXT_shader_framebuffer_fetch, + GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_image_load_formatted, GL_EXT_shader_image_load_store, + GL_EXT_shader_integer_mix, GL_EXT_shadow_funcs, GL_EXT_shared_texture_palette, GL_EXT_sparse_texture2, + GL_EXT_stencil_clear_tag, GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture, GL_EXT_texture, + GL_EXT_texture3D, GL_EXT_texture_array, GL_EXT_texture_buffer_object, GL_EXT_texture_compression_latc, + GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map, GL_EXT_texture_env_add, + GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic, GL_EXT_texture_filter_minmax, + GL_EXT_texture_integer, GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp, GL_EXT_texture_object, + GL_EXT_texture_perturb_normal, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_RG8, + GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm, + GL_EXT_texture_storage, GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback, GL_EXT_vertex_array, + GL_EXT_vertex_array_bgra, GL_EXT_vertex_attrib_64bit, GL_EXT_vertex_shader, GL_EXT_vertex_weighting, + GL_EXT_win32_keyed_mutex, GL_EXT_window_rectangles, GL_EXT_x11_sync_object, GL_GREMEDY_frame_terminator, + GL_GREMEDY_string_marker, GL_HP_convolution_border_modes, GL_HP_image_transform, GL_HP_occlusion_test, + GL_HP_texture_lighting, GL_IBM_cull_vertex, GL_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip, GL_IBM_static_data, + GL_IBM_texture_mirrored_repeat, GL_IBM_vertex_array_lists, GL_INGR_blend_func_separate, GL_INGR_color_clamp, + GL_INGR_interlace_read, GL_INTEL_blackhole_render, GL_INTEL_conservative_rasterization, GL_INTEL_fragment_shader_ordering, + GL_INTEL_framebuffer_CMAA, GL_INTEL_map_texture, GL_INTEL_parallel_arrays, GL_INTEL_performance_query, + GL_KHR_blend_equation_advanced, GL_KHR_blend_equation_advanced_coherent, GL_KHR_context_flush_control, GL_KHR_debug, + GL_KHR_no_error, GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior, GL_KHR_robustness, + GL_KHR_shader_subgroup, GL_KHR_texture_compression_astc_hdr, GL_KHR_texture_compression_astc_ldr, + GL_KHR_texture_compression_astc_sliced_3d, GL_MESAX_texture_stack, GL_MESA_framebuffer_flip_x, GL_MESA_framebuffer_flip_y, + GL_MESA_framebuffer_swap_xy, GL_MESA_pack_invert, GL_MESA_program_binary_formats, GL_MESA_resize_buffers, + GL_MESA_shader_integer_functions, GL_MESA_tile_raster_order, GL_MESA_window_pos, GL_MESA_ycbcr_texture, + GL_NVX_blend_equation_advanced_multi_draw_buffers, GL_NVX_conditional_render, GL_NVX_gpu_memory_info, + GL_NVX_gpu_multicast2, GL_NVX_linked_gpu_multicast, GL_NVX_progress_fence, GL_NV_alpha_to_coverage_dither_control, + GL_NV_bindless_multi_draw_indirect, GL_NV_bindless_multi_draw_indirect_count, GL_NV_bindless_texture, + GL_NV_blend_equation_advanced, GL_NV_blend_equation_advanced_coherent, GL_NV_blend_minmax_factor, GL_NV_blend_square, + GL_NV_clip_space_w_scaling, GL_NV_command_list, GL_NV_compute_program5, GL_NV_compute_shader_derivatives, + GL_NV_conditional_render, GL_NV_conservative_raster, GL_NV_conservative_raster_dilate, GL_NV_conservative_raster_pre_snap, + GL_NV_conservative_raster_pre_snap_triangles, GL_NV_conservative_raster_underestimation, GL_NV_copy_depth_to_color, + GL_NV_copy_image, GL_NV_deep_texture3D, GL_NV_depth_buffer_float, GL_NV_depth_clamp, GL_NV_draw_texture, + GL_NV_draw_vulkan_image, GL_NV_evaluators, GL_NV_explicit_multisample, GL_NV_fence, GL_NV_fill_rectangle, + GL_NV_float_buffer, GL_NV_fog_distance, GL_NV_fragment_coverage_to_color, GL_NV_fragment_program, GL_NV_fragment_program2, + GL_NV_fragment_program4, GL_NV_fragment_program_option, GL_NV_fragment_shader_barycentric, GL_NV_fragment_shader_interlock, + GL_NV_framebuffer_mixed_samples, GL_NV_framebuffer_multisample_coverage, GL_NV_geometry_program4, GL_NV_geometry_shader4, + GL_NV_geometry_shader_passthrough, GL_NV_gpu_multicast, GL_NV_gpu_program4, GL_NV_gpu_program5, + GL_NV_gpu_program5_mem_extended, GL_NV_gpu_shader5, GL_NV_half_float, GL_NV_internalformat_sample_query, + GL_NV_light_max_exponent, GL_NV_memory_attachment, GL_NV_memory_object_sparse, GL_NV_mesh_shader, + GL_NV_multisample_coverage, GL_NV_multisample_filter_hint, GL_NV_occlusion_query, GL_NV_packed_depth_stencil, + GL_NV_parameter_buffer_object, GL_NV_parameter_buffer_object2, GL_NV_path_rendering, GL_NV_path_rendering_shared_edge, + GL_NV_pixel_data_range, GL_NV_point_sprite, GL_NV_present_video, GL_NV_primitive_restart, GL_NV_primitive_shading_rate, + GL_NV_query_resource, GL_NV_query_resource_tag, GL_NV_register_combiners, GL_NV_register_combiners2, + GL_NV_representative_fragment_test, GL_NV_robustness_video_memory_purge, GL_NV_sample_locations, + GL_NV_sample_mask_override_coverage, GL_NV_scissor_exclusive, GL_NV_shader_atomic_counters, GL_NV_shader_atomic_float, + GL_NV_shader_atomic_float64, GL_NV_shader_atomic_fp16_vector, GL_NV_shader_atomic_int64, GL_NV_shader_buffer_load, + GL_NV_shader_buffer_store, GL_NV_shader_storage_buffer_object, GL_NV_shader_subgroup_partitioned, + GL_NV_shader_texture_footprint, GL_NV_shader_thread_group, GL_NV_shader_thread_shuffle, GL_NV_shading_rate_image, + GL_NV_stereo_view_rendering, GL_NV_tessellation_program5, GL_NV_texgen_emboss, GL_NV_texgen_reflection, + GL_NV_texture_barrier, GL_NV_texture_compression_vtc, GL_NV_texture_env_combine4, GL_NV_texture_expand_normal, + GL_NV_texture_multisample, GL_NV_texture_rectangle, GL_NV_texture_rectangle_compressed, GL_NV_texture_shader, + GL_NV_texture_shader2, GL_NV_texture_shader3, GL_NV_timeline_semaphore, GL_NV_transform_feedback, + GL_NV_transform_feedback2, GL_NV_uniform_buffer_unified_memory, GL_NV_vdpau_interop, GL_NV_vdpau_interop2, + GL_NV_vertex_array_range, GL_NV_vertex_array_range2, GL_NV_vertex_attrib_integer_64bit, GL_NV_vertex_buffer_unified_memory, + GL_NV_vertex_program, GL_NV_vertex_program1_1, GL_NV_vertex_program2, GL_NV_vertex_program2_option, GL_NV_vertex_program3, + GL_NV_vertex_program4, GL_NV_video_capture, GL_NV_viewport_array2, GL_NV_viewport_swizzle, GL_OES_byte_coordinates, + GL_OES_compressed_paletted_texture, GL_OES_fixed_point, GL_OES_query_matrix, GL_OES_read_format, GL_OES_single_precision, + GL_OML_interlace, GL_OML_resample, GL_OML_subsample, GL_OVR_multiview, GL_OVR_multiview2, GL_PGI_misc_hints, + GL_PGI_vertex_hints, GL_REND_screen_coordinates, GL_S3_s3tc, GL_SGIS_detail_texture, GL_SGIS_fog_function, + GL_SGIS_generate_mipmap, GL_SGIS_multisample, GL_SGIS_pixel_texture, GL_SGIS_point_line_texgen, GL_SGIS_point_parameters, + GL_SGIS_sharpen_texture, GL_SGIS_texture4D, GL_SGIS_texture_border_clamp, GL_SGIS_texture_color_mask, + GL_SGIS_texture_edge_clamp, GL_SGIS_texture_filter4, GL_SGIS_texture_lod, GL_SGIS_texture_select, GL_SGIX_async, + GL_SGIX_async_histogram, GL_SGIX_async_pixel, GL_SGIX_blend_alpha_minmax, GL_SGIX_calligraphic_fragment, GL_SGIX_clipmap, + GL_SGIX_convolution_accuracy, GL_SGIX_depth_pass_instrument, GL_SGIX_depth_texture, GL_SGIX_flush_raster, + GL_SGIX_fog_offset, GL_SGIX_fragment_lighting, GL_SGIX_framezoom, GL_SGIX_igloo_interface, GL_SGIX_instruments, + GL_SGIX_interlace, GL_SGIX_ir_instrument1, GL_SGIX_list_priority, GL_SGIX_pixel_texture, GL_SGIX_pixel_tiles, + GL_SGIX_polynomial_ffd, GL_SGIX_reference_plane, GL_SGIX_resample, GL_SGIX_scalebias_hint, GL_SGIX_shadow, + GL_SGIX_shadow_ambient, GL_SGIX_sprite, GL_SGIX_subsample, GL_SGIX_tag_sample_buffer, GL_SGIX_texture_add_env, + GL_SGIX_texture_coordinate_clamp, GL_SGIX_texture_lod_bias, GL_SGIX_texture_multi_buffer, GL_SGIX_texture_scale_bias, + GL_SGIX_vertex_preclip, GL_SGIX_ycrcb, GL_SGIX_ycrcb_subsample, GL_SGIX_ycrcba, GL_SGI_color_matrix, GL_SGI_color_table, + GL_SGI_texture_color_table, GL_SUNX_constant_data, GL_SUN_convolution_border_modes, GL_SUN_global_alpha, GL_SUN_mesh_array, + GL_SUN_slice_accum, GL_SUN_triangle_list, GL_SUN_vertex, GL_WIN_phong_shading, GL_WIN_specular_fog; + + /** GLCapabilities */ + public final GLCapabilities caps; + + /** + * Construct incomplete OpenGL extension capabilities. + * + * @param caps The parent capabilities. + */ + public GLExtCaps(GLCapabilities caps) { + this.caps = caps; + } + + /** Method handles. */ + public MethodHandle + """.trimIndent() + ) + generatedExtFunctions.forEachIndexed { index, function -> + if (index == 0) append(" ") + else append(", ") + append(function.name) + } + appendLine(";\n void load(GLLoadFunc load) {") + generatedExtClasses.forEach { + appendLine(" ${it.ext.extName}${it.name}.load(this, load);") + } + appendLine(" }\n}") + }) +} + /** * @author squid233 * @since 0.1.0 @@ -907,4 +1686,26 @@ fun khr() { fun main() { arb() khr() + oes() + `3dfx`() + amd() + apple() + ati() + ext() + gremedy() + hp() + ibm() + ingr() + intel() + mesa() + nv() + oml() + ovr() + pgi() + rend() + s3() + sgi() + sun() + win() + glExtCaps() } From f2d977ebe9288ff82cbef8cd2dbef68e71ccad68 Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Sat, 23 Sep 2023 19:43:42 +0800 Subject: [PATCH 04/20] [OpenGL] Add support to function overload --- .../overrungl/opengl/OpenGLGenerator.kt | 27 ++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt index 35bb146c..091aecf8 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt @@ -118,8 +118,17 @@ data class Function( val name: String, val returnType: Type = void, val nativeType: String?, - val params: List -) + val params: List, + val content: String? = null +) { + private val _overloads = ArrayList() + val overloads: List + get() = _overloads + + operator fun String.invoke(returnType: Type, content: String, vararg params: Parameter, nativeType: String? = null) { + _overloads.add(Function(this, returnType, nativeType, params.toList(), content)) + } +} class OpenGLFile( val name: String, @@ -187,7 +196,7 @@ class OpenGLFile( appendLine(" }") appendLine() // functions - functions.forEach { f -> + fun appendFuncHeader(f: Function) { append(" public static ") if (f.nativeType != null) append("@NativeType(\"${f.nativeType}\") ") @@ -199,6 +208,9 @@ class OpenGLFile( append("${it.type} ${it.name}") } appendLine(") {") + } + functions.forEach { f -> + appendFuncHeader(f) appendLine(" final var ext = getExtCapabilities();") appendLine(" try {") if (f.returnType != void) @@ -215,6 +227,15 @@ class OpenGLFile( """.trimMargin() ) appendLine() + + // overloads + if (f.overloads.isNotEmpty()) { + f.overloads.forEach { overload -> + appendFuncHeader(overload) + appendLine(overload.content!!.prependIndent(" ")) + appendLine(" }\n") + } + } } } appendLine("}") From a06ed74274408d16d4fc0687d16ed8aa99781772 Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Sat, 23 Sep 2023 21:28:46 +0800 Subject: [PATCH 05/20] [OpenGL] Updated generator OES, AMD & APPLE --- .../overrungl/opengl/OpenGLGenerator.kt | 885 +++++++++++++++++- 1 file changed, 878 insertions(+), 7 deletions(-) diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt index 091aecf8..fcd31f44 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt @@ -91,6 +91,9 @@ val long = Type("long", "JAVA_LONG") val float = Type("float", "JAVA_FLOAT") val double = Type("double", "JAVA_DOUBLE") val address = Type("MemorySegment", "ADDRESS") + +val arena = Type("Arena", null) + val GLboolean = boolean val GLbyte = byte val GLubyte = byte @@ -98,15 +101,24 @@ val GLshort = short val GLushort = short val GLint = int val GLuint = int -val GLenum = int +val GLfixed = int val GLsizei = int +val GLenum = int +val GLintptr = long +val GLsizeiptr = long +val GLbitfield = int val GLfloat = float +val GLclampf = float val GLdouble = double +val GLclampd = double +val GLchar = byte val GLsizeiptrARB = long val GLintptrARB = long val GLhandleARB = int // Don't know how to handle on APPLE val GLcharARB = byte +val GLint64EXT = long +val GLuint64EXT = long data class Parameter( val type: Type, @@ -125,6 +137,10 @@ data class Function( val overloads: List get() = _overloads + operator fun invoke(action: Function.() -> Unit) { + action() + } + operator fun String.invoke(returnType: Type, content: String, vararg params: Parameter, nativeType: String? = null) { _overloads.add(Function(this, returnType, nativeType, params.toList(), content)) } @@ -142,7 +158,7 @@ class OpenGLFile( constants[this] = value } - operator fun String.invoke(returnType: Type, vararg params: Parameter, nativeType: String? = null) { + operator fun String.invoke(returnType: Type, vararg params: Parameter, nativeType: String? = null): Function = Function(this, returnType, nativeType, params.toList()).also { functions.add(it) when (ext) { @@ -150,7 +166,6 @@ class OpenGLFile( else -> generatedExtFunctions.add(it) } } - } internal fun generate() { Files.writeString(Path("${ext.dir}GL${ext.extName}$name.java"), buildString { @@ -163,8 +178,7 @@ class OpenGLFile( import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; - import static java.lang.foreign.FunctionDescriptor.of; - import static java.lang.foreign.FunctionDescriptor.ofVoid; + import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; @@ -1077,6 +1091,205 @@ fun khr() { } fun oes() { + file("ByteCoordinates", OES, "GL_OES_byte_coordinates") { + "glMultiTexCoord1bOES"(void, GLenum("texture"), GLbyte("s")) + "glMultiTexCoord1bvOES"(void, GLenum("texture"), address("coords", "const GLbyte *")) + "glMultiTexCoord2bOES"(void, GLenum("texture"), GLbyte("s"), GLbyte("t")) + "glMultiTexCoord2bvOES"(void, GLenum("texture"), address("coords", "const GLbyte *")) + "glMultiTexCoord3bOES"(void, GLenum("texture"), GLbyte("s"), GLbyte("t"), GLbyte("r")) + "glMultiTexCoord3bvOES"(void, GLenum("texture"), address("coords", "const GLbyte *")) + "glMultiTexCoord4bOES"(void, GLenum("texture"), GLbyte("s"), GLbyte("t"), GLbyte("r"), GLbyte("q")) + "glMultiTexCoord4bvOES"(void, GLenum("texture"), address("coords", "const GLbyte *")) + "glTexCoord1bOES"(void, GLbyte("s")) + "glTexCoord1bvOES"(void, address("coords", "const GLbyte *")) + "glTexCoord2bOES"(void, GLbyte("s"), GLbyte("t")) + "glTexCoord2bvOES"(void, address("coords", "const GLbyte *")) + "glTexCoord3bOES"(void, GLbyte("s"), GLbyte("t"), GLbyte("r")) + "glTexCoord3bvOES"(void, address("coords", "const GLbyte *")) + "glTexCoord4bOES"(void, GLbyte("s"), GLbyte("t"), GLbyte("r"), GLbyte("q")) + "glTexCoord4bvOES"(void, address("coords", "const GLbyte *")) + "glVertex2bOES"(void, GLbyte("x"), GLbyte("y")) + "glVertex2bvOES"(void, address("coords", "const GLbyte *")) + "glVertex3bOES"(void, GLbyte("x"), GLbyte("y"), GLbyte("z")) + "glVertex3bvOES"(void, address("coords", "const GLbyte *")) + "glVertex4bOES"(void, GLbyte("x"), GLbyte("y"), GLbyte("z"), GLbyte("w")) + "glVertex4bvOES"(void, address("coords", "const GLbyte *")) + } + file( + "CompressedPalettedTexture", OES, "GL_OES_compressed_paletted_texture", + "GL_PALETTE4_RGB8_OES" to "0x8B90", + "GL_PALETTE4_RGBA8_OES" to "0x8B91", + "GL_PALETTE4_R5_G6_B5_OES" to "0x8B92", + "GL_PALETTE4_RGBA4_OES" to "0x8B93", + "GL_PALETTE4_RGB5_A1_OES" to "0x8B94", + "GL_PALETTE8_RGB8_OES" to "0x8B95", + "GL_PALETTE8_RGBA8_OES" to "0x8B96", + "GL_PALETTE8_R5_G6_B5_OES" to "0x8B97", + "GL_PALETTE8_RGBA4_OES" to "0x8B98", + "GL_PALETTE8_RGB5_A1_OES" to "0x8B99" + ) + file("FixedPoint", OES, "GL_OES_fixed_point") { + "GL_FIXED_OES"("0x140C") + "glAlphaFuncxOES"(void, GLenum("func"), GLfixed("ref")) + "glClearColorxOES"(void, GLfixed("red"), GLfixed("green"), GLfixed("blue"), GLfixed("alpha")) + "glClearDepthxOES"(void, GLfixed("depth")) + "glClipPlanexOES"(void, GLenum("plane"), address("equation", "const GLfixed *")) + "glColor4xOES"(void, GLfixed("red"), GLfixed("green"), GLfixed("blue"), GLfixed("alpha")) + "glDepthRangexOES"(void, GLfixed("n"), GLfixed("f")) + "glFogxOES"(void, GLenum("pname"), GLfixed("param")) + "glFogxvOES"(void, GLenum("pname"), address("param", "const GLfixed *")) + "glFrustumxOES"(void, GLfixed("l"), GLfixed("r"), GLfixed("b"), GLfixed("t"), GLfixed("n"), GLfixed("f")) + "glGetClipPlanexOES"(void, GLenum("plane"), address("equation", "GLfixed *")) + "glGetFixedvOES"(void, GLenum("pname"), address("params", "GLfixed *")) + "glGetTexEnvxvOES"(void, GLenum("target"), GLenum("pname"), address("params", "GLfixed *")) + "glGetTexParameterxvOES"(void, GLenum("target"), GLenum("pname"), address("params", "GLfixed *")) + "glLightModelxOES"(void, GLenum("pname"), GLfixed("param")) + "glLightModelxvOES"(void, GLenum("pname"), address("param", "const GLfixed *")) + "glLightxOES"(void, GLenum("light"), GLenum("pname"), GLfixed("param")) + "glLightxvOES"(void, GLenum("light"), GLenum("pname"), address("params", "const GLfixed *")) + "glLineWidthxOES"(void, GLfixed("width")) + "glLoadMatrixxOES"(void, address("m", "const GLfixed *")) + "glMaterialxOES"(void, GLenum("face"), GLenum("pname"), GLfixed("param")) + "glMaterialxvOES"(void, GLenum("face"), GLenum("pname"), address("param", "const GLfixed *")) + "glMultMatrixxOES"(void, address("m", "const GLfixed *")) + "glMultiTexCoord4xOES"(void, GLenum("texture"), GLfixed("s"), GLfixed("t"), GLfixed("r"), GLfixed("q")) + "glNormal3xOES"(void, GLfixed("nx"), GLfixed("ny"), GLfixed("nz")) + "glOrthoxOES"(void, GLfixed("l"), GLfixed("r"), GLfixed("b"), GLfixed("t"), GLfixed("n"), GLfixed("f")) + "glPointParameterxvOES"(void, GLenum("pname"), address("params", "const GLfixed *")) + "glPointSizexOES"(void, GLfixed("size")) + "glPolygonOffsetxOES"(void, GLfixed("factor"), GLfixed("units")) + "glRotatexOES"(void, GLfixed("angle"), GLfixed("x"), GLfixed("y"), GLfixed("z")) + "glScalexOES"(void, GLfixed("x"), GLfixed("y"), GLfixed("z")) + "glTexEnvxOES"(void, GLenum("target"), GLenum("pname"), GLfixed("param")) + "glTexEnvxvOES"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfixed *")) + "glTexParameterxOES"(void, GLenum("target"), GLenum("pname"), GLfixed("param")) + "glTexParameterxvOES"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfixed *")) + "glTranslatexOES"(void, GLfixed("x"), GLfixed("y"), GLfixed("z")) + "glAccumxOES"(void, GLenum("op"), GLfixed("value")) + "glBitmapxOES"( + void, + GLsizei("width"), + GLsizei("height"), + GLfixed("xorig"), + GLfixed("yorig"), + GLfixed("xmove"), + GLfixed("ymove"), + address("bitmap", "const GLubyte *") + ) + "glBlendColorxOES"(void, GLfixed("red"), GLfixed("green"), GLfixed("blue"), GLfixed("alpha")) + "glClearAccumxOES"(void, GLfixed("red"), GLfixed("green"), GLfixed("blue"), GLfixed("alpha")) + "glColor3xOES"(void, GLfixed("red"), GLfixed("green"), GLfixed("blue")) + "glColor3xvOES"(void, address("components", "const GLfixed *")) + "glColor4xvOES"(void, address("components", "const GLfixed *")) + "glConvolutionParameterxOES"(void, GLenum("target"), GLenum("pname"), GLfixed("param")) + "glConvolutionParameterxvOES"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfixed *")) + "glEvalCoord1xOES"(void, GLfixed("u")) + "glEvalCoord1xvOES"(void, address("coords", "const GLfixed *")) + "glEvalCoord2xOES"(void, GLfixed("u"), GLfixed("v")) + "glEvalCoord2xvOES"(void, address("coords", "const GLfixed *")) + "glFeedbackBufferxOES"(void, GLsizei("n"), GLenum("type"), address("buffer", "const GLfixed *")) + "glGetConvolutionParameterxvOES"(void, GLenum("target"), GLenum("pname"), address("params", "GLfixed *")) + "glGetHistogramParameterxvOES"(void, GLenum("target"), GLenum("pname"), address("params", "GLfixed *")) + "glGetLightxOES"(void, GLenum("light"), GLenum("pname"), address("params", "GLfixed *")) + "glGetMapxvOES"(void, GLenum("target"), GLenum("query"), address("v", "GLfixed *")) + "glGetMaterialxOES"(void, GLenum("face"), GLenum("pname"), GLfixed("param")) + "glGetPixelMapxv"(void, GLenum("map"), GLint("size"), address("values", "GLfixed *")) + "glGetTexGenxvOES"(void, GLenum("coord"), GLenum("pname"), address("params", "GLfixed *")) + "glGetTexLevelParameterxvOES"( + void, + GLenum("target"), + GLint("level"), + GLenum("pname"), + address("params", "GLfixed *") + ) + "glIndexxOES"(void, GLfixed("component")) + "glIndexxvOES"(void, address("component", "const GLfixed *")) + "glLoadTransposeMatrixxOES"(void, address("m", "const GLfixed *")) + "glMap1xOES"( + void, + GLenum("target"), + GLfixed("u1"), + GLfixed("u2"), + GLint("stride"), + GLint("order"), + GLfixed("points") + ) + "glMap2xOES"( + void, + GLenum("target"), + GLfixed("u1"), + GLfixed("u2"), + GLint("ustride"), + GLint("uorder"), + GLfixed("v1"), + GLfixed("v2"), + GLint("vstride"), + GLint("vorder"), + GLfixed("points") + ) + "glMapGrid1xOES"(void, GLint("n"), GLfixed("u1"), GLfixed("u2")) + "glMapGrid2xOES"(void, GLint("n"), GLfixed("u1"), GLfixed("u2"), GLfixed("v1"), GLfixed("v2")) + "glMultTransposeMatrixxOES"(void, address("m", "const GLfixed *")) + "glMultiTexCoord1xOES"(void, GLenum("texture"), GLfixed("s")) + "glMultiTexCoord1xvOES"(void, GLenum("texture"), address("coords", "const GLfixed *")) + "glMultiTexCoord2xOES"(void, GLenum("texture"), GLfixed("s"), GLfixed("t")) + "glMultiTexCoord2xvOES"(void, GLenum("texture"), address("coords", "const GLfixed *")) + "glMultiTexCoord3xOES"(void, GLenum("texture"), GLfixed("s"), GLfixed("t"), GLfixed("r")) + "glMultiTexCoord3xvOES"(void, GLenum("texture"), address("coords", "const GLfixed *")) + "glMultiTexCoord4xvOES"(void, GLenum("texture"), address("coords", "const GLfixed *")) + "glNormal3xvOES"(void, address("coords", "const GLfixed *")) + "glPassThroughxOES"(void, GLfixed("token")) + "glPixelMapx"(void, GLenum("map"), GLint("size"), address("values", "const GLfixed *")) + "glPixelStorex"(void, GLenum("pname"), GLfixed("param")) + "glPixelTransferxOES"(void, GLenum("pname"), GLfixed("param")) + "glPixelZoomxOES"(void, GLfixed("xfactor"), GLfixed("yfactor")) + "glPrioritizeTexturesxOES"( + void, + GLsizei("n"), + address("textures", "const GLuint *"), + address("priorities", "const GLfixed *") + ) + "glRasterPos2xOES"(void, GLfixed("x"), GLfixed("y")) + "glRasterPos2xvOES"(void, address("coords", "const GLfixed *")) + "glRasterPos3xOES"(void, GLfixed("x"), GLfixed("y"), GLfixed("z")) + "glRasterPos3xvOES"(void, address("coords", "const GLfixed *")) + "glRasterPos4xOES"(void, GLfixed("x"), GLfixed("y"), GLfixed("z"), GLfixed("w")) + "glRasterPos4xvOES"(void, address("coords", "const GLfixed *")) + "glRectxOES"(void, GLfixed("x1"), GLfixed("y1"), GLfixed("x2"), GLfixed("y2")) + "glRectxvOES"(void, address("v1", "const GLfixed *"), address("v2", "const GLfixed *")) + "glTexCoord1xOES"(void, GLfixed("s")) + "glTexCoord1xvOES"(void, address("coords", "const GLfixed *")) + "glTexCoord2xOES"(void, GLfixed("s"), GLfixed("t")) + "glTexCoord2xvOES"(void, address("coords", "const GLfixed *")) + "glTexCoord3xOES"(void, GLfixed("s"), GLfixed("t"), GLfixed("r")) + "glTexCoord3xvOES"(void, address("coords", "const GLfixed *")) + "glTexCoord4xOES"(void, GLfixed("s"), GLfixed("t"), GLfixed("r"), GLfixed("q")) + "glTexCoord4xvOES"(void, address("coords", "const GLfixed *")) + "glTexGenxOES"(void, GLenum("coord"), GLenum("pname"), GLfixed("param")) + "glTexGenxvOES"(void, GLenum("coord"), GLenum("pname"), address("params", "const GLfixed *")) + "glVertex2xOES"(void, GLfixed("x")) + "glVertex2xvOES"(void, address("coords", "const GLfixed *")) + "glVertex3xOES"(void, GLfixed("x"), GLfixed("y")) + "glVertex3xvOES"(void, address("coords", "const GLfixed *")) + "glVertex4xOES"(void, GLfixed("x"), GLfixed("y"), GLfixed("z")) + "glVertex4xvOES"(void, address("coords", "const GLfixed *")) + } + file("QueryMatrix", OES, "GL_OES_query_matrix") { + "glQueryMatrixxOES"(GLbitfield, address("mantissa", "GLfixed *"), address("exponent", "GLint *")) + } + file( + "ReadFormat", OES, "GL_OES_read_format", + "GL_IMPLEMENTATION_COLOR_READ_TYPE_OES" to "0x8B9A", + "GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES" to "0x8B9B" + ) + file("SinglePrecision", OES, "GL_OES_single_precision") { + "glClearDepthfOES"(void, GLclampf("depth")) + "glClipPlanefOES"(void, GLenum("plane"), address("equation", "const GLfloat *")) + "glDepthRangefOES"(void, GLclampf("n"), GLclampf("f")) + "glFrustumfOES"(void, GLfloat("l"), GLfloat("r"), GLfloat("b"), GLfloat("t"), GLfloat("n"), GLfloat("f")) + "glGetClipPlanefOES"(void, GLenum("plane"), address("equation", "GLfloat *")) + "glOrthofOES"(void, GLfloat("l"), GLfloat("r"), GLfloat("b"), GLfloat("t"), GLfloat("n"), GLfloat("f")) + } } fun `3dfx`() { @@ -1097,9 +1310,667 @@ fun `3dfx`() { ) } -fun amd() {} +fun amd() { + file( + "BlendMinmaxFactor", AMD, "GL_AMD_blend_minmax_factor", + "GL_FACTOR_MIN_AMD" to "0x901C", + "GL_FACTOR_MAX_AMD" to "0x901D" + ) + file("DebugOutput",AMD,"GL_AMD_debug_output") { + "GL_MAX_DEBUG_MESSAGE_LENGTH_AMD"("0x9143") + "GL_MAX_DEBUG_LOGGED_MESSAGES_AMD"("0x9144") + "GL_DEBUG_LOGGED_MESSAGES_AMD"("0x9145") + "GL_DEBUG_SEVERITY_HIGH_AMD"("0x9146") + "GL_DEBUG_SEVERITY_MEDIUM_AMD"("0x9147") + "GL_DEBUG_SEVERITY_LOW_AMD"("0x9148") + "GL_DEBUG_CATEGORY_API_ERROR_AMD"("0x9149") + "GL_DEBUG_CATEGORY_WINDOW_SYSTEM_AMD"("0x914A") + "GL_DEBUG_CATEGORY_DEPRECATION_AMD"("0x914B") + "GL_DEBUG_CATEGORY_UNDEFINED_BEHAVIOR_AMD"("0x914C") + "GL_DEBUG_CATEGORY_PERFORMANCE_AMD"("0x914D") + "GL_DEBUG_CATEGORY_SHADER_COMPILER_AMD"("0x914E") + "GL_DEBUG_CATEGORY_APPLICATION_AMD"("0x914F") + "GL_DEBUG_CATEGORY_OTHER_AMD"("0x9150") + "glDebugMessageEnableAMD"( + void, + GLenum("category"), + GLenum("severity"), + GLsizei("count"), + address("ids", "const GLuint *"), + GLboolean("enabled") + ) + "glDebugMessageInsertAMD"( + void, + GLenum("category"), + GLenum("severity"), + GLuint("id"), + GLsizei("length"), + address("buf", "const GLchar *") + ) + ("glDebugMessageCallbackAMD"(void, address("callback", "GLDEBUGPROCAMD"), address("userParam", "void *"))) { + "glDebugMessageCallbackAMD"( + void, + "glDebugMessageCallbackAMD(callback.address(arena), userParam);", + arena("arena"), + Type("GLDebugProcAMD", null)("callback"), + address("userParam", "void *") + ) + } + "glGetDebugMessageLogAMD"( + GLuint, + GLuint("count"), + GLsizei("bufSize"), + address("categories", "GLenum *"), + address("severities", "GLenum *"), + address("ids", "GLuint *"), + address("lengths", "GLsizei *"), + address("message", "GLchar *") + ) + } + file( + "DepthClampSeparate", AMD, "GL_AMD_depth_clamp_separate", + "GL_DEPTH_CLAMP_NEAR_AMD" to "0x901E", + "GL_DEPTH_CLAMP_FAR_AMD" to "0x901F" + ) + file("DrawBuffersBlend", AMD, "GL_AMD_draw_buffers_blend") { + "glBlendFuncIndexedAMD"(void, GLuint("buf"), GLenum("src"), GLenum("dst")) + "glBlendFuncSeparateIndexedAMD"( + void, + GLuint("buf"), + GLenum("srcRGB"), + GLenum("dstRGB"), + GLenum("srcAlpha"), + GLenum("dstAlpha") + ) + "glBlendEquationIndexedAMD"(void, GLuint("buf"), GLenum("mode")) + "glBlendEquationSeparateIndexedAMD"(void, GLuint("buf"), GLenum("modeRGB"), GLenum("modeAlpha")) + } + file("FramebufferMultisampleAdvanced", AMD, "GL_AMD_framebuffer_multisample_advanced") { + "GL_RENDERBUFFER_STORAGE_SAMPLES_AMD"("0x91B2") + "GL_MAX_COLOR_FRAMEBUFFER_SAMPLES_AMD"("0x91B3") + "GL_MAX_COLOR_FRAMEBUFFER_STORAGE_SAMPLES_AMD"("0x91B4") + "GL_MAX_DEPTH_STENCIL_FRAMEBUFFER_SAMPLES_AMD"("0x91B5") + "GL_NUM_SUPPORTED_MULTISAMPLE_MODES_AMD"("0x91B6") + "GL_SUPPORTED_MULTISAMPLE_MODES_AMD"("0x91B7") + "glRenderbufferStorageMultisampleAdvancedAMD"( + void, + GLenum("target"), + GLsizei("samples"), + GLsizei("storageSamples"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height") + ) + "glNamedRenderbufferStorageMultisampleAdvancedAMD"( + void, + GLuint("renderbuffer"), + GLsizei("samples"), + GLsizei("storageSamples"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height") + ) + } + file("FramebufferSamplePositions", AMD, "GL_AMD_framebuffer_sample_positions") { + "GL_SUBSAMPLE_DISTANCE_AMD"("0x883F") + "GL_PIXELS_PER_SAMPLE_PATTERN_X_AMD"("0x91AE") + "GL_PIXELS_PER_SAMPLE_PATTERN_Y_AMD"("0x91AF") + "GL_ALL_PIXELS_AMD"("0xFFFFFFFF") + "glFramebufferSamplePositionsfvAMD"( + void, + GLenum("target"), + GLuint("numsamples"), + GLuint("pixelindex"), + address("values", "const GLfloat *") + ) + "glNamedFramebufferSamplePositionsfvAMD"( + void, + GLuint("framebuffer"), + GLuint("numsamples"), + GLuint("pixelindex"), + address("values", "const GLfloat *") + ) + "glGetFramebufferParameterfvAMD"( + void, + GLenum("target"), + GLenum("pname"), + GLuint("numsamples"), + GLuint("pixelindex"), + GLsizei("size"), + address("values", "GLfloat *") + ) + "glGetNamedFramebufferParameterfvAMD"( + void, + GLuint("framebuffer"), + GLenum("pname"), + GLuint("numsamples"), + GLuint("pixelindex"), + GLsizei("size"), + address("values", "GLfloat *") + ) + } + file( + "GpuShaderHalfFloat", AMD, "GL_AMD_gpu_shader_half_float", + "GL_FLOAT16_NV" to "0x8FF8", + "GL_FLOAT16_VEC2_NV" to "0x8FF9", + "GL_FLOAT16_VEC3_NV" to "0x8FFA", + "GL_FLOAT16_VEC4_NV" to "0x8FFB", + "GL_FLOAT16_MAT2_AMD" to "0x91C5", + "GL_FLOAT16_MAT3_AMD" to "0x91C6", + "GL_FLOAT16_MAT4_AMD" to "0x91C7", + "GL_FLOAT16_MAT2x3_AMD" to "0x91C8", + "GL_FLOAT16_MAT2x4_AMD" to "0x91C9", + "GL_FLOAT16_MAT3x2_AMD" to "0x91CA", + "GL_FLOAT16_MAT3x4_AMD" to "0x91CB", + "GL_FLOAT16_MAT4x2_AMD" to "0x91CC", + "GL_FLOAT16_MAT4x3_AMD" to "0x91CD" + ) + file("GpuShaderInt64", AMD, "GL_AMD_gpu_shader_int64") { + "GL_INT64_NV"("0x140E") + "GL_UNSIGNED_INT64_NV"("0x140F") + "GL_INT8_NV"("0x8FE0") + "GL_INT8_VEC2_NV"("0x8FE1") + "GL_INT8_VEC3_NV"("0x8FE2") + "GL_INT8_VEC4_NV"("0x8FE3") + "GL_INT16_NV"("0x8FE4") + "GL_INT16_VEC2_NV"("0x8FE5") + "GL_INT16_VEC3_NV"("0x8FE6") + "GL_INT16_VEC4_NV"("0x8FE7") + "GL_INT64_VEC2_NV"("0x8FE9") + "GL_INT64_VEC3_NV"("0x8FEA") + "GL_INT64_VEC4_NV"("0x8FEB") + "GL_UNSIGNED_INT8_NV"("0x8FEC") + "GL_UNSIGNED_INT8_VEC2_NV"("0x8FED") + "GL_UNSIGNED_INT8_VEC3_NV"("0x8FEE") + "GL_UNSIGNED_INT8_VEC4_NV"("0x8FEF") + "GL_UNSIGNED_INT16_NV"("0x8FF0") + "GL_UNSIGNED_INT16_VEC2_NV"("0x8FF1") + "GL_UNSIGNED_INT16_VEC3_NV"("0x8FF2") + "GL_UNSIGNED_INT16_VEC4_NV"("0x8FF3") + "GL_UNSIGNED_INT64_VEC2_NV"("0x8FF5") + "GL_UNSIGNED_INT64_VEC3_NV"("0x8FF6") + "GL_UNSIGNED_INT64_VEC4_NV"("0x8FF7") + "glUniform1i64NV"(void, GLint("location"), GLint64EXT("x")) + "glUniform2i64NV"(void, GLint("location"), GLint64EXT("x"), GLint64EXT("y")) + "glUniform3i64NV"(void, GLint("location"), GLint64EXT("x"), GLint64EXT("y"), GLint64EXT("z")) + "glUniform4i64NV"(void, GLint("location"), GLint64EXT("x"), GLint64EXT("y"), GLint64EXT("z"), GLint64EXT("w")) + "glUniform1i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) + "glUniform2i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) + "glUniform3i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) + "glUniform4i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) + "glUniform1ui64NV"(void, GLint("location"), GLuint64EXT("x")) + "glUniform2ui64NV"(void, GLint("location"), GLuint64EXT("x"), GLuint64EXT("y")) + "glUniform3ui64NV"(void, GLint("location"), GLuint64EXT("x"), GLuint64EXT("y"), GLuint64EXT("z")) + "glUniform4ui64NV"( + void, + GLint("location"), + GLuint64EXT("x"), + GLuint64EXT("y"), + GLuint64EXT("z"), + GLuint64EXT("w") + ) + "glUniform1ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) + "glUniform2ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) + "glUniform3ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) + "glUniform4ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) + "glGetUniformi64vNV"(void, GLuint("program"), GLint("location"), address("params", "GLint64EXT *")) + "glGetUniformui64vNV"(void, GLuint("program"), GLint("location"), address("params", "GLuint64EXT *")) + "glProgramUniform1i64NV"(void, GLuint("program"), GLint("location"), GLint64EXT("x")) + "glProgramUniform2i64NV"(void, GLuint("program"), GLint("location"), GLint64EXT("x"), GLint64EXT("y")) + "glProgramUniform3i64NV"( + void, + GLuint("program"), + GLint("location"), + GLint64EXT("x"), + GLint64EXT("y"), + GLint64EXT("z") + ) + "glProgramUniform4i64NV"( + void, + GLuint("program"), + GLint("location"), + GLint64EXT("x"), + GLint64EXT("y"), + GLint64EXT("z"), + GLint64EXT("w") + ) + "glProgramUniform1i64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64EXT *") + ) + "glProgramUniform2i64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64EXT *") + ) + "glProgramUniform3i64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64EXT *") + ) + "glProgramUniform4i64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64EXT *") + ) + "glProgramUniform1ui64NV"(void, GLuint("program"), GLint("location"), GLuint64EXT("x")) + "glProgramUniform2ui64NV"(void, GLuint("program"), GLint("location"), GLuint64EXT("x"), GLuint64EXT("y")) + "glProgramUniform3ui64NV"( + void, + GLuint("program"), + GLint("location"), + GLuint64EXT("x"), + GLuint64EXT("y"), + GLuint64EXT("z") + ) + "glProgramUniform4ui64NV"( + void, + GLuint("program"), + GLint("location"), + GLuint64EXT("x"), + GLuint64EXT("y"), + GLuint64EXT("z"), + GLuint64EXT("w") + ) + "glProgramUniform1ui64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64EXT *") + ) + "glProgramUniform2ui64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64EXT *") + ) + "glProgramUniform3ui64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64EXT *") + ) + "glProgramUniform4ui64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64EXT *") + ) + } + file("InterleavedElements", AMD, "GL_AMD_interleaved_elements") { + "GL_VERTEX_ELEMENT_SWIZZLE_AMD"("0x91A4") + "GL_VERTEX_ID_SWIZZLE_AMD"("0x91A5") + "glVertexAttribParameteriAMD"(void, GLuint("index"), GLenum("pname"), GLint("param")) + } + file("MultiDrawIndirect", AMD, "GL_AMD_multi_draw_indirect") { + "glMultiDrawArraysIndirectAMD"( + void, + GLenum("mode"), + address("indirect", "const void *"), + GLsizei("primcount"), + GLsizei("stride") + ) + "glMultiDrawElementsIndirectAMD"( + void, + GLenum("mode"), + GLenum("type"), + address("indirect", "const void *"), + GLsizei("primcount"), + GLsizei("stride") + ) + } + file("NameGenDelete", AMD, "GL_AMD_name_gen_delete") { + "GL_DATA_BUFFER_AMD"("0x9151") + "GL_PERFORMANCE_MONITOR_AMD"("0x9152") + "GL_QUERY_OBJECT_AMD"("0x9153") + "GL_VERTEX_ARRAY_OBJECT_AMD"("0x9154") + "GL_SAMPLER_OBJECT_AMD"("0x9155") + "glGenNamesAMD"(void, GLenum("identifier"), GLuint("num"), address("names", "GLuint *")) + "glDeleteNamesAMD"(void, GLenum("identifier"), GLuint("num"), address("names", "const GLuint *")) + "glIsNameAMD"(GLboolean, GLenum("identifier"), GLuint("name")) + } + file("OcclusionQueryEvent", AMD, "GL_AMD_occlusion_query_event") { + "GL_OCCLUSION_QUERY_EVENT_MASK_AMD"("0x874F") + "GL_QUERY_DEPTH_PASS_EVENT_BIT_AMD"("0x00000001") + "GL_QUERY_DEPTH_FAIL_EVENT_BIT_AMD"("0x00000002") + "GL_QUERY_STENCIL_FAIL_EVENT_BIT_AMD"("0x00000004") + "GL_QUERY_DEPTH_BOUNDS_FAIL_EVENT_BIT_AMD"("0x00000008") + "GL_QUERY_ALL_EVENT_BITS_AMD"("0xFFFFFFFF") + "glQueryObjectParameteruiAMD"(void, GLenum("target"), GLuint("id"), GLenum("pname"), GLuint("param")) + } + file("PerformanceMonitor", AMD, "GL_AMD_performance_monitor") { + "GL_COUNTER_TYPE_AMD"("0x8BC0") + "GL_COUNTER_RANGE_AMD"("0x8BC1") + "GL_UNSIGNED_INT64_AMD"("0x8BC2") + "GL_PERCENTAGE_AMD"("0x8BC3") + "GL_PERFMON_RESULT_AVAILABLE_AMD"("0x8BC4") + "GL_PERFMON_RESULT_SIZE_AMD"("0x8BC5") + "GL_PERFMON_RESULT_AMD"("0x8BC6") + "glGetPerfMonitorGroupsAMD"( + void, + address("numGroups", "GLint *"), + GLsizei("groupsSize"), + address("groups", "GLuint *") + ) + "glGetPerfMonitorCountersAMD"( + void, + GLuint("group"), + address("numCounters", "GLint *"), + address("maxActiveCounters", "GLint *"), + GLsizei("counterSize"), + address("counters", "GLuint *") + ) + "glGetPerfMonitorGroupStringAMD"( + void, + GLuint("group"), + GLsizei("bufSize"), + address("length", "GLsizei *"), + address("groupString", "GLchar *") + ) + "glGetPerfMonitorCounterStringAMD"( + void, + GLuint("group"), + GLuint("counter"), + GLsizei("bufSize"), + address("length", "GLsizei *"), + address("counterString", "GLchar *") + ) + "glGetPerfMonitorCounterInfoAMD"( + void, + GLuint("group"), + GLuint("counter"), + GLenum("pname"), + address("data", "void *") + ) + "glGenPerfMonitorsAMD"(void, GLsizei("n"), address("monitors", "GLuint *")) + "glDeletePerfMonitorsAMD"(void, GLsizei("n"), address("monitors", "GLuint *")) + "glSelectPerfMonitorCountersAMD"( + void, + GLuint("monitor"), + GLboolean("enable"), + GLuint("group"), + GLint("numCounters"), + address("counterList", "GLuint *") + ) + "glBeginPerfMonitorAMD"(void, GLuint("monitor")) + "glEndPerfMonitorAMD"(void, GLuint("monitor")) + "glGetPerfMonitorCounterDataAMD"( + void, + GLuint("monitor"), + GLenum("pname"), + GLsizei("dataSize"), + address("data", "GLuint *"), + address("bytesWritten", "GLint *") + ) + } + file("PinnedMemory", AMD, "GL_AMD_pinned_memory", "GL_EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD" to "0x9160") + file( + "QueryBufferObject", AMD, "GL_AMD_query_buffer_object", + "GL_QUERY_BUFFER_AMD" to "0x9192", + "GL_QUERY_BUFFER_BINDING_AMD" to "0x9193", + "GL_QUERY_RESULT_NO_WAIT_AMD" to "0x9194" + ) + file("SamplePositions", AMD, "GL_AMD_sample_positions") { + "glSetMultisamplefvAMD"(void, GLenum("pname"), GLuint("index"), address("val", "const GLfloat *")) + } + file("SparseTexture", AMD, "GL_AMD_sparse_texture") { + "GL_VIRTUAL_PAGE_SIZE_X_AMD"("0x9195") + "GL_VIRTUAL_PAGE_SIZE_Y_AMD"("0x9196") + "GL_VIRTUAL_PAGE_SIZE_Z_AMD"("0x9197") + "GL_MAX_SPARSE_TEXTURE_SIZE_AMD"("0x9198") + "GL_MAX_SPARSE_3D_TEXTURE_SIZE_AMD"("0x9199") + "GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS"("0x919A") + "GL_MIN_SPARSE_LEVEL_AMD"("0x919B") + "GL_MIN_LOD_WARNING_AMD"("0x919C") + "GL_TEXTURE_STORAGE_SPARSE_BIT_AMD"("0x00000001") + "glTexStorageSparseAMD"( + void, + GLenum("target"), + GLenum("internalFormat"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLsizei("layers"), + GLbitfield("flags") + ) + "glTextureStorageSparseAMD"( + void, + GLuint("texture"), + GLenum("target"), + GLenum("internalFormat"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLsizei("layers"), + GLbitfield("flags") + ) + } + file("StencilOperationExtended", AMD, "GL_AMD_stencil_operation_extended") { + "GL_SET_AMD"("0x874A") + "GL_REPLACE_VALUE_AMD"("0x874B") + "GL_STENCIL_OP_VALUE_AMD"("0x874C") + "GL_STENCIL_BACK_OP_VALUE_AMD"("0x874D") + "glStencilOpValueAMD"(void, GLenum("face"), GLuint("value")) + } + file("TransformFeedback4", AMD, "GL_AMD_transform_feedback4", "GL_STREAM_RASTERIZATION_AMD" to "0x91A0") + file("VertexShaderTessellator", AMD, "GL_AMD_vertex_shader_tessellator") { + "GL_SAMPLER_BUFFER_AMD"("0x9001") + "GL_INT_SAMPLER_BUFFER_AMD"("0x9002") + "GL_UNSIGNED_INT_SAMPLER_BUFFER_AMD"("0x9003") + "GL_TESSELLATION_MODE_AMD"("0x9004") + "GL_TESSELLATION_FACTOR_AMD"("0x9005") + "GL_DISCRETE_AMD"("0x9006") + "GL_CONTINUOUS_AMD"("0x9007") + "glTessellationFactorAMD"(void, GLfloat("factor")) + "glTessellationModeAMD"(void, GLenum("mode")) + } +} -fun apple() {} +fun apple() { + file("AuxDepthStencil", APPLE, "GL_APPLE_aux_depth_stencil", "GL_AUX_DEPTH_STENCIL_APPLE" to "0x8A14") + file("ClientStorage", APPLE, "GL_APPLE_client_storage", "GL_UNPACK_CLIENT_STORAGE_APPLE" to "0x85B2") + file("ElementArray", APPLE, "GL_APPLE_element_array") { + "GL_ELEMENT_ARRAY_APPLE"("0x8A0C") + "GL_ELEMENT_ARRAY_TYPE_APPLE"("0x8A0D") + "GL_ELEMENT_ARRAY_POINTER_APPLE"("0x8A0E") + "glElementPointerAPPLE"(void, GLenum("type"), address("pointer", "const void *")) + "glDrawElementArrayAPPLE"(void, GLenum("mode"), GLint("first"), GLsizei("count")) + "glDrawRangeElementArrayAPPLE"( + void, + GLenum("mode"), + GLuint("start"), + GLuint("end"), + GLint("first"), + GLsizei("count") + ) + "glMultiDrawElementArrayAPPLE"( + void, + GLenum("mode"), + address("first", "const GLint *"), + address("count", "const GLsizei *"), + GLsizei("primcount") + ) + "glMultiDrawRangeElementArrayAPPLE"( + void, + GLenum("mode"), + GLuint("start"), + GLuint("end"), + address("first", "const GLint *"), + address("count", "const GLsizei *"), + GLsizei("primcount") + ) + } + file("Fence", APPLE, "GL_APPLE_fence") { + "GL_DRAW_PIXELS_APPLE"("0x8A0A") + "GL_FENCE_APPLE"("0x8A0B") + "glGenFencesAPPLE"(void, GLsizei("n"), address("fences", "GLuint *")) + "glDeleteFencesAPPLE"(void, GLsizei("n"), address("fences", "const GLuint *")) + "glSetFenceAPPLE"(void, GLuint("fence")) + "glIsFenceAPPLE"(GLboolean, GLuint("fence")) + "glTestFenceAPPLE"(GLboolean, GLuint("fence")) + "glFinishFenceAPPLE"(void, GLuint("fence")) + "glTestObjectAPPLE"(GLboolean, GLenum("object"), GLuint("name")) + "glFinishObjectAPPLE"(void, GLenum("object"), GLint("name")) + } + file( + "FloatPixels", APPLE, "GL_APPLE_float_pixels", + "GL_HALF_APPLE" to "0x140B", + "GL_RGBA_FLOAT32_APPLE" to "0x8814", + "GL_RGB_FLOAT32_APPLE" to "0x8815", + "GL_ALPHA_FLOAT32_APPLE" to "0x8816", + "GL_INTENSITY_FLOAT32_APPLE" to "0x8817", + "GL_LUMINANCE_FLOAT32_APPLE" to "0x8818", + "GL_LUMINANCE_ALPHA_FLOAT32_APPLE" to "0x8819", + "GL_RGBA_FLOAT16_APPLE" to "0x881A", + "GL_RGB_FLOAT16_APPLE" to "0x881B", + "GL_ALPHA_FLOAT16_APPLE" to "0x881C", + "GL_INTENSITY_FLOAT16_APPLE" to "0x881D", + "GL_LUMINANCE_FLOAT16_APPLE" to "0x881E", + "GL_LUMINANCE_ALPHA_FLOAT16_APPLE" to "0x881F", + "GL_COLOR_FLOAT_APPLE" to "0x8A0F" + ) + file("FlushBufferRange", APPLE, "GL_APPLE_flush_buffer_range") { + "GL_BUFFER_SERIALIZED_MODIFY_APPLE"("0x8A12") + "GL_BUFFER_FLUSHING_UNMAP_APPLE"("0x8A13") + "glBufferParameteriAPPLE"(void, GLenum("target"), GLenum("pname"), GLint("param")) + "glFlushMappedBufferRangeAPPLE"(void, GLenum("target"), GLintptr("offset"), GLsizeiptr("size")) + } + file("ObjectPurgeable", APPLE, "GL_APPLE_object_purgeable") { + "GL_BUFFER_OBJECT_APPLE"("0x85B3") + "GL_RELEASED_APPLE"("0x8A19") + "GL_VOLATILE_APPLE"("0x8A1A") + "GL_RETAINED_APPLE"("0x8A1B") + "GL_UNDEFINED_APPLE"("0x8A1C") + "GL_PURGEABLE_APPLE"("0x8A1D") + "glObjectPurgeableAPPLE"(GLenum, GLenum("objectType"), GLuint("name"), GLenum("option")) + "glObjectUnpurgeableAPPLE"(GLenum, GLenum("objectType"), GLuint("name"), GLenum("option")) + "glGetObjectParameterivAPPLE"( + void, + GLenum("objectType"), + GLuint("name"), + GLenum("pname"), + address("params", "GLint *") + ) + } + file( + "Rgb422", APPLE, "GL_APPLE_rgb_422", + "GL_RGB_422_APPLE" to "0x8A1F", + "GL_UNSIGNED_SHORT_8_8_APPLE" to "0x85BA", + "GL_UNSIGNED_SHORT_8_8_REV_APPLE" to "0x85BB", + "GL_RGB_RAW_422_APPLE" to "0x8A51" + ) + file( + "RowBytes", APPLE, "GL_APPLE_row_bytes", + "GL_PACK_ROW_BYTES_APPLE" to "0x8A15", + "GL_UNPACK_ROW_BYTES_APPLE" to "0x8A16" + ) + file("SpecularVector", APPLE, "GL_APPLE_specular_vector", "GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE" to "0x85B0") + file("TextureRange", APPLE, "GL_APPLE_texture_range") { + "GL_TEXTURE_RANGE_LENGTH_APPLE"("0x85B7") + "GL_TEXTURE_RANGE_POINTER_APPLE"("0x85B8") + "GL_TEXTURE_STORAGE_HINT_APPLE"("0x85BC") + "GL_STORAGE_PRIVATE_APPLE"("0x85BD") + "GL_STORAGE_CACHED_APPLE"("0x85BE") + "GL_STORAGE_SHARED_APPLE"("0x85BF") + "glTextureRangeAPPLE"(void, GLenum("target"), GLsizei("length"), address("pointer", "const void *")) + "glGetTexParameterPointervAPPLE"(void, GLenum("target"), GLenum("pname"), address("params", "void **")) + } + file("TransformHint", APPLE, "GL_APPLE_transform_hint", "GL_TRANSFORM_HINT_APPLE" to "0x85B1") + file("VertexArrayObject", APPLE, "GL_APPLE_vertex_array_object") { + "GL_VERTEX_ARRAY_BINDING_APPLE"("0x85B5") + "glBindVertexArrayAPPLE"(void, GLuint("array")) + "glDeleteVertexArraysAPPLE"(void, GLsizei("n"), address("arrays", "const GLuint *")) + "glGenVertexArraysAPPLE"(void, GLsizei("n"), address("arrays", "GLuint *")) + "glIsVertexArrayAPPLE"(GLboolean, GLuint("array")) + } + file("VertexArrayRange", APPLE, "GL_APPLE_vertex_array_range") { + "GL_VERTEX_ARRAY_RANGE_APPLE"("0x851D") + "GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE"("0x851E") + "GL_VERTEX_ARRAY_STORAGE_HINT_APPLE"("0x851F") + "GL_VERTEX_ARRAY_RANGE_POINTER_APPLE"("0x8521") + "GL_STORAGE_CLIENT_APPLE"("0x85B4") + "glVertexArrayRangeAPPLE"(void, GLsizei("length"), address("pointer", "void *")) + "glFlushVertexArrayRangeAPPLE"(void, GLsizei("length"), address("pointer", "void *")) + "glVertexArrayParameteriAPPLE"(void, GLenum("pname"), GLint("param")) + } + file("VertexProgramEvaluators", APPLE, "GL_APPLE_vertex_program_evaluators") { + "GL_VERTEX_ATTRIB_MAP1_APPLE"("0x8A00") + "GL_VERTEX_ATTRIB_MAP2_APPLE"("0x8A01") + "GL_VERTEX_ATTRIB_MAP1_SIZE_APPLE"("0x8A02") + "GL_VERTEX_ATTRIB_MAP1_COEFF_APPLE"("0x8A03") + "GL_VERTEX_ATTRIB_MAP1_ORDER_APPLE"("0x8A04") + "GL_VERTEX_ATTRIB_MAP1_DOMAIN_APPLE"("0x8A05") + "GL_VERTEX_ATTRIB_MAP2_SIZE_APPLE"("0x8A06") + "GL_VERTEX_ATTRIB_MAP2_COEFF_APPLE"("0x8A07") + "GL_VERTEX_ATTRIB_MAP2_ORDER_APPLE"("0x8A08") + "GL_VERTEX_ATTRIB_MAP2_DOMAIN_APPLE"("0x8A09") + "glEnableVertexAttribAPPLE"(void, GLuint("index"), GLenum("pname")) + "glDisableVertexAttribAPPLE"(void, GLuint("index"), GLenum("pname")) + "glIsVertexAttribEnabledAPPLE"(GLboolean, GLuint("index"), GLenum("pname")) + "glMapVertexAttrib1dAPPLE"( + void, + GLuint("index"), + GLuint("size"), + GLdouble("u1"), + GLdouble("u2"), + GLint("stride"), + GLint("order"), + address("points", "const GLdouble *") + ) + "glMapVertexAttrib1fAPPLE"( + void, + GLuint("index"), + GLuint("size"), + GLfloat("u1"), + GLfloat("u2"), + GLint("stride"), + GLint("order"), + address("points", "const GLfloat *") + ) + "glMapVertexAttrib2dAPPLE"( + void, + GLuint("index"), + GLuint("size"), + GLdouble("u1"), + GLdouble("u2"), + GLint("ustride"), + GLint("uorder"), + GLdouble("v1"), + GLdouble("v2"), + GLint("vstride"), + GLint("vorder"), + address("points", "const GLdouble *") + ) + "glMapVertexAttrib2fAPPLE"( + void, + GLuint("index"), + GLuint("size"), + GLfloat("u1"), + GLfloat("u2"), + GLint("ustride"), + GLint("uorder"), + GLfloat("v1"), + GLfloat("v2"), + GLint("vstride"), + GLint("vorder"), + address("points", "const GLfloat *") + ) + } + file("Ycbcr422", APPLE, "GL_APPLE_ycbcr_422", "GL_YCBCR_422_APPLE" to "0x85B9") +} fun ati() {} From 7e485ab7e07917d3a5d9f6015fff0010ebd31f24 Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Sat, 23 Sep 2023 22:30:09 +0800 Subject: [PATCH 06/20] [OpenGL] Update generator GREMEDY, HP, IBM, INGR, INTEL, MESA, OVR & PGI --- .../overrungl/opengl/OpenGLGenerator.kt | 415 +++++++++++++++++- 1 file changed, 407 insertions(+), 8 deletions(-) diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt index fcd31f44..0a5743f7 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt @@ -1976,25 +1976,416 @@ fun ati() {} fun ext() {} -fun gremedy() {} +fun gremedy() { + file("FrameTerminator", GREMEDY, "GL_GREMEDY_frame_terminator") { + "glFrameTerminatorGREMEDY"(void) + } + file("StringMarker", GREMEDY, "GL_GREMEDY_string_marker") { + "glStringMarkerGREMEDY"(void, GLsizei("len"), address("string", "const void *")) + } +} -fun hp() {} +fun hp() { + file( + "ConvolutionBorderModes", HP, "GL_HP_convolution_border_modes", + "GL_IGNORE_BORDER_HP" to "0x8150", + "GL_CONSTANT_BORDER_HP" to "0x8151", + "GL_REPLICATE_BORDER_HP" to "0x8153", + "GL_CONVOLUTION_BORDER_COLOR_HP" to "0x8154" + ) + file("ImageTransform", HP, "GL_HP_image_transform") { + "GL_IMAGE_SCALE_X_HP"("0x8155") + "GL_IMAGE_SCALE_Y_HP"("0x8156") + "GL_IMAGE_TRANSLATE_X_HP"("0x8157") + "GL_IMAGE_TRANSLATE_Y_HP"("0x8158") + "GL_IMAGE_ROTATE_ANGLE_HP"("0x8159") + "GL_IMAGE_ROTATE_ORIGIN_X_HP"("0x815A") + "GL_IMAGE_ROTATE_ORIGIN_Y_HP"("0x815B") + "GL_IMAGE_MAG_FILTER_HP"("0x815C") + "GL_IMAGE_MIN_FILTER_HP"("0x815D") + "GL_IMAGE_CUBIC_WEIGHT_HP"("0x815E") + "GL_CUBIC_HP"("0x815F") + "GL_AVERAGE_HP"("0x8160") + "GL_IMAGE_TRANSFORM_2D_HP"("0x8161") + "GL_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP"("0x8162") + "GL_PROXY_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP"("0x8163") + "glImageTransformParameteriHP"(void, GLenum("target"), GLenum("pname"), GLint("param")) + "glImageTransformParameterfHP"(void, GLenum("target"), GLenum("pname"), GLfloat("param")) + "glImageTransformParameterivHP"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) + "glImageTransformParameterfvHP"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfloat *")) + "glGetImageTransformParameterivHP"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetImageTransformParameterfvHP"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + } + file( + "OcclusionTest", HP, "GL_HP_occlusion_test", + "GL_OCCLUSION_TEST_HP" to "0x8165", + "GL_OCCLUSION_TEST_RESULT_HP" to "0x8166" + ) + file( + "TextureLighting", HP, "GL_HP_texture_lighting", + "GL_TEXTURE_LIGHTING_MODE_HP" to "0x8167", + "GL_TEXTURE_POST_SPECULAR_HP" to "0x8168", + "GL_TEXTURE_PRE_SPECULAR_HP" to "0x8169" + ) +} -fun ibm() {} +fun ibm() { + file("CullVertex", IBM, "GL_IBM_cull_vertex", "GL_CULL_VERTEX_IBM" to "103050") + file("MultimodeDrawArrays", IBM, "GL_IBM_multimode_draw_arrays") { + "glMultiModeDrawArraysIBM"( + void, + address("mode", "const GLenum *"), + address("first", "const GLint *"), + address("count", "const GLsizei *"), + GLsizei("primcount"), + GLint("modestride") + ) + "glMultiModeDrawElementsIBM"( + void, + address("mode", "const GLenum *"), + address("count", "const GLsizei *"), + GLenum("type"), + address("indices", "const void *const*"), + GLsizei("primcount"), + GLint("modestride") + ) + } + file("RasterposClip", IBM, "GL_IBM_rasterpos_clip", "GL_RASTER_POSITION_UNCLIPPED_IBM" to "0x19262") + file("StaticData", IBM, "GL_IBM_static_data") { + "GL_ALL_STATIC_DATA_IBM"("103060") + "GL_STATIC_VERTEX_ARRAY_IBM"("103061") + "glFlushStaticDataIBM"(void, GLenum("target")) + } + file("TextureMirroredRepeat", IBM, "GL_IBM_texture_mirrored_repeat", "GL_MIRRORED_REPEAT_IBM" to "0x8370") + file("VertexArrayLists", IBM, "GL_IBM_vertex_array_lists") { + "GL_VERTEX_ARRAY_LIST_IBM"("103070") + "GL_NORMAL_ARRAY_LIST_IBM"("103071") + "GL_COLOR_ARRAY_LIST_IBM"("103072") + "GL_INDEX_ARRAY_LIST_IBM"("103073") + "GL_TEXTURE_COORD_ARRAY_LIST_IBM"("103074") + "GL_EDGE_FLAG_ARRAY_LIST_IBM"("103075") + "GL_FOG_COORDINATE_ARRAY_LIST_IBM"("103076") + "GL_SECONDARY_COLOR_ARRAY_LIST_IBM"("103077") + "GL_VERTEX_ARRAY_LIST_STRIDE_IBM"("103080") + "GL_NORMAL_ARRAY_LIST_STRIDE_IBM"("103081") + "GL_COLOR_ARRAY_LIST_STRIDE_IBM"("103082") + "GL_INDEX_ARRAY_LIST_STRIDE_IBM"("103083") + "GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM"("103084") + "GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM"("103085") + "GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM"("103086") + "GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM"("103087") + "glColorPointerListIBM"( + void, + GLint("size"), + GLenum("type"), + GLint("stride"), + address("pointer", "const void **"), + GLint("ptrstride") + ) + "glSecondaryColorPointerListIBM"( + void, + GLint("size"), + GLenum("type"), + GLint("stride"), + address("pointer", "const void **"), + GLint("ptrstride") + ) + "glEdgeFlagPointerListIBM"(void, GLint("stride"), address("pointer", "const GLboolean **"), GLint("ptrstride")) + "glFogCoordPointerListIBM"( + void, + GLenum("type"), + GLint("stride"), + address("pointer", "const void **"), + GLint("ptrstride") + ) + "glIndexPointerListIBM"( + void, + GLenum("type"), + GLint("stride"), + address("pointer", "const void **"), + GLint("ptrstride") + ) + "glNormalPointerListIBM"( + void, + GLenum("type"), + GLint("stride"), + address("pointer", "const void **"), + GLint("ptrstride") + ) + "glTexCoordPointerListIBM"( + void, + GLint("size"), + GLenum("type"), + GLint("stride"), + address("pointer", "const void **"), + GLint("ptrstride") + ) + "glVertexPointerListIBM"( + void, + GLint("size"), + GLenum("type"), + GLint("stride"), + address("pointer", "const void **"), + GLint("ptrstride") + ) + } +} -fun ingr() {} +fun ingr() { + file("BlendFuncSeparate", INGR, "GL_INGR_blend_func_separate") { + "glBlendFuncSeparateINGR"( + void, + GLenum("sfactorRGB"), + GLenum("dfactorRGB"), + GLenum("sfactorAlpha"), + GLenum("dfactorAlpha") + ) + } + file( + "ColorClamp", INGR, "GL_INGR_color_clamp", + "GL_RED_MIN_CLAMP_INGR" to "0x8560", + "GL_GREEN_MIN_CLAMP_INGR" to "0x8561", + "GL_BLUE_MIN_CLAMP_INGR" to "0x8562", + "GL_ALPHA_MIN_CLAMP_INGR" to "0x8563", + "GL_RED_MAX_CLAMP_INGR" to "0x8564", + "GL_GREEN_MAX_CLAMP_INGR" to "0x8565", + "GL_BLUE_MAX_CLAMP_INGR" to "0x8566", + "GL_ALPHA_MAX_CLAMP_INGR" to "0x8567" + ) + file("InterlaceRead", INGR, "GL_INGR_interlace_read", "GL_INTERLACE_READ_INGR" to "0x8568") +} -fun intel() {} +fun intel() { + file("BlackholeRender", INTEL, "GL_INTEL_blackhole_render", "GL_BLACKHOLE_RENDER_INTEL" to "0x83FC") + file("ConservativeRasterization", INTEL, "GL_INTEL_conservative_rasterization", "GL_CONSERVATIVE_RASTERIZATION_INTEL" to "0x83FE") + file("FramebufferCMAA", INTEL, "GL_INTEL_framebuffer_CMAA") { + "glApplyFramebufferAttachmentCMAAINTEL"(void) + } + file("MapTexture", INTEL, "GL_INTEL_map_texture") { + "GL_TEXTURE_MEMORY_LAYOUT_INTEL"("0x83FF") + "GL_LAYOUT_DEFAULT_INTEL"("0") + "GL_LAYOUT_LINEAR_INTEL"("1") + "GL_LAYOUT_LINEAR_CPU_CACHED_INTEL"("2") + "glSyncTextureINTEL"(void, GLuint("texture")) + "glUnmapTexture2DINTEL"(void, GLuint("texture"), GLint("level")) + "glMapTexture2DINTEL"( + address, + GLuint("texture"), + GLint("level"), + GLbitfield("access"), + address("stride", "GLint *"), + address("layout", "GLenum *"), + nativeType = "void*" + ) + } + file("ParallelArrays", INTEL, "GL_INTEL_parallel_arrays") { + "GL_PARALLEL_ARRAYS_INTEL"("0x83F4") + "GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL"("0x83F5") + "GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL"("0x83F6") + "GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL"("0x83F7") + "GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL"("0x83F8") + "glVertexPointervINTEL"(void, GLint("size"), GLenum("type"), address("pointer", "const void **")) + "glNormalPointervINTEL"(void, GLenum("type"), address("pointer", "const void **")) + "glColorPointervINTEL"(void, GLint("size"), GLenum("type"), address("pointer", "const void **")) + "glTexCoordPointervINTEL"(void, GLint("size"), GLenum("type"), address("pointer", "const void **")) + } + file("PerformanceQuery", INTEL, "GL_INTEL_performance_query") { + "GL_PERFQUERY_SINGLE_CONTEXT_INTEL"("0x00000000") + "GL_PERFQUERY_GLOBAL_CONTEXT_INTEL"("0x00000001") + "GL_PERFQUERY_WAIT_INTEL"("0x83FB") + "GL_PERFQUERY_FLUSH_INTEL"("0x83FA") + "GL_PERFQUERY_DONOT_FLUSH_INTEL"("0x83F9") + "GL_PERFQUERY_COUNTER_EVENT_INTEL"("0x94F0") + "GL_PERFQUERY_COUNTER_DURATION_NORM_INTEL"("0x94F1") + "GL_PERFQUERY_COUNTER_DURATION_RAW_INTEL"("0x94F2") + "GL_PERFQUERY_COUNTER_THROUGHPUT_INTEL"("0x94F3") + "GL_PERFQUERY_COUNTER_RAW_INTEL"("0x94F4") + "GL_PERFQUERY_COUNTER_TIMESTAMP_INTEL"("0x94F5") + "GL_PERFQUERY_COUNTER_DATA_UINT32_INTEL"("0x94F8") + "GL_PERFQUERY_COUNTER_DATA_UINT64_INTEL"("0x94F9") + "GL_PERFQUERY_COUNTER_DATA_FLOAT_INTEL"("0x94FA") + "GL_PERFQUERY_COUNTER_DATA_DOUBLE_INTEL"("0x94FB") + "GL_PERFQUERY_COUNTER_DATA_BOOL32_INTEL"("0x94FC") + "GL_PERFQUERY_QUERY_NAME_LENGTH_MAX_INTEL"("0x94FD") + "GL_PERFQUERY_COUNTER_NAME_LENGTH_MAX_INTEL"("0x94FE") + "GL_PERFQUERY_COUNTER_DESC_LENGTH_MAX_INTEL"("0x94FF") + "GL_PERFQUERY_GPA_EXTENDED_COUNTERS_INTEL"("0x9500") + "glBeginPerfQueryINTEL"(void, GLuint("queryHandle")) + "glCreatePerfQueryINTEL"(void, GLuint("queryId"), address("queryHandle", "GLuint *")) + "glDeletePerfQueryINTEL"(void, GLuint("queryHandle")) + "glEndPerfQueryINTEL"(void, GLuint("queryHandle")) + "glGetFirstPerfQueryIdINTEL"(void, address("queryId", "GLuint *")) + "glGetNextPerfQueryIdINTEL"(void, GLuint("queryId"), address("nextQueryId", "GLuint *")) + "glGetPerfCounterInfoINTEL"( + void, + GLuint("queryId"), + GLuint("counterId"), + GLuint("counterNameLength"), + address("counterName", "GLchar *"), + GLuint("counterDescLength"), + address("counterDesc", "GLchar *"), + address("counterOffset", "GLuint *"), + address("counterDataSize", "GLuint *"), + address("counterTypeEnum", "GLuint *"), + address("counterDataTypeEnum", "GLuint *"), + address("rawCounterMaxValue", "GLuint64 *") + ) + "glGetPerfQueryDataINTEL"( + void, + GLuint("queryHandle"), + GLuint("flags"), + GLsizei("dataSize"), + address("data", "void *"), + address("bytesWritten", "GLuint *") + ) + "glGetPerfQueryIdByNameINTEL"(void, address("queryName", "GLchar *"), address("queryId", "GLuint *")) + "glGetPerfQueryInfoINTEL"( + void, + GLuint("queryId"), + GLuint("queryNameLength"), + address("queryName", "GLchar *"), + address("dataSize", "GLuint *"), + address("noCounters", "GLuint *"), + address("noInstances", "GLuint *"), + address("capsMask", "GLuint *") + ) + } +} -fun mesa() {} +fun mesa() { + file( + "TextureStack", MESAX, "GL_MESAX_texture_stack", + "GL_TEXTURE_1D_STACK_MESAX" to "0x8759", + "GL_TEXTURE_2D_STACK_MESAX" to "0x875A", + "GL_PROXY_TEXTURE_1D_STACK_MESAX" to "0x875B", + "GL_PROXY_TEXTURE_2D_STACK_MESAX" to "0x875C", + "GL_TEXTURE_1D_STACK_BINDING_MESAX" to "0x875D", + "GL_TEXTURE_2D_STACK_BINDING_MESAX" to "0x875E" + ) + file("FramebufferFlipX", MESA, "GL_MESA_framebuffer_flip_x", "GL_FRAMEBUFFER_FLIP_X_MESA" to "0x8BBC") + file("FramebufferFlipY", MESA, "GL_MESA_framebuffer_flip_y") { + "GL_FRAMEBUFFER_FLIP_Y_MESA"("0x8BBB") + "glFramebufferParameteriMESA"(void, GLenum("target"), GLenum("pname"), GLint("param")) + "glGetFramebufferParameterivMESA"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + } + file("FramebufferSwapXY", MESA, "GL_MESA_framebuffer_swap_xy", "GL_FRAMEBUFFER_SWAP_XY_MESA" to "0x8BBD") + file("PackInvert", MESA, "GL_MESA_pack_invert", "GL_PACK_INVERT_MESA" to "0x8758") + file("ProgramBinaryFormats", MESA, "GL_MESA_program_binary_formats", "GL_PROGRAM_BINARY_FORMAT_MESA" to "0x875F") + file("ResizeBuffers", MESA, "GL_MESA_resize_buffers") { + "glResizeBuffersMESA"(void) + } + file( + "TileRasterOrder", MESA, "GL_MESA_tile_raster_order", + "GL_TILE_RASTER_ORDER_FIXED_MESA" to "0x8BB8", + "GL_TILE_RASTER_ORDER_INCREASING_X_MESA" to "0x8BB9", + "GL_TILE_RASTER_ORDER_INCREASING_Y_MESA" to "0x8BBA" + ) + file("WindowPos", MESA, "GL_MESA_window_pos") { + "glWindowPos2dMESA"(void, GLdouble("x"), GLdouble("y")) + "glWindowPos2dvMESA"(void, address("v", "const GLdouble *")) + "glWindowPos2fMESA"(void, GLfloat("x"), GLfloat("y")) + "glWindowPos2fvMESA"(void, address("v", "const GLfloat *")) + "glWindowPos2iMESA"(void, GLint("x"), GLint("y")) + "glWindowPos2ivMESA"(void, address("v", "const GLint *")) + "glWindowPos2sMESA"(void, GLshort("x"), GLshort("y")) + "glWindowPos2svMESA"(void, address("v", "const GLshort *")) + "glWindowPos3dMESA"(void, GLdouble("x"), GLdouble("y"), GLdouble("z")) + "glWindowPos3dvMESA"(void, address("v", "const GLdouble *")) + "glWindowPos3fMESA"(void, GLfloat("x"), GLfloat("y"), GLfloat("z")) + "glWindowPos3fvMESA"(void, address("v", "const GLfloat *")) + "glWindowPos3iMESA"(void, GLint("x"), GLint("y"), GLint("z")) + "glWindowPos3ivMESA"(void, address("v", "const GLint *")) + "glWindowPos3sMESA"(void, GLshort("x"), GLshort("y"), GLshort("z")) + "glWindowPos3svMESA"(void, address("v", "const GLshort *")) + "glWindowPos4dMESA"(void, GLdouble("x"), GLdouble("y"), GLdouble("z"), GLdouble("w")) + "glWindowPos4dvMESA"(void, address("v", "const GLdouble *")) + "glWindowPos4fMESA"(void, GLfloat("x"), GLfloat("y"), GLfloat("z"), GLfloat("w")) + "glWindowPos4fvMESA"(void, address("v", "const GLfloat *")) + "glWindowPos4iMESA"(void, GLint("x"), GLint("y"), GLint("z"), GLint("w")) + "glWindowPos4ivMESA"(void, address("v", "const GLint *")) + "glWindowPos4sMESA"(void, GLshort("x"), GLshort("y"), GLshort("z"), GLshort("w")) + "glWindowPos4svMESA"(void, address("v", "const GLshort *")) + } + file( + "YcbcrTexture", MESA, "GL_MESA_ycbcr_texture", + "GL_UNSIGNED_SHORT_8_8_MESA" to "0x85BA", + "GL_UNSIGNED_SHORT_8_8_REV_MESA" to "0x85BB", + "GL_YCBCR_MESA" to "0x8757" + ) +} fun nv() {} fun oml() {} -fun ovr() {} +fun ovr() { + file("Multiview", OVR, "GL_OVR_multiview") { + "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR"("0x9630") + "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR"("0x9632") + "GL_MAX_VIEWS_OVR"("0x9631") + "GL_FRAMEBUFFER_INCOMPLETE_VIEW_TARGETS_OVR"("0x9633") + "glFramebufferTextureMultiviewOVR"( + void, + GLenum("target"), + GLenum("attachment"), + GLuint("texture"), + GLint("level"), + GLint("baseViewIndex"), + GLsizei("numViews") + ) + } +} -fun pgi() {} +fun pgi() { + file("MiscHints", PGI, "GL_PGI_misc_hints") { + "GL_PREFER_DOUBLEBUFFER_HINT_PGI"("0x1A1F8") + "GL_CONSERVE_MEMORY_HINT_PGI"("0x1A1FD") + "GL_RECLAIM_MEMORY_HINT_PGI"("0x1A1FE") + "GL_NATIVE_GRAPHICS_HANDLE_PGI"("0x1A202") + "GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI"("0x1A203") + "GL_NATIVE_GRAPHICS_END_HINT_PGI"("0x1A204") + "GL_ALWAYS_FAST_HINT_PGI"("0x1A20C") + "GL_ALWAYS_SOFT_HINT_PGI"("0x1A20D") + "GL_ALLOW_DRAW_OBJ_HINT_PGI"("0x1A20E") + "GL_ALLOW_DRAW_WIN_HINT_PGI"("0x1A20F") + "GL_ALLOW_DRAW_FRG_HINT_PGI"("0x1A210") + "GL_ALLOW_DRAW_MEM_HINT_PGI"("0x1A211") + "GL_STRICT_DEPTHFUNC_HINT_PGI"("0x1A216") + "GL_STRICT_LIGHTING_HINT_PGI"("0x1A217") + "GL_STRICT_SCISSOR_HINT_PGI"("0x1A218") + "GL_FULL_STIPPLE_HINT_PGI"("0x1A219") + "GL_CLIP_NEAR_HINT_PGI"("0x1A220") + "GL_CLIP_FAR_HINT_PGI"("0x1A221") + "GL_WIDE_LINE_HINT_PGI"("0x1A222") + "GL_BACK_NORMALS_HINT_PGI"("0x1A223") + "glHintPGI"(void, GLenum("target"), GLint("mode")) + } + file( + "VertexHints", PGI, "GL_PGI_vertex_hints", + "GL_VERTEX_DATA_HINT_PGI" to "0x1A22A", + "GL_VERTEX_CONSISTENT_HINT_PGI" to "0x1A22B", + "GL_MATERIAL_SIDE_HINT_PGI" to "0x1A22C", + "GL_MAX_VERTEX_HINT_PGI" to "0x1A22D", + "GL_COLOR3_BIT_PGI" to "0x00010000", + "GL_COLOR4_BIT_PGI" to "0x00020000", + "GL_EDGEFLAG_BIT_PGI" to "0x00040000", + "GL_INDEX_BIT_PGI" to "0x00080000", + "GL_MAT_AMBIENT_BIT_PGI" to "0x00100000", + "GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI" to "0x00200000", + "GL_MAT_DIFFUSE_BIT_PGI" to "0x00400000", + "GL_MAT_EMISSION_BIT_PGI" to "0x00800000", + "GL_MAT_COLOR_INDEXES_BIT_PGI" to "0x01000000", + "GL_MAT_SHININESS_BIT_PGI" to "0x02000000", + "GL_MAT_SPECULAR_BIT_PGI" to "0x04000000", + "GL_NORMAL_BIT_PGI" to "0x08000000", + "GL_TEXCOORD1_BIT_PGI" to "0x10000000", + "GL_TEXCOORD2_BIT_PGI" to "0x20000000", + "GL_TEXCOORD3_BIT_PGI" to "0x40000000", + "GL_TEXCOORD4_BIT_PGI" to "0x80000000", + "GL_VERTEX23_BIT_PGI" to "0x00000004", + "GL_VERTEX4_BIT_PGI" to "0x00000008" + ) +} fun rend() {} @@ -2380,8 +2771,16 @@ fun glExtCaps() { import overrungl.opengl.ext.*; import overrungl.opengl.ext.arb.*; import overrungl.opengl.ext.khr.*; + import overrungl.opengl.ext.oes.*; import overrungl.opengl.ext.amd.*; import overrungl.opengl.ext.apple.*; + //import overrungl.opengl.ext.ati.*; + //import overrungl.opengl.ext.ext.*; + import overrungl.opengl.ext.ibm.*; + import overrungl.opengl.ext.intel.*; + import overrungl.opengl.ext.mesa.*; + //import overrungl.opengl.ext.nv.*; + //import overrungl.opengl.ext.sgi.*; import overrungl.opengl.ext.sun.*; import java.lang.invoke.MethodHandle; From f73af888f2e2a4cdead1765a84e4590a8d8fa106 Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Sat, 23 Sep 2023 22:52:11 +0800 Subject: [PATCH 07/20] [OpenGL] Generate files --- .../overrungl/opengl/OpenGLGenerator.kt | 410 ++++----- .../main/java/overrungl/opengl/GLExtCaps.java | 807 ++-------------- .../opengl/ext/GL3DFXMultisample.java | 35 + .../overrungl/opengl/ext/GL3DFXTbuffer.java | 29 +- .../ext/GL3DFXTextureCompressionFXT1.java | 33 + .../opengl/ext/GLGREMEDYFrameTerminator.java | 29 +- .../opengl/ext/GLGREMEDYStringMarker.java | 33 +- .../ext/GLHPConvolutionBorderModes.java | 35 + .../opengl/ext/GLHPImageTransform.java | 130 ++- .../opengl/ext/GLHPOcclusionTest.java | 33 + .../opengl/ext/GLHPTextureLighting.java | 34 + .../opengl/ext/GLIBMMultimodeDrawArrays.java | 75 -- .../opengl/ext/GLIBMVertexArrayLists.java | 117 --- .../opengl/ext/GLINGRBlendFuncSeparate.java | 31 +- .../opengl/ext/GLINGRColorClamp.java | 39 + .../opengl/ext/GLINGRInterlaceRead.java | 32 + .../opengl/ext/GLINTELMapTexture.java | 78 -- .../opengl/ext/GLINTELParallelArrays.java | 78 -- .../opengl/ext/GLINTELPerformanceQuery.java | 250 ----- .../opengl/ext/GLMESAFramebufferFlipY.java | 82 -- .../overrungl/opengl/ext/GLMESAWindowPos.java | 327 ------- .../overrungl/opengl/ext/GLOVRMultiview.java | 30 +- .../overrungl/opengl/ext/GLPGIMiscHints.java | 49 +- .../opengl/ext/GLPGIVertexHints.java | 53 ++ .../opengl/ext/GLWINPhongShading.java | 33 + .../opengl/ext/GLWINSpecularFog.java | 32 + .../ext/amd/GLAMDBlendMinmaxFactor.java | 33 + .../opengl/ext/amd/GLAMDDebugOutput.java | 106 +-- .../ext/amd/GLAMDDepthClampSeparate.java | 33 + .../opengl/ext/amd/GLAMDDrawBuffersBlend.java | 68 +- .../GLAMDFramebufferMultisampleAdvanced.java | 50 +- .../amd/GLAMDFramebufferSamplePositions.java | 96 +- .../ext/amd/GLAMDGpuShaderHalfFloat.java | 44 + .../opengl/ext/amd/GLAMDGpuShaderInt64.java | 331 +++++++ .../ext/amd/GLAMDInterleavedElements.java | 31 +- .../ext/amd/GLAMDMultiDrawIndirect.java | 45 +- .../opengl/ext/amd/GLAMDNameGenDelete.java | 98 +- .../ext/amd/GLAMDOcclusionQueryEvent.java | 35 +- .../ext/amd/GLAMDPerformanceMonitor.java | 252 ++--- .../opengl/ext/amd/GLAMDPinnedMemory.java | 32 + .../ext/amd/GLAMDQueryBufferObject.java | 34 + .../opengl/ext/amd/GLAMDSamplePositions.java | 37 +- .../opengl/ext/amd/GLAMDSparseTexture.java | 50 +- .../amd/GLAMDStencilOperationExtended.java | 33 +- .../ext/amd/GLAMDTransformFeedback4.java | 32 + .../ext/amd/GLAMDVertexShaderTessellator.java | 46 +- .../ext/apple/GLAPPLEAuxDepthStencil.java | 32 + .../ext/apple/GLAPPLEClientStorage.java | 32 + .../opengl/ext/apple/GLAPPLEElementArray.java | 93 +- .../opengl/ext/apple/GLAPPLEFence.java | 144 ++- .../opengl/ext/apple/GLAPPLEFloatPixels.java | 45 + .../ext/apple/GLAPPLEFlushBufferRange.java | 41 +- .../ext/apple/GLAPPLEObjectPurgeable.java | 71 +- .../opengl/ext/apple/GLAPPLERgb422.java | 35 + .../opengl/ext/apple/GLAPPLERowBytes.java | 33 + .../ext/apple/GLAPPLESpecularVector.java | 32 + .../opengl/ext/apple/GLAPPLETextureRange.java | 52 +- .../ext/apple/GLAPPLETransformHint.java | 32 + .../ext/apple/GLAPPLEVertexArrayObject.java | 98 +- .../ext/apple/GLAPPLEVertexArrayRange.java | 62 +- .../apple/GLAPPLEVertexProgramEvaluators.java | 132 ++- .../opengl/ext/apple/GLAPPLEYcbcr422.java | 32 + .../opengl/ext/arb/GLARBRobustness.java | 22 +- .../opengl/ext/arb/GLARBSampleLocations.java | 22 +- .../opengl/ext/arb/GLARBSampleShading.java | 22 +- .../opengl/ext/arb/GLARBShaderObjects.java | 22 +- .../ext/arb/GLARBShadingLanguageInclude.java | 22 +- .../overrungl/opengl/ext/arb/GLARBShadow.java | 21 +- .../opengl/ext/arb/GLARBShadowAmbient.java | 21 +- .../opengl/ext/arb/GLARBSparseBuffer.java | 22 +- .../opengl/ext/arb/GLARBSparseTexture.java | 22 +- .../ext/arb/GLARBTextureBorderClamp.java | 21 +- .../ext/arb/GLARBTextureBufferObject.java | 22 +- .../ext/arb/GLARBTextureCompression.java | 22 +- .../ext/arb/GLARBTextureCompressionBptc.java | 21 +- .../opengl/ext/arb/GLARBTextureCubeMap.java | 21 +- .../ext/arb/GLARBTextureCubeMapArray.java | 21 +- .../ext/arb/GLARBTextureEnvCombine.java | 21 +- .../opengl/ext/arb/GLARBTextureEnvDot3.java | 21 +- .../ext/arb/GLARBTextureFilterMinmax.java | 21 +- .../opengl/ext/arb/GLARBTextureFloat.java | 21 +- .../opengl/ext/arb/GLARBTextureGather.java | 21 +- .../ext/arb/GLARBTextureMirroredRepeat.java | 21 +- .../opengl/ext/arb/GLARBTextureRectangle.java | 21 +- .../GLARBTransformFeedbackOverflowQuery.java | 21 +- .../opengl/ext/arb/GLARBTransposeMatrix.java | 22 +- .../opengl/ext/arb/GLARBVertexBlend.java | 22 +- .../ext/arb/GLARBVertexBufferObject.java | 22 +- .../opengl/ext/arb/GLARBVertexProgram.java | 22 +- .../opengl/ext/arb/GLARBVertexShader.java | 22 +- .../opengl/ext/arb/GLARBViewportArray.java | 22 +- .../opengl/ext/arb/GLARBWindowPos.java | 22 +- .../opengl/ext/ibm/GLIBMCullVertex.java | 32 + .../ext/ibm/GLIBMMultimodeDrawArrays.java | 51 ++ .../opengl/ext/ibm/GLIBMRasterposClip.java | 32 + .../opengl/ext/{ => ibm}/GLIBMStaticData.java | 33 +- .../ext/ibm/GLIBMTextureMirroredRepeat.java | 32 + .../opengl/ext/ibm/GLIBMVertexArrayLists.java | 115 +++ .../GLINTELBlackholeRender.java} | 28 +- .../GLINTELConservativeRasterization.java | 32 + .../{ => intel}/GLINTELFramebufferCMAA.java | 31 +- .../opengl/ext/intel/GLINTELMapTexture.java | 64 ++ .../ext/intel/GLINTELParallelArrays.java | 72 ++ .../ext/intel/GLINTELPerformanceQuery.java | 135 +++ .../ext/khr/GLKHRBlendEquationAdvanced.java | 22 +- .../GLKHRBlendEquationAdvancedCoherent.java | 21 +- .../opengl/ext/khr/GLKHRNoError.java | 21 +- .../ext/khr/GLKHRParallelShaderCompile.java | 22 +- .../opengl/ext/khr/GLKHRRobustness.java | 21 +- .../opengl/ext/khr/GLKHRShaderSubgroup.java | 21 +- .../khr/GLKHRTextureCompressionAstcHdr.java | 21 +- .../ext/mesa/GLMESAFramebufferFlipX.java | 32 + .../ext/mesa/GLMESAFramebufferFlipY.java | 52 ++ .../ext/mesa/GLMESAFramebufferSwapXY.java | 32 + .../opengl/ext/mesa/GLMESAPackInvert.java | 32 + .../ext/mesa/GLMESAProgramBinaryFormats.java | 32 + .../ext/{ => mesa}/GLMESAResizeBuffers.java | 31 +- .../ext/mesa/GLMESATileRasterOrder.java | 34 + .../opengl/ext/mesa/GLMESAWindowPos.java | 227 +++++ .../opengl/ext/mesa/GLMESAXTextureStack.java | 37 + .../opengl/ext/mesa/GLMESAYcbcrTexture.java | 34 + .../opengl/ext/oes/GLOESByteCoordinates.java | 211 +++++ .../oes/GLOESCompressedPalettedTexture.java | 41 + .../opengl/ext/oes/GLOESFixedPoint.java | 860 ++++++++++++++++++ .../opengl/ext/oes/GLOESQueryMatrix.java | 44 + .../opengl/ext/oes/GLOESReadFormat.java | 33 + .../opengl/ext/oes/GLOESSinglePrecision.java | 83 ++ .../ext/sun/GLSUNConvolutionBorderModes.java | 32 + .../opengl/ext/sun/GLSUNGlobalAlpha.java | 114 +-- .../opengl/ext/sun/GLSUNMeshArray.java | 31 +- .../opengl/ext/sun/GLSUNSliceAccum.java | 32 + .../opengl/ext/sun/GLSUNTriangleList.java | 133 ++- .../overrungl/opengl/ext/sun/GLSUNVertex.java | 578 +++++------- .../opengl/ext/sun/GLSUNXConstantData.java | 31 +- 134 files changed, 5747 insertions(+), 3837 deletions(-) create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXMultisample.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTextureCompressionFXT1.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPConvolutionBorderModes.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPOcclusionTest.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPTextureLighting.java delete mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLIBMMultimodeDrawArrays.java delete mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLIBMVertexArrayLists.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRColorClamp.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRInterlaceRead.java delete mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINTELMapTexture.java delete mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINTELParallelArrays.java delete mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINTELPerformanceQuery.java delete mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLMESAFramebufferFlipY.java delete mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLMESAWindowPos.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIVertexHints.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINPhongShading.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINSpecularFog.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDBlendMinmaxFactor.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDepthClampSeparate.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderHalfFloat.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderInt64.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPinnedMemory.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDQueryBufferObject.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDTransformFeedback4.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEAuxDepthStencil.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEClientStorage.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFloatPixels.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERgb422.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERowBytes.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLESpecularVector.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETransformHint.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEYcbcr422.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMCullVertex.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMMultimodeDrawArrays.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMRasterposClip.java rename modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/{ => ibm}/GLIBMStaticData.java (58%) create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMTextureMirroredRepeat.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMVertexArrayLists.java rename modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/{GLINTELConst.java => intel/GLINTELBlackholeRender.java} (61%) create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELConservativeRasterization.java rename modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/{ => intel}/GLINTELFramebufferCMAA.java (61%) create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELMapTexture.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELParallelArrays.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELPerformanceQuery.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipX.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipY.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferSwapXY.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAPackInvert.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAProgramBinaryFormats.java rename modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/{ => mesa}/GLMESAResizeBuffers.java (63%) create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESATileRasterOrder.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAWindowPos.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAXTextureStack.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAYcbcrTexture.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESByteCoordinates.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESCompressedPalettedTexture.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESFixedPoint.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESQueryMatrix.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESReadFormat.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESSinglePrecision.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNConvolutionBorderModes.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNSliceAccum.java diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt index 0a5743f7..9afa95af 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt @@ -153,6 +153,8 @@ class OpenGLFile( ) { private val constants = LinkedHashMap() private val functions = ArrayList() + val hasFunction: Boolean + get() = functions.isNotEmpty() operator fun String.invoke(value: String) { constants[this] = value @@ -172,28 +174,27 @@ class OpenGLFile( // file-header appendLine( """ - $fileHeader - package overrungl.opengl${ext.packageName}; + ${fileHeader.prependIndent("|")} + |package overrungl.opengl${ext.packageName}; - import overrungl.*; - import overrungl.opengl.*; - import java.lang.foreign.*; - import static java.lang.foreign.FunctionDescriptor.*; - import static java.lang.foreign.ValueLayout.*; - import static overrungl.opengl.GLLoader.*; + |import overrungl.*; + |import overrungl.opengl.*; + |import java.lang.foreign.*; + |import static java.lang.foreign.FunctionDescriptor.*; + |import static java.lang.foreign.ValueLayout.*; + |import static overrungl.opengl.GLLoader.*; - /** - * {@code $extName} - */ - public final class GL${ext.extName}$name { - """.trimIndent() + |/** + | * {@code $extName} + | */ + |public final class GL${ext.extName}$name { + """.trimMargin() ) // constants constants.forEach { (name, value) -> appendLine(" public static final int $name = $value;") } if (functions.isNotEmpty()) { - appendLine() // loader appendLine(" public static void load(GLExtCaps ext, GLLoadFunc load) {") appendLine(" if (!ext.$extName) return;") @@ -2763,208 +2764,211 @@ fun win() { fun glExtCaps() { Files.writeString(Path("GLExtCaps.java"), buildString { - appendLine( + append( """ - $fileHeader - package overrungl.opengl; + ${fileHeader.prependIndent("|")} + |package overrungl.opengl; - import overrungl.opengl.ext.*; - import overrungl.opengl.ext.arb.*; - import overrungl.opengl.ext.khr.*; - import overrungl.opengl.ext.oes.*; - import overrungl.opengl.ext.amd.*; - import overrungl.opengl.ext.apple.*; - //import overrungl.opengl.ext.ati.*; - //import overrungl.opengl.ext.ext.*; - import overrungl.opengl.ext.ibm.*; - import overrungl.opengl.ext.intel.*; - import overrungl.opengl.ext.mesa.*; - //import overrungl.opengl.ext.nv.*; - //import overrungl.opengl.ext.sgi.*; - import overrungl.opengl.ext.sun.*; + |import overrungl.opengl.ext.*; + |import overrungl.opengl.ext.arb.*; + |import overrungl.opengl.ext.khr.*; + |import overrungl.opengl.ext.oes.*; + |import overrungl.opengl.ext.amd.*; + |import overrungl.opengl.ext.apple.*; + |//import overrungl.opengl.ext.ati.*; + |//import overrungl.opengl.ext.ext.*; + |import overrungl.opengl.ext.ibm.*; + |import overrungl.opengl.ext.intel.*; + |import overrungl.opengl.ext.mesa.*; + |//import overrungl.opengl.ext.nv.*; + |//import overrungl.opengl.ext.sgi.*; + |import overrungl.opengl.ext.sun.*; - import java.lang.invoke.MethodHandle; + |import java.lang.invoke.MethodHandle; - /** - * The OpenGL extension capabilities. - * - * @since 0.1.0 - */ - public final class GLExtCaps { - /** The OpenGL extension flags. */ - public boolean GL_3DFX_multisample, GL_3DFX_tbuffer, GL_3DFX_texture_compression_FXT1, GL_AMD_blend_minmax_factor, - GL_AMD_conservative_depth, GL_AMD_debug_output, GL_AMD_depth_clamp_separate, GL_AMD_draw_buffers_blend, - GL_AMD_framebuffer_multisample_advanced, GL_AMD_framebuffer_sample_positions, GL_AMD_gcn_shader, - GL_AMD_gpu_shader_half_float, GL_AMD_gpu_shader_int16, GL_AMD_gpu_shader_int64, GL_AMD_interleaved_elements, - GL_AMD_multi_draw_indirect, GL_AMD_name_gen_delete, GL_AMD_occlusion_query_event, GL_AMD_performance_monitor, - GL_AMD_pinned_memory, GL_AMD_query_buffer_object, GL_AMD_sample_positions, GL_AMD_seamless_cubemap_per_texture, - GL_AMD_shader_atomic_counter_ops, GL_AMD_shader_ballot, GL_AMD_shader_explicit_vertex_parameter, - GL_AMD_shader_gpu_shader_half_float_fetch, GL_AMD_shader_image_load_store_lod, GL_AMD_shader_stencil_export, - GL_AMD_shader_trinary_minmax, GL_AMD_sparse_texture, GL_AMD_stencil_operation_extended, - GL_AMD_texture_gather_bias_lod, GL_AMD_texture_texture4, GL_AMD_transform_feedback3_lines_triangles, - GL_AMD_transform_feedback4, GL_AMD_vertex_shader_layer, GL_AMD_vertex_shader_tessellator, - GL_AMD_vertex_shader_viewport_index, GL_APPLE_aux_depth_stencil, GL_APPLE_client_storage, GL_APPLE_element_array, - GL_APPLE_fence, GL_APPLE_float_pixels, GL_APPLE_flush_buffer_range, GL_APPLE_object_purgeable, GL_APPLE_rgb_422, - GL_APPLE_row_bytes, GL_APPLE_specular_vector, GL_APPLE_texture_range, GL_APPLE_transform_hint, - GL_APPLE_vertex_array_object, GL_APPLE_vertex_array_range, GL_APPLE_vertex_program_evaluators, GL_APPLE_ycbcr_422, - GL_ARB_ES2_compatibility, GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, GL_ARB_ES3_compatibility, - GL_ARB_arrays_of_arrays, GL_ARB_base_instance, GL_ARB_bindless_texture, GL_ARB_blend_func_extended, - GL_ARB_buffer_storage, GL_ARB_cl_event, GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, - GL_ARB_color_buffer_float, GL_ARB_compatibility, GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, - GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, GL_ARB_copy_buffer, - GL_ARB_copy_image, GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float, GL_ARB_depth_clamp, - GL_ARB_depth_texture, GL_ARB_derivative_control, GL_ARB_direct_state_access, GL_ARB_draw_buffers, - GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex, GL_ARB_draw_indirect, GL_ARB_draw_instanced, - GL_ARB_enhanced_layouts, GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, - GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, GL_ARB_fragment_program, - GL_ARB_fragment_program_shadow, GL_ARB_fragment_shader, GL_ARB_fragment_shader_interlock, - GL_ARB_framebuffer_no_attachments, GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB, GL_ARB_geometry_shader4, - GL_ARB_get_program_binary, GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64, - GL_ARB_gpu_shader_int64, GL_ARB_half_float_pixel, GL_ARB_half_float_vertex, GL_ARB_imaging, GL_ARB_indirect_parameters, - GL_ARB_instanced_arrays, GL_ARB_internalformat_query, GL_ARB_internalformat_query2, GL_ARB_invalidate_subdata, - GL_ARB_map_buffer_alignment, GL_ARB_map_buffer_range, GL_ARB_matrix_palette, GL_ARB_multi_bind, - GL_ARB_multi_draw_indirect, GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_occlusion_query, GL_ARB_occlusion_query2, - GL_ARB_parallel_shader_compile, GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, - GL_ARB_point_sprite, GL_ARB_polygon_offset_clamp, GL_ARB_post_depth_coverage, GL_ARB_program_interface_query, - GL_ARB_provoking_vertex, GL_ARB_query_buffer_object, GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness, - GL_ARB_robustness_isolation, GL_ARB_sample_locations, GL_ARB_sample_shading, GL_ARB_sampler_objects, - GL_ARB_seamless_cube_map, GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects, - GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters, GL_ARB_shader_ballot, GL_ARB_shader_bit_encoding, - GL_ARB_shader_clock, GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote, GL_ARB_shader_image_load_store, - GL_ARB_shader_image_size, GL_ARB_shader_objects, GL_ARB_shader_precision, GL_ARB_shader_stencil_export, - GL_ARB_shader_storage_buffer_object, GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, - GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, GL_ARB_shading_language_100, - GL_ARB_shading_language_420pack, GL_ARB_shading_language_include, GL_ARB_shading_language_packing, GL_ARB_shadow, - GL_ARB_shadow_ambient, GL_ARB_sparse_buffer, GL_ARB_sparse_texture, GL_ARB_sparse_texture2, GL_ARB_sparse_texture_clamp, - GL_ARB_spirv_extensions, GL_ARB_stencil_texturing, GL_ARB_sync, GL_ARB_tessellation_shader, GL_ARB_texture_barrier, - GL_ARB_texture_border_clamp, GL_ARB_texture_buffer_object, GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range, - GL_ARB_texture_compression, GL_ARB_texture_compression_bptc, GL_ARB_texture_compression_rgtc, - GL_ARB_texture_cube_map, GL_ARB_texture_cube_map_array, GL_ARB_texture_env_add, GL_ARB_texture_env_combine, - GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3, GL_ARB_texture_filter_anisotropic, GL_ARB_texture_filter_minmax, - GL_ARB_texture_float, GL_ARB_texture_gather, GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_mirrored_repeat, - GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two, GL_ARB_texture_query_levels, GL_ARB_texture_query_lod, - GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui, GL_ARB_texture_stencil8, GL_ARB_texture_storage, - GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle, GL_ARB_texture_view, GL_ARB_timer_query, - GL_ARB_transform_feedback2, GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced, - GL_ARB_transform_feedback_overflow_query, GL_ARB_transpose_matrix, GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra, - GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_64bit, GL_ARB_vertex_attrib_binding, GL_ARB_vertex_blend, - GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_vertex_shader, GL_ARB_vertex_type_10f_11f_11f_rev, - GL_ARB_vertex_type_2_10_10_10_rev, GL_ARB_viewport_array, GL_ARB_window_pos, GL_ATI_draw_buffers, GL_ATI_element_array, - GL_ATI_envmap_bumpmap, GL_ATI_fragment_shader, GL_ATI_map_object_buffer, GL_ATI_meminfo, GL_ATI_pixel_format_float, - GL_ATI_pn_triangles, GL_ATI_separate_stencil, GL_ATI_text_fragment_shader, GL_ATI_texture_env_combine3, GL_ATI_texture_float, - GL_ATI_texture_mirror_once, GL_ATI_vertex_array_object, GL_ATI_vertex_attrib_array_object, GL_ATI_vertex_streams, - GL_EXT_422_pixels, GL_EXT_EGL_image_storage, GL_EXT_EGL_sync, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_bindable_uniform, - GL_EXT_blend_color, GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate, GL_EXT_blend_logic_op, GL_EXT_blend_minmax, - GL_EXT_blend_subtract, GL_EXT_clip_volume_hint, GL_EXT_cmyka, GL_EXT_color_subtable, GL_EXT_compiled_vertex_array, - GL_EXT_convolution, GL_EXT_coordinate_frame, GL_EXT_copy_texture, GL_EXT_cull_vertex, GL_EXT_debug_label, GL_EXT_debug_marker, - GL_EXT_depth_bounds_test, GL_EXT_direct_state_access, GL_EXT_draw_buffers2, GL_EXT_draw_instanced, GL_EXT_draw_range_elements, - GL_EXT_external_buffer, GL_EXT_fog_coord, GL_EXT_framebuffer_blit, GL_EXT_framebuffer_multisample, - GL_EXT_framebuffer_multisample_blit_scaled, GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, GL_EXT_geometry_shader4, - GL_EXT_gpu_program_parameters, GL_EXT_gpu_shader4, GL_EXT_histogram, GL_EXT_index_array_formats, GL_EXT_index_func, - GL_EXT_index_material, GL_EXT_index_texture, GL_EXT_light_texture, GL_EXT_memory_object, GL_EXT_memory_object_fd, - GL_EXT_memory_object_win32, GL_EXT_misc_attribute, GL_EXT_multi_draw_arrays, GL_EXT_multisample, - GL_EXT_multiview_tessellation_geometry_shader, GL_EXT_multiview_texture_multisample, GL_EXT_multiview_timer_query, - GL_EXT_packed_depth_stencil, GL_EXT_packed_float, GL_EXT_packed_pixels, GL_EXT_paletted_texture, - GL_EXT_pixel_buffer_object, GL_EXT_pixel_transform, GL_EXT_pixel_transform_color_table, GL_EXT_point_parameters, - GL_EXT_polygon_offset, GL_EXT_polygon_offset_clamp, GL_EXT_post_depth_coverage, GL_EXT_provoking_vertex, - GL_EXT_raster_multisample, GL_EXT_rescale_normal, GL_EXT_secondary_color, GL_EXT_semaphore, GL_EXT_semaphore_fd, - GL_EXT_semaphore_win32, GL_EXT_separate_shader_objects, GL_EXT_separate_specular_color, GL_EXT_shader_framebuffer_fetch, - GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_image_load_formatted, GL_EXT_shader_image_load_store, - GL_EXT_shader_integer_mix, GL_EXT_shadow_funcs, GL_EXT_shared_texture_palette, GL_EXT_sparse_texture2, - GL_EXT_stencil_clear_tag, GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture, GL_EXT_texture, - GL_EXT_texture3D, GL_EXT_texture_array, GL_EXT_texture_buffer_object, GL_EXT_texture_compression_latc, - GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map, GL_EXT_texture_env_add, - GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic, GL_EXT_texture_filter_minmax, - GL_EXT_texture_integer, GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp, GL_EXT_texture_object, - GL_EXT_texture_perturb_normal, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_RG8, - GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm, - GL_EXT_texture_storage, GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback, GL_EXT_vertex_array, - GL_EXT_vertex_array_bgra, GL_EXT_vertex_attrib_64bit, GL_EXT_vertex_shader, GL_EXT_vertex_weighting, - GL_EXT_win32_keyed_mutex, GL_EXT_window_rectangles, GL_EXT_x11_sync_object, GL_GREMEDY_frame_terminator, - GL_GREMEDY_string_marker, GL_HP_convolution_border_modes, GL_HP_image_transform, GL_HP_occlusion_test, - GL_HP_texture_lighting, GL_IBM_cull_vertex, GL_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip, GL_IBM_static_data, - GL_IBM_texture_mirrored_repeat, GL_IBM_vertex_array_lists, GL_INGR_blend_func_separate, GL_INGR_color_clamp, - GL_INGR_interlace_read, GL_INTEL_blackhole_render, GL_INTEL_conservative_rasterization, GL_INTEL_fragment_shader_ordering, - GL_INTEL_framebuffer_CMAA, GL_INTEL_map_texture, GL_INTEL_parallel_arrays, GL_INTEL_performance_query, - GL_KHR_blend_equation_advanced, GL_KHR_blend_equation_advanced_coherent, GL_KHR_context_flush_control, GL_KHR_debug, - GL_KHR_no_error, GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior, GL_KHR_robustness, - GL_KHR_shader_subgroup, GL_KHR_texture_compression_astc_hdr, GL_KHR_texture_compression_astc_ldr, - GL_KHR_texture_compression_astc_sliced_3d, GL_MESAX_texture_stack, GL_MESA_framebuffer_flip_x, GL_MESA_framebuffer_flip_y, - GL_MESA_framebuffer_swap_xy, GL_MESA_pack_invert, GL_MESA_program_binary_formats, GL_MESA_resize_buffers, - GL_MESA_shader_integer_functions, GL_MESA_tile_raster_order, GL_MESA_window_pos, GL_MESA_ycbcr_texture, - GL_NVX_blend_equation_advanced_multi_draw_buffers, GL_NVX_conditional_render, GL_NVX_gpu_memory_info, - GL_NVX_gpu_multicast2, GL_NVX_linked_gpu_multicast, GL_NVX_progress_fence, GL_NV_alpha_to_coverage_dither_control, - GL_NV_bindless_multi_draw_indirect, GL_NV_bindless_multi_draw_indirect_count, GL_NV_bindless_texture, - GL_NV_blend_equation_advanced, GL_NV_blend_equation_advanced_coherent, GL_NV_blend_minmax_factor, GL_NV_blend_square, - GL_NV_clip_space_w_scaling, GL_NV_command_list, GL_NV_compute_program5, GL_NV_compute_shader_derivatives, - GL_NV_conditional_render, GL_NV_conservative_raster, GL_NV_conservative_raster_dilate, GL_NV_conservative_raster_pre_snap, - GL_NV_conservative_raster_pre_snap_triangles, GL_NV_conservative_raster_underestimation, GL_NV_copy_depth_to_color, - GL_NV_copy_image, GL_NV_deep_texture3D, GL_NV_depth_buffer_float, GL_NV_depth_clamp, GL_NV_draw_texture, - GL_NV_draw_vulkan_image, GL_NV_evaluators, GL_NV_explicit_multisample, GL_NV_fence, GL_NV_fill_rectangle, - GL_NV_float_buffer, GL_NV_fog_distance, GL_NV_fragment_coverage_to_color, GL_NV_fragment_program, GL_NV_fragment_program2, - GL_NV_fragment_program4, GL_NV_fragment_program_option, GL_NV_fragment_shader_barycentric, GL_NV_fragment_shader_interlock, - GL_NV_framebuffer_mixed_samples, GL_NV_framebuffer_multisample_coverage, GL_NV_geometry_program4, GL_NV_geometry_shader4, - GL_NV_geometry_shader_passthrough, GL_NV_gpu_multicast, GL_NV_gpu_program4, GL_NV_gpu_program5, - GL_NV_gpu_program5_mem_extended, GL_NV_gpu_shader5, GL_NV_half_float, GL_NV_internalformat_sample_query, - GL_NV_light_max_exponent, GL_NV_memory_attachment, GL_NV_memory_object_sparse, GL_NV_mesh_shader, - GL_NV_multisample_coverage, GL_NV_multisample_filter_hint, GL_NV_occlusion_query, GL_NV_packed_depth_stencil, - GL_NV_parameter_buffer_object, GL_NV_parameter_buffer_object2, GL_NV_path_rendering, GL_NV_path_rendering_shared_edge, - GL_NV_pixel_data_range, GL_NV_point_sprite, GL_NV_present_video, GL_NV_primitive_restart, GL_NV_primitive_shading_rate, - GL_NV_query_resource, GL_NV_query_resource_tag, GL_NV_register_combiners, GL_NV_register_combiners2, - GL_NV_representative_fragment_test, GL_NV_robustness_video_memory_purge, GL_NV_sample_locations, - GL_NV_sample_mask_override_coverage, GL_NV_scissor_exclusive, GL_NV_shader_atomic_counters, GL_NV_shader_atomic_float, - GL_NV_shader_atomic_float64, GL_NV_shader_atomic_fp16_vector, GL_NV_shader_atomic_int64, GL_NV_shader_buffer_load, - GL_NV_shader_buffer_store, GL_NV_shader_storage_buffer_object, GL_NV_shader_subgroup_partitioned, - GL_NV_shader_texture_footprint, GL_NV_shader_thread_group, GL_NV_shader_thread_shuffle, GL_NV_shading_rate_image, - GL_NV_stereo_view_rendering, GL_NV_tessellation_program5, GL_NV_texgen_emboss, GL_NV_texgen_reflection, - GL_NV_texture_barrier, GL_NV_texture_compression_vtc, GL_NV_texture_env_combine4, GL_NV_texture_expand_normal, - GL_NV_texture_multisample, GL_NV_texture_rectangle, GL_NV_texture_rectangle_compressed, GL_NV_texture_shader, - GL_NV_texture_shader2, GL_NV_texture_shader3, GL_NV_timeline_semaphore, GL_NV_transform_feedback, - GL_NV_transform_feedback2, GL_NV_uniform_buffer_unified_memory, GL_NV_vdpau_interop, GL_NV_vdpau_interop2, - GL_NV_vertex_array_range, GL_NV_vertex_array_range2, GL_NV_vertex_attrib_integer_64bit, GL_NV_vertex_buffer_unified_memory, - GL_NV_vertex_program, GL_NV_vertex_program1_1, GL_NV_vertex_program2, GL_NV_vertex_program2_option, GL_NV_vertex_program3, - GL_NV_vertex_program4, GL_NV_video_capture, GL_NV_viewport_array2, GL_NV_viewport_swizzle, GL_OES_byte_coordinates, - GL_OES_compressed_paletted_texture, GL_OES_fixed_point, GL_OES_query_matrix, GL_OES_read_format, GL_OES_single_precision, - GL_OML_interlace, GL_OML_resample, GL_OML_subsample, GL_OVR_multiview, GL_OVR_multiview2, GL_PGI_misc_hints, - GL_PGI_vertex_hints, GL_REND_screen_coordinates, GL_S3_s3tc, GL_SGIS_detail_texture, GL_SGIS_fog_function, - GL_SGIS_generate_mipmap, GL_SGIS_multisample, GL_SGIS_pixel_texture, GL_SGIS_point_line_texgen, GL_SGIS_point_parameters, - GL_SGIS_sharpen_texture, GL_SGIS_texture4D, GL_SGIS_texture_border_clamp, GL_SGIS_texture_color_mask, - GL_SGIS_texture_edge_clamp, GL_SGIS_texture_filter4, GL_SGIS_texture_lod, GL_SGIS_texture_select, GL_SGIX_async, - GL_SGIX_async_histogram, GL_SGIX_async_pixel, GL_SGIX_blend_alpha_minmax, GL_SGIX_calligraphic_fragment, GL_SGIX_clipmap, - GL_SGIX_convolution_accuracy, GL_SGIX_depth_pass_instrument, GL_SGIX_depth_texture, GL_SGIX_flush_raster, - GL_SGIX_fog_offset, GL_SGIX_fragment_lighting, GL_SGIX_framezoom, GL_SGIX_igloo_interface, GL_SGIX_instruments, - GL_SGIX_interlace, GL_SGIX_ir_instrument1, GL_SGIX_list_priority, GL_SGIX_pixel_texture, GL_SGIX_pixel_tiles, - GL_SGIX_polynomial_ffd, GL_SGIX_reference_plane, GL_SGIX_resample, GL_SGIX_scalebias_hint, GL_SGIX_shadow, - GL_SGIX_shadow_ambient, GL_SGIX_sprite, GL_SGIX_subsample, GL_SGIX_tag_sample_buffer, GL_SGIX_texture_add_env, - GL_SGIX_texture_coordinate_clamp, GL_SGIX_texture_lod_bias, GL_SGIX_texture_multi_buffer, GL_SGIX_texture_scale_bias, - GL_SGIX_vertex_preclip, GL_SGIX_ycrcb, GL_SGIX_ycrcb_subsample, GL_SGIX_ycrcba, GL_SGI_color_matrix, GL_SGI_color_table, - GL_SGI_texture_color_table, GL_SUNX_constant_data, GL_SUN_convolution_border_modes, GL_SUN_global_alpha, GL_SUN_mesh_array, - GL_SUN_slice_accum, GL_SUN_triangle_list, GL_SUN_vertex, GL_WIN_phong_shading, GL_WIN_specular_fog; + |/** + | * The OpenGL extension capabilities. + | * + | * @since 0.1.0 + | */ + |public final class GLExtCaps { + | /** The OpenGL extension flags. */ + | public boolean GL_3DFX_multisample, GL_3DFX_tbuffer, GL_3DFX_texture_compression_FXT1, GL_AMD_blend_minmax_factor, + | GL_AMD_conservative_depth, GL_AMD_debug_output, GL_AMD_depth_clamp_separate, GL_AMD_draw_buffers_blend, + | GL_AMD_framebuffer_multisample_advanced, GL_AMD_framebuffer_sample_positions, GL_AMD_gcn_shader, + | GL_AMD_gpu_shader_half_float, GL_AMD_gpu_shader_int16, GL_AMD_gpu_shader_int64, GL_AMD_interleaved_elements, + | GL_AMD_multi_draw_indirect, GL_AMD_name_gen_delete, GL_AMD_occlusion_query_event, GL_AMD_performance_monitor, + | GL_AMD_pinned_memory, GL_AMD_query_buffer_object, GL_AMD_sample_positions, GL_AMD_seamless_cubemap_per_texture, + | GL_AMD_shader_atomic_counter_ops, GL_AMD_shader_ballot, GL_AMD_shader_explicit_vertex_parameter, + | GL_AMD_shader_gpu_shader_half_float_fetch, GL_AMD_shader_image_load_store_lod, GL_AMD_shader_stencil_export, + | GL_AMD_shader_trinary_minmax, GL_AMD_sparse_texture, GL_AMD_stencil_operation_extended, + | GL_AMD_texture_gather_bias_lod, GL_AMD_texture_texture4, GL_AMD_transform_feedback3_lines_triangles, + | GL_AMD_transform_feedback4, GL_AMD_vertex_shader_layer, GL_AMD_vertex_shader_tessellator, + | GL_AMD_vertex_shader_viewport_index, GL_APPLE_aux_depth_stencil, GL_APPLE_client_storage, GL_APPLE_element_array, + | GL_APPLE_fence, GL_APPLE_float_pixels, GL_APPLE_flush_buffer_range, GL_APPLE_object_purgeable, GL_APPLE_rgb_422, + | GL_APPLE_row_bytes, GL_APPLE_specular_vector, GL_APPLE_texture_range, GL_APPLE_transform_hint, + | GL_APPLE_vertex_array_object, GL_APPLE_vertex_array_range, GL_APPLE_vertex_program_evaluators, GL_APPLE_ycbcr_422, + | GL_ARB_ES2_compatibility, GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, GL_ARB_ES3_compatibility, + | GL_ARB_arrays_of_arrays, GL_ARB_base_instance, GL_ARB_bindless_texture, GL_ARB_blend_func_extended, + | GL_ARB_buffer_storage, GL_ARB_cl_event, GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, + | GL_ARB_color_buffer_float, GL_ARB_compatibility, GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, + | GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, GL_ARB_copy_buffer, + | GL_ARB_copy_image, GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float, GL_ARB_depth_clamp, + | GL_ARB_depth_texture, GL_ARB_derivative_control, GL_ARB_direct_state_access, GL_ARB_draw_buffers, + | GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex, GL_ARB_draw_indirect, GL_ARB_draw_instanced, + | GL_ARB_enhanced_layouts, GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, + | GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, GL_ARB_fragment_program, + | GL_ARB_fragment_program_shadow, GL_ARB_fragment_shader, GL_ARB_fragment_shader_interlock, + | GL_ARB_framebuffer_no_attachments, GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB, GL_ARB_geometry_shader4, + | GL_ARB_get_program_binary, GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64, + | GL_ARB_gpu_shader_int64, GL_ARB_half_float_pixel, GL_ARB_half_float_vertex, GL_ARB_imaging, GL_ARB_indirect_parameters, + | GL_ARB_instanced_arrays, GL_ARB_internalformat_query, GL_ARB_internalformat_query2, GL_ARB_invalidate_subdata, + | GL_ARB_map_buffer_alignment, GL_ARB_map_buffer_range, GL_ARB_matrix_palette, GL_ARB_multi_bind, + | GL_ARB_multi_draw_indirect, GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_occlusion_query, GL_ARB_occlusion_query2, + | GL_ARB_parallel_shader_compile, GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, + | GL_ARB_point_sprite, GL_ARB_polygon_offset_clamp, GL_ARB_post_depth_coverage, GL_ARB_program_interface_query, + | GL_ARB_provoking_vertex, GL_ARB_query_buffer_object, GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness, + | GL_ARB_robustness_isolation, GL_ARB_sample_locations, GL_ARB_sample_shading, GL_ARB_sampler_objects, + | GL_ARB_seamless_cube_map, GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects, + | GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters, GL_ARB_shader_ballot, GL_ARB_shader_bit_encoding, + | GL_ARB_shader_clock, GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote, GL_ARB_shader_image_load_store, + | GL_ARB_shader_image_size, GL_ARB_shader_objects, GL_ARB_shader_precision, GL_ARB_shader_stencil_export, + | GL_ARB_shader_storage_buffer_object, GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, + | GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, GL_ARB_shading_language_100, + | GL_ARB_shading_language_420pack, GL_ARB_shading_language_include, GL_ARB_shading_language_packing, GL_ARB_shadow, + | GL_ARB_shadow_ambient, GL_ARB_sparse_buffer, GL_ARB_sparse_texture, GL_ARB_sparse_texture2, GL_ARB_sparse_texture_clamp, + | GL_ARB_spirv_extensions, GL_ARB_stencil_texturing, GL_ARB_sync, GL_ARB_tessellation_shader, GL_ARB_texture_barrier, + | GL_ARB_texture_border_clamp, GL_ARB_texture_buffer_object, GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range, + | GL_ARB_texture_compression, GL_ARB_texture_compression_bptc, GL_ARB_texture_compression_rgtc, + | GL_ARB_texture_cube_map, GL_ARB_texture_cube_map_array, GL_ARB_texture_env_add, GL_ARB_texture_env_combine, + | GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3, GL_ARB_texture_filter_anisotropic, GL_ARB_texture_filter_minmax, + | GL_ARB_texture_float, GL_ARB_texture_gather, GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_mirrored_repeat, + | GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two, GL_ARB_texture_query_levels, GL_ARB_texture_query_lod, + | GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui, GL_ARB_texture_stencil8, GL_ARB_texture_storage, + | GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle, GL_ARB_texture_view, GL_ARB_timer_query, + | GL_ARB_transform_feedback2, GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced, + | GL_ARB_transform_feedback_overflow_query, GL_ARB_transpose_matrix, GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra, + | GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_64bit, GL_ARB_vertex_attrib_binding, GL_ARB_vertex_blend, + | GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_vertex_shader, GL_ARB_vertex_type_10f_11f_11f_rev, + | GL_ARB_vertex_type_2_10_10_10_rev, GL_ARB_viewport_array, GL_ARB_window_pos, GL_ATI_draw_buffers, GL_ATI_element_array, + | GL_ATI_envmap_bumpmap, GL_ATI_fragment_shader, GL_ATI_map_object_buffer, GL_ATI_meminfo, GL_ATI_pixel_format_float, + | GL_ATI_pn_triangles, GL_ATI_separate_stencil, GL_ATI_text_fragment_shader, GL_ATI_texture_env_combine3, GL_ATI_texture_float, + | GL_ATI_texture_mirror_once, GL_ATI_vertex_array_object, GL_ATI_vertex_attrib_array_object, GL_ATI_vertex_streams, + | GL_EXT_422_pixels, GL_EXT_EGL_image_storage, GL_EXT_EGL_sync, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_bindable_uniform, + | GL_EXT_blend_color, GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate, GL_EXT_blend_logic_op, GL_EXT_blend_minmax, + | GL_EXT_blend_subtract, GL_EXT_clip_volume_hint, GL_EXT_cmyka, GL_EXT_color_subtable, GL_EXT_compiled_vertex_array, + | GL_EXT_convolution, GL_EXT_coordinate_frame, GL_EXT_copy_texture, GL_EXT_cull_vertex, GL_EXT_debug_label, GL_EXT_debug_marker, + | GL_EXT_depth_bounds_test, GL_EXT_direct_state_access, GL_EXT_draw_buffers2, GL_EXT_draw_instanced, GL_EXT_draw_range_elements, + | GL_EXT_external_buffer, GL_EXT_fog_coord, GL_EXT_framebuffer_blit, GL_EXT_framebuffer_multisample, + | GL_EXT_framebuffer_multisample_blit_scaled, GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, GL_EXT_geometry_shader4, + | GL_EXT_gpu_program_parameters, GL_EXT_gpu_shader4, GL_EXT_histogram, GL_EXT_index_array_formats, GL_EXT_index_func, + | GL_EXT_index_material, GL_EXT_index_texture, GL_EXT_light_texture, GL_EXT_memory_object, GL_EXT_memory_object_fd, + | GL_EXT_memory_object_win32, GL_EXT_misc_attribute, GL_EXT_multi_draw_arrays, GL_EXT_multisample, + | GL_EXT_multiview_tessellation_geometry_shader, GL_EXT_multiview_texture_multisample, GL_EXT_multiview_timer_query, + | GL_EXT_packed_depth_stencil, GL_EXT_packed_float, GL_EXT_packed_pixels, GL_EXT_paletted_texture, + | GL_EXT_pixel_buffer_object, GL_EXT_pixel_transform, GL_EXT_pixel_transform_color_table, GL_EXT_point_parameters, + | GL_EXT_polygon_offset, GL_EXT_polygon_offset_clamp, GL_EXT_post_depth_coverage, GL_EXT_provoking_vertex, + | GL_EXT_raster_multisample, GL_EXT_rescale_normal, GL_EXT_secondary_color, GL_EXT_semaphore, GL_EXT_semaphore_fd, + | GL_EXT_semaphore_win32, GL_EXT_separate_shader_objects, GL_EXT_separate_specular_color, GL_EXT_shader_framebuffer_fetch, + | GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_image_load_formatted, GL_EXT_shader_image_load_store, + | GL_EXT_shader_integer_mix, GL_EXT_shadow_funcs, GL_EXT_shared_texture_palette, GL_EXT_sparse_texture2, + | GL_EXT_stencil_clear_tag, GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture, GL_EXT_texture, + | GL_EXT_texture3D, GL_EXT_texture_array, GL_EXT_texture_buffer_object, GL_EXT_texture_compression_latc, + | GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map, GL_EXT_texture_env_add, + | GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic, GL_EXT_texture_filter_minmax, + | GL_EXT_texture_integer, GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp, GL_EXT_texture_object, + | GL_EXT_texture_perturb_normal, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_RG8, + | GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm, + | GL_EXT_texture_storage, GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback, GL_EXT_vertex_array, + | GL_EXT_vertex_array_bgra, GL_EXT_vertex_attrib_64bit, GL_EXT_vertex_shader, GL_EXT_vertex_weighting, + | GL_EXT_win32_keyed_mutex, GL_EXT_window_rectangles, GL_EXT_x11_sync_object, GL_GREMEDY_frame_terminator, + | GL_GREMEDY_string_marker, GL_HP_convolution_border_modes, GL_HP_image_transform, GL_HP_occlusion_test, + | GL_HP_texture_lighting, GL_IBM_cull_vertex, GL_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip, GL_IBM_static_data, + | GL_IBM_texture_mirrored_repeat, GL_IBM_vertex_array_lists, GL_INGR_blend_func_separate, GL_INGR_color_clamp, + | GL_INGR_interlace_read, GL_INTEL_blackhole_render, GL_INTEL_conservative_rasterization, GL_INTEL_fragment_shader_ordering, + | GL_INTEL_framebuffer_CMAA, GL_INTEL_map_texture, GL_INTEL_parallel_arrays, GL_INTEL_performance_query, + | GL_KHR_blend_equation_advanced, GL_KHR_blend_equation_advanced_coherent, GL_KHR_context_flush_control, GL_KHR_debug, + | GL_KHR_no_error, GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior, GL_KHR_robustness, + | GL_KHR_shader_subgroup, GL_KHR_texture_compression_astc_hdr, GL_KHR_texture_compression_astc_ldr, + | GL_KHR_texture_compression_astc_sliced_3d, GL_MESAX_texture_stack, GL_MESA_framebuffer_flip_x, GL_MESA_framebuffer_flip_y, + | GL_MESA_framebuffer_swap_xy, GL_MESA_pack_invert, GL_MESA_program_binary_formats, GL_MESA_resize_buffers, + | GL_MESA_shader_integer_functions, GL_MESA_tile_raster_order, GL_MESA_window_pos, GL_MESA_ycbcr_texture, + | GL_NVX_blend_equation_advanced_multi_draw_buffers, GL_NVX_conditional_render, GL_NVX_gpu_memory_info, + | GL_NVX_gpu_multicast2, GL_NVX_linked_gpu_multicast, GL_NVX_progress_fence, GL_NV_alpha_to_coverage_dither_control, + | GL_NV_bindless_multi_draw_indirect, GL_NV_bindless_multi_draw_indirect_count, GL_NV_bindless_texture, + | GL_NV_blend_equation_advanced, GL_NV_blend_equation_advanced_coherent, GL_NV_blend_minmax_factor, GL_NV_blend_square, + | GL_NV_clip_space_w_scaling, GL_NV_command_list, GL_NV_compute_program5, GL_NV_compute_shader_derivatives, + | GL_NV_conditional_render, GL_NV_conservative_raster, GL_NV_conservative_raster_dilate, GL_NV_conservative_raster_pre_snap, + | GL_NV_conservative_raster_pre_snap_triangles, GL_NV_conservative_raster_underestimation, GL_NV_copy_depth_to_color, + | GL_NV_copy_image, GL_NV_deep_texture3D, GL_NV_depth_buffer_float, GL_NV_depth_clamp, GL_NV_draw_texture, + | GL_NV_draw_vulkan_image, GL_NV_evaluators, GL_NV_explicit_multisample, GL_NV_fence, GL_NV_fill_rectangle, + | GL_NV_float_buffer, GL_NV_fog_distance, GL_NV_fragment_coverage_to_color, GL_NV_fragment_program, GL_NV_fragment_program2, + | GL_NV_fragment_program4, GL_NV_fragment_program_option, GL_NV_fragment_shader_barycentric, GL_NV_fragment_shader_interlock, + | GL_NV_framebuffer_mixed_samples, GL_NV_framebuffer_multisample_coverage, GL_NV_geometry_program4, GL_NV_geometry_shader4, + | GL_NV_geometry_shader_passthrough, GL_NV_gpu_multicast, GL_NV_gpu_program4, GL_NV_gpu_program5, + | GL_NV_gpu_program5_mem_extended, GL_NV_gpu_shader5, GL_NV_half_float, GL_NV_internalformat_sample_query, + | GL_NV_light_max_exponent, GL_NV_memory_attachment, GL_NV_memory_object_sparse, GL_NV_mesh_shader, + | GL_NV_multisample_coverage, GL_NV_multisample_filter_hint, GL_NV_occlusion_query, GL_NV_packed_depth_stencil, + | GL_NV_parameter_buffer_object, GL_NV_parameter_buffer_object2, GL_NV_path_rendering, GL_NV_path_rendering_shared_edge, + | GL_NV_pixel_data_range, GL_NV_point_sprite, GL_NV_present_video, GL_NV_primitive_restart, GL_NV_primitive_shading_rate, + | GL_NV_query_resource, GL_NV_query_resource_tag, GL_NV_register_combiners, GL_NV_register_combiners2, + | GL_NV_representative_fragment_test, GL_NV_robustness_video_memory_purge, GL_NV_sample_locations, + | GL_NV_sample_mask_override_coverage, GL_NV_scissor_exclusive, GL_NV_shader_atomic_counters, GL_NV_shader_atomic_float, + | GL_NV_shader_atomic_float64, GL_NV_shader_atomic_fp16_vector, GL_NV_shader_atomic_int64, GL_NV_shader_buffer_load, + | GL_NV_shader_buffer_store, GL_NV_shader_storage_buffer_object, GL_NV_shader_subgroup_partitioned, + | GL_NV_shader_texture_footprint, GL_NV_shader_thread_group, GL_NV_shader_thread_shuffle, GL_NV_shading_rate_image, + | GL_NV_stereo_view_rendering, GL_NV_tessellation_program5, GL_NV_texgen_emboss, GL_NV_texgen_reflection, + | GL_NV_texture_barrier, GL_NV_texture_compression_vtc, GL_NV_texture_env_combine4, GL_NV_texture_expand_normal, + | GL_NV_texture_multisample, GL_NV_texture_rectangle, GL_NV_texture_rectangle_compressed, GL_NV_texture_shader, + | GL_NV_texture_shader2, GL_NV_texture_shader3, GL_NV_timeline_semaphore, GL_NV_transform_feedback, + | GL_NV_transform_feedback2, GL_NV_uniform_buffer_unified_memory, GL_NV_vdpau_interop, GL_NV_vdpau_interop2, + | GL_NV_vertex_array_range, GL_NV_vertex_array_range2, GL_NV_vertex_attrib_integer_64bit, GL_NV_vertex_buffer_unified_memory, + | GL_NV_vertex_program, GL_NV_vertex_program1_1, GL_NV_vertex_program2, GL_NV_vertex_program2_option, GL_NV_vertex_program3, + | GL_NV_vertex_program4, GL_NV_video_capture, GL_NV_viewport_array2, GL_NV_viewport_swizzle, GL_OES_byte_coordinates, + | GL_OES_compressed_paletted_texture, GL_OES_fixed_point, GL_OES_query_matrix, GL_OES_read_format, GL_OES_single_precision, + | GL_OML_interlace, GL_OML_resample, GL_OML_subsample, GL_OVR_multiview, GL_OVR_multiview2, GL_PGI_misc_hints, + | GL_PGI_vertex_hints, GL_REND_screen_coordinates, GL_S3_s3tc, GL_SGIS_detail_texture, GL_SGIS_fog_function, + | GL_SGIS_generate_mipmap, GL_SGIS_multisample, GL_SGIS_pixel_texture, GL_SGIS_point_line_texgen, GL_SGIS_point_parameters, + | GL_SGIS_sharpen_texture, GL_SGIS_texture4D, GL_SGIS_texture_border_clamp, GL_SGIS_texture_color_mask, + | GL_SGIS_texture_edge_clamp, GL_SGIS_texture_filter4, GL_SGIS_texture_lod, GL_SGIS_texture_select, GL_SGIX_async, + | GL_SGIX_async_histogram, GL_SGIX_async_pixel, GL_SGIX_blend_alpha_minmax, GL_SGIX_calligraphic_fragment, GL_SGIX_clipmap, + | GL_SGIX_convolution_accuracy, GL_SGIX_depth_pass_instrument, GL_SGIX_depth_texture, GL_SGIX_flush_raster, + | GL_SGIX_fog_offset, GL_SGIX_fragment_lighting, GL_SGIX_framezoom, GL_SGIX_igloo_interface, GL_SGIX_instruments, + | GL_SGIX_interlace, GL_SGIX_ir_instrument1, GL_SGIX_list_priority, GL_SGIX_pixel_texture, GL_SGIX_pixel_tiles, + | GL_SGIX_polynomial_ffd, GL_SGIX_reference_plane, GL_SGIX_resample, GL_SGIX_scalebias_hint, GL_SGIX_shadow, + | GL_SGIX_shadow_ambient, GL_SGIX_sprite, GL_SGIX_subsample, GL_SGIX_tag_sample_buffer, GL_SGIX_texture_add_env, + | GL_SGIX_texture_coordinate_clamp, GL_SGIX_texture_lod_bias, GL_SGIX_texture_multi_buffer, GL_SGIX_texture_scale_bias, + | GL_SGIX_vertex_preclip, GL_SGIX_ycrcb, GL_SGIX_ycrcb_subsample, GL_SGIX_ycrcba, GL_SGI_color_matrix, GL_SGI_color_table, + | GL_SGI_texture_color_table, GL_SUNX_constant_data, GL_SUN_convolution_border_modes, GL_SUN_global_alpha, GL_SUN_mesh_array, + | GL_SUN_slice_accum, GL_SUN_triangle_list, GL_SUN_vertex, GL_WIN_phong_shading, GL_WIN_specular_fog; - /** GLCapabilities */ - public final GLCapabilities caps; + | /** GLCapabilities */ + | public final GLCapabilities caps; - /** - * Construct incomplete OpenGL extension capabilities. - * - * @param caps The parent capabilities. - */ - public GLExtCaps(GLCapabilities caps) { - this.caps = caps; - } + | /** + | * Construct incomplete OpenGL extension capabilities. + | * + | * @param caps The parent capabilities. + | */ + | public GLExtCaps(GLCapabilities caps) { + | this.caps = caps; + | } - /** Method handles. */ - public MethodHandle - """.trimIndent() + | /** Method handles. */ + | public MethodHandle + """.trimMargin() ) generatedExtFunctions.forEachIndexed { index, function -> - if (index == 0) append(" ") + if (index.rem(16) == 0) { + if (index == 0) append("\n ") + else append(",\n ") + } else append(", ") append(function.name) } - appendLine(";\n void load(GLLoadFunc load) {") + appendLine(";\n\n void load(GLLoadFunc load) {") generatedExtClasses.forEach { - appendLine(" ${it.ext.extName}${it.name}.load(this, load);") + if (it.hasFunction) appendLine(" GL${it.ext.extName}${it.name}.load(this, load);") } appendLine(" }\n}") }) diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java index 60258238..fe2a840f 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java @@ -14,14 +14,22 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl; import overrungl.opengl.ext.*; +import overrungl.opengl.ext.arb.*; +import overrungl.opengl.ext.khr.*; +import overrungl.opengl.ext.oes.*; import overrungl.opengl.ext.amd.*; import overrungl.opengl.ext.apple.*; -import overrungl.opengl.ext.arb.*; -import overrungl.opengl.ext.khr.GLKHRBlendEquationAdvanced; -import overrungl.opengl.ext.khr.GLKHRParallelShaderCompile; +//import overrungl.opengl.ext.ati.*; +//import overrungl.opengl.ext.ext.*; +import overrungl.opengl.ext.ibm.*; +import overrungl.opengl.ext.intel.*; +import overrungl.opengl.ext.mesa.*; +//import overrungl.opengl.ext.nv.*; +//import overrungl.opengl.ext.sgi.*; import overrungl.opengl.ext.sun.*; import java.lang.invoke.MethodHandle; @@ -29,14 +37,10 @@ /** * The OpenGL extension capabilities. * - * @author squid233 * @since 0.1.0 */ public final class GLExtCaps { - // region Flags - /** - * The OpenGL extension flags. - */ + /** The OpenGL extension flags. */ public boolean GL_3DFX_multisample, GL_3DFX_tbuffer, GL_3DFX_texture_compression_FXT1, GL_AMD_blend_minmax_factor, GL_AMD_conservative_depth, GL_AMD_debug_output, GL_AMD_depth_clamp_separate, GL_AMD_draw_buffers_blend, GL_AMD_framebuffer_multisample_advanced, GL_AMD_framebuffer_sample_positions, GL_AMD_gcn_shader, @@ -185,524 +189,8 @@ public final class GLExtCaps { GL_SGIX_vertex_preclip, GL_SGIX_ycrcb, GL_SGIX_ycrcb_subsample, GL_SGIX_ycrcba, GL_SGI_color_matrix, GL_SGI_color_table, GL_SGI_texture_color_table, GL_SUNX_constant_data, GL_SUN_convolution_border_modes, GL_SUN_global_alpha, GL_SUN_mesh_array, GL_SUN_slice_accum, GL_SUN_triangle_list, GL_SUN_vertex, GL_WIN_phong_shading, GL_WIN_specular_fog; - // endregion - - /////////////////////////////////////////////////////////////////////////// - // region 3DFX - /////////////////////////////////////////////////////////////////////////// - - /** - * {@code GL_3DFX_tbuffer} extension method handles. - */ - public MethodHandle glTbufferMask3DFX; - - // endregion - - /////////////////////////////////////////////////////////////////////////// - // region AMD - /////////////////////////////////////////////////////////////////////////// - - /** - * {@code GL_AMD_debug_output} extension method handles. - */ - public MethodHandle glDebugMessageCallbackAMD, glDebugMessageEnableAMD, glDebugMessageInsertAMD, glGetDebugMessageLogAMD; - /** - * {@code GL_AMD_draw_buffers_blend} extension method handles. - */ - public MethodHandle glBlendEquationIndexedAMD, glBlendEquationSeparateIndexedAMD, glBlendFuncIndexedAMD, glBlendFuncSeparateIndexedAMD; - /** - * {@code GL_AMD_framebuffer_multisample_advanced} extension method handles. - */ - public MethodHandle glNamedRenderbufferStorageMultisampleAdvancedAMD, glRenderbufferStorageMultisampleAdvancedAMD; - /** - * {@code GL_AMD_framebuffer_sample_positions} extension method handles. - */ - public MethodHandle glFramebufferSamplePositionsfvAMD, glGetFramebufferParameterfvAMD, glGetNamedFramebufferParameterfvAMD, - glNamedFramebufferSamplePositionsfvAMD; - /** - * {@code GL_AMD_interleaved_elements} extension method handles. - */ - public MethodHandle glVertexAttribParameteriAMD; - /** - * {@code GL_AMD_multi_draw_indirect} extension method handles. - */ - public MethodHandle glMultiDrawArraysIndirectAMD, glMultiDrawElementsIndirectAMD; - /** - * {@code GL_AMD_name_gen_delete} extension method handles. - */ - public MethodHandle glDeleteNamesAMD, glGenNamesAMD, glIsNameAMD; - /** - * {@code GL_AMD_occlusion_query_event} extension method handles. - */ - public MethodHandle glQueryObjectParameteruiAMD; - /** - * {@code GL_AMD_performance_monitor} extension method handles. - */ - public MethodHandle glBeginPerfMonitorAMD, glDeletePerfMonitorsAMD, glEndPerfMonitorAMD, glGenPerfMonitorsAMD, - glGetPerfMonitorCounterDataAMD, glGetPerfMonitorCounterInfoAMD, glGetPerfMonitorCounterStringAMD, - glGetPerfMonitorCountersAMD, glGetPerfMonitorGroupStringAMD, glGetPerfMonitorGroupsAMD, - glSelectPerfMonitorCountersAMD; - /** - * {@code GL_AMD_sample_positions} extension method handles. - */ - public MethodHandle glSetMultisamplefvAMD; - /** - * {@code GL_AMD_sparse_texture} extension method handles. - */ - public MethodHandle glTexStorageSparseAMD, glTextureStorageSparseAMD; - /** - * {@code GL_AMD_stencil_operation_extended} extension method handles. - */ - public MethodHandle glStencilOpValueAMD; - /** - * {@code GL_AMD_vertex_shader_tessellator} extension method handles. - */ - public MethodHandle glTessellationFactorAMD, glTessellationModeAMD; - - // endregion - - /////////////////////////////////////////////////////////////////////////// - // region APPLE - /////////////////////////////////////////////////////////////////////////// - - /** - * {@code GL_APPLE_element_array} extension method handles. - */ - public MethodHandle glDrawElementArrayAPPLE, glDrawRangeElementArrayAPPLE, glElementPointerAPPLE, - glMultiDrawElementArrayAPPLE, glMultiDrawRangeElementArrayAPPLE; - /** - * {@code GL_APPLE_fence} extension method handles. - */ - public MethodHandle glDeleteFencesAPPLE, glFinishFenceAPPLE, glFinishObjectAPPLE, glGenFencesAPPLE, - glIsFenceAPPLE, glSetFenceAPPLE, glTestFenceAPPLE, glTestObjectAPPLE; - /** - * {@code GL_APPLE_flush_buffer_range} extension method handles. - */ - public MethodHandle glBufferParameteriAPPLE, glFlushMappedBufferRangeAPPLE; - /** - * {@code GL_APPLE_object_purgeable} extension method handles. - */ - public MethodHandle glGetObjectParameterivAPPLE, glObjectPurgeableAPPLE, glObjectUnpurgeableAPPLE; - /** - * {@code GL_APPLE_texture_range} extension method handles. - */ - public MethodHandle glGetTexParameterPointervAPPLE, glTextureRangeAPPLE; - /** - * {@code GL_APPLE_vertex_array_object} extension method handles. - */ - public MethodHandle glBindVertexArrayAPPLE, glDeleteVertexArraysAPPLE, glGenVertexArraysAPPLE, glIsVertexArrayAPPLE; - /** - * {@code GL_APPLE_vertex_array_range} extension method handles. - */ - public MethodHandle glFlushVertexArrayRangeAPPLE, glVertexArrayParameteriAPPLE, glVertexArrayRangeAPPLE; - /** - * {@code GL_APPLE_vertex_program_evaluators} extension method handles. - */ - public MethodHandle glDisableVertexAttribAPPLE, glEnableVertexAttribAPPLE, glIsVertexAttribEnabledAPPLE, - glMapVertexAttrib1dAPPLE, glMapVertexAttrib1fAPPLE, glMapVertexAttrib2dAPPLE, glMapVertexAttrib2fAPPLE; - - // endregion - - /////////////////////////////////////////////////////////////////////////// - // region ARB - /////////////////////////////////////////////////////////////////////////// - - /** - * {@code GL_ARB_debug_output} extension method handles. - */ - public MethodHandle glDebugMessageCallbackARB, glDebugMessageControlARB, glDebugMessageInsertARB, glGetDebugMessageLogARB; - /** - * {@code GL_ARB_ES3_1_compatibility} extension method handles. - */ - public MethodHandle glPrimitiveBoundingBoxARB; - /** - * {@code GL_ARB_bindless_texture} extension method handles. - */ - public MethodHandle glGetImageHandleARB, glGetTextureHandleARB, glGetTextureSamplerHandleARB, glGetVertexAttribLui64vARB, glIsImageHandleResidentARB, - glIsTextureHandleResidentARB, glMakeImageHandleNonResidentARB, glMakeImageHandleResidentARB, glMakeTextureHandleNonResidentARB, glMakeTextureHandleResidentARB, - glProgramUniformHandleui64ARB, glProgramUniformHandleui64vARB, glUniformHandleui64ARB, glUniformHandleui64vARB, glVertexAttribL1ui64ARB, glVertexAttribL1ui64vARB; - /** - * {@code GL_ARB_cl_event} extension method handles. - */ - public MethodHandle glCreateSyncFromCLeventARB; - /** - * {@code GL_ARB_color_buffer_float} extension method handles. - */ - public MethodHandle glClampColorARB; - /** - * {@code GL_ARB_compute_variable_group_size} extension method handles. - */ - public MethodHandle glDispatchComputeGroupSizeARB; - /** - * {@code GL_ARB_draw_buffers} extension method handles. - */ - public MethodHandle glDrawBuffersARB; - /** - * {@code GL_ARB_draw_buffers_blend} extension method handles. - */ - public MethodHandle glBlendEquationSeparateiARB, glBlendEquationiARB, glBlendFuncSeparateiARB, glBlendFunciARB; - /** - * {@code GL_ARB_draw_instanced} extension method handles. - */ - public MethodHandle glDrawArraysInstancedARB, glDrawElementsInstancedARB; - /** - * {@code GL_ARB_fragment_program} extension method handles. - */ - public MethodHandle glBindProgramARB, glDeleteProgramsARB, glGenProgramsARB, glGetProgramEnvParameterdvARB, glGetProgramEnvParameterfvARB, glGetProgramLocalParameterdvARB, - glGetProgramLocalParameterfvARB, glGetProgramStringARB, glGetProgramivARB, glIsProgramARB, glProgramEnvParameter4dARB, glProgramEnvParameter4dvARB, glProgramEnvParameter4fARB, - glProgramEnvParameter4fvARB, glProgramLocalParameter4dARB, glProgramLocalParameter4dvARB, glProgramLocalParameter4fARB, glProgramLocalParameter4fvARB, glProgramStringARB; - /** - * {@code GL_ARB_geometry_shader4} extension method handles. - */ - public MethodHandle glFramebufferTextureARB, glFramebufferTextureFaceARB, glFramebufferTextureLayerARB, glProgramParameteriARB; - /** - * {@code GL_ARB_gl_spirv} extension method handles. - */ - public MethodHandle glSpecializeShaderARB; - /** - * {@code GL_ARB_gpu_shader_int64} extension method handles. - */ - public MethodHandle glGetUniformi64vARB, glGetUniformui64vARB, glGetnUniformi64vARB, glGetnUniformui64vARB, glProgramUniform1i64ARB, glProgramUniform1i64vARB, - glProgramUniform1ui64ARB, glProgramUniform1ui64vARB, glProgramUniform2i64ARB, glProgramUniform2i64vARB, glProgramUniform2ui64ARB, glProgramUniform2ui64vARB, - glProgramUniform3i64ARB, glProgramUniform3i64vARB, glProgramUniform3ui64ARB, glProgramUniform3ui64vARB, glProgramUniform4i64ARB, glProgramUniform4i64vARB, - glProgramUniform4ui64ARB, glProgramUniform4ui64vARB, glUniform1i64ARB, glUniform1i64vARB, glUniform1ui64ARB, glUniform1ui64vARB, - glUniform2i64ARB, glUniform2i64vARB, glUniform2ui64ARB, glUniform2ui64vARB, glUniform3i64ARB, glUniform3i64vARB, - glUniform3ui64ARB, glUniform3ui64vARB, glUniform4i64ARB, glUniform4i64vARB, glUniform4ui64ARB, glUniform4ui64vARB; - /** - * {@code GL_ARB_indirect_parameters} extension method handles. - */ - public MethodHandle glMultiDrawArraysIndirectCountARB, glMultiDrawElementsIndirectCountARB; - /** - * {@code GL_ARB_instanced_arrays} extension method handles. - */ - public MethodHandle glVertexAttribDivisorARB; - /** - * {@code GL_ARB_matrix_palette} extension method handles. - */ - public MethodHandle glCurrentPaletteMatrixARB, glMatrixIndexPointerARB, glMatrixIndexubvARB, glMatrixIndexuivARB, glMatrixIndexusvARB; - /** - * {@code GL_ARB_multisample} extension method handles. - */ - public MethodHandle glSampleCoverageARB; - /** - * {@code GL_ARB_multitexture} extension method handles. - */ - public MethodHandle glActiveTextureARB, glClientActiveTextureARB, glMultiTexCoord1dARB, glMultiTexCoord1dvARB, - glMultiTexCoord1fARB, glMultiTexCoord1fvARB, glMultiTexCoord1iARB, glMultiTexCoord1ivARB, glMultiTexCoord1sARB, glMultiTexCoord1svARB, - glMultiTexCoord2dARB, glMultiTexCoord2dvARB, glMultiTexCoord2fARB, glMultiTexCoord2fvARB, glMultiTexCoord2iARB, glMultiTexCoord2ivARB, - glMultiTexCoord2sARB, glMultiTexCoord2svARB, glMultiTexCoord3dARB, glMultiTexCoord3dvARB, glMultiTexCoord3fARB, glMultiTexCoord3fvARB, - glMultiTexCoord3iARB, glMultiTexCoord3ivARB, glMultiTexCoord3sARB, glMultiTexCoord3svARB, glMultiTexCoord4dARB, glMultiTexCoord4dvARB, - glMultiTexCoord4fARB, glMultiTexCoord4fvARB, glMultiTexCoord4iARB, glMultiTexCoord4ivARB, glMultiTexCoord4sARB, glMultiTexCoord4svARB; - /** - * {@code GL_ARB_occlusion_query} extension method handles. - */ - public MethodHandle glBeginQueryARB, glDeleteQueriesARB, glEndQueryARB, glGenQueriesARB, glGetQueryObjectivARB, - glGetQueryObjectuivARB, glGetQueryivARB, glIsQueryARB; - /** - * {@code GL_ARB_parallel_shader_compile} extension method handles. - */ - public MethodHandle glMaxShaderCompilerThreadsARB; - /** - * {@code GL_ARB_point_parameters} extension method handles. - */ - public MethodHandle glPointParameterfARB, glPointParameterfvARB; - /** - * {@code GL_ARB_robustness} extension method handles. - */ - public MethodHandle glGetGraphicsResetStatusARB, glGetnCompressedTexImageARB, glGetnTexImageARB, glGetnUniformdvARB, - glGetnUniformfvARB, glGetnUniformivARB, glGetnUniformuivARB, glReadnPixelsARB; - /** - * {@code GL_ARB_sample_locations} extension method handles. - */ - public MethodHandle glEvaluateDepthValuesARB, glFramebufferSampleLocationsfvARB, glNamedFramebufferSampleLocationsfvARB; - /** - * {@code GL_ARB_sample_shading} extension method handles. - */ - public MethodHandle glMinSampleShadingARB; - /** - * {@code GL_ARB_shader_objects} extension method handles. - */ - public MethodHandle glDeleteObjectARB, glGetHandleARB, glDetachObjectARB, glCreateShaderObjectARB, glShaderSourceARB, glCompileShaderARB, - glCreateProgramObjectARB, glAttachObjectARB, glLinkProgramARB, glUseProgramObjectARB, glValidateProgramARB, glUniform1fARB, - glUniform2fARB, glUniform3fARB, glUniform4fARB, glUniform1iARB, glUniform2iARB, glUniform3iARB, glUniform4iARB, glUniform1fvARB, - glUniform2fvARB, glUniform3fvARB, glUniform4fvARB, glUniform1ivARB, glUniform2ivARB, glUniform3ivARB, glUniform4ivARB, - glUniformMatrix2fvARB, glUniformMatrix3fvARB, glUniformMatrix4fvARB, glGetObjectParameterfvARB, glGetObjectParameterivARB, glGetInfoLogARB, - glGetAttachedObjectsARB, glGetUniformLocationARB, glGetActiveUniformARB, glGetUniformfvARB, glGetUniformivARB, glGetShaderSourceARB; - /** - * {@code GL_ARB_shading_language_include} extension method handles. - */ - public MethodHandle glNamedStringARB, glDeleteNamedStringARB, glCompileShaderIncludeARB, glIsNamedStringARB, glGetNamedStringARB, glGetNamedStringivARB; - /** - * {@code GL_ARB_sparse_buffer} extension method handles. - */ - public MethodHandle glBufferPageCommitmentARB, glNamedBufferPageCommitmentEXT, glNamedBufferPageCommitmentARB; - /** - * {@code GL_ARB_sparse_texture} extension method handles. - */ - public MethodHandle glTexPageCommitmentARB; - /** - * {@code GL_ARB_texture_buffer_object} extension method handles. - */ - public MethodHandle glTexBufferARB; - /** - * {@code GL_ARB_texture_compression} extension method handles. - */ - public MethodHandle glCompressedTexImage3DARB, glCompressedTexImage2DARB, glCompressedTexImage1DARB, glCompressedTexSubImage3DARB, - glCompressedTexSubImage2DARB, glCompressedTexSubImage1DARB, glGetCompressedTexImageARB; - /** - * {@code GL_ARB_transpose_matrix} extension method handles. - */ - public MethodHandle glLoadTransposeMatrixfARB, glLoadTransposeMatrixdARB, glMultTransposeMatrixfARB, glMultTransposeMatrixdARB; - /** - * {@code GL_ARB_vertex_blend} extension method handles. - */ - public MethodHandle glWeightbvARB, glWeightsvARB, glWeightivARB, glWeightfvARB, glWeightdvARB, glWeightubvARB, glWeightusvARB, - glWeightuivARB, glWeightPointerARB, glVertexBlendARB; - /** - * {@code GL_ARB_vertex_buffer_object} extension method handles. - */ - public MethodHandle glBindBufferARB, glDeleteBuffersARB, glGenBuffersARB, glIsBufferARB, glBufferDataARB, glBufferSubDataARB, - glGetBufferSubDataARB, glMapBufferARB, glUnmapBufferARB, glGetBufferParameterivARB, glGetBufferPointervARB; - /** - * {@code GL_ARB_vertex_program} extension method handles. - */ - public MethodHandle glVertexAttrib1dARB, glVertexAttrib1dvARB, glVertexAttrib1fARB, glVertexAttrib1fvARB, glVertexAttrib1sARB, glVertexAttrib1svARB, - glVertexAttrib2dARB, glVertexAttrib2dvARB, glVertexAttrib2fARB, glVertexAttrib2fvARB, glVertexAttrib2sARB, glVertexAttrib2svARB, - glVertexAttrib3dARB, glVertexAttrib3dvARB, glVertexAttrib3fARB, glVertexAttrib3fvARB, glVertexAttrib3sARB, glVertexAttrib3svARB, - glVertexAttrib4NbvARB, glVertexAttrib4NivARB, glVertexAttrib4NsvARB, glVertexAttrib4NubARB, glVertexAttrib4NubvARB, glVertexAttrib4NuivARB, - glVertexAttrib4NusvARB, glVertexAttrib4bvARB, glVertexAttrib4dARB, glVertexAttrib4dvARB, glVertexAttrib4fARB, glVertexAttrib4fvARB, - glVertexAttrib4ivARB, glVertexAttrib4sARB, glVertexAttrib4svARB, glVertexAttrib4ubvARB, glVertexAttrib4uivARB, glVertexAttrib4usvARB, - glVertexAttribPointerARB, glEnableVertexAttribArrayARB, glDisableVertexAttribArrayARB, glGetVertexAttribdvARB, glGetVertexAttribfvARB, glGetVertexAttribivARB, - glGetVertexAttribPointervARB; - /** - * {@code GL_ARB_vertex_shader} extension method handles. - */ - public MethodHandle glBindAttribLocationARB, glGetActiveAttribARB, glGetAttribLocationARB; - /** - * {@code GL_ARB_viewport_array} extension method handles. - */ - public MethodHandle glDepthRangeArraydvNV, glDepthRangeIndexeddNV; - /** - * {@code GL_ARB_window_pos} extension method handles. - */ - public MethodHandle glWindowPos2dARB, glWindowPos2dvARB, glWindowPos2fARB, glWindowPos2fvARB, glWindowPos2iARB, glWindowPos2ivARB, - glWindowPos2sARB, glWindowPos2svARB, glWindowPos3dARB, glWindowPos3dvARB, glWindowPos3fARB, glWindowPos3fvARB, - glWindowPos3iARB, glWindowPos3ivARB, glWindowPos3sARB, glWindowPos3svARB; - - // endregion - - /////////////////////////////////////////////////////////////////////////// - // region ATI - /////////////////////////////////////////////////////////////////////////// - - // endregion - - /////////////////////////////////////////////////////////////////////////// - // region EXT - /////////////////////////////////////////////////////////////////////////// - - // endregion - - /////////////////////////////////////////////////////////////////////////// - // region GREMEDY - /////////////////////////////////////////////////////////////////////////// - - /** - * {@code GL_GREMEDY_frame_terminator} extension method handles. - */ - public MethodHandle glFrameTerminatorGREMEDY; - /** - * {@code GL_GREMEDY_string_marker} extension method handles. - */ - public MethodHandle glStringMarkerGREMEDY; - - // endregion - - /////////////////////////////////////////////////////////////////////////// - // region HP - /////////////////////////////////////////////////////////////////////////// - - /** - * {@code GL_HP_image_transform} extension method handles. - */ - public MethodHandle glGetImageTransformParameterfvHP, glGetImageTransformParameterivHP, glImageTransformParameterfHP, - glImageTransformParameterfvHP, glImageTransformParameteriHP, glImageTransformParameterivHP; - - // endregion - - /////////////////////////////////////////////////////////////////////////// - // region IBM - /////////////////////////////////////////////////////////////////////////// - - /** - * {@code GL_IBM_multimode_draw_arrays} extension method handles. - */ - public MethodHandle glMultiModeDrawArraysIBM, glMultiModeDrawElementsIBM; - /** - * {@code GL_IBM_static_data} extension method handles. - */ - public MethodHandle glFlushStaticDataIBM; - /** - * {@code GL_IBM_vertex_array_lists} extension method handles. - */ - public MethodHandle glColorPointerListIBM, glEdgeFlagPointerListIBM, glFogCoordPointerListIBM, glIndexPointerListIBM, - glNormalPointerListIBM, glSecondaryColorPointerListIBM, glTexCoordPointerListIBM, glVertexPointerListIBM; - - // endregion - - /////////////////////////////////////////////////////////////////////////// - // region INGR - /////////////////////////////////////////////////////////////////////////// - - /** - * {@code GL_INGR_blend_func_separate} extension method handles. - */ - public MethodHandle glBlendFuncSeparateINGR; - - // endregion - - /////////////////////////////////////////////////////////////////////////// - // region INTEL - /////////////////////////////////////////////////////////////////////////// - - /** - * {@code GL_INTEL_framebuffer_CMAA} extension method handles. - */ - public MethodHandle glApplyFramebufferAttachmentCMAAINTEL; - /** - * {@code GL_INTEL_map_texture} extension method handles. - */ - public MethodHandle glMapTexture2DINTEL, glSyncTextureINTEL, glUnmapTexture2DINTEL; - /** - * {@code GL_INTEL_parallel_arrays} extension method handles. - */ - public MethodHandle glColorPointervINTEL, glNormalPointervINTEL, glTexCoordPointervINTEL, glVertexPointervINTEL; - /** - * {@code GL_INTEL_performance_query} extension method handles. - */ - public MethodHandle glBeginPerfQueryINTEL, glCreatePerfQueryINTEL, glDeletePerfQueryINTEL, glEndPerfQueryINTEL, glGetFirstPerfQueryIdINTEL, - glGetNextPerfQueryIdINTEL, glGetPerfCounterInfoINTEL, glGetPerfQueryDataINTEL, glGetPerfQueryIdByNameINTEL, glGetPerfQueryInfoINTEL; - - // endregion - - /////////////////////////////////////////////////////////////////////////// - // region KHR - /////////////////////////////////////////////////////////////////////////// - - /** - * {@code GL_KHR_blend_equation_advanced} extension method handles. - */ - public MethodHandle glBlendBarrierKHR; - /** - * {@code GL_KHR_parallel_shader_compile} extension method handles. - */ - public MethodHandle glMaxShaderCompilerThreadsKHR; - - // endregion - - /////////////////////////////////////////////////////////////////////////// - // region MESA - /////////////////////////////////////////////////////////////////////////// - - /** - * {@code GL_MESA_framebuffer_flip_y} extension method handles. - */ - public MethodHandle glFramebufferParameteriMESA, glGetFramebufferParameterivMESA; - /** - * {@code GL_MESA_resize_buffers} extension method handles. - */ - public MethodHandle glResizeBuffersMESA; - /** - * {@code GL_MESA_window_pos} extension method handles. - */ - public MethodHandle glWindowPos2dMESA, glWindowPos2dvMESA, glWindowPos2fMESA, glWindowPos2fvMESA, glWindowPos2iMESA, glWindowPos2ivMESA, - glWindowPos2sMESA, glWindowPos2svMESA, glWindowPos3dMESA, glWindowPos3dvMESA, glWindowPos3fMESA, glWindowPos3fvMESA, - glWindowPos3iMESA, glWindowPos3ivMESA, glWindowPos3sMESA, glWindowPos3svMESA, glWindowPos4dMESA, glWindowPos4dvMESA, - glWindowPos4fMESA, glWindowPos4fvMESA, glWindowPos4iMESA, glWindowPos4ivMESA, glWindowPos4sMESA, glWindowPos4svMESA; - - // endregion - - /////////////////////////////////////////////////////////////////////////// - // region NV - /////////////////////////////////////////////////////////////////////////// - - // endregion - - /////////////////////////////////////////////////////////////////////////// - // region OES - /////////////////////////////////////////////////////////////////////////// - - // endregion - - /////////////////////////////////////////////////////////////////////////// - // region OVR - /////////////////////////////////////////////////////////////////////////// - - /** - * {@code GL_OVR_multiview} extension method handles. - */ - public MethodHandle glFramebufferTextureMultiviewOVR; - - // endregion - - /////////////////////////////////////////////////////////////////////////// - // region PGI - /////////////////////////////////////////////////////////////////////////// - - /** - * {@code GL_PGI_misc_hints} extension method handles. - */ - public MethodHandle glHintPGI; - - // endregion - - /////////////////////////////////////////////////////////////////////////// - // region SGI - /////////////////////////////////////////////////////////////////////////// - - // endregion - - /////////////////////////////////////////////////////////////////////////// - // region SUN - /////////////////////////////////////////////////////////////////////////// - - /** - * {@code GL_SUNX_constant_data} extension method handles. - */ - public MethodHandle glFinishTextureSUNX; - /** - * {@code GL_SUN_global_alpha} extension method handles. - */ - public MethodHandle glGlobalAlphaFactorbSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactoriSUN, - glGlobalAlphaFactorsSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactoruiSUN, glGlobalAlphaFactorusSUN; - /** - * {@code GL_SUN_mesh_array} extension method handles. - */ - public MethodHandle glDrawMeshArraysSUN; - /** - * {@code GL_SUN_triangle_list} extension method handles. - */ - public MethodHandle glReplacementCodePointerSUN, glReplacementCodeubSUN, glReplacementCodeubvSUN, - glReplacementCodeuiSUN, glReplacementCodeuivSUN, glReplacementCodeusSUN, glReplacementCodeusvSUN; - /** - * {@code GL_SUN_vertex} extension method handles. - */ - public MethodHandle glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, - glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glNormal3fVertex3fSUN, - glNormal3fVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, - glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, - glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, - glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN, - glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, - glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiVertex3fSUN, - glReplacementCodeuiVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, - glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord2fColor4ubVertex3fSUN, - glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, - glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, - glTexCoord4fColor4fNormal3fVertex4fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN; - - // endregion + /** GLCapabilities */ public final GLCapabilities caps; /** @@ -714,13 +202,71 @@ public GLExtCaps(GLCapabilities caps) { this.caps = caps; } + /** Method handles. */ + public MethodHandle + glGetGraphicsResetStatusARB, glGetnCompressedTexImageARB, glGetnTexImageARB, glGetnUniformdvARB, glGetnUniformfvARB, glGetnUniformivARB, glGetnUniformuivARB, glReadnPixelsARB, glEvaluateDepthValuesARB, glFramebufferSampleLocationsfvARB, glNamedFramebufferSampleLocationsfvARB, glMinSampleShadingARB, glDeleteObjectARB, glGetHandleARB, glDetachObjectARB, glCreateShaderObjectARB, + glShaderSourceARB, glCompileShaderARB, glCreateProgramObjectARB, glAttachObjectARB, glLinkProgramARB, glUseProgramObjectARB, glValidateProgramARB, glUniform1fARB, glUniform2fARB, glUniform3fARB, glUniform4fARB, glUniform1iARB, glUniform2iARB, glUniform3iARB, glUniform4iARB, glUniform1fvARB, + glUniform2fvARB, glUniform3fvARB, glUniform4fvARB, glUniform1ivARB, glUniform2ivARB, glUniform3ivARB, glUniform4ivARB, glUniformMatrix2fvARB, glUniformMatrix3fvARB, glUniformMatrix4fvARB, glGetObjectParameterfvARB, glGetObjectParameterivARB, glGetInfoLogARB, glGetAttachedObjectsARB, glGetUniformLocationARB, glGetActiveUniformARB, + glGetUniformfvARB, glGetUniformivARB, glGetShaderSourceARB, glNamedStringARB, glDeleteNamedStringARB, glCompileShaderIncludeARB, glIsNamedStringARB, glGetNamedStringARB, glGetNamedStringivARB, glBufferPageCommitmentARB, glNamedBufferPageCommitmentEXT, glNamedBufferPageCommitmentARB, glTexPageCommitmentARB, glTexBufferARB, glCompressedTexImage3DARB, glCompressedTexImage2DARB, + glCompressedTexImage1DARB, glCompressedTexSubImage3DARB, glCompressedTexSubImage2DARB, glCompressedTexSubImage1DARB, glGetCompressedTexImageARB, glLoadTransposeMatrixfARB, glLoadTransposeMatrixdARB, glMultTransposeMatrixfARB, glMultTransposeMatrixdARB, glWeightbvARB, glWeightsvARB, glWeightivARB, glWeightfvARB, glWeightdvARB, glWeightubvARB, glWeightusvARB, + glWeightuivARB, glWeightPointerARB, glVertexBlendARB, glBindBufferARB, glDeleteBuffersARB, glGenBuffersARB, glIsBufferARB, glBufferDataARB, glBufferSubDataARB, glGetBufferSubDataARB, glMapBufferARB, glUnmapBufferARB, glGetBufferParameterivARB, glGetBufferPointervARB, glVertexAttrib1dARB, glVertexAttrib1dvARB, + glVertexAttrib1fARB, glVertexAttrib1fvARB, glVertexAttrib1sARB, glVertexAttrib1svARB, glVertexAttrib2dARB, glVertexAttrib2dvARB, glVertexAttrib2fARB, glVertexAttrib2fvARB, glVertexAttrib2sARB, glVertexAttrib2svARB, glVertexAttrib3dARB, glVertexAttrib3dvARB, glVertexAttrib3fARB, glVertexAttrib3fvARB, glVertexAttrib3sARB, glVertexAttrib3svARB, + glVertexAttrib4NbvARB, glVertexAttrib4NivARB, glVertexAttrib4NsvARB, glVertexAttrib4NubARB, glVertexAttrib4NubvARB, glVertexAttrib4NuivARB, glVertexAttrib4NusvARB, glVertexAttrib4bvARB, glVertexAttrib4dARB, glVertexAttrib4dvARB, glVertexAttrib4fARB, glVertexAttrib4fvARB, glVertexAttrib4ivARB, glVertexAttrib4sARB, glVertexAttrib4svARB, glVertexAttrib4ubvARB, + glVertexAttrib4uivARB, glVertexAttrib4usvARB, glVertexAttribPointerARB, glEnableVertexAttribArrayARB, glDisableVertexAttribArrayARB, glGetVertexAttribdvARB, glGetVertexAttribfvARB, glGetVertexAttribivARB, glGetVertexAttribPointervARB, glBindAttribLocationARB, glGetActiveAttribARB, glGetAttribLocationARB, glDepthRangeArraydvNV, glDepthRangeIndexeddNV, glWindowPos2dARB, glWindowPos2dvARB, + glWindowPos2fARB, glWindowPos2fvARB, glWindowPos2iARB, glWindowPos2ivARB, glWindowPos2sARB, glWindowPos2svARB, glWindowPos3dARB, glWindowPos3dvARB, glWindowPos3fARB, glWindowPos3fvARB, glWindowPos3iARB, glWindowPos3ivARB, glWindowPos3sARB, glWindowPos3svARB, glBlendBarrierKHR, glMaxShaderCompilerThreadsKHR, + glMultiTexCoord1bOES, glMultiTexCoord1bvOES, glMultiTexCoord2bOES, glMultiTexCoord2bvOES, glMultiTexCoord3bOES, glMultiTexCoord3bvOES, glMultiTexCoord4bOES, glMultiTexCoord4bvOES, glTexCoord1bOES, glTexCoord1bvOES, glTexCoord2bOES, glTexCoord2bvOES, glTexCoord3bOES, glTexCoord3bvOES, glTexCoord4bOES, glTexCoord4bvOES, + glVertex2bOES, glVertex2bvOES, glVertex3bOES, glVertex3bvOES, glVertex4bOES, glVertex4bvOES, glAlphaFuncxOES, glClearColorxOES, glClearDepthxOES, glClipPlanexOES, glColor4xOES, glDepthRangexOES, glFogxOES, glFogxvOES, glFrustumxOES, glGetClipPlanexOES, + glGetFixedvOES, glGetTexEnvxvOES, glGetTexParameterxvOES, glLightModelxOES, glLightModelxvOES, glLightxOES, glLightxvOES, glLineWidthxOES, glLoadMatrixxOES, glMaterialxOES, glMaterialxvOES, glMultMatrixxOES, glMultiTexCoord4xOES, glNormal3xOES, glOrthoxOES, glPointParameterxvOES, + glPointSizexOES, glPolygonOffsetxOES, glRotatexOES, glScalexOES, glTexEnvxOES, glTexEnvxvOES, glTexParameterxOES, glTexParameterxvOES, glTranslatexOES, glAccumxOES, glBitmapxOES, glBlendColorxOES, glClearAccumxOES, glColor3xOES, glColor3xvOES, glColor4xvOES, + glConvolutionParameterxOES, glConvolutionParameterxvOES, glEvalCoord1xOES, glEvalCoord1xvOES, glEvalCoord2xOES, glEvalCoord2xvOES, glFeedbackBufferxOES, glGetConvolutionParameterxvOES, glGetHistogramParameterxvOES, glGetLightxOES, glGetMapxvOES, glGetMaterialxOES, glGetPixelMapxv, glGetTexGenxvOES, glGetTexLevelParameterxvOES, glIndexxOES, + glIndexxvOES, glLoadTransposeMatrixxOES, glMap1xOES, glMap2xOES, glMapGrid1xOES, glMapGrid2xOES, glMultTransposeMatrixxOES, glMultiTexCoord1xOES, glMultiTexCoord1xvOES, glMultiTexCoord2xOES, glMultiTexCoord2xvOES, glMultiTexCoord3xOES, glMultiTexCoord3xvOES, glMultiTexCoord4xvOES, glNormal3xvOES, glPassThroughxOES, + glPixelMapx, glPixelStorex, glPixelTransferxOES, glPixelZoomxOES, glPrioritizeTexturesxOES, glRasterPos2xOES, glRasterPos2xvOES, glRasterPos3xOES, glRasterPos3xvOES, glRasterPos4xOES, glRasterPos4xvOES, glRectxOES, glRectxvOES, glTexCoord1xOES, glTexCoord1xvOES, glTexCoord2xOES, + glTexCoord2xvOES, glTexCoord3xOES, glTexCoord3xvOES, glTexCoord4xOES, glTexCoord4xvOES, glTexGenxOES, glTexGenxvOES, glVertex2xOES, glVertex2xvOES, glVertex3xOES, glVertex3xvOES, glVertex4xOES, glVertex4xvOES, glQueryMatrixxOES, glClearDepthfOES, glClipPlanefOES, + glDepthRangefOES, glFrustumfOES, glGetClipPlanefOES, glOrthofOES, glTbufferMask3DFX, glDebugMessageEnableAMD, glDebugMessageInsertAMD, glDebugMessageCallbackAMD, glGetDebugMessageLogAMD, glBlendFuncIndexedAMD, glBlendFuncSeparateIndexedAMD, glBlendEquationIndexedAMD, glBlendEquationSeparateIndexedAMD, glRenderbufferStorageMultisampleAdvancedAMD, glNamedRenderbufferStorageMultisampleAdvancedAMD, glFramebufferSamplePositionsfvAMD, + glNamedFramebufferSamplePositionsfvAMD, glGetFramebufferParameterfvAMD, glGetNamedFramebufferParameterfvAMD, glUniform1i64NV, glUniform2i64NV, glUniform3i64NV, glUniform4i64NV, glUniform1i64vNV, glUniform2i64vNV, glUniform3i64vNV, glUniform4i64vNV, glUniform1ui64NV, glUniform2ui64NV, glUniform3ui64NV, glUniform4ui64NV, glUniform1ui64vNV, + glUniform2ui64vNV, glUniform3ui64vNV, glUniform4ui64vNV, glGetUniformi64vNV, glGetUniformui64vNV, glProgramUniform1i64NV, glProgramUniform2i64NV, glProgramUniform3i64NV, glProgramUniform4i64NV, glProgramUniform1i64vNV, glProgramUniform2i64vNV, glProgramUniform3i64vNV, glProgramUniform4i64vNV, glProgramUniform1ui64NV, glProgramUniform2ui64NV, glProgramUniform3ui64NV, + glProgramUniform4ui64NV, glProgramUniform1ui64vNV, glProgramUniform2ui64vNV, glProgramUniform3ui64vNV, glProgramUniform4ui64vNV, glVertexAttribParameteriAMD, glMultiDrawArraysIndirectAMD, glMultiDrawElementsIndirectAMD, glGenNamesAMD, glDeleteNamesAMD, glIsNameAMD, glQueryObjectParameteruiAMD, glGetPerfMonitorGroupsAMD, glGetPerfMonitorCountersAMD, glGetPerfMonitorGroupStringAMD, glGetPerfMonitorCounterStringAMD, + glGetPerfMonitorCounterInfoAMD, glGenPerfMonitorsAMD, glDeletePerfMonitorsAMD, glSelectPerfMonitorCountersAMD, glBeginPerfMonitorAMD, glEndPerfMonitorAMD, glGetPerfMonitorCounterDataAMD, glSetMultisamplefvAMD, glTexStorageSparseAMD, glTextureStorageSparseAMD, glStencilOpValueAMD, glTessellationFactorAMD, glTessellationModeAMD, glElementPointerAPPLE, glDrawElementArrayAPPLE, glDrawRangeElementArrayAPPLE, + glMultiDrawElementArrayAPPLE, glMultiDrawRangeElementArrayAPPLE, glGenFencesAPPLE, glDeleteFencesAPPLE, glSetFenceAPPLE, glIsFenceAPPLE, glTestFenceAPPLE, glFinishFenceAPPLE, glTestObjectAPPLE, glFinishObjectAPPLE, glBufferParameteriAPPLE, glFlushMappedBufferRangeAPPLE, glObjectPurgeableAPPLE, glObjectUnpurgeableAPPLE, glGetObjectParameterivAPPLE, glTextureRangeAPPLE, + glGetTexParameterPointervAPPLE, glBindVertexArrayAPPLE, glDeleteVertexArraysAPPLE, glGenVertexArraysAPPLE, glIsVertexArrayAPPLE, glVertexArrayRangeAPPLE, glFlushVertexArrayRangeAPPLE, glVertexArrayParameteriAPPLE, glEnableVertexAttribAPPLE, glDisableVertexAttribAPPLE, glIsVertexAttribEnabledAPPLE, glMapVertexAttrib1dAPPLE, glMapVertexAttrib1fAPPLE, glMapVertexAttrib2dAPPLE, glMapVertexAttrib2fAPPLE, glFrameTerminatorGREMEDY, + glStringMarkerGREMEDY, glImageTransformParameteriHP, glImageTransformParameterfHP, glImageTransformParameterivHP, glImageTransformParameterfvHP, glGetImageTransformParameterivHP, glGetImageTransformParameterfvHP, glMultiModeDrawArraysIBM, glMultiModeDrawElementsIBM, glFlushStaticDataIBM, glColorPointerListIBM, glSecondaryColorPointerListIBM, glEdgeFlagPointerListIBM, glFogCoordPointerListIBM, glIndexPointerListIBM, glNormalPointerListIBM, + glTexCoordPointerListIBM, glVertexPointerListIBM, glBlendFuncSeparateINGR, glApplyFramebufferAttachmentCMAAINTEL, glSyncTextureINTEL, glUnmapTexture2DINTEL, glMapTexture2DINTEL, glVertexPointervINTEL, glNormalPointervINTEL, glColorPointervINTEL, glTexCoordPointervINTEL, glBeginPerfQueryINTEL, glCreatePerfQueryINTEL, glDeletePerfQueryINTEL, glEndPerfQueryINTEL, glGetFirstPerfQueryIdINTEL, + glGetNextPerfQueryIdINTEL, glGetPerfCounterInfoINTEL, glGetPerfQueryDataINTEL, glGetPerfQueryIdByNameINTEL, glGetPerfQueryInfoINTEL, glFramebufferParameteriMESA, glGetFramebufferParameterivMESA, glResizeBuffersMESA, glWindowPos2dMESA, glWindowPos2dvMESA, glWindowPos2fMESA, glWindowPos2fvMESA, glWindowPos2iMESA, glWindowPos2ivMESA, glWindowPos2sMESA, glWindowPos2svMESA, + glWindowPos3dMESA, glWindowPos3dvMESA, glWindowPos3fMESA, glWindowPos3fvMESA, glWindowPos3iMESA, glWindowPos3ivMESA, glWindowPos3sMESA, glWindowPos3svMESA, glWindowPos4dMESA, glWindowPos4dvMESA, glWindowPos4fMESA, glWindowPos4fvMESA, glWindowPos4iMESA, glWindowPos4ivMESA, glWindowPos4sMESA, glWindowPos4svMESA, + glFramebufferTextureMultiviewOVR, glHintPGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, + glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, + glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, + glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; + void load(GLLoadFunc load) { + GLARBRobustness.load(this, load); + GLARBSampleLocations.load(this, load); + GLARBSampleShading.load(this, load); + GLARBShaderObjects.load(this, load); + GLARBShadingLanguageInclude.load(this, load); + GLARBSparseBuffer.load(this, load); + GLARBSparseTexture.load(this, load); + GLARBTextureBufferObject.load(this, load); + GLARBTextureCompression.load(this, load); + GLARBTransposeMatrix.load(this, load); + GLARBVertexBlend.load(this, load); + GLARBVertexBufferObject.load(this, load); + GLARBVertexProgram.load(this, load); + GLARBVertexShader.load(this, load); + GLARBViewportArray.load(this, load); + GLARBWindowPos.load(this, load); + GLKHRBlendEquationAdvanced.load(this, load); + GLKHRParallelShaderCompile.load(this, load); + GLOESByteCoordinates.load(this, load); + GLOESFixedPoint.load(this, load); + GLOESQueryMatrix.load(this, load); + GLOESSinglePrecision.load(this, load); GL3DFXTbuffer.load(this, load); GLAMDDebugOutput.load(this, load); GLAMDDrawBuffersBlend.load(this, load); GLAMDFramebufferMultisampleAdvanced.load(this, load); GLAMDFramebufferSamplePositions.load(this, load); - // TODO: GLAMDGpuShaderInt64.load(this, load); + GLAMDGpuShaderInt64.load(this, load); GLAMDInterleavedElements.load(this, load); GLAMDMultiDrawIndirect.load(this, load); GLAMDNameGenDelete.load(this, load); @@ -738,122 +284,6 @@ void load(GLLoadFunc load) { GLAPPLEVertexArrayObject.load(this, load); GLAPPLEVertexArrayRange.load(this, load); GLAPPLEVertexProgramEvaluators.load(this, load); - GLARBES32Compatibility.load(this, load); - GLARBBindlessTexture.load(this, load); - GLARBCLEvent.load(this, load); - GLARBColorBufferFloat.load(this, load); - GLARBComputeVariableGroupSize.load(this, load); - GLARBDebugOutput.load(this, load); - GLARBDrawBuffers.load(this, load); - GLARBDrawBuffersBlend.load(this, load); - GLARBDrawInstanced.load(this, load); - GLARBFragmentProgram.load(this, load); - GLARBGeometryShader4.load(this, load); - GLARBGLSpirv.load(this, load); - GLARBGPUShaderInt64.load(this, load); - GLARBIndirectParameters.load(this, load); - GLARBInstancedArrays.load(this, load); - GLARBMatrixPalette.load(this, load); - GLARBMultisample.load(this, load); - GLARBMultitexture.load(this, load); - GLARBOcclusionQuery.load(this, load); - GLARBParallelShaderCompile.load(this, load); - GLARBPointParameters.load(this, load); - GLARBRobustness.load(this, load); - GLARBSampleLocations.load(this, load); - GLARBSampleShading.load(this, load); - GLARBShaderObjects.load(this, load); - GLARBShadingLanguageInclude.load(this, load); - GLARBSparseBuffer.load(this, load); - GLARBSparseTexture.load(this, load); - GLARBTextureBufferObject.load(this, load); - GLARBTextureCompression.load(this, load); - GLARBTransposeMatrix.load(this, load); - GLARBVertexBlend.load(this, load); - GLARBVertexBufferObject.load(this, load); - GLARBVertexProgram.load(this, load); - GLARBVertexShader.load(this, load); - GLARBViewportArray.load(this, load); - GLARBWindowPos.load(this, load); - // GLATIDraw_buffers.load(load); - // GLATIElement_array.load(load); - // GLATIEnvmap_bumpmap.load(load); - // GLATIFragment_shader.load(load); - // GLATIMap_object_buffer.load(load); - // GLATIPn_triangles.load(load); - // GLATISeparate_stencil.load(load); - // GLATIVertex_array_object.load(load); - // GLATIVertex_attrib_array_object.load(load); - // GLATIVertex_streams.load(load); - // GLEXT_EGL_image_storage.load(load); - // GLEXT_bindable_uniform.load(load); - // GLEXT_blend_color.load(load); - // GLEXT_blend_equation_separate.load(load); - // GLEXT_blend_func_separate.load(load); - // GLEXT_blend_minmax.load(load); - // GLEXT_color_subtable.load(load); - // GLEXT_compiled_vertex_array.load(load); - // GLEXT_convolution.load(load); - // GLEXT_coordinate_frame.load(load); - // GLEXT_copy_texture.load(load); - // GLEXT_cull_vertex.load(load); - // GLEXT_debug_label.load(load); - // GLEXT_debug_marker.load(load); - // GLEXT_depth_bounds_test.load(load); - // GLEXT_direct_state_access.load(load); - // GLEXT_draw_buffers2.load(load); - // GLEXT_draw_instanced.load(load); - // GLEXT_draw_range_elements.load(load); - // GLEXT_external_buffer.load(load); - // GLEXT_fog_coord.load(load); - // GLEXT_framebuffer_blit.load(load); - // GLEXT_framebuffer_multisample.load(load); - // GLEXT_framebuffer_object.load(load); - // GLEXT_geometry_shader4.load(load); - // GLEXT_gpu_program_parameters.load(load); - // GLEXT_gpu_shader4.load(load); - // GLEXT_histogram.load(load); - // GLEXT_index_func.load(load); - // GLEXT_index_material.load(load); - // GLEXT_light_texture.load(load); - // GLEXT_memory_object.load(load); - // GLEXT_memory_object_fd.load(load); - // GLEXT_memory_object_win32.load(load); - // GLEXT_multi_draw_arrays.load(load); - // GLEXT_multisample.load(load); - // GLEXT_paletted_texture.load(load); - // GLEXT_pixel_transform.load(load); - // GLEXT_point_parameters.load(load); - // GLEXT_polygon_offset.load(load); - // GLEXT_polygon_offset_clamp.load(load); - // GLEXT_provoking_vertex.load(load); - // GLEXT_raster_multisample.load(load); - // GLEXT_secondary_color.load(load); - // GLEXT_semaphore.load(load); - // GLEXT_semaphore_fd.load(load); - // GLEXT_semaphore_win32.load(load); - // GLEXT_separate_shader_objects.load(load); - // GLEXT_shader_framebuffer_fetch_non_coherent.load(load); - // GLEXT_shader_image_load_store.load(load); - // GLEXT_stencil_clear_tag.load(load); - // GLEXT_stencil_two_side.load(load); - // GLEXT_subtexture.load(load); - // GLEXT_texture3D.load(load); - // GLEXT_texture_array.load(load); - // GLEXT_texture_buffer_object.load(load); - // GLEXT_texture_integer.load(load); - // GLEXT_texture_object.load(load); - // GLEXT_texture_perturb_normal.load(load); - // GLEXT_texture_storage.load(load); - // GLEXT_timer_query.load(load); - // GLEXT_transform_feedback.load(load); - // GLEXT_vertex_array.load(load); - // GLEXT_vertex_attrib_64bit.load(load); - // GLEXT_vertex_shader.load(load); - // GLEXT_vertex_weighting.load(load); - // GLEXT_win32_keyed_mutex.load(load); - // GLEXT_window_rectangles.load(load); - // GLEXT_x11_sync_object.load(load); GLGREMEDYFrameTerminator.load(this, load); GLGREMEDYStringMarker.load(this, load); GLHPImageTransform.load(this, load); @@ -865,104 +295,11 @@ void load(GLLoadFunc load) { GLINTELMapTexture.load(this, load); GLINTELParallelArrays.load(this, load); GLINTELPerformanceQuery.load(this, load); - GLKHRBlendEquationAdvanced.load(this, load); - GLKHRParallelShaderCompile.load(this, load); GLMESAFramebufferFlipY.load(this, load); GLMESAResizeBuffers.load(this, load); GLMESAWindowPos.load(this, load); - // GLNVX_conditional_render.load(load); - // GLNVX_gpu_multicast2.load(load); - // GLNVX_linked_gpu_multicast.load(load); - // GLNVX_progress_fence.load(load); - // GLNV_alpha_to_coverage_dither_control.load(load); - // GLNV_bindless_multi_draw_indirect.load(load); - // GLNV_bindless_multi_draw_indirect_count.load(load); - // GLNV_bindless_texture.load(load); - // GLNV_blend_equation_advanced.load(load); - // GLNV_clip_space_w_scaling.load(load); - // GLNV_command_list.load(load); - // GLNV_conditional_render.load(load); - // GLNV_conservative_raster.load(load); - // GLNV_conservative_raster_dilate.load(load); - // GLNV_conservative_raster_pre_snap_triangles.load(load); - // GLNV_copy_image.load(load); - // GLNV_depth_buffer_float.load(load); - // GLNV_draw_texture.load(load); - // GLNV_draw_vulkan_image.load(load); - // GLNV_evaluators.load(load); - // GLNV_explicit_multisample.load(load); - // GLNV_fence.load(load); - // GLNV_fragment_coverage_to_color.load(load); - // GLNV_fragment_program.load(load); - // GLNV_framebuffer_mixed_samples.load(load); - // GLNV_framebuffer_multisample_coverage.load(load); - // GLNV_geometry_program4.load(load); - // GLNV_gpu_multicast.load(load); - // GLNV_gpu_program4.load(load); - // GLNV_gpu_program5.load(load); - // GLNV_gpu_shader5.load(load); - // GLNV_half_float.load(load); - // GLNV_internalformat_sample_query.load(load); - // GLNV_memory_attachment.load(load); - // GLNV_memory_object_sparse.load(load); - // GLNV_mesh_shader.load(load); - // GLNV_occlusion_query.load(load); - // GLNV_parameter_buffer_object.load(load); - // GLNV_path_rendering.load(load); - // GLNV_pixel_data_range.load(load); - // GLNV_point_sprite.load(load); - // GLNV_present_video.load(load); - // GLNV_primitive_restart.load(load); - // GLNV_query_resource.load(load); - // GLNV_query_resource_tag.load(load); - // GLNV_register_combiners.load(load); - // GLNV_register_combiners2.load(load); - // GLNV_sample_locations.load(load); - // GLNV_scissor_exclusive.load(load); - // GLNV_shader_buffer_load.load(load); - // GLNV_shading_rate_image.load(load); - // GLNV_texture_barrier.load(load); - // GLNV_texture_multisample.load(load); - // GLNV_timeline_semaphore.load(load); - // GLNV_transform_feedback.load(load); - // GLNV_transform_feedback2.load(load); - // GLNV_vdpau_interop.load(load); - // GLNV_vdpau_interop2.load(load); - // GLNV_vertex_array_range.load(load); - // GLNV_vertex_attrib_integer_64bit.load(load); - // GLNV_vertex_buffer_unified_memory.load(load); - // GLNV_vertex_program.load(load); - // GLNV_vertex_program4.load(load); - // GLNV_video_capture.load(load); - // GLNV_viewport_swizzle.load(load); - // GLOES_byte_coordinates.load(load); - // GLOES_fixed_point.load(load); - // GLOES_query_matrix.load(load); - // GLOES_single_precision.load(load); GLOVRMultiview.load(this, load); GLPGIMiscHints.load(this, load); - // GLSGISDetailTexture.load(load); - // GLSGISFogFunction.load(load); - // GLSGISMultisample.load(load); - // GLSGISPixelTexture.load(load); - // GLSGISPointParameters.load(load); - // GLSGISSharpenTexture.load(load); - // GLSGISTexture4D.load(load); - // GLSGISTextureColorMask.load(load); - // GLSGISTextureFilter4.load(load); - // GLSGIXAsync.load(load); - // GLSGIXFlushRaster.load(load); - // GLSGIXFragmentLighting.load(load); - // GLSGIXFramezoom.load(load); - // GLSGIXIglooInterface.load(load); - // GLSGIXInstruments.load(load); - // GLSGIXListPriority.load(load); - // GLSGIXPixelTexture.load(load); - // GLSGIXPolynomialFfd.load(load); - // GLSGIXReferencePlane.load(load); - // GLSGIXSprite.load(load); - // GLSGIXTagSampleBuffer.load(load); - // GLSGIColorTable.load(load); GLSUNXConstantData.load(this, load); GLSUNGlobalAlpha.load(this, load); GLSUNMeshArray.load(this, load); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXMultisample.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXMultisample.java new file mode 100644 index 00000000..2c031de6 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXMultisample.java @@ -0,0 +1,35 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_3DFX_multisample} + */ +public final class GL3DFXMultisample { + public static final int GL_MULTISAMPLE_3DFX = 0x86B2; + public static final int GL_SAMPLE_BUFFERS_3DFX = 0x86B3; + public static final int GL_SAMPLES_3DFX = 0x86B4; + public static final int GL_MULTISAMPLE_BIT_3DFX = 0x20000000; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTbuffer.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTbuffer.java index 369b41f4..9f49a643 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTbuffer.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTbuffer.java @@ -14,31 +14,30 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_3DFX_tbuffer} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_3DFX_tbuffer} + */ public final class GL3DFXTbuffer { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_3DFX_tbuffer) return; - ext.glTbufferMask3DFX = load.invoke("glTbufferMask3DFX", FunctionDescriptors.IV); + ext.glTbufferMask3DFX = load.invoke("glTbufferMask3DFX", ofVoid(JAVA_INT)); } public static void glTbufferMask3DFX(int mask) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTbufferMask3DFX).invokeExact(mask); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glTbufferMask3DFX).invokeExact(mask); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTextureCompressionFXT1.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTextureCompressionFXT1.java new file mode 100644 index 00000000..4af7fd0d --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTextureCompressionFXT1.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_3DFX_texture_compression_FXT1} + */ +public final class GL3DFXTextureCompressionFXT1 { + public static final int GL_COMPRESSED_RGB_FXT1_3DFX = 0x86B0; + public static final int GL_COMPRESSED_RGBA_FXT1_3DFX = 0x86B1; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYFrameTerminator.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYFrameTerminator.java index 6fb5af1d..d3654e39 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYFrameTerminator.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYFrameTerminator.java @@ -14,31 +14,30 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_GREMEDY_frame_terminator} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_GREMEDY_frame_terminator} + */ public final class GLGREMEDYFrameTerminator { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_GREMEDY_frame_terminator) return; - ext.glFrameTerminatorGREMEDY = load.invoke("glFrameTerminatorGREMEDY", FunctionDescriptors.V); + ext.glFrameTerminatorGREMEDY = load.invoke("glFrameTerminatorGREMEDY", ofVoid()); } public static void glFrameTerminatorGREMEDY() { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glFrameTerminatorGREMEDY).invokeExact(); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glFrameTerminatorGREMEDY).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYStringMarker.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYStringMarker.java index 7db2d567..bd095284 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYStringMarker.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYStringMarker.java @@ -14,33 +14,30 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; - -import java.lang.foreign.MemorySegment; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_GREMEDY_string_marker} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_GREMEDY_string_marker} + */ public final class GLGREMEDYStringMarker { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_GREMEDY_string_marker) return; - ext.glStringMarkerGREMEDY = load.invoke("glStringMarkerGREMEDY", FunctionDescriptors.IPV); + ext.glStringMarkerGREMEDY = load.invoke("glStringMarkerGREMEDY", ofVoid(JAVA_INT, ADDRESS)); } - public static void glStringMarkerGREMEDY(int len, MemorySegment string) { - var ext = GLLoader.getExtCapabilities(); + public static void glStringMarkerGREMEDY(int len, @NativeType("const void *") MemorySegment string) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glStringMarkerGREMEDY).invokeExact(len, string); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glStringMarkerGREMEDY).invokeExact(len, string); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPConvolutionBorderModes.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPConvolutionBorderModes.java new file mode 100644 index 00000000..ebc1c403 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPConvolutionBorderModes.java @@ -0,0 +1,35 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_HP_convolution_border_modes} + */ +public final class GLHPConvolutionBorderModes { + public static final int GL_IGNORE_BORDER_HP = 0x8150; + public static final int GL_CONSTANT_BORDER_HP = 0x8151; + public static final int GL_REPLICATE_BORDER_HP = 0x8153; + public static final int GL_CONVOLUTION_BORDER_COLOR_HP = 0x8154; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPImageTransform.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPImageTransform.java index 01bc872c..d2143737 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPImageTransform.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPImageTransform.java @@ -14,107 +14,85 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.internal.RuntimeHelper; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; -import java.lang.foreign.ValueLayout; - -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_HP_image_transform} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_HP_image_transform} + */ public final class GLHPImageTransform { + public static final int GL_IMAGE_SCALE_X_HP = 0x8155; + public static final int GL_IMAGE_SCALE_Y_HP = 0x8156; + public static final int GL_IMAGE_TRANSLATE_X_HP = 0x8157; + public static final int GL_IMAGE_TRANSLATE_Y_HP = 0x8158; + public static final int GL_IMAGE_ROTATE_ANGLE_HP = 0x8159; + public static final int GL_IMAGE_ROTATE_ORIGIN_X_HP = 0x815A; + public static final int GL_IMAGE_ROTATE_ORIGIN_Y_HP = 0x815B; + public static final int GL_IMAGE_MAG_FILTER_HP = 0x815C; + public static final int GL_IMAGE_MIN_FILTER_HP = 0x815D; + public static final int GL_IMAGE_CUBIC_WEIGHT_HP = 0x815E; + public static final int GL_CUBIC_HP = 0x815F; + public static final int GL_AVERAGE_HP = 0x8160; + public static final int GL_IMAGE_TRANSFORM_2D_HP = 0x8161; + public static final int GL_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP = 0x8162; + public static final int GL_PROXY_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP = 0x8163; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_HP_image_transform) return; - ext.glGetImageTransformParameterfvHP = load.invoke("glGetImageTransformParameterfvHP", IIPV); - ext.glGetImageTransformParameterivHP = load.invoke("glGetImageTransformParameterivHP", IIPV); - ext.glImageTransformParameterfHP = load.invoke("glImageTransformParameterfHP", IIFV); - ext.glImageTransformParameterfvHP = load.invoke("glImageTransformParameterfvHP", IIPV); - ext.glImageTransformParameteriHP = load.invoke("glImageTransformParameteriHP", IIIV); - ext.glImageTransformParameterivHP = load.invoke("glImageTransformParameterivHP", IIPV); + ext.glImageTransformParameteriHP = load.invoke("glImageTransformParameteriHP", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glImageTransformParameterfHP = load.invoke("glImageTransformParameterfHP", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glImageTransformParameterivHP = load.invoke("glImageTransformParameterivHP", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glImageTransformParameterfvHP = load.invoke("glImageTransformParameterfvHP", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetImageTransformParameterivHP = load.invoke("glGetImageTransformParameterivHP", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetImageTransformParameterfvHP = load.invoke("glGetImageTransformParameterfvHP", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); } - public static void glGetImageTransformParameterfvHP(int target, int pname, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glGetImageTransformParameterfvHP).invokeExact(target, pname, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGetImageTransformParameterfvHP(SegmentAllocator allocator, int target, int pname, float[] params) { - var seg = allocator.allocateArray(ValueLayout.JAVA_FLOAT, params.length); - glGetImageTransformParameterfvHP(target, pname, seg); - RuntimeHelper.toArray(seg, params); - } - - public static void glGetImageTransformParameterivHP(int target, int pname, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); + public static void glImageTransformParameteriHP(int target, int pname, int param) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetImageTransformParameterivHP).invokeExact(target, pname, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGetImageTransformParameterivHP(SegmentAllocator allocator, int target, int pname, int[] params) { - var seg = allocator.allocateArray(ValueLayout.JAVA_INT, params.length); - glGetImageTransformParameterivHP(target, pname, seg); - RuntimeHelper.toArray(seg, params); + check(ext.glImageTransformParameteriHP).invokeExact(target, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glImageTransformParameterfHP(int target, int pname, float param) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glImageTransformParameterfHP).invokeExact(target, pname, param); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glImageTransformParameterfHP).invokeExact(target, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glImageTransformParameterfvHP(int target, int pname, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); + public static void glImageTransformParameterivHP(int target, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glImageTransformParameterfvHP).invokeExact(target, pname, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glImageTransformParameterivHP).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glImageTransformParameterfvHP(SegmentAllocator allocator, int target, int pname, float[] params) { - glImageTransformParameterfvHP(target, pname, allocator.allocateArray(ValueLayout.JAVA_FLOAT, params)); + public static void glImageTransformParameterfvHP(int target, int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glImageTransformParameterfvHP).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glImageTransformParameteriHP(int target, int pname, int param) { - var ext = GLLoader.getExtCapabilities(); + public static void glGetImageTransformParameterivHP(int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glImageTransformParameteriHP).invokeExact(target, pname, param); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetImageTransformParameterivHP).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glImageTransformParameterivHP(int target, int pname, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); + public static void glGetImageTransformParameterfvHP(int target, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glImageTransformParameterivHP).invokeExact(target, pname, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetImageTransformParameterfvHP).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glImageTransformParameterivHP(SegmentAllocator allocator, int target, int pname, int[] params) { - glImageTransformParameterivHP(target, pname, allocator.allocateArray(ValueLayout.JAVA_INT, params)); - } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPOcclusionTest.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPOcclusionTest.java new file mode 100644 index 00000000..e8a982a0 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPOcclusionTest.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_HP_occlusion_test} + */ +public final class GLHPOcclusionTest { + public static final int GL_OCCLUSION_TEST_HP = 0x8165; + public static final int GL_OCCLUSION_TEST_RESULT_HP = 0x8166; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPTextureLighting.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPTextureLighting.java new file mode 100644 index 00000000..6ab52e78 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPTextureLighting.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_HP_texture_lighting} + */ +public final class GLHPTextureLighting { + public static final int GL_TEXTURE_LIGHTING_MODE_HP = 0x8167; + public static final int GL_TEXTURE_POST_SPECULAR_HP = 0x8168; + public static final int GL_TEXTURE_PRE_SPECULAR_HP = 0x8169; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLIBMMultimodeDrawArrays.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLIBMMultimodeDrawArrays.java deleted file mode 100644 index 6ae2ff08..00000000 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLIBMMultimodeDrawArrays.java +++ /dev/null @@ -1,75 +0,0 @@ -/* - * MIT License - * - * Copyright (c) 2022-2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - -package overrungl.opengl.ext; - -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; - -import static java.lang.foreign.ValueLayout.*; - -/** - * {@code GL_IBM_multimode_draw_arrays} - * - * @author squid233 - * @since 0.1.0 - */ -public final class GLIBMMultimodeDrawArrays { - public static void load(GLExtCaps ext, GLLoadFunc load) { - if (!ext.GL_IBM_multimode_draw_arrays) return; - ext.glMultiModeDrawArraysIBM = load.invoke("glMultiModeDrawArraysIBM", FunctionDescriptors.PPPIIV); - ext.glMultiModeDrawElementsIBM = load.invoke("glMultiModeDrawElementsIBM", FunctionDescriptors.PPIPIIV); - } - - public static void glMultiModeDrawArraysIBM(MemorySegment mode, MemorySegment first, MemorySegment count, int primCount, int modeStride) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glMultiModeDrawArraysIBM).invokeExact(mode, first, count, primCount, modeStride); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glMultiModeDrawArraysIBM(SegmentAllocator allocator, int[] mode, int[] first, int[] count, int primCount, int modeStride) { - glMultiModeDrawArraysIBM(allocator.allocateArray(JAVA_INT, mode), allocator.allocateArray(JAVA_INT, first), allocator.allocateArray(JAVA_INT, count), primCount, modeStride); - } - - public static void glMultiModeDrawElementsIBM(MemorySegment mode, MemorySegment count, int type, MemorySegment indices, int primCount, int modeStride) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glMultiModeDrawElementsIBM).invokeExact(mode, count, type, indices, primCount, modeStride); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glMultiModeDrawElementsIBM(SegmentAllocator allocator, int[] mode, int[] count, int type, byte[] indices, int primCount, int modeStride) { - glMultiModeDrawElementsIBM(allocator.allocateArray(JAVA_INT, mode), allocator.allocateArray(JAVA_INT, count), type, allocator.allocateArray(JAVA_BYTE, indices), primCount, modeStride); - } - - public static void glMultiModeDrawElementsIBM(SegmentAllocator allocator, int[] mode, int[] count, int type, short[] indices, int primCount, int modeStride) { - glMultiModeDrawElementsIBM(allocator.allocateArray(JAVA_INT, mode), allocator.allocateArray(JAVA_INT, count), type, allocator.allocateArray(JAVA_SHORT, indices), primCount, modeStride); - } - - public static void glMultiModeDrawElementsIBM(SegmentAllocator allocator, int[] mode, int[] count, int type, int[] indices, int primCount, int modeStride) { - glMultiModeDrawElementsIBM(allocator.allocateArray(JAVA_INT, mode), allocator.allocateArray(JAVA_INT, count), type, allocator.allocateArray(JAVA_INT, indices), primCount, modeStride); - } -} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLIBMVertexArrayLists.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLIBMVertexArrayLists.java deleted file mode 100644 index ea37755b..00000000 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLIBMVertexArrayLists.java +++ /dev/null @@ -1,117 +0,0 @@ -/* - * MIT License - * - * Copyright (c) 2022-2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - -package overrungl.opengl.ext; - -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import java.lang.foreign.MemorySegment; - -import static overrungl.FunctionDescriptors.*; - -/** - * {@code GL_IBM_vertex_array_lists} - * - * @author squid233 - * @since 0.1.0 - */ -public final class GLIBMVertexArrayLists { - public static void load(GLExtCaps ext, GLLoadFunc load) { - if (!ext.GL_IBM_vertex_array_lists) return; - ext.glColorPointerListIBM = load.invoke("glColorPointerListIBM", IIIPIV); - ext.glEdgeFlagPointerListIBM = load.invoke("glEdgeFlagPointerListIBM", IPIV); - ext.glFogCoordPointerListIBM = load.invoke("glFogCoordPointerListIBM", IIPIV); - ext.glIndexPointerListIBM = load.invoke("glIndexPointerListIBM", IIPIV); - ext.glNormalPointerListIBM = load.invoke("glNormalPointerListIBM", IIPIV); - ext.glSecondaryColorPointerListIBM = load.invoke("glSecondaryColorPointerListIBM", IIIPIV); - ext.glTexCoordPointerListIBM = load.invoke("glTexCoordPointerListIBM", IIIPIV); - ext.glVertexPointerListIBM = load.invoke("glVertexPointerListIBM", IIIPIV); - } - - public static void glColorPointerListIBM(int size, int type, int stride, MemorySegment pointer, int ptrStride) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glColorPointerListIBM).invokeExact(size, type, stride, pointer, ptrStride); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glEdgeFlagPointerListIBM(int stride, MemorySegment pointer, int ptrStride) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glEdgeFlagPointerListIBM).invokeExact(stride, pointer, ptrStride); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glFogCoordPointerListIBM(int type, int stride, MemorySegment pointer, int ptrStride) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glFogCoordPointerListIBM).invokeExact(type, stride, pointer, ptrStride); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glIndexPointerListIBM(int type, int stride, MemorySegment pointer, int ptrStride) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glIndexPointerListIBM).invokeExact(type, stride, pointer, ptrStride); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glNormalPointerListIBM(int type, int stride, MemorySegment pointer, int ptrStride) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glNormalPointerListIBM).invokeExact(type, stride, pointer, ptrStride); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glSecondaryColorPointerListIBM(int size, int type, int stride, MemorySegment pointer, int ptrStride) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glSecondaryColorPointerListIBM).invokeExact(size, type, stride, pointer, ptrStride); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glTexCoordPointerListIBM(int size, int type, int stride, MemorySegment pointer, int ptrStride) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glTexCoordPointerListIBM).invokeExact(size, type, stride, pointer, ptrStride); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glVertexPointerListIBM(int size, int type, int stride, MemorySegment pointer, int ptrStride) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glVertexPointerListIBM).invokeExact(size, type, stride, pointer, ptrStride); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } -} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRBlendFuncSeparate.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRBlendFuncSeparate.java index 2c3c9d64..222c25ae 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRBlendFuncSeparate.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRBlendFuncSeparate.java @@ -14,31 +14,30 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_INGR_blend_func_separate} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_INGR_blend_func_separate} + */ public final class GLINGRBlendFuncSeparate { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_INGR_blend_func_separate) return; - ext.glBlendFuncSeparateINGR = load.invoke("glBlendFuncSeparateINGR", FunctionDescriptors.IIIIV); + ext.glBlendFuncSeparateINGR = load.invoke("glBlendFuncSeparateINGR", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); } - public static void glBlendFuncSeparateINGR(int sfactorRGB, int dfactorRGB, int sfactorAlpha, int dfacctorAlpha) { - var ext = GLLoader.getExtCapabilities(); + public static void glBlendFuncSeparateINGR(int sfactorRGB, int dfactorRGB, int sfactorAlpha, int dfactorAlpha) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glBlendFuncSeparateINGR).invokeExact(sfactorRGB, dfactorRGB, sfactorAlpha, dfacctorAlpha); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glBlendFuncSeparateINGR).invokeExact(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRColorClamp.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRColorClamp.java new file mode 100644 index 00000000..0fbc4532 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRColorClamp.java @@ -0,0 +1,39 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_INGR_color_clamp} + */ +public final class GLINGRColorClamp { + public static final int GL_RED_MIN_CLAMP_INGR = 0x8560; + public static final int GL_GREEN_MIN_CLAMP_INGR = 0x8561; + public static final int GL_BLUE_MIN_CLAMP_INGR = 0x8562; + public static final int GL_ALPHA_MIN_CLAMP_INGR = 0x8563; + public static final int GL_RED_MAX_CLAMP_INGR = 0x8564; + public static final int GL_GREEN_MAX_CLAMP_INGR = 0x8565; + public static final int GL_BLUE_MAX_CLAMP_INGR = 0x8566; + public static final int GL_ALPHA_MAX_CLAMP_INGR = 0x8567; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRInterlaceRead.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRInterlaceRead.java new file mode 100644 index 00000000..2b92b2da --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRInterlaceRead.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_INGR_interlace_read} + */ +public final class GLINGRInterlaceRead { + public static final int GL_INTERLACE_READ_INGR = 0x8568; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINTELMapTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINTELMapTexture.java deleted file mode 100644 index f7f154e9..00000000 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINTELMapTexture.java +++ /dev/null @@ -1,78 +0,0 @@ -/* - * MIT License - * - * Copyright (c) 2022-2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - -package overrungl.opengl.ext; - -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; -import java.lang.foreign.ValueLayout; - -import static overrungl.FunctionDescriptors.*; - -/** - * {@code GL_INTEL_map_texture} - * - * @author squid233 - * @since 0.1.0 - */ -public final class GLINTELMapTexture { - public static void load(GLExtCaps ext, GLLoadFunc load) { - if (!ext.GL_INTEL_map_texture) return; - ext.glMapTexture2DINTEL = load.invoke("glMapTexture2DINTEL", IIIPPP); - ext.glSyncTextureINTEL = load.invoke("glSyncTextureINTEL", IV); - ext.glUnmapTexture2DINTEL = load.invoke("glUnmapTexture2DINTEL", IIV); - } - - public static MemorySegment glMapTexture2DINTEL(int texture, int level, int access, MemorySegment stride, MemorySegment layout) { - var ext = GLLoader.getExtCapabilities(); - try { - return (MemorySegment) GLLoader.check(ext.glMapTexture2DINTEL).invokeExact(texture, level, access, stride, layout); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static MemorySegment glMapTexture2DINTEL(SegmentAllocator allocator, int texture, int level, int access, int[] stride, int[] layout) { - var pStride = allocator.allocate(ValueLayout.JAVA_INT); - var pLayout = allocator.allocate(ValueLayout.JAVA_INT); - var result = glMapTexture2DINTEL(texture, level, access, pStride, pLayout); - stride[0] = pStride.get(ValueLayout.JAVA_INT, 0); - layout[0] = pLayout.get(ValueLayout.JAVA_INT, 0); - return result; - } - - public static void glSyncTextureINTEL(int texture) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glSyncTextureINTEL).invokeExact(texture); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glUnmapTexture2DINTEL(int texture, int level) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glUnmapTexture2DINTEL).invokeExact(texture, level); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } -} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINTELParallelArrays.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINTELParallelArrays.java deleted file mode 100644 index 83ab3ee0..00000000 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINTELParallelArrays.java +++ /dev/null @@ -1,78 +0,0 @@ -/* - * MIT License - * - * Copyright (c) 2022-2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - -package overrungl.opengl.ext; - -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import java.lang.foreign.MemorySegment; - -import static overrungl.FunctionDescriptors.IIPV; -import static overrungl.FunctionDescriptors.IV; - -/** - * {@code GL_INTEL_parallel_arrays} - * - * @author squid233 - * @since 0.1.0 - */ -public final class GLINTELParallelArrays { - public static void load(GLExtCaps ext, GLLoadFunc load) { - if (!ext.GL_INTEL_parallel_arrays) return; - ext.glColorPointervINTEL = load.invoke("glColorPointervINTEL", IIPV); - ext.glNormalPointervINTEL = load.invoke("glNormalPointervINTEL", IV); - ext.glTexCoordPointervINTEL = load.invoke("glTexCoordPointervINTEL", IIPV); - ext.glVertexPointervINTEL = load.invoke("glVertexPointervINTEL", IIPV); - } - - public static void glColorPointervINTEL(int size, int type, MemorySegment pointer) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glColorPointervINTEL).invokeExact(size, type, pointer); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glNormalPointervINTEL(int type, MemorySegment pointer) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glNormalPointervINTEL).invokeExact(type, pointer); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glTexCoordPointervINTEL(int size, int type, MemorySegment pointer) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glTexCoordPointervINTEL).invokeExact(size, type, pointer); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glVertexPointervINTEL(int size, int type, MemorySegment pointer) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glVertexPointervINTEL).invokeExact(size, type, pointer); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } -} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINTELPerformanceQuery.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINTELPerformanceQuery.java deleted file mode 100644 index dc31ffcc..00000000 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINTELPerformanceQuery.java +++ /dev/null @@ -1,250 +0,0 @@ -/* - * MIT License - * - * Copyright (c) 2022-2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - -package overrungl.opengl.ext; - -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.util.MemoryStack; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; - -import static java.lang.foreign.ValueLayout.*; -import static overrungl.FunctionDescriptors.*; - -/** - * {@code GL_INTEL_performance_query} - * - * @author squid233 - * @since 0.1.0 - */ -public final class GLINTELPerformanceQuery { - public static final int GL_PERFQUERY_SINGLE_CONTEXT_INTEL = 0x00000000; - public static final int GL_PERFQUERY_GLOBAL_CONTEXT_INTEL = 0x00000001; - public static final int GL_PERFQUERY_WAIT_INTEL = 0x83FB; - public static final int GL_PERFQUERY_FLUSH_INTEL = 0x83FA; - public static final int GL_PERFQUERY_DONOT_FLUSH_INTEL = 0x83F9; - public static final int GL_PERFQUERY_COUNTER_EVENT_INTEL = 0x94F0; - public static final int GL_PERFQUERY_COUNTER_DURATION_NORM_INTEL = 0x94F1; - public static final int GL_PERFQUERY_COUNTER_DURATION_RAW_INTEL = 0x94F2; - public static final int GL_PERFQUERY_COUNTER_THROUGHPUT_INTEL = 0x94F3; - public static final int GL_PERFQUERY_COUNTER_RAW_INTEL = 0x94F4; - public static final int GL_PERFQUERY_COUNTER_TIMESTAMP_INTEL = 0x94F5; - public static final int GL_PERFQUERY_COUNTER_DATA_UINT32_INTEL = 0x94F8; - public static final int GL_PERFQUERY_COUNTER_DATA_UINT64_INTEL = 0x94F9; - public static final int GL_PERFQUERY_COUNTER_DATA_FLOAT_INTEL = 0x94FA; - public static final int GL_PERFQUERY_COUNTER_DATA_DOUBLE_INTEL = 0x94FB; - public static final int GL_PERFQUERY_COUNTER_DATA_BOOL32_INTEL = 0x94FC; - public static final int GL_PERFQUERY_QUERY_NAME_LENGTH_MAX_INTEL = 0x94FD; - public static final int GL_PERFQUERY_COUNTER_NAME_LENGTH_MAX_INTEL = 0x94FE; - public static final int GL_PERFQUERY_COUNTER_DESC_LENGTH_MAX_INTEL = 0x94FF; - public static final int GL_PERFQUERY_GPA_EXTENDED_COUNTERS_INTEL = 0x9500; - - public static void load(GLExtCaps ext, GLLoadFunc load) { - if (!ext.GL_INTEL_performance_query) return; - ext.glBeginPerfQueryINTEL = load.invoke("glBeginPerfQueryINTEL", IV); - ext.glCreatePerfQueryINTEL = load.invoke("glCreatePerfQueryINTEL", IPV); - ext.glDeletePerfQueryINTEL = load.invoke("glDeletePerfQueryINTEL", IV); - ext.glEndPerfQueryINTEL = load.invoke("glEndPerfQueryINTEL", IV); - ext.glGetFirstPerfQueryIdINTEL = load.invoke("glGetFirstPerfQueryIdINTEL", PV); - ext.glGetNextPerfQueryIdINTEL = load.invoke("glGetNextPerfQueryIdINTEL", IPV); - ext.glGetPerfCounterInfoINTEL = load.invoke("glGetPerfCounterInfoINTEL", IIIPIPPPPPPV); - ext.glGetPerfQueryDataINTEL = load.invoke("glGetPerfQueryDataINTEL", IIIPPV); - ext.glGetPerfQueryIdByNameINTEL = load.invoke("glGetPerfQueryIdByNameINTEL", PPV); - ext.glGetPerfQueryInfoINTEL = load.invoke("glGetPerfQueryInfoINTEL", IIPPPPPV); - } - - public static void glBeginPerfQueryINTEL(int queryHandle) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glBeginPerfQueryINTEL).invokeExact(queryHandle); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glCreatePerfQueryINTEL(int queryId, MemorySegment queryHandle) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glCreatePerfQueryINTEL).invokeExact(queryId, queryHandle); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static int glCreatePerfQueryINTEL(int queryId) { - var stack = MemoryStack.stackGet(); - long stackPointer = stack.getPointer(); - try { - var seg = stack.callocInt(); - glCreatePerfQueryINTEL(queryId, seg); - return seg.get(JAVA_INT, 0); - } finally { - stack.setPointer(stackPointer); - } - } - - public static void glDeletePerfQueryINTEL(int queryHandle) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glDeletePerfQueryINTEL).invokeExact(queryHandle); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glEndPerfQueryINTEL(int queryHandle) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glEndPerfQueryINTEL).invokeExact(queryHandle); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGetFirstPerfQueryIdINTEL(MemorySegment queryId) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glGetFirstPerfQueryIdINTEL).invokeExact(queryId); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static int glGetFirstPerfQueryIdINTEL() { - var stack = MemoryStack.stackGet(); - long stackPointer = stack.getPointer(); - try { - var seg = stack.callocInt(); - glGetFirstPerfQueryIdINTEL(seg); - return seg.get(JAVA_INT, 0); - } finally { - stack.setPointer(stackPointer); - } - } - - public static void glGetNextPerfQueryIdINTEL(int queryId, MemorySegment nextQueryId) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glGetNextPerfQueryIdINTEL).invokeExact(queryId, nextQueryId); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static int glGetNextPerfQueryIdINTEL(int queryId) { - var stack = MemoryStack.stackGet(); - long stackPointer = stack.getPointer(); - try { - var seg = stack.callocInt(); - glGetNextPerfQueryIdINTEL(queryId, seg); - return seg.get(JAVA_INT, 0); - } finally { - stack.setPointer(stackPointer); - } - } - - public static void glGetPerfCounterInfoINTEL(int queryId, int counterId, - int counterNameLength, MemorySegment counterName, - int counterDescLength, MemorySegment counterDesc, - MemorySegment counterOffset, MemorySegment counterDataSize, MemorySegment counterTypeEnum, - MemorySegment counterDataTypeEnum, MemorySegment rawCounterMaxValue) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glGetPerfCounterInfoINTEL).invokeExact(queryId, counterId, counterNameLength, counterName, counterDescLength, counterDesc, counterOffset, counterDataSize, counterTypeEnum, counterDataTypeEnum, rawCounterMaxValue); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGetPerfCounterInfoINTEL(SegmentAllocator allocator, - int queryId, int counterId, - int counterNameLength, String[] counterName, - int counterDescLength, String[] counterDesc, - int[] counterOffset, int[] counterDataSize, int[] counterTypeEnum, - int[] counterDataTypeEnum, long[] rawCounterMaxValue) { - var pn = allocator.allocateArray(JAVA_BYTE, counterNameLength); - var pd = allocator.allocateArray(JAVA_BYTE, counterDescLength); - var po = allocator.allocate(JAVA_INT); - var ps = allocator.allocate(JAVA_INT); - var pte = allocator.allocate(JAVA_INT); - var pdte = allocator.allocate(JAVA_INT); - var pv = allocator.allocate(JAVA_LONG); - glGetPerfCounterInfoINTEL(queryId, counterId, counterNameLength, pn, counterDescLength, pd, po, ps, pte, pdte, pv); - counterName[0] = pn.getUtf8String(0); - counterDesc[0] = pd.getUtf8String(0); - counterOffset[0] = po.get(JAVA_INT, 0); - counterDataSize[0] = ps.get(JAVA_INT, 0); - counterTypeEnum[0] = pte.get(JAVA_INT, 0); - counterDataTypeEnum[0] = pdte.get(JAVA_INT, 0); - rawCounterMaxValue[0] = pv.get(JAVA_LONG, 0); - } - - public static void glGetPerfQueryDataINTEL(int queryHandle, int flags, int dataSize, MemorySegment data, MemorySegment bytesWritten) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glGetPerfQueryDataINTEL).invokeExact(queryHandle, flags, dataSize, data, bytesWritten); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGetPerfQueryDataINTEL(SegmentAllocator allocator, int queryHandle, int flags, int dataSize, MemorySegment data, int[] bytesWritten) { - var seg = allocator.allocate(JAVA_INT); - glGetPerfQueryDataINTEL(queryHandle, flags, dataSize, data, seg); - bytesWritten[0] = seg.get(JAVA_INT, 0); - } - - public static void glGetPerfQueryIdByNameINTEL(MemorySegment queryName, MemorySegment queryId) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glGetPerfQueryIdByNameINTEL).invokeExact(queryName, queryId); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static int glGetPerfQueryIdByNameINTEL(SegmentAllocator allocator, String queryName) { - var seg = allocator.allocate(JAVA_INT); - glGetPerfQueryIdByNameINTEL(allocator.allocateUtf8String(queryName), seg); - return seg.get(JAVA_INT, 0); - } - - public static void glGetPerfQueryInfoINTEL(int queryId, int queryNameLength, MemorySegment queryName, MemorySegment dataSize, MemorySegment noCounters, MemorySegment noInstances, MemorySegment capsMask) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glGetPerfQueryInfoINTEL).invokeExact(queryId, queryNameLength, queryName, dataSize, noCounters, noInstances, capsMask); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGetPerfQueryInfoINTEL(SegmentAllocator allocator, int queryId, int queryNameLength, String[] queryName, int[] dataSize, int[] noCounters, int[] noInstances, int[] capsMask) { - var pn = allocator.allocateArray(JAVA_BYTE, queryNameLength); - var ps = allocator.allocate(JAVA_INT); - var pc = allocator.allocate(JAVA_INT); - var pi = allocator.allocate(JAVA_INT); - var pm = allocator.allocate(JAVA_INT); - glGetPerfQueryInfoINTEL(queryId, queryNameLength, pn, ps, pc, pi, pm); - queryName[0] = pn.getUtf8String(0); - dataSize[0] = ps.get(JAVA_INT, 0); - noCounters[0] = pc.get(JAVA_INT, 0); - noInstances[0] = pi.get(JAVA_INT, 0); - capsMask[0] = pm.get(JAVA_INT, 0); - } -} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLMESAFramebufferFlipY.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLMESAFramebufferFlipY.java deleted file mode 100644 index 429b3dab..00000000 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLMESAFramebufferFlipY.java +++ /dev/null @@ -1,82 +0,0 @@ -/* - * MIT License - * - * Copyright (c) 2022-2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - -package overrungl.opengl.ext; - -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; -import overrungl.internal.RuntimeHelper; -import overrungl.util.MemoryStack; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; -import java.lang.foreign.ValueLayout; - -/** - * {@code GL_MESA_framebuffer_flip_y} - * - * @author squid233 - * @since 0.1.0 - */ -public final class GLMESAFramebufferFlipY { - public static final int GL_FRAMEBUFFER_FLIP_X_MESA = 0x8BBC; - public static final int GL_FRAMEBUFFER_FLIP_Y_MESA = 0x8BBB; - public static final int GL_FRAMEBUFFER_SWAP_XY_MESA = 0x8BBD; - - public static void load(GLExtCaps ext, GLLoadFunc load) { - if (!ext.GL_MESA_framebuffer_flip_y) return; - ext.glFramebufferParameteriMESA = load.invoke("glFramebufferParameteriMESA", FunctionDescriptors.IIIV); - ext.glGetFramebufferParameterivMESA = load.invoke("glGetFramebufferParameterivMESA", FunctionDescriptors.IIPV); - } - - public static void glFramebufferParameteriMESA(int target, int pname, int param) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glFramebufferParameteriMESA).invokeExact(target, pname, param); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGetFramebufferParameterivMESA(int target, int pname, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glGetFramebufferParameterivMESA).invokeExact(target, pname, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGetFramebufferParameterivMESA(SegmentAllocator allocator, int target, int pname, int[] params) { - var seg = allocator.allocateArray(ValueLayout.JAVA_INT, params.length); - glGetFramebufferParameterivMESA(target, pname, seg); - RuntimeHelper.toArray(seg, params); - } - - public static int glGetFramebufferParameteriMESA(int target, int pname) { - var stack = MemoryStack.stackGet(); - long stackPointer = stack.getPointer(); - try { - var seg = stack.callocInt(); - glGetFramebufferParameterivMESA(target, pname, seg); - return seg.get(ValueLayout.JAVA_INT, 0); - } finally { - stack.setPointer(stackPointer); - } - } -} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLMESAWindowPos.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLMESAWindowPos.java deleted file mode 100644 index 346251b2..00000000 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLMESAWindowPos.java +++ /dev/null @@ -1,327 +0,0 @@ -/* - * MIT License - * - * Copyright (c) 2022-2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - -package overrungl.opengl.ext; - -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; - -import static java.lang.foreign.ValueLayout.*; -import static overrungl.FunctionDescriptors.*; - -/** - * {@code GL_MESA_window_pos} - * - * @author squid233 - * @since 0.1.0 - */ -public final class GLMESAWindowPos { - public static void load(GLExtCaps ext, GLLoadFunc load) { - if (!ext.GL_MESA_window_pos) return; - ext.glWindowPos2dMESA = load.invoke("glWindowPos2dMESA", DDV); - ext.glWindowPos2dvMESA = load.invoke("glWindowPos2dvMESA", PV); - ext.glWindowPos2fMESA = load.invoke("glWindowPos2fMESA", FFV); - ext.glWindowPos2fvMESA = load.invoke("glWindowPos2fvMESA", PV); - ext.glWindowPos2iMESA = load.invoke("glWindowPos2iMESA", IIV); - ext.glWindowPos2ivMESA = load.invoke("glWindowPos2ivMESA", PV); - ext.glWindowPos2sMESA = load.invoke("glWindowPos2sMESA", SSV); - ext.glWindowPos2svMESA = load.invoke("glWindowPos2svMESA", PV); - ext.glWindowPos3dMESA = load.invoke("glWindowPos3dMESA", DDDV); - ext.glWindowPos3dvMESA = load.invoke("glWindowPos3dvMESA", PV); - ext.glWindowPos3fMESA = load.invoke("glWindowPos3fMESA", FFFV); - ext.glWindowPos3fvMESA = load.invoke("glWindowPos3fvMESA", PV); - ext.glWindowPos3iMESA = load.invoke("glWindowPos3iMESA", IIIV); - ext.glWindowPos3ivMESA = load.invoke("glWindowPos3ivMESA", PV); - ext.glWindowPos3sMESA = load.invoke("glWindowPos3sMESA", SSSV); - ext.glWindowPos3svMESA = load.invoke("glWindowPos3svMESA", PV); - ext.glWindowPos4dMESA = load.invoke("glWindowPos4dMESA", DDDDV); - ext.glWindowPos4dvMESA = load.invoke("glWindowPos4dvMESA", PV); - ext.glWindowPos4fMESA = load.invoke("glWindowPos4fMESA", FFFFV); - ext.glWindowPos4fvMESA = load.invoke("glWindowPos4fvMESA", PV); - ext.glWindowPos4iMESA = load.invoke("glWindowPos4iMESA", IIIIV); - ext.glWindowPos4ivMESA = load.invoke("glWindowPos4ivMESA", PV); - ext.glWindowPos4sMESA = load.invoke("glWindowPos4sMESA", SSSSV); - ext.glWindowPos4svMESA = load.invoke("glWindowPos4svMESA", PV); - } - - public static void glWindowPos2dMESA(double x, double y) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos2dMESA).invokeExact(x, y); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos2dvMESA(MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos2dvMESA).invokeExact(v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos2dvMESA(SegmentAllocator allocator, double[] value) { - glWindowPos2dvMESA(allocator.allocateArray(JAVA_DOUBLE, value)); - } - - public static void glWindowPos2fMESA(float x, float y) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos2fMESA).invokeExact(x, y); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos2fvMESA(MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos2fvMESA).invokeExact(v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos2fvMESA(SegmentAllocator allocator, float[] value) { - glWindowPos2fvMESA(allocator.allocateArray(JAVA_FLOAT, value)); - } - - public static void glWindowPos2iMESA(int x, int y) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos2iMESA).invokeExact(x, y); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos2ivMESA(MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos2ivMESA).invokeExact(v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos2ivMESA(SegmentAllocator allocator, int[] value) { - glWindowPos2ivMESA(allocator.allocateArray(JAVA_INT, value)); - } - - public static void glWindowPos2sMESA(short x, short y) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos2sMESA).invokeExact(x, y); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos2svMESA(MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos2svMESA).invokeExact(v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos2svMESA(SegmentAllocator allocator, short[] value) { - glWindowPos2svMESA(allocator.allocateArray(JAVA_SHORT, value)); - } - - public static void glWindowPos3dMESA(double x, double y, double z) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos3dMESA).invokeExact(x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos3dvMESA(MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos3dvMESA).invokeExact(v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos3dvMESA(SegmentAllocator allocator, double[] value) { - glWindowPos3dvMESA(allocator.allocateArray(JAVA_DOUBLE, value)); - } - - public static void glWindowPos3fMESA(float x, float y, float z) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos3fMESA).invokeExact(x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos3fvMESA(MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos3fvMESA).invokeExact(v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos3fvMESA(SegmentAllocator allocator, float[] value) { - glWindowPos3fvMESA(allocator.allocateArray(JAVA_FLOAT, value)); - } - - public static void glWindowPos3iMESA(int x, int y, int z) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos3iMESA).invokeExact(x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos3ivMESA(MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos3ivMESA).invokeExact(v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos3ivMESA(SegmentAllocator allocator, int[] value) { - glWindowPos3ivMESA(allocator.allocateArray(JAVA_INT, value)); - } - - public static void glWindowPos3sMESA(short x, short y, short z) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos3sMESA).invokeExact(x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos3svMESA(MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos3svMESA).invokeExact(v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos3svMESA(SegmentAllocator allocator, short[] value) { - glWindowPos3svMESA(allocator.allocateArray(JAVA_SHORT, value)); - } - - public static void glWindowPos4dMESA(double x, double y, double z, double w) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos4dMESA).invokeExact(x, y, z, w); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos4dvMESA(MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos4dvMESA).invokeExact(v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos4dvMESA(SegmentAllocator allocator, double[] value) { - glWindowPos4dvMESA(allocator.allocateArray(JAVA_DOUBLE, value)); - } - - public static void glWindowPos4fMESA(float x, float y, float z, float w) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos4fMESA).invokeExact(x, y, z, w); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos4fvMESA(MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos4fvMESA).invokeExact(v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos4fvMESA(SegmentAllocator allocator, float[] value) { - glWindowPos4fvMESA(allocator.allocateArray(JAVA_FLOAT, value)); - } - - public static void glWindowPos4iMESA(int x, int y, int z, int w) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos4iMESA).invokeExact(x, y, z, w); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos4ivMESA(MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos4ivMESA).invokeExact(v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos4ivMESA(SegmentAllocator allocator, int[] value) { - glWindowPos4ivMESA(allocator.allocateArray(JAVA_INT, value)); - } - - public static void glWindowPos4sMESA(short x, short y, short z, short w) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos4sMESA).invokeExact(x, y, z, w); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos4svMESA(MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glWindowPos4svMESA).invokeExact(v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glWindowPos4svMESA(SegmentAllocator allocator, short[] value) { - glWindowPos4svMESA(allocator.allocateArray(JAVA_SHORT, value)); - } -} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOVRMultiview.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOVRMultiview.java index 8ac4d769..7038938a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOVRMultiview.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOVRMultiview.java @@ -14,36 +14,34 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_OVR_multiview} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_OVR_multiview} + */ public final class GLOVRMultiview { public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR = 0x9630; public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR = 0x9632; public static final int GL_MAX_VIEWS_OVR = 0x9631; public static final int GL_FRAMEBUFFER_INCOMPLETE_VIEW_TARGETS_OVR = 0x9633; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_OVR_multiview) return; - ext.glFramebufferTextureMultiviewOVR = load.invoke("glFramebufferTextureMultiviewOVR", FunctionDescriptors.IIIIIIV); + ext.glFramebufferTextureMultiviewOVR = load.invoke("glFramebufferTextureMultiviewOVR", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); } public static void glFramebufferTextureMultiviewOVR(int target, int attachment, int texture, int level, int baseViewIndex, int numViews) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glFramebufferTextureMultiviewOVR).invokeExact(target, attachment, texture, level, baseViewIndex, numViews); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glFramebufferTextureMultiviewOVR).invokeExact(target, attachment, texture, level, baseViewIndex, numViews); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIMiscHints.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIMiscHints.java index c1a8ca8a..ec40e58d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIMiscHints.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIMiscHints.java @@ -14,31 +14,50 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_PGI_misc_hints} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_PGI_misc_hints} + */ public final class GLPGIMiscHints { + public static final int GL_PREFER_DOUBLEBUFFER_HINT_PGI = 0x1A1F8; + public static final int GL_CONSERVE_MEMORY_HINT_PGI = 0x1A1FD; + public static final int GL_RECLAIM_MEMORY_HINT_PGI = 0x1A1FE; + public static final int GL_NATIVE_GRAPHICS_HANDLE_PGI = 0x1A202; + public static final int GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI = 0x1A203; + public static final int GL_NATIVE_GRAPHICS_END_HINT_PGI = 0x1A204; + public static final int GL_ALWAYS_FAST_HINT_PGI = 0x1A20C; + public static final int GL_ALWAYS_SOFT_HINT_PGI = 0x1A20D; + public static final int GL_ALLOW_DRAW_OBJ_HINT_PGI = 0x1A20E; + public static final int GL_ALLOW_DRAW_WIN_HINT_PGI = 0x1A20F; + public static final int GL_ALLOW_DRAW_FRG_HINT_PGI = 0x1A210; + public static final int GL_ALLOW_DRAW_MEM_HINT_PGI = 0x1A211; + public static final int GL_STRICT_DEPTHFUNC_HINT_PGI = 0x1A216; + public static final int GL_STRICT_LIGHTING_HINT_PGI = 0x1A217; + public static final int GL_STRICT_SCISSOR_HINT_PGI = 0x1A218; + public static final int GL_FULL_STIPPLE_HINT_PGI = 0x1A219; + public static final int GL_CLIP_NEAR_HINT_PGI = 0x1A220; + public static final int GL_CLIP_FAR_HINT_PGI = 0x1A221; + public static final int GL_WIDE_LINE_HINT_PGI = 0x1A222; + public static final int GL_BACK_NORMALS_HINT_PGI = 0x1A223; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_PGI_misc_hints) return; - ext.glHintPGI = load.invoke("glHintPGI", FunctionDescriptors.IIV); + ext.glHintPGI = load.invoke("glHintPGI", ofVoid(JAVA_INT, JAVA_INT)); } public static void glHintPGI(int target, int mode) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glHintPGI).invokeExact(target, mode); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glHintPGI).invokeExact(target, mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIVertexHints.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIVertexHints.java new file mode 100644 index 00000000..56357b45 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIVertexHints.java @@ -0,0 +1,53 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_PGI_vertex_hints} + */ +public final class GLPGIVertexHints { + public static final int GL_VERTEX_DATA_HINT_PGI = 0x1A22A; + public static final int GL_VERTEX_CONSISTENT_HINT_PGI = 0x1A22B; + public static final int GL_MATERIAL_SIDE_HINT_PGI = 0x1A22C; + public static final int GL_MAX_VERTEX_HINT_PGI = 0x1A22D; + public static final int GL_COLOR3_BIT_PGI = 0x00010000; + public static final int GL_COLOR4_BIT_PGI = 0x00020000; + public static final int GL_EDGEFLAG_BIT_PGI = 0x00040000; + public static final int GL_INDEX_BIT_PGI = 0x00080000; + public static final int GL_MAT_AMBIENT_BIT_PGI = 0x00100000; + public static final int GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI = 0x00200000; + public static final int GL_MAT_DIFFUSE_BIT_PGI = 0x00400000; + public static final int GL_MAT_EMISSION_BIT_PGI = 0x00800000; + public static final int GL_MAT_COLOR_INDEXES_BIT_PGI = 0x01000000; + public static final int GL_MAT_SHININESS_BIT_PGI = 0x02000000; + public static final int GL_MAT_SPECULAR_BIT_PGI = 0x04000000; + public static final int GL_NORMAL_BIT_PGI = 0x08000000; + public static final int GL_TEXCOORD1_BIT_PGI = 0x10000000; + public static final int GL_TEXCOORD2_BIT_PGI = 0x20000000; + public static final int GL_TEXCOORD3_BIT_PGI = 0x40000000; + public static final int GL_TEXCOORD4_BIT_PGI = 0x80000000; + public static final int GL_VERTEX23_BIT_PGI = 0x00000004; + public static final int GL_VERTEX4_BIT_PGI = 0x00000008; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINPhongShading.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINPhongShading.java new file mode 100644 index 00000000..69ba14a6 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINPhongShading.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_WIN_phong_shading} + */ +public final class GLWINPhongShading { + public static final int GL_PHONG_WIN = 0x80EA; + public static final int GL_PHONG_HINT_WIN = 0x80EB; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINSpecularFog.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINSpecularFog.java new file mode 100644 index 00000000..936e4105 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINSpecularFog.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_WIN_specular_fog} + */ +public final class GLWINSpecularFog { + public static final int GL_FOG_SPECULAR_TEXTURE_WIN = 0x80EC; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDBlendMinmaxFactor.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDBlendMinmaxFactor.java new file mode 100644 index 00000000..280f71bc --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDBlendMinmaxFactor.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.amd; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_AMD_blend_minmax_factor} + */ +public final class GLAMDBlendMinmaxFactor { + public static final int GL_FACTOR_MIN_AMD = 0x901C; + public static final int GL_FACTOR_MAX_AMD = 0x901D; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDebugOutput.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDebugOutput.java index 713e4424..8fecbb27 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDebugOutput.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDebugOutput.java @@ -14,27 +14,19 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.amd; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.internal.RuntimeHelper; - -import java.lang.foreign.Arena; -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; - -import static java.lang.foreign.ValueLayout.JAVA_BYTE; -import static java.lang.foreign.ValueLayout.JAVA_INT; -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_debug_output} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_AMD_debug_output} + */ public final class GLAMDDebugOutput { public static final int GL_MAX_DEBUG_MESSAGE_LENGTH_AMD = 0x9143; public static final int GL_MAX_DEBUG_LOGGED_MESSAGES_AMD = 0x9144; @@ -50,79 +42,45 @@ public final class GLAMDDebugOutput { public static final int GL_DEBUG_CATEGORY_SHADER_COMPILER_AMD = 0x914E; public static final int GL_DEBUG_CATEGORY_APPLICATION_AMD = 0x914F; public static final int GL_DEBUG_CATEGORY_OTHER_AMD = 0x9150; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_AMD_debug_output) return; - ext.glDebugMessageCallbackAMD = load.invoke("glDebugMessageCallbackAMD", PPV); - ext.glDebugMessageEnableAMD = load.invoke("glDebugMessageEnableAMD", IIIPZV); - ext.glDebugMessageInsertAMD = load.invoke("glDebugMessageInsertAMD", IIIIPV); - ext.glGetDebugMessageLogAMD = load.invoke("glGetDebugMessageLogAMD", IIPPPPPI); + ext.glDebugMessageEnableAMD = load.invoke("glDebugMessageEnableAMD", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_BYTE)); + ext.glDebugMessageInsertAMD = load.invoke("glDebugMessageInsertAMD", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glDebugMessageCallbackAMD = load.invoke("glDebugMessageCallbackAMD", ofVoid(ADDRESS, ADDRESS)); + ext.glGetDebugMessageLogAMD = load.invoke("glGetDebugMessageLogAMD", of(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS)); } - public static void glDebugMessageCallbackAMD(MemorySegment callback, MemorySegment userParam) { - var ext = GLLoader.getExtCapabilities(); + public static void glDebugMessageEnableAMD(int category, int severity, int count, @NativeType("const GLuint *") MemorySegment ids, boolean enabled) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDebugMessageCallbackAMD).invokeExact(callback, userParam); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glDebugMessageCallbackAMD(Arena arena, GLDebugProcAMD callback, MemorySegment userParam) { - glDebugMessageCallbackAMD(callback.address(arena), userParam); + check(ext.glDebugMessageEnableAMD).invokeExact(category, severity, count, ids, enabled); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glDebugMessageEnableAMD(int category, int severity, int count, MemorySegment ids, boolean enabled) { - var ext = GLLoader.getExtCapabilities(); + public static void glDebugMessageInsertAMD(int category, int severity, int id, int length, @NativeType("const GLchar *") MemorySegment buf) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDebugMessageEnableAMD).invokeExact(category, severity, count, ids, enabled); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glDebugMessageEnableAMD(SegmentAllocator allocator, int category, int severity, int[] ids, boolean enabled) { - glDebugMessageEnableAMD(category, severity, ids.length, allocator.allocateArray(JAVA_INT, ids), enabled); + check(ext.glDebugMessageInsertAMD).invokeExact(category, severity, id, length, buf); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glDebugMessageInsertAMD(int category, int severity, int id, int length, MemorySegment buf) { - var ext = GLLoader.getExtCapabilities(); + public static void glDebugMessageCallbackAMD(@NativeType("GLDEBUGPROCAMD") MemorySegment callback, @NativeType("void *") MemorySegment userParam) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDebugMessageInsertAMD).invokeExact(category, severity, id, length, buf); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glDebugMessageCallbackAMD).invokeExact(callback, userParam); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glDebugMessageInsertAMD(SegmentAllocator allocator, int category, int severity, int id, String buf) { - glDebugMessageInsertAMD(category, severity, id, 0, allocator.allocateUtf8String(buf)); + public static void glDebugMessageCallbackAMD(Arena arena, GLDebugProcAMD callback, @NativeType("void *") MemorySegment userParam) { + glDebugMessageCallbackAMD(callback.address(arena), userParam); } - public static int glGetDebugMessageLogAMD(int count, int bufSize, MemorySegment categories, MemorySegment severities, MemorySegment ids, MemorySegment lengths, MemorySegment message) { - var ext = GLLoader.getExtCapabilities(); + public static int glGetDebugMessageLogAMD(int count, int bufSize, @NativeType("GLenum *") MemorySegment categories, @NativeType("GLenum *") MemorySegment severities, @NativeType("GLuint *") MemorySegment ids, @NativeType("GLsizei *") MemorySegment lengths, @NativeType("GLchar *") MemorySegment message) { + final var ext = getExtCapabilities(); try { - return (int) GLLoader.check(ext.glGetDebugMessageLogAMD).invokeExact(count, bufSize, categories, severities, ids, lengths, message); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + return (int) + check(ext.glGetDebugMessageLogAMD).invokeExact(count, bufSize, categories, severities, ids, lengths, message); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static int glGetDebugMessageLogAMD(int count, MemorySegment categories, MemorySegment severities, MemorySegment ids, MemorySegment lengths, MemorySegment messageLog) { - return glGetDebugMessageLogAMD(count, (int) messageLog.byteSize(), categories, severities, ids, lengths, messageLog); - } - - public static int glGetDebugMessageLogAMD(SegmentAllocator allocator, int count, int bufSize, int[] categories, int[] severities, int[] ids, int[] lengths, String[] messageLog) { - var pCgr = allocator.allocateArray(JAVA_INT, categories.length); - var pSvr = allocator.allocateArray(JAVA_INT, severities.length); - var pIds = allocator.allocateArray(JAVA_INT, ids.length); - var pLen = allocator.allocateArray(JAVA_INT, lengths.length); - var pLog = allocator.allocateArray(JAVA_BYTE, bufSize); - int num = glGetDebugMessageLogAMD(count, bufSize, pCgr, pSvr, pIds, pLen, pLog); - RuntimeHelper.toArray(pCgr, categories); - RuntimeHelper.toArray(pSvr, severities); - RuntimeHelper.toArray(pIds, ids); - RuntimeHelper.toArray(pLen, lengths); - messageLog[0] = pLog.getUtf8String(0); - return num; - } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDepthClampSeparate.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDepthClampSeparate.java new file mode 100644 index 00000000..695f6efc --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDepthClampSeparate.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.amd; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_AMD_depth_clamp_separate} + */ +public final class GLAMDDepthClampSeparate { + public static final int GL_DEPTH_CLAMP_NEAR_AMD = 0x901E; + public static final int GL_DEPTH_CLAMP_FAR_AMD = 0x901F; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDrawBuffersBlend.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDrawBuffersBlend.java index 64035c5c..33a745b4 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDrawBuffersBlend.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDrawBuffersBlend.java @@ -14,62 +14,54 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.amd; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_draw_buffers_blend} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_AMD_draw_buffers_blend} + */ public final class GLAMDDrawBuffersBlend { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_AMD_draw_buffers_blend) return; - ext.glBlendEquationIndexedAMD = load.invoke("glBlendEquationIndexedAMD", IIV); - ext.glBlendEquationSeparateIndexedAMD = load.invoke("glBlendEquationSeparateIndexedAMD", IIIV); - ext.glBlendFuncIndexedAMD = load.invoke("glBlendFuncIndexedAMD", IIIV); - ext.glBlendFuncSeparateIndexedAMD = load.invoke("glBlendFuncSeparateIndexedAMD", IIIIIV); + ext.glBlendFuncIndexedAMD = load.invoke("glBlendFuncIndexedAMD", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glBlendFuncSeparateIndexedAMD = load.invoke("glBlendFuncSeparateIndexedAMD", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glBlendEquationIndexedAMD = load.invoke("glBlendEquationIndexedAMD", ofVoid(JAVA_INT, JAVA_INT)); + ext.glBlendEquationSeparateIndexedAMD = load.invoke("glBlendEquationSeparateIndexedAMD", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); } - public static void glBlendEquationIndexedAMD(int buf, int mode) { - var ext = GLLoader.getExtCapabilities(); + public static void glBlendFuncIndexedAMD(int buf, int src, int dst) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glBlendEquationIndexedAMD).invokeExact(buf, mode); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glBlendFuncIndexedAMD).invokeExact(buf, src, dst); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glBlendEquationSeparateIndexedAMD(int buf, int modeRGB, int modeAlpha) { - var ext = GLLoader.getExtCapabilities(); + public static void glBlendFuncSeparateIndexedAMD(int buf, int srcRGB, int dstRGB, int srcAlpha, int dstAlpha) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glBlendEquationSeparateIndexedAMD).invokeExact(buf, modeRGB, modeAlpha); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glBlendFuncSeparateIndexedAMD).invokeExact(buf, srcRGB, dstRGB, srcAlpha, dstAlpha); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glBlendFuncIndexedAMD(int buf, int src, int dst) { - var ext = GLLoader.getExtCapabilities(); + public static void glBlendEquationIndexedAMD(int buf, int mode) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glBlendFuncIndexedAMD).invokeExact(buf, src, dst); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glBlendEquationIndexedAMD).invokeExact(buf, mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glBlendFuncSeparateIndexedAMD(int buf, int srcRGB, int dstRGB, int srcAlpha, int dstAlpha) { - var ext = GLLoader.getExtCapabilities(); + public static void glBlendEquationSeparateIndexedAMD(int buf, int modeRGB, int modeAlpha) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glBlendFuncSeparateIndexedAMD).invokeExact(buf, srcRGB, dstRGB, srcAlpha, dstAlpha); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glBlendEquationSeparateIndexedAMD).invokeExact(buf, modeRGB, modeAlpha); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferMultisampleAdvanced.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferMultisampleAdvanced.java index 55dc8983..7192f84a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferMultisampleAdvanced.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferMultisampleAdvanced.java @@ -14,42 +14,44 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.amd; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import static overrungl.FunctionDescriptors.IIIIIIV; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_framebuffer_multisample_advanced} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_AMD_framebuffer_multisample_advanced} + */ public final class GLAMDFramebufferMultisampleAdvanced { + public static final int GL_RENDERBUFFER_STORAGE_SAMPLES_AMD = 0x91B2; + public static final int GL_MAX_COLOR_FRAMEBUFFER_SAMPLES_AMD = 0x91B3; + public static final int GL_MAX_COLOR_FRAMEBUFFER_STORAGE_SAMPLES_AMD = 0x91B4; + public static final int GL_MAX_DEPTH_STENCIL_FRAMEBUFFER_SAMPLES_AMD = 0x91B5; + public static final int GL_NUM_SUPPORTED_MULTISAMPLE_MODES_AMD = 0x91B6; + public static final int GL_SUPPORTED_MULTISAMPLE_MODES_AMD = 0x91B7; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_AMD_framebuffer_multisample_advanced) return; - ext.glNamedRenderbufferStorageMultisampleAdvancedAMD = load.invoke("glNamedRenderbufferStorageMultisampleAdvancedAMD", IIIIIIV); - ext.glRenderbufferStorageMultisampleAdvancedAMD = load.invoke("glRenderbufferStorageMultisampleAdvancedAMD", IIIIIIV); + ext.glRenderbufferStorageMultisampleAdvancedAMD = load.invoke("glRenderbufferStorageMultisampleAdvancedAMD", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glNamedRenderbufferStorageMultisampleAdvancedAMD = load.invoke("glNamedRenderbufferStorageMultisampleAdvancedAMD", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); } - public static void glNamedRenderbufferStorageMultisampleAdvancedAMD(int renderbuffer, int samples, int storageSamples, int internalFormat, int width, int height) { - var ext = GLLoader.getExtCapabilities(); + public static void glRenderbufferStorageMultisampleAdvancedAMD(int target, int samples, int storageSamples, int internalformat, int width, int height) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glNamedRenderbufferStorageMultisampleAdvancedAMD).invokeExact(renderbuffer, samples, storageSamples, internalFormat, width, height); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glRenderbufferStorageMultisampleAdvancedAMD).invokeExact(target, samples, storageSamples, internalformat, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glRenderbufferStorageMultisampleAdvancedAMD(int target, int samples, int storageSamples, int internalFormat, int width, int height) { - var ext = GLLoader.getExtCapabilities(); + public static void glNamedRenderbufferStorageMultisampleAdvancedAMD(int renderbuffer, int samples, int storageSamples, int internalformat, int width, int height) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glRenderbufferStorageMultisampleAdvancedAMD).invokeExact(target, samples, storageSamples, internalFormat, width, height); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glNamedRenderbufferStorageMultisampleAdvancedAMD).invokeExact(renderbuffer, samples, storageSamples, internalformat, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferSamplePositions.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferSamplePositions.java index 60dd9b7a..99b50325 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferSamplePositions.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferSamplePositions.java @@ -14,88 +14,58 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.amd; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.internal.RuntimeHelper; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; - -import static java.lang.foreign.ValueLayout.JAVA_FLOAT; -import static overrungl.FunctionDescriptors.IIIIIPV; -import static overrungl.FunctionDescriptors.IIIPV; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_framebuffer_sample_positions} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_AMD_framebuffer_sample_positions} + */ public final class GLAMDFramebufferSamplePositions { + public static final int GL_SUBSAMPLE_DISTANCE_AMD = 0x883F; + public static final int GL_PIXELS_PER_SAMPLE_PATTERN_X_AMD = 0x91AE; + public static final int GL_PIXELS_PER_SAMPLE_PATTERN_Y_AMD = 0x91AF; + public static final int GL_ALL_PIXELS_AMD = 0xFFFFFFFF; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_AMD_framebuffer_sample_positions) return; - ext.glFramebufferSamplePositionsfvAMD = load.invoke("glFramebufferSamplePositionsfvAMD", IIIPV); - ext.glGetFramebufferParameterfvAMD = load.invoke("glGetFramebufferParameterfvAMD", IIIIIPV); - ext.glGetNamedFramebufferParameterfvAMD = load.invoke("glGetNamedFramebufferParameterfvAMD", IIIIIPV); - ext.glNamedFramebufferSamplePositionsfvAMD = load.invoke("glNamedFramebufferSamplePositionsfvAMD", IIIPV); + ext.glFramebufferSamplePositionsfvAMD = load.invoke("glFramebufferSamplePositionsfvAMD", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glNamedFramebufferSamplePositionsfvAMD = load.invoke("glNamedFramebufferSamplePositionsfvAMD", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetFramebufferParameterfvAMD = load.invoke("glGetFramebufferParameterfvAMD", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetNamedFramebufferParameterfvAMD = load.invoke("glGetNamedFramebufferParameterfvAMD", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); } - public static void glFramebufferSamplePositionsfvAMD(int target, int numSamples, int pixelIndex, MemorySegment values) { - var ext = GLLoader.getExtCapabilities(); + public static void glFramebufferSamplePositionsfvAMD(int target, int numsamples, int pixelindex, @NativeType("const GLfloat *") MemorySegment values) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glFramebufferSamplePositionsfvAMD).invokeExact(target, numSamples, pixelIndex, values); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glFramebufferSamplePositionsfvAMD(SegmentAllocator allocator, int target, int numSamples, int pixelIndex, float[] values) { - glFramebufferSamplePositionsfvAMD(target, numSamples, pixelIndex, allocator.allocateArray(JAVA_FLOAT, values)); + check(ext.glFramebufferSamplePositionsfvAMD).invokeExact(target, numsamples, pixelindex, values); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetFramebufferParameterfvAMD(int target, int pname, int numSamples, int pixelIndex, int size, MemorySegment values) { - var ext = GLLoader.getExtCapabilities(); + public static void glNamedFramebufferSamplePositionsfvAMD(int framebuffer, int numsamples, int pixelindex, @NativeType("const GLfloat *") MemorySegment values) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetFramebufferParameterfvAMD).invokeExact(target, pname, numSamples, pixelIndex, size, values); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glNamedFramebufferSamplePositionsfvAMD).invokeExact(framebuffer, numsamples, pixelindex, values); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetFramebufferParameterfvAMD(SegmentAllocator allocator, int target, int pname, int numSamples, int pixelIndex, int size, float[] values) { - var seg = allocator.allocateArray(JAVA_FLOAT, values.length); - glGetFramebufferParameterfvAMD(target, pname, numSamples, pixelIndex, size, seg); - RuntimeHelper.toArray(seg, values); - } - - public static void glGetNamedFramebufferParameterfvAMD(int framebuffer, int pname, int numSamples, int pixelIndex, int size, MemorySegment values) { - var ext = GLLoader.getExtCapabilities(); + public static void glGetFramebufferParameterfvAMD(int target, int pname, int numsamples, int pixelindex, int size, @NativeType("GLfloat *") MemorySegment values) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetNamedFramebufferParameterfvAMD).invokeExact(framebuffer, pname, numSamples, pixelIndex, size, values); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetFramebufferParameterfvAMD).invokeExact(target, pname, numsamples, pixelindex, size, values); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetNamedFramebufferParameterfvAMD(SegmentAllocator allocator, int framebuffer, int pname, int numSamples, int pixelIndex, int size, float[] values) { - var seg = allocator.allocateArray(JAVA_FLOAT, values.length); - glGetNamedFramebufferParameterfvAMD(framebuffer, pname, numSamples, pixelIndex, size, seg); - RuntimeHelper.toArray(seg, values); - } - - public static void glNamedFramebufferSamplePositionsfvAMD(int target, int numSamples, int pixelIndex, MemorySegment values) { - var ext = GLLoader.getExtCapabilities(); + public static void glGetNamedFramebufferParameterfvAMD(int framebuffer, int pname, int numsamples, int pixelindex, int size, @NativeType("GLfloat *") MemorySegment values) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glNamedFramebufferSamplePositionsfvAMD).invokeExact(target, numSamples, pixelIndex, values); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetNamedFramebufferParameterfvAMD).invokeExact(framebuffer, pname, numsamples, pixelindex, size, values); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glNamedFramebufferSamplePositionsfvAMD(SegmentAllocator allocator, int target, int numSamples, int pixelIndex, float[] values) { - glNamedFramebufferSamplePositionsfvAMD(target, numSamples, pixelIndex, allocator.allocateArray(JAVA_FLOAT, values)); - } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderHalfFloat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderHalfFloat.java new file mode 100644 index 00000000..4c48a47a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderHalfFloat.java @@ -0,0 +1,44 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.amd; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_AMD_gpu_shader_half_float} + */ +public final class GLAMDGpuShaderHalfFloat { + public static final int GL_FLOAT16_NV = 0x8FF8; + public static final int GL_FLOAT16_VEC2_NV = 0x8FF9; + public static final int GL_FLOAT16_VEC3_NV = 0x8FFA; + public static final int GL_FLOAT16_VEC4_NV = 0x8FFB; + public static final int GL_FLOAT16_MAT2_AMD = 0x91C5; + public static final int GL_FLOAT16_MAT3_AMD = 0x91C6; + public static final int GL_FLOAT16_MAT4_AMD = 0x91C7; + public static final int GL_FLOAT16_MAT2x3_AMD = 0x91C8; + public static final int GL_FLOAT16_MAT2x4_AMD = 0x91C9; + public static final int GL_FLOAT16_MAT3x2_AMD = 0x91CA; + public static final int GL_FLOAT16_MAT3x4_AMD = 0x91CB; + public static final int GL_FLOAT16_MAT4x2_AMD = 0x91CC; + public static final int GL_FLOAT16_MAT4x3_AMD = 0x91CD; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderInt64.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderInt64.java new file mode 100644 index 00000000..a00cebf3 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderInt64.java @@ -0,0 +1,331 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.amd; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_AMD_gpu_shader_int64} + */ +public final class GLAMDGpuShaderInt64 { + public static final int GL_INT64_NV = 0x140E; + public static final int GL_UNSIGNED_INT64_NV = 0x140F; + public static final int GL_INT8_NV = 0x8FE0; + public static final int GL_INT8_VEC2_NV = 0x8FE1; + public static final int GL_INT8_VEC3_NV = 0x8FE2; + public static final int GL_INT8_VEC4_NV = 0x8FE3; + public static final int GL_INT16_NV = 0x8FE4; + public static final int GL_INT16_VEC2_NV = 0x8FE5; + public static final int GL_INT16_VEC3_NV = 0x8FE6; + public static final int GL_INT16_VEC4_NV = 0x8FE7; + public static final int GL_INT64_VEC2_NV = 0x8FE9; + public static final int GL_INT64_VEC3_NV = 0x8FEA; + public static final int GL_INT64_VEC4_NV = 0x8FEB; + public static final int GL_UNSIGNED_INT8_NV = 0x8FEC; + public static final int GL_UNSIGNED_INT8_VEC2_NV = 0x8FED; + public static final int GL_UNSIGNED_INT8_VEC3_NV = 0x8FEE; + public static final int GL_UNSIGNED_INT8_VEC4_NV = 0x8FEF; + public static final int GL_UNSIGNED_INT16_NV = 0x8FF0; + public static final int GL_UNSIGNED_INT16_VEC2_NV = 0x8FF1; + public static final int GL_UNSIGNED_INT16_VEC3_NV = 0x8FF2; + public static final int GL_UNSIGNED_INT16_VEC4_NV = 0x8FF3; + public static final int GL_UNSIGNED_INT64_VEC2_NV = 0x8FF5; + public static final int GL_UNSIGNED_INT64_VEC3_NV = 0x8FF6; + public static final int GL_UNSIGNED_INT64_VEC4_NV = 0x8FF7; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_AMD_gpu_shader_int64) return; + ext.glUniform1i64NV = load.invoke("glUniform1i64NV", ofVoid(JAVA_INT, JAVA_LONG)); + ext.glUniform2i64NV = load.invoke("glUniform2i64NV", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG)); + ext.glUniform3i64NV = load.invoke("glUniform3i64NV", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glUniform4i64NV = load.invoke("glUniform4i64NV", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glUniform1i64vNV = load.invoke("glUniform1i64vNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform2i64vNV = load.invoke("glUniform2i64vNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform3i64vNV = load.invoke("glUniform3i64vNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform4i64vNV = load.invoke("glUniform4i64vNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform1ui64NV = load.invoke("glUniform1ui64NV", ofVoid(JAVA_INT, JAVA_LONG)); + ext.glUniform2ui64NV = load.invoke("glUniform2ui64NV", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG)); + ext.glUniform3ui64NV = load.invoke("glUniform3ui64NV", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glUniform4ui64NV = load.invoke("glUniform4ui64NV", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glUniform1ui64vNV = load.invoke("glUniform1ui64vNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform2ui64vNV = load.invoke("glUniform2ui64vNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform3ui64vNV = load.invoke("glUniform3ui64vNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform4ui64vNV = load.invoke("glUniform4ui64vNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetUniformi64vNV = load.invoke("glGetUniformi64vNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetUniformui64vNV = load.invoke("glGetUniformui64vNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform1i64NV = load.invoke("glProgramUniform1i64NV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glProgramUniform2i64NV = load.invoke("glProgramUniform2i64NV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG)); + ext.glProgramUniform3i64NV = load.invoke("glProgramUniform3i64NV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glProgramUniform4i64NV = load.invoke("glProgramUniform4i64NV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glProgramUniform1i64vNV = load.invoke("glProgramUniform1i64vNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform2i64vNV = load.invoke("glProgramUniform2i64vNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform3i64vNV = load.invoke("glProgramUniform3i64vNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform4i64vNV = load.invoke("glProgramUniform4i64vNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform1ui64NV = load.invoke("glProgramUniform1ui64NV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glProgramUniform2ui64NV = load.invoke("glProgramUniform2ui64NV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG)); + ext.glProgramUniform3ui64NV = load.invoke("glProgramUniform3ui64NV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glProgramUniform4ui64NV = load.invoke("glProgramUniform4ui64NV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glProgramUniform1ui64vNV = load.invoke("glProgramUniform1ui64vNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform2ui64vNV = load.invoke("glProgramUniform2ui64vNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform3ui64vNV = load.invoke("glProgramUniform3ui64vNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform4ui64vNV = load.invoke("glProgramUniform4ui64vNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glUniform1i64NV(int location, long x) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform1i64NV).invokeExact(location, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform2i64NV(int location, long x, long y) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform2i64NV).invokeExact(location, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform3i64NV(int location, long x, long y, long z) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform3i64NV).invokeExact(location, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform4i64NV(int location, long x, long y, long z, long w) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform4i64NV).invokeExact(location, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform1i64vNV(int location, int count, @NativeType("const GLint64EXT *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform1i64vNV).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform2i64vNV(int location, int count, @NativeType("const GLint64EXT *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform2i64vNV).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform3i64vNV(int location, int count, @NativeType("const GLint64EXT *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform3i64vNV).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform4i64vNV(int location, int count, @NativeType("const GLint64EXT *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform4i64vNV).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform1ui64NV(int location, long x) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform1ui64NV).invokeExact(location, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform2ui64NV(int location, long x, long y) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform2ui64NV).invokeExact(location, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform3ui64NV(int location, long x, long y, long z) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform3ui64NV).invokeExact(location, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform4ui64NV(int location, long x, long y, long z, long w) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform4ui64NV).invokeExact(location, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform1ui64vNV(int location, int count, @NativeType("const GLuint64EXT *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform1ui64vNV).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform2ui64vNV(int location, int count, @NativeType("const GLuint64EXT *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform2ui64vNV).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform3ui64vNV(int location, int count, @NativeType("const GLuint64EXT *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform3ui64vNV).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform4ui64vNV(int location, int count, @NativeType("const GLuint64EXT *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform4ui64vNV).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetUniformi64vNV(int program, int location, @NativeType("GLint64EXT *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetUniformi64vNV).invokeExact(program, location, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetUniformui64vNV(int program, int location, @NativeType("GLuint64EXT *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetUniformui64vNV).invokeExact(program, location, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform1i64NV(int program, int location, long x) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform1i64NV).invokeExact(program, location, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform2i64NV(int program, int location, long x, long y) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform2i64NV).invokeExact(program, location, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform3i64NV(int program, int location, long x, long y, long z) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform3i64NV).invokeExact(program, location, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform4i64NV(int program, int location, long x, long y, long z, long w) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform4i64NV).invokeExact(program, location, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform1i64vNV(int program, int location, int count, @NativeType("const GLint64EXT *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform1i64vNV).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform2i64vNV(int program, int location, int count, @NativeType("const GLint64EXT *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform2i64vNV).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform3i64vNV(int program, int location, int count, @NativeType("const GLint64EXT *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform3i64vNV).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform4i64vNV(int program, int location, int count, @NativeType("const GLint64EXT *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform4i64vNV).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform1ui64NV(int program, int location, long x) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform1ui64NV).invokeExact(program, location, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform2ui64NV(int program, int location, long x, long y) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform2ui64NV).invokeExact(program, location, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform3ui64NV(int program, int location, long x, long y, long z) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform3ui64NV).invokeExact(program, location, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform4ui64NV(int program, int location, long x, long y, long z, long w) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform4ui64NV).invokeExact(program, location, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform1ui64vNV(int program, int location, int count, @NativeType("const GLuint64EXT *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform1ui64vNV).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform2ui64vNV(int program, int location, int count, @NativeType("const GLuint64EXT *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform2ui64vNV).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform3ui64vNV(int program, int location, int count, @NativeType("const GLuint64EXT *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform3ui64vNV).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform4ui64vNV(int program, int location, int count, @NativeType("const GLuint64EXT *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform4ui64vNV).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDInterleavedElements.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDInterleavedElements.java index c1ca9708..819e463e 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDInterleavedElements.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDInterleavedElements.java @@ -14,31 +14,32 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.amd; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_interleaved_elements} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_AMD_interleaved_elements} + */ public final class GLAMDInterleavedElements { + public static final int GL_VERTEX_ELEMENT_SWIZZLE_AMD = 0x91A4; + public static final int GL_VERTEX_ID_SWIZZLE_AMD = 0x91A5; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_AMD_interleaved_elements) return; - ext.glVertexAttribParameteriAMD = load.invoke("glVertexAttribParameteriAMD", FunctionDescriptors.IIIV); + ext.glVertexAttribParameteriAMD = load.invoke("glVertexAttribParameteriAMD", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); } public static void glVertexAttribParameteriAMD(int index, int pname, int param) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glVertexAttribParameteriAMD).invokeExact(index, pname, param); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glVertexAttribParameteriAMD).invokeExact(index, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDMultiDrawIndirect.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDMultiDrawIndirect.java index 8c6bbcc0..4b719c69 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDMultiDrawIndirect.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDMultiDrawIndirect.java @@ -14,43 +14,38 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.amd; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; - -import java.lang.foreign.MemorySegment; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_multi_draw_indirect} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_AMD_multi_draw_indirect} + */ public final class GLAMDMultiDrawIndirect { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_AMD_multi_draw_indirect) return; - ext.glMultiDrawArraysIndirectAMD = load.invoke("glMultiDrawArraysIndirectAMD", FunctionDescriptors.IPIIV); - ext.glMultiDrawElementsIndirectAMD = load.invoke("glMultiDrawElementsIndirectAMD", FunctionDescriptors.IIPIIV); + ext.glMultiDrawArraysIndirectAMD = load.invoke("glMultiDrawArraysIndirectAMD", ofVoid(JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT)); + ext.glMultiDrawElementsIndirectAMD = load.invoke("glMultiDrawElementsIndirectAMD", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT)); } - public static void glMultiDrawArraysIndirectAMD(int mode, MemorySegment indirect, int primCount, int stride) { - var ext = GLLoader.getExtCapabilities(); + public static void glMultiDrawArraysIndirectAMD(int mode, @NativeType("const void *") MemorySegment indirect, int primcount, int stride) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiDrawArraysIndirectAMD).invokeExact(mode, indirect, primCount, stride); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiDrawArraysIndirectAMD).invokeExact(mode, indirect, primcount, stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiDrawElementsIndirectAMD(int mode, int type, MemorySegment indirect, int primCount, int stride) { - var ext = GLLoader.getExtCapabilities(); + public static void glMultiDrawElementsIndirectAMD(int mode, int type, @NativeType("const void *") MemorySegment indirect, int primcount, int stride) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiDrawElementsIndirectAMD).invokeExact(mode, type, indirect, primCount, stride); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiDrawElementsIndirectAMD).invokeExact(mode, type, indirect, primcount, stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDNameGenDelete.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDNameGenDelete.java index 8ac23f19..f0025953 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDNameGenDelete.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDNameGenDelete.java @@ -14,90 +14,52 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.amd; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; -import overrungl.internal.RuntimeHelper; -import overrungl.util.MemoryStack; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; - -import static java.lang.foreign.ValueLayout.JAVA_INT; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_name_gen_delete} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_AMD_name_gen_delete} + */ public final class GLAMDNameGenDelete { + public static final int GL_DATA_BUFFER_AMD = 0x9151; + public static final int GL_PERFORMANCE_MONITOR_AMD = 0x9152; + public static final int GL_QUERY_OBJECT_AMD = 0x9153; + public static final int GL_VERTEX_ARRAY_OBJECT_AMD = 0x9154; + public static final int GL_SAMPLER_OBJECT_AMD = 0x9155; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_AMD_name_gen_delete) return; - ext.glDeleteNamesAMD = load.invoke("glDeleteNamesAMD", FunctionDescriptors.IIPV); - ext.glGenNamesAMD = load.invoke("glGenNamesAMD", FunctionDescriptors.IIPV); - ext.glIsNameAMD = load.invoke("glIsNameAMD", FunctionDescriptors.IIZ); + ext.glGenNamesAMD = load.invoke("glGenNamesAMD", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glDeleteNamesAMD = load.invoke("glDeleteNamesAMD", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glIsNameAMD = load.invoke("glIsNameAMD", of(JAVA_BYTE, JAVA_INT, JAVA_INT)); } - public static void glDeleteNamesAMD(int identifier, int num, MemorySegment names) { - var ext = GLLoader.getExtCapabilities(); + public static void glGenNamesAMD(int identifier, int num, @NativeType("GLuint *") MemorySegment names) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDeleteNamesAMD).invokeExact(identifier, num, names); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGenNamesAMD).invokeExact(identifier, num, names); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glDeleteNamesAMD(SegmentAllocator allocator, int identifier, int[] names) { - glDeleteNamesAMD(identifier, names.length, allocator.allocateArray(JAVA_INT, names)); - } - - public static void glDeleteNameAMD(int identifier, int name) { - var stack = MemoryStack.stackGet(); - long stackPointer = stack.getPointer(); + public static void glDeleteNamesAMD(int identifier, int num, @NativeType("const GLuint *") MemorySegment names) { + final var ext = getExtCapabilities(); try { - glDeleteNamesAMD(identifier, 1, stack.ints(name)); - } finally { - stack.setPointer(stackPointer); - } - } - - public static void glGenNamesAMD(int identifier, int num, MemorySegment names) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glGenNamesAMD).invokeExact(identifier, num, names); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGenNamesAMD(SegmentAllocator allocator, int identifier, int[] names) { - var seg = allocator.allocateArray(JAVA_INT, names.length); - glGenNamesAMD(identifier, names.length, seg); - RuntimeHelper.toArray(seg, names); - } - - public static int glGenNameAMD(int identifier) { - var stack = MemoryStack.stackGet(); - long stackPointer = stack.getPointer(); - try { - var seg = stack.callocInt(); - glGenNamesAMD(identifier, 1, seg); - return seg.get(JAVA_INT, 0); - } finally { - stack.setPointer(stackPointer); - } + check(ext.glDeleteNamesAMD).invokeExact(identifier, num, names); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static boolean glIsNameAMD(int identifier, int name) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - return (boolean) GLLoader.check(ext.glIsNameAMD).invokeExact(identifier, name); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + return (boolean) + check(ext.glIsNameAMD).invokeExact(identifier, name); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDOcclusionQueryEvent.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDOcclusionQueryEvent.java index a4f5d82e..279cec60 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDOcclusionQueryEvent.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDOcclusionQueryEvent.java @@ -14,31 +14,36 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.amd; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_occlusion_query_event} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_AMD_occlusion_query_event} + */ public final class GLAMDOcclusionQueryEvent { + public static final int GL_OCCLUSION_QUERY_EVENT_MASK_AMD = 0x874F; + public static final int GL_QUERY_DEPTH_PASS_EVENT_BIT_AMD = 0x00000001; + public static final int GL_QUERY_DEPTH_FAIL_EVENT_BIT_AMD = 0x00000002; + public static final int GL_QUERY_STENCIL_FAIL_EVENT_BIT_AMD = 0x00000004; + public static final int GL_QUERY_DEPTH_BOUNDS_FAIL_EVENT_BIT_AMD = 0x00000008; + public static final int GL_QUERY_ALL_EVENT_BITS_AMD = 0xFFFFFFFF; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_AMD_occlusion_query_event) return; - ext.glQueryObjectParameteruiAMD = load.invoke("glQueryObjectParameteruiAMD", FunctionDescriptors.IIIIV); + ext.glQueryObjectParameteruiAMD = load.invoke("glQueryObjectParameteruiAMD", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); } public static void glQueryObjectParameteruiAMD(int target, int id, int pname, int param) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glQueryObjectParameteruiAMD).invokeExact(target, id, pname, param); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glQueryObjectParameteruiAMD).invokeExact(target, id, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPerformanceMonitor.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPerformanceMonitor.java index 11904519..8f28a144 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPerformanceMonitor.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPerformanceMonitor.java @@ -14,223 +14,117 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.amd; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.internal.RuntimeHelper; -import overrungl.util.MemoryStack; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; - -import static java.lang.foreign.ValueLayout.JAVA_BYTE; -import static java.lang.foreign.ValueLayout.JAVA_INT; -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_performance_monitor} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_AMD_performance_monitor} + */ public final class GLAMDPerformanceMonitor { + public static final int GL_COUNTER_TYPE_AMD = 0x8BC0; + public static final int GL_COUNTER_RANGE_AMD = 0x8BC1; + public static final int GL_UNSIGNED_INT64_AMD = 0x8BC2; + public static final int GL_PERCENTAGE_AMD = 0x8BC3; + public static final int GL_PERFMON_RESULT_AVAILABLE_AMD = 0x8BC4; + public static final int GL_PERFMON_RESULT_SIZE_AMD = 0x8BC5; + public static final int GL_PERFMON_RESULT_AMD = 0x8BC6; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_AMD_performance_monitor) return; - ext.glBeginPerfMonitorAMD = load.invoke("glBeginPerfMonitorAMD", IV); - ext.glDeletePerfMonitorsAMD = load.invoke("glDeletePerfMonitorsAMD", IPV); - ext.glEndPerfMonitorAMD = load.invoke("glEndPerfMonitorAMD", IV); - ext.glGenPerfMonitorsAMD = load.invoke("glGenPerfMonitorsAMD", IPV); - ext.glGetPerfMonitorCounterDataAMD = load.invoke("glGetPerfMonitorCounterDataAMD", IIIPPV); - ext.glGetPerfMonitorCounterInfoAMD = load.invoke("glGetPerfMonitorCounterInfoAMD", IIIPV); - ext.glGetPerfMonitorCounterStringAMD = load.invoke("glGetPerfMonitorCounterStringAMD", IIIPPV); - ext.glGetPerfMonitorCountersAMD = load.invoke("glGetPerfMonitorCountersAMD", IPPIPV); - ext.glGetPerfMonitorGroupStringAMD = load.invoke("glGetPerfMonitorGroupStringAMD", IIPPV); - ext.glGetPerfMonitorGroupsAMD = load.invoke("glGetPerfMonitorGroupsAMD", PIPV); - ext.glSelectPerfMonitorCountersAMD = load.invoke("glSelectPerfMonitorCountersAMD", IZIIPV); - } - - public static void glBeginPerfMonitorAMD(int monitor) { - var ext = GLLoader.getExtCapabilities(); + ext.glGetPerfMonitorGroupsAMD = load.invoke("glGetPerfMonitorGroupsAMD", ofVoid(ADDRESS, JAVA_INT, ADDRESS)); + ext.glGetPerfMonitorCountersAMD = load.invoke("glGetPerfMonitorCountersAMD", ofVoid(JAVA_INT, ADDRESS, ADDRESS, JAVA_INT, ADDRESS)); + ext.glGetPerfMonitorGroupStringAMD = load.invoke("glGetPerfMonitorGroupStringAMD", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glGetPerfMonitorCounterStringAMD = load.invoke("glGetPerfMonitorCounterStringAMD", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glGetPerfMonitorCounterInfoAMD = load.invoke("glGetPerfMonitorCounterInfoAMD", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGenPerfMonitorsAMD = load.invoke("glGenPerfMonitorsAMD", ofVoid(JAVA_INT, ADDRESS)); + ext.glDeletePerfMonitorsAMD = load.invoke("glDeletePerfMonitorsAMD", ofVoid(JAVA_INT, ADDRESS)); + ext.glSelectPerfMonitorCountersAMD = load.invoke("glSelectPerfMonitorCountersAMD", ofVoid(JAVA_INT, JAVA_BYTE, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glBeginPerfMonitorAMD = load.invoke("glBeginPerfMonitorAMD", ofVoid(JAVA_INT)); + ext.glEndPerfMonitorAMD = load.invoke("glEndPerfMonitorAMD", ofVoid(JAVA_INT)); + ext.glGetPerfMonitorCounterDataAMD = load.invoke("glGetPerfMonitorCounterDataAMD", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + } + + public static void glGetPerfMonitorGroupsAMD(@NativeType("GLint *") MemorySegment numGroups, int groupsSize, @NativeType("GLuint *") MemorySegment groups) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glBeginPerfMonitorAMD).invokeExact(monitor); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetPerfMonitorGroupsAMD).invokeExact(numGroups, groupsSize, groups); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glDeletePerfMonitorsAMD(int n, MemorySegment monitors) { - var ext = GLLoader.getExtCapabilities(); + public static void glGetPerfMonitorCountersAMD(int group, @NativeType("GLint *") MemorySegment numCounters, @NativeType("GLint *") MemorySegment maxActiveCounters, int counterSize, @NativeType("GLuint *") MemorySegment counters) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDeletePerfMonitorsAMD).invokeExact(n, monitors); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glDeletePerfMonitorsAMD(SegmentAllocator allocator, int[] monitors) { - glDeletePerfMonitorsAMD(monitors.length, allocator.allocateArray(JAVA_INT, monitors)); + check(ext.glGetPerfMonitorCountersAMD).invokeExact(group, numCounters, maxActiveCounters, counterSize, counters); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glDeletePerfMonitorAMD(int monitor) { - var stack = MemoryStack.stackGet(); - long stackPointer = stack.getPointer(); + public static void glGetPerfMonitorGroupStringAMD(int group, int bufSize, @NativeType("GLsizei *") MemorySegment length, @NativeType("GLchar *") MemorySegment groupString) { + final var ext = getExtCapabilities(); try { - glDeletePerfMonitorsAMD(1, stack.ints(monitor)); - } finally { - stack.setPointer(stackPointer); - } + check(ext.glGetPerfMonitorGroupStringAMD).invokeExact(group, bufSize, length, groupString); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glEndPerfMonitorAMD(int monitor) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glEndPerfMonitorAMD).invokeExact(monitor); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGenPerfMonitorsAMD(int n, MemorySegment monitors) { - var ext = GLLoader.getExtCapabilities(); + public static void glGetPerfMonitorCounterStringAMD(int group, int counter, int bufSize, @NativeType("GLsizei *") MemorySegment length, @NativeType("GLchar *") MemorySegment counterString) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGenPerfMonitorsAMD).invokeExact(n, monitors); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetPerfMonitorCounterStringAMD).invokeExact(group, counter, bufSize, length, counterString); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGenPerfMonitorsAMD(SegmentAllocator allocator, int[] monitors) { - var seg = allocator.allocateArray(JAVA_INT, monitors.length); - glGenPerfMonitorsAMD(monitors.length, seg); - RuntimeHelper.toArray(seg, monitors); - } - - public static int glGenPerfMonitorAMD() { - var stack = MemoryStack.stackGet(); - long stackPointer = stack.getPointer(); + public static void glGetPerfMonitorCounterInfoAMD(int group, int counter, int pname, @NativeType("void *") MemorySegment data) { + final var ext = getExtCapabilities(); try { - var seg = stack.callocInt(); - glGenPerfMonitorsAMD(1, seg); - return seg.get(JAVA_INT, 0); - } finally { - stack.setPointer(stackPointer); - } + check(ext.glGetPerfMonitorCounterInfoAMD).invokeExact(group, counter, pname, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetPerfMonitorCounterDataAMD(int monitor, int pname, int dataSize, MemorySegment data, MemorySegment bytesWritten) { - var ext = GLLoader.getExtCapabilities(); + public static void glGenPerfMonitorsAMD(int n, @NativeType("GLuint *") MemorySegment monitors) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetPerfMonitorCounterDataAMD).invokeExact(monitor, pname, dataSize, data, bytesWritten); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGetPerfMonitorCounterDataAMD(SegmentAllocator allocator, int monitor, int pname, int[] data, int @Nullable [] bytesWritten) { - var pData = allocator.allocateArray(JAVA_INT, data.length); - var pNum = bytesWritten != null ? allocator.allocateArray(JAVA_INT, bytesWritten.length) : MemorySegment.NULL; - glGetPerfMonitorCounterDataAMD(monitor, pname, data.length, pData, pNum); - RuntimeHelper.toArray(pData, data); - if (bytesWritten != null && bytesWritten.length > 0) { - bytesWritten[0] = pNum.get(JAVA_INT, 0); - } + check(ext.glGenPerfMonitorsAMD).invokeExact(n, monitors); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetPerfMonitorCounterInfoAMD(int group, int counter, int pname, MemorySegment data) { - var ext = GLLoader.getExtCapabilities(); + public static void glDeletePerfMonitorsAMD(int n, @NativeType("GLuint *") MemorySegment monitors) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetPerfMonitorCounterInfoAMD).invokeExact(group, counter, pname, data); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glDeletePerfMonitorsAMD).invokeExact(n, monitors); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetPerfMonitorCounterStringAMD(int group, int counter, int bufSize, MemorySegment length, MemorySegment counterString) { - var ext = GLLoader.getExtCapabilities(); + public static void glSelectPerfMonitorCountersAMD(int monitor, boolean enable, int group, int numCounters, @NativeType("GLuint *") MemorySegment counterList) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetPerfMonitorCounterStringAMD).invokeExact(group, counter, bufSize, length, counterString); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glSelectPerfMonitorCountersAMD).invokeExact(monitor, enable, group, numCounters, counterList); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static String glGetPerfMonitorCounterStringAMD(SegmentAllocator allocator, int group, int counter, int bufSize) { - var seg = allocator.allocateArray(JAVA_BYTE, bufSize); - glGetPerfMonitorCounterStringAMD(group, counter, bufSize, MemorySegment.NULL, seg); - return seg.getUtf8String(0); - } - - public static void glGetPerfMonitorCountersAMD(int group, MemorySegment numCounters, MemorySegment maxActiveCounters, int counterSize, MemorySegment counters) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glGetPerfMonitorCountersAMD).invokeExact(group, numCounters, maxActiveCounters, counterSize, counters); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGetPerfMonitorCountersAMD(SegmentAllocator allocator, int group, int @Nullable [] numCounters, int @Nullable [] maxActiveCounters, int counterSize, int @Nullable [] counters) { - var pNum = numCounters != null ? allocator.allocateArray(JAVA_INT, numCounters.length) : MemorySegment.NULL; - var pMax = maxActiveCounters != null ? allocator.allocateArray(JAVA_INT, maxActiveCounters.length) : MemorySegment.NULL; - var pc = counters != null ? allocator.allocateArray(JAVA_INT, counters.length) : MemorySegment.NULL; - glGetPerfMonitorCountersAMD(group, pNum, pMax, counters != null ? counters.length : counterSize, pc); - } - - public static void glGetPerfMonitorCountersAMD(SegmentAllocator allocator, int group, int @Nullable [] numCounters, int @Nullable [] maxActiveCounters, int @NotNull [] counters) { - glGetPerfMonitorCountersAMD(allocator, group, numCounters, maxActiveCounters, counters.length, counters); - } - - public static void glGetPerfMonitorGroupStringAMD(int group, int bufSize, MemorySegment length, MemorySegment groupString) { - var ext = GLLoader.getExtCapabilities(); + public static void glBeginPerfMonitorAMD(int monitor) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetPerfMonitorGroupStringAMD).invokeExact(group, bufSize, length, groupString); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static String glGetPerfMonitorGroupStringAMD(SegmentAllocator allocator, int group, int bufSize) { - var seg = allocator.allocateArray(JAVA_BYTE, bufSize); - glGetPerfMonitorGroupStringAMD(group, bufSize, MemorySegment.NULL, seg); - return seg.getUtf8String(0); + check(ext.glBeginPerfMonitorAMD).invokeExact(monitor); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetPerfMonitorGroupsAMD(MemorySegment numGroups, int groupsSize, MemorySegment groups) { - var ext = GLLoader.getExtCapabilities(); + public static void glEndPerfMonitorAMD(int monitor) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetPerfMonitorGroupsAMD).invokeExact(numGroups, groupsSize, groups); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGetPerfMonitorGroupsAMD(SegmentAllocator allocator, int @Nullable [] numGroups, int @Nullable [] groups) { - var pn = numGroups != null ? allocator.allocate(JAVA_INT) : MemorySegment.NULL; - final boolean hasGroups = groups != null; - var pg = groups != null ? allocator.allocateArray(JAVA_INT, groups.length) : MemorySegment.NULL; - glGetPerfMonitorGroupsAMD(pn, groups != null ? groups.length : 0, pg); - if (numGroups != null && numGroups.length > 0) { - numGroups[0] = pn.get(JAVA_INT, 0); - } - if (hasGroups) { - RuntimeHelper.toArray(pg, groups); - } + check(ext.glEndPerfMonitorAMD).invokeExact(monitor); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glSelectPerfMonitorCountersAMD(int monitor, boolean enable, int group, int numCounters, MemorySegment counterList) { - var ext = GLLoader.getExtCapabilities(); + public static void glGetPerfMonitorCounterDataAMD(int monitor, int pname, int dataSize, @NativeType("GLuint *") MemorySegment data, @NativeType("GLint *") MemorySegment bytesWritten) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glSelectPerfMonitorCountersAMD).invokeExact(monitor, enable, group, numCounters, counterList); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetPerfMonitorCounterDataAMD).invokeExact(monitor, pname, dataSize, data, bytesWritten); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glSelectPerfMonitorCountersAMD(SegmentAllocator allocator, int monitor, boolean enable, int group, int[] counterList) { - glSelectPerfMonitorCountersAMD(monitor, enable, group, counterList.length, allocator.allocateArray(JAVA_INT, counterList)); - } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPinnedMemory.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPinnedMemory.java new file mode 100644 index 00000000..afbd6535 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPinnedMemory.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.amd; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_AMD_pinned_memory} + */ +public final class GLAMDPinnedMemory { + public static final int GL_EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD = 0x9160; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDQueryBufferObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDQueryBufferObject.java new file mode 100644 index 00000000..e9da4c9f --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDQueryBufferObject.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.amd; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_AMD_query_buffer_object} + */ +public final class GLAMDQueryBufferObject { + public static final int GL_QUERY_BUFFER_AMD = 0x9192; + public static final int GL_QUERY_BUFFER_BINDING_AMD = 0x9193; + public static final int GL_QUERY_RESULT_NO_WAIT_AMD = 0x9194; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSamplePositions.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSamplePositions.java index 1c5d8e7b..941da07b 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSamplePositions.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSamplePositions.java @@ -14,39 +14,30 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.amd; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; -import java.lang.foreign.ValueLayout; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_sample_positions} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_AMD_sample_positions} + */ public final class GLAMDSamplePositions { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_AMD_sample_positions) return; - ext.glSetMultisamplefvAMD = load.invoke("glSetMultisamplefvAMD", FunctionDescriptors.IIPV); + ext.glSetMultisamplefvAMD = load.invoke("glSetMultisamplefvAMD", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); } - public static void glSetMultisamplefvAMD(int pname, int index, MemorySegment val) { - var ext = GLLoader.getExtCapabilities(); + public static void glSetMultisamplefvAMD(int pname, int index, @NativeType("const GLfloat *") MemorySegment val) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glSetMultisamplefvAMD).invokeExact(pname, index, val); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glSetMultisamplefvAMD).invokeExact(pname, index, val); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glSetMultisamplefvAMD(SegmentAllocator allocator, int pname, int index, float[] val) { - glSetMultisamplefvAMD(pname, index, allocator.allocateArray(ValueLayout.JAVA_FLOAT, val)); - } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSparseTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSparseTexture.java index e905c447..79de1baf 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSparseTexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSparseTexture.java @@ -14,41 +14,47 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.amd; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_sparse_texture} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_AMD_sparse_texture} + */ public final class GLAMDSparseTexture { + public static final int GL_VIRTUAL_PAGE_SIZE_X_AMD = 0x9195; + public static final int GL_VIRTUAL_PAGE_SIZE_Y_AMD = 0x9196; + public static final int GL_VIRTUAL_PAGE_SIZE_Z_AMD = 0x9197; + public static final int GL_MAX_SPARSE_TEXTURE_SIZE_AMD = 0x9198; + public static final int GL_MAX_SPARSE_3D_TEXTURE_SIZE_AMD = 0x9199; + public static final int GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS = 0x919A; + public static final int GL_MIN_SPARSE_LEVEL_AMD = 0x919B; + public static final int GL_MIN_LOD_WARNING_AMD = 0x919C; + public static final int GL_TEXTURE_STORAGE_SPARSE_BIT_AMD = 0x00000001; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_AMD_sparse_texture) return; - ext.glTexStorageSparseAMD = load.invoke("glTexStorageSparseAMD", FunctionDescriptors.IIIIIIIV); - ext.glTextureStorageSparseAMD = load.invoke("glTextureStorageSparseAMD", FunctionDescriptors.IIIIIIIIV); + ext.glTexStorageSparseAMD = load.invoke("glTexStorageSparseAMD", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glTextureStorageSparseAMD = load.invoke("glTextureStorageSparseAMD", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); } public static void glTexStorageSparseAMD(int target, int internalFormat, int width, int height, int depth, int layers, int flags) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTexStorageSparseAMD).invokeExact(target, internalFormat, width, height, depth, layers, flags); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glTexStorageSparseAMD).invokeExact(target, internalFormat, width, height, depth, layers, flags); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glTexStorageSparseAMD(int texture, int target, int internalFormat, int width, int height, int depth, int layers, int flags) { - var ext = GLLoader.getExtCapabilities(); + public static void glTextureStorageSparseAMD(int texture, int target, int internalFormat, int width, int height, int depth, int layers, int flags) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTexStorageSparseAMD).invokeExact(texture, target, internalFormat, width, height, depth, layers, flags); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glTextureStorageSparseAMD).invokeExact(texture, target, internalFormat, width, height, depth, layers, flags); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDStencilOperationExtended.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDStencilOperationExtended.java index 54c33af6..09e684db 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDStencilOperationExtended.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDStencilOperationExtended.java @@ -14,31 +14,34 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.amd; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_stencil_operation_extended} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_AMD_stencil_operation_extended} + */ public final class GLAMDStencilOperationExtended { + public static final int GL_SET_AMD = 0x874A; + public static final int GL_REPLACE_VALUE_AMD = 0x874B; + public static final int GL_STENCIL_OP_VALUE_AMD = 0x874C; + public static final int GL_STENCIL_BACK_OP_VALUE_AMD = 0x874D; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_AMD_stencil_operation_extended) return; - ext.glStencilOpValueAMD = load.invoke("glStencilOpValueAMD", FunctionDescriptors.IIV); + ext.glStencilOpValueAMD = load.invoke("glStencilOpValueAMD", ofVoid(JAVA_INT, JAVA_INT)); } public static void glStencilOpValueAMD(int face, int value) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glStencilOpValueAMD).invokeExact(face, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glStencilOpValueAMD).invokeExact(face, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDTransformFeedback4.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDTransformFeedback4.java new file mode 100644 index 00000000..c598d223 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDTransformFeedback4.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.amd; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_AMD_transform_feedback4} + */ +public final class GLAMDTransformFeedback4 { + public static final int GL_STREAM_RASTERIZATION_AMD = 0x91A0; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDVertexShaderTessellator.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDVertexShaderTessellator.java index 9ac84300..45cd42e3 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDVertexShaderTessellator.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDVertexShaderTessellator.java @@ -14,41 +14,45 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.amd; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_vertex_shader_tessellator} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_AMD_vertex_shader_tessellator} + */ public final class GLAMDVertexShaderTessellator { + public static final int GL_SAMPLER_BUFFER_AMD = 0x9001; + public static final int GL_INT_SAMPLER_BUFFER_AMD = 0x9002; + public static final int GL_UNSIGNED_INT_SAMPLER_BUFFER_AMD = 0x9003; + public static final int GL_TESSELLATION_MODE_AMD = 0x9004; + public static final int GL_TESSELLATION_FACTOR_AMD = 0x9005; + public static final int GL_DISCRETE_AMD = 0x9006; + public static final int GL_CONTINUOUS_AMD = 0x9007; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_AMD_vertex_shader_tessellator) return; - ext.glTessellationFactorAMD = load.invoke("glTessellationFactorAMD", FunctionDescriptors.FV); - ext.glTessellationModeAMD = load.invoke("glTessellationModeAMD", FunctionDescriptors.IV); + ext.glTessellationFactorAMD = load.invoke("glTessellationFactorAMD", ofVoid(JAVA_FLOAT)); + ext.glTessellationModeAMD = load.invoke("glTessellationModeAMD", ofVoid(JAVA_INT)); } public static void glTessellationFactorAMD(float factor) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTessellationFactorAMD).invokeExact(factor); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glTessellationFactorAMD).invokeExact(factor); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glTessellationModeAMD(int mode) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTessellationModeAMD).invokeExact(mode); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glTessellationModeAMD).invokeExact(mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEAuxDepthStencil.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEAuxDepthStencil.java new file mode 100644 index 00000000..522993a0 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEAuxDepthStencil.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.apple; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_APPLE_aux_depth_stencil} + */ +public final class GLAPPLEAuxDepthStencil { + public static final int GL_AUX_DEPTH_STENCIL_APPLE = 0x8A14; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEClientStorage.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEClientStorage.java new file mode 100644 index 00000000..fa71e4de --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEClientStorage.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.apple; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_APPLE_client_storage} + */ +public final class GLAPPLEClientStorage { + public static final int GL_UNPACK_CLIENT_STORAGE_APPLE = 0x85B2; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEElementArray.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEElementArray.java index 18bbb426..dfe7cfa7 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEElementArray.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEElementArray.java @@ -14,84 +14,65 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.apple; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; - -import static java.lang.foreign.ValueLayout.JAVA_INT; -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_element_array} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_APPLE_element_array} + */ public final class GLAPPLEElementArray { + public static final int GL_ELEMENT_ARRAY_APPLE = 0x8A0C; + public static final int GL_ELEMENT_ARRAY_TYPE_APPLE = 0x8A0D; + public static final int GL_ELEMENT_ARRAY_POINTER_APPLE = 0x8A0E; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_APPLE_element_array) return; - ext.glDrawElementArrayAPPLE = load.invoke("glDrawElementArrayAPPLE", IIIV); - ext.glDrawRangeElementArrayAPPLE = load.invoke("glDrawRangeElementArrayAPPLE", IIIIIV); - ext.glElementPointerAPPLE = load.invoke("glElementPointerAPPLE", IPV); - ext.glMultiDrawElementArrayAPPLE = load.invoke("glMultiDrawElementArrayAPPLE", IPPIV); - ext.glMultiDrawRangeElementArrayAPPLE = load.invoke("glMultiDrawRangeElementArrayAPPLE", IIIPPIV); + ext.glElementPointerAPPLE = load.invoke("glElementPointerAPPLE", ofVoid(JAVA_INT, ADDRESS)); + ext.glDrawElementArrayAPPLE = load.invoke("glDrawElementArrayAPPLE", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glDrawRangeElementArrayAPPLE = load.invoke("glDrawRangeElementArrayAPPLE", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMultiDrawElementArrayAPPLE = load.invoke("glMultiDrawElementArrayAPPLE", ofVoid(JAVA_INT, ADDRESS, ADDRESS, JAVA_INT)); + ext.glMultiDrawRangeElementArrayAPPLE = load.invoke("glMultiDrawRangeElementArrayAPPLE", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, ADDRESS, JAVA_INT)); } - public static void glDrawElementArrayAPPLE(int mode, int first, int count) { - var ext = GLLoader.getExtCapabilities(); + public static void glElementPointerAPPLE(int type, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDrawElementArrayAPPLE).invokeExact(mode, first, count); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glElementPointerAPPLE).invokeExact(type, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glDrawRangeElementArrayAPPLE(int mode, int start, int end, int first, int count) { - var ext = GLLoader.getExtCapabilities(); + public static void glDrawElementArrayAPPLE(int mode, int first, int count) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDrawRangeElementArrayAPPLE).invokeExact(mode, start, end, first, count); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glDrawElementArrayAPPLE).invokeExact(mode, first, count); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glElementPointerAPPLE(int type, MemorySegment pointer) { - var ext = GLLoader.getExtCapabilities(); + public static void glDrawRangeElementArrayAPPLE(int mode, int start, int end, int first, int count) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glElementPointerAPPLE).invokeExact(type, pointer); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glDrawRangeElementArrayAPPLE).invokeExact(mode, start, end, first, count); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiDrawElementArrayAPPLE(int mode, MemorySegment first, MemorySegment count, int primCount) { - var ext = GLLoader.getExtCapabilities(); + public static void glMultiDrawElementArrayAPPLE(int mode, @NativeType("const GLint *") MemorySegment first, @NativeType("const GLsizei *") MemorySegment count, int primcount) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiDrawElementArrayAPPLE).invokeExact(mode, first, count, primCount); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiDrawElementArrayAPPLE).invokeExact(mode, first, count, primcount); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiDrawElementArrayAPPLE(SegmentAllocator allocator, int mode, int[] first, int[] count, int primCount) { - glMultiDrawElementArrayAPPLE(mode, allocator.allocateArray(JAVA_INT, first), allocator.allocateArray(JAVA_INT, count), primCount); - } - - public static void glMultiDrawRangeElementArrayAPPLE(int mode, int start, int end, MemorySegment first, MemorySegment count, int primCount) { - var ext = GLLoader.getExtCapabilities(); + public static void glMultiDrawRangeElementArrayAPPLE(int mode, int start, int end, @NativeType("const GLint *") MemorySegment first, @NativeType("const GLsizei *") MemorySegment count, int primcount) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiDrawRangeElementArrayAPPLE).invokeExact(mode, start, end, first, count, primCount); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiDrawRangeElementArrayAPPLE).invokeExact(mode, start, end, first, count, primcount); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiDrawRangeElementArrayAPPLE(SegmentAllocator allocator, int mode, int start, int end, int[] first, int[] count, int primCount) { - glMultiDrawRangeElementArrayAPPLE(mode, start, end, allocator.allocateArray(JAVA_INT, first), allocator.allocateArray(JAVA_INT, count), primCount); - } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFence.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFence.java index b4f0bd33..a82ea31a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFence.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFence.java @@ -14,127 +14,91 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.apple; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.util.MemoryStack; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; - -import static java.lang.foreign.ValueLayout.JAVA_INT; -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_fence} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_APPLE_fence} + */ public final class GLAPPLEFence { + public static final int GL_DRAW_PIXELS_APPLE = 0x8A0A; + public static final int GL_FENCE_APPLE = 0x8A0B; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_APPLE_fence) return; - ext.glDeleteFencesAPPLE = load.invoke("glDeleteFencesAPPLE", IPV); - ext.glFinishFenceAPPLE = load.invoke("glFinishFenceAPPLE", IV); - ext.glFinishObjectAPPLE = load.invoke("glFinishObjectAPPLE", IIV); - ext.glGenFencesAPPLE = load.invoke("glGenFencesAPPLE", IPV); - ext.glIsFenceAPPLE = load.invoke("glIsFenceAPPLE", IZ); - ext.glSetFenceAPPLE = load.invoke("glSetFenceAPPLE", IV); - ext.glTestFenceAPPLE = load.invoke("glTestFenceAPPLE", IZ); - ext.glTestObjectAPPLE = load.invoke("glTestObjectAPPLE", IIZ); + ext.glGenFencesAPPLE = load.invoke("glGenFencesAPPLE", ofVoid(JAVA_INT, ADDRESS)); + ext.glDeleteFencesAPPLE = load.invoke("glDeleteFencesAPPLE", ofVoid(JAVA_INT, ADDRESS)); + ext.glSetFenceAPPLE = load.invoke("glSetFenceAPPLE", ofVoid(JAVA_INT)); + ext.glIsFenceAPPLE = load.invoke("glIsFenceAPPLE", of(JAVA_BYTE, JAVA_INT)); + ext.glTestFenceAPPLE = load.invoke("glTestFenceAPPLE", of(JAVA_BYTE, JAVA_INT)); + ext.glFinishFenceAPPLE = load.invoke("glFinishFenceAPPLE", ofVoid(JAVA_INT)); + ext.glTestObjectAPPLE = load.invoke("glTestObjectAPPLE", of(JAVA_BYTE, JAVA_INT, JAVA_INT)); + ext.glFinishObjectAPPLE = load.invoke("glFinishObjectAPPLE", ofVoid(JAVA_INT, JAVA_INT)); } - public static void glDeleteFencesAPPLE(int n, MemorySegment fences) { - var ext = GLLoader.getExtCapabilities(); + public static void glGenFencesAPPLE(int n, @NativeType("GLuint *") MemorySegment fences) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDeleteFencesAPPLE).invokeExact(n, fences); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glDeleteFencesAPPLE(SegmentAllocator allocator, int[] fences) { - glDeleteFencesAPPLE(fences.length, allocator.allocateArray(JAVA_INT, fences)); + check(ext.glGenFencesAPPLE).invokeExact(n, fences); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glFinishFenceAPPLE(int fence) { - var ext = GLLoader.getExtCapabilities(); + public static void glDeleteFencesAPPLE(int n, @NativeType("const GLuint *") MemorySegment fences) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glFinishFenceAPPLE).invokeExact(fence); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glDeleteFencesAPPLE).invokeExact(n, fences); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glFinishObjectAPPLE(int object, int name) { - var ext = GLLoader.getExtCapabilities(); + public static void glSetFenceAPPLE(int fence) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glFinishObjectAPPLE).invokeExact(object, name); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glSetFenceAPPLE).invokeExact(fence); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGenFencesAPPLE(int n, MemorySegment fences) { - var ext = GLLoader.getExtCapabilities(); + public static boolean glIsFenceAPPLE(int fence) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGenFencesAPPLE).invokeExact(n, fences); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGenFencesAPPLE(SegmentAllocator allocator, int[] fences) { - glGenFencesAPPLE(fences.length, allocator.allocateArray(JAVA_INT, fences)); + return (boolean) + check(ext.glIsFenceAPPLE).invokeExact(fence); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static int glGenFenceAPPLE() { - var stack = MemoryStack.stackGet(); - long stackPointer = stack.getPointer(); + public static boolean glTestFenceAPPLE(int fence) { + final var ext = getExtCapabilities(); try { - var seg = stack.callocInt(); - glGenFencesAPPLE(1, seg); - return seg.get(JAVA_INT, 0); - } finally { - stack.setPointer(stackPointer); - } + return (boolean) + check(ext.glTestFenceAPPLE).invokeExact(fence); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static boolean glIsFenceAPPLE(int fence) { - var ext = GLLoader.getExtCapabilities(); + public static void glFinishFenceAPPLE(int fence) { + final var ext = getExtCapabilities(); try { - return (boolean) GLLoader.check(ext.glIsFenceAPPLE).invokeExact(fence); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glFinishFenceAPPLE).invokeExact(fence); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glSetFenceAPPLE(int fence) { - var ext = GLLoader.getExtCapabilities(); + public static boolean glTestObjectAPPLE(int object, int name) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glSetFenceAPPLE).invokeExact(fence); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + return (boolean) + check(ext.glTestObjectAPPLE).invokeExact(object, name); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static boolean glTestFenceAPPLE(int fence) { - var ext = GLLoader.getExtCapabilities(); + public static void glFinishObjectAPPLE(int object, int name) { + final var ext = getExtCapabilities(); try { - return (boolean) GLLoader.check(ext.glTestFenceAPPLE).invokeExact(fence); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glFinishObjectAPPLE).invokeExact(object, name); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static boolean glTestObjectAPPLE(int object, int name) { - var ext = GLLoader.getExtCapabilities(); - try { - return (boolean) GLLoader.check(ext.glTestObjectAPPLE).invokeExact(object, name); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFloatPixels.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFloatPixels.java new file mode 100644 index 00000000..5a4f9f0e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFloatPixels.java @@ -0,0 +1,45 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.apple; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_APPLE_float_pixels} + */ +public final class GLAPPLEFloatPixels { + public static final int GL_HALF_APPLE = 0x140B; + public static final int GL_RGBA_FLOAT32_APPLE = 0x8814; + public static final int GL_RGB_FLOAT32_APPLE = 0x8815; + public static final int GL_ALPHA_FLOAT32_APPLE = 0x8816; + public static final int GL_INTENSITY_FLOAT32_APPLE = 0x8817; + public static final int GL_LUMINANCE_FLOAT32_APPLE = 0x8818; + public static final int GL_LUMINANCE_ALPHA_FLOAT32_APPLE = 0x8819; + public static final int GL_RGBA_FLOAT16_APPLE = 0x881A; + public static final int GL_RGB_FLOAT16_APPLE = 0x881B; + public static final int GL_ALPHA_FLOAT16_APPLE = 0x881C; + public static final int GL_INTENSITY_FLOAT16_APPLE = 0x881D; + public static final int GL_LUMINANCE_FLOAT16_APPLE = 0x881E; + public static final int GL_LUMINANCE_ALPHA_FLOAT16_APPLE = 0x881F; + public static final int GL_COLOR_FLOAT_APPLE = 0x8A0F; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFlushBufferRange.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFlushBufferRange.java index f8b834d2..71a1d74c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFlushBufferRange.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFlushBufferRange.java @@ -14,41 +14,40 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.apple; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_flush_buffer_range} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_APPLE_flush_buffer_range} + */ public final class GLAPPLEFlushBufferRange { + public static final int GL_BUFFER_SERIALIZED_MODIFY_APPLE = 0x8A12; + public static final int GL_BUFFER_FLUSHING_UNMAP_APPLE = 0x8A13; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_APPLE_flush_buffer_range) return; - ext.glBufferParameteriAPPLE = load.invoke("glBufferParameteriAPPLE", FunctionDescriptors.IIIV); - ext.glFlushMappedBufferRangeAPPLE = load.invoke("glFlushMappedBufferRangeAPPLE", FunctionDescriptors.IJJV); + ext.glBufferParameteriAPPLE = load.invoke("glBufferParameteriAPPLE", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glFlushMappedBufferRangeAPPLE = load.invoke("glFlushMappedBufferRangeAPPLE", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG)); } public static void glBufferParameteriAPPLE(int target, int pname, int param) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glBufferParameteriAPPLE).invokeExact(target, pname, param); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glBufferParameteriAPPLE).invokeExact(target, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glFlushMappedBufferRangeAPPLE(int target, long offset, long size) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glFlushMappedBufferRangeAPPLE).invokeExact(target, offset, size); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glFlushMappedBufferRangeAPPLE).invokeExact(target, offset, size); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEObjectPurgeable.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEObjectPurgeable.java index 713fd8ff..6282a6c9 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEObjectPurgeable.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEObjectPurgeable.java @@ -14,59 +14,54 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.apple; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; -import java.lang.foreign.ValueLayout; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_object_purgeable} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_APPLE_object_purgeable} + */ public final class GLAPPLEObjectPurgeable { + public static final int GL_BUFFER_OBJECT_APPLE = 0x85B3; + public static final int GL_RELEASED_APPLE = 0x8A19; + public static final int GL_VOLATILE_APPLE = 0x8A1A; + public static final int GL_RETAINED_APPLE = 0x8A1B; + public static final int GL_UNDEFINED_APPLE = 0x8A1C; + public static final int GL_PURGEABLE_APPLE = 0x8A1D; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_APPLE_object_purgeable) return; - ext.glGetObjectParameterivAPPLE = load.invoke("glGetObjectParameterivAPPLE", FunctionDescriptors.IIIPV); - ext.glObjectPurgeableAPPLE = load.invoke("glObjectPurgeableAPPLE", FunctionDescriptors.IIII); - ext.glObjectUnpurgeableAPPLE = load.invoke("glObjectUnpurgeableAPPLE", FunctionDescriptors.IIII); + ext.glObjectPurgeableAPPLE = load.invoke("glObjectPurgeableAPPLE", of(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glObjectUnpurgeableAPPLE = load.invoke("glObjectUnpurgeableAPPLE", of(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetObjectParameterivAPPLE = load.invoke("glGetObjectParameterivAPPLE", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); } - public static void glGetObjectParameterivAPPLE(int objectType, int name, int pname, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); + public static int glObjectPurgeableAPPLE(int objectType, int name, int option) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetObjectParameterivAPPLE).invokeExact(objectType, name, pname, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGetObjectParameterivAPPLE(SegmentAllocator allocator, int objectType, int name, int pname, int[] params) { - glGetObjectParameterivAPPLE(objectType, name, pname, allocator.allocateArray(ValueLayout.JAVA_INT, params)); + return (int) + check(ext.glObjectPurgeableAPPLE).invokeExact(objectType, name, option); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static int glObjectPurgeableAPPLE(int objectType, int name, int option) { - var ext = GLLoader.getExtCapabilities(); + public static int glObjectUnpurgeableAPPLE(int objectType, int name, int option) { + final var ext = getExtCapabilities(); try { - return (int) GLLoader.check(ext.glObjectPurgeableAPPLE).invokeExact(objectType, name, option); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + return (int) + check(ext.glObjectUnpurgeableAPPLE).invokeExact(objectType, name, option); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static int glObjectUnpurgeableAPPLE(int objectType, int name, int option) { - var ext = GLLoader.getExtCapabilities(); + public static void glGetObjectParameterivAPPLE(int objectType, int name, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); try { - return (int) GLLoader.check(ext.glObjectUnpurgeableAPPLE).invokeExact(objectType, name, option); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetObjectParameterivAPPLE).invokeExact(objectType, name, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERgb422.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERgb422.java new file mode 100644 index 00000000..a2167d3a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERgb422.java @@ -0,0 +1,35 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.apple; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_APPLE_rgb_422} + */ +public final class GLAPPLERgb422 { + public static final int GL_RGB_422_APPLE = 0x8A1F; + public static final int GL_UNSIGNED_SHORT_8_8_APPLE = 0x85BA; + public static final int GL_UNSIGNED_SHORT_8_8_REV_APPLE = 0x85BB; + public static final int GL_RGB_RAW_422_APPLE = 0x8A51; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERowBytes.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERowBytes.java new file mode 100644 index 00000000..fcac4f7e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERowBytes.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.apple; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_APPLE_row_bytes} + */ +public final class GLAPPLERowBytes { + public static final int GL_PACK_ROW_BYTES_APPLE = 0x8A15; + public static final int GL_UNPACK_ROW_BYTES_APPLE = 0x8A16; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLESpecularVector.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLESpecularVector.java new file mode 100644 index 00000000..1c997292 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLESpecularVector.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.apple; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_APPLE_specular_vector} + */ +public final class GLAPPLESpecularVector { + public static final int GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE = 0x85B0; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETextureRange.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETextureRange.java index 2f7b2944..36c59aeb 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETextureRange.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETextureRange.java @@ -14,44 +14,44 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.apple; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import java.lang.foreign.MemorySegment; - -import static overrungl.FunctionDescriptors.IIPV; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_texture_range} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_APPLE_texture_range} + */ public final class GLAPPLETextureRange { + public static final int GL_TEXTURE_RANGE_LENGTH_APPLE = 0x85B7; + public static final int GL_TEXTURE_RANGE_POINTER_APPLE = 0x85B8; + public static final int GL_TEXTURE_STORAGE_HINT_APPLE = 0x85BC; + public static final int GL_STORAGE_PRIVATE_APPLE = 0x85BD; + public static final int GL_STORAGE_CACHED_APPLE = 0x85BE; + public static final int GL_STORAGE_SHARED_APPLE = 0x85BF; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_APPLE_texture_range) return; - ext.glGetTexParameterPointervAPPLE = load.invoke("glGetTexParameterPointervAPPLE", IIPV); - ext.glTextureRangeAPPLE = load.invoke("glTextureRangeAPPLE", IIPV); + ext.glTextureRangeAPPLE = load.invoke("glTextureRangeAPPLE", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetTexParameterPointervAPPLE = load.invoke("glGetTexParameterPointervAPPLE", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); } - public static void glGetTexParameterPointervAPPLE(int target, int pname, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); + public static void glTextureRangeAPPLE(int target, int length, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetTexParameterPointervAPPLE).invokeExact(target, pname, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glTextureRangeAPPLE).invokeExact(target, length, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glTextureRangeAPPLE(int target, int length, MemorySegment pointer) { - var ext = GLLoader.getExtCapabilities(); + public static void glGetTexParameterPointervAPPLE(int target, int pname, @NativeType("void **") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTextureRangeAPPLE).invokeExact(target, length, pointer); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetTexParameterPointervAPPLE).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETransformHint.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETransformHint.java new file mode 100644 index 00000000..f9322c74 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETransformHint.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.apple; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_APPLE_transform_hint} + */ +public final class GLAPPLETransformHint { + public static final int GL_TRANSFORM_HINT_APPLE = 0x85B1; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayObject.java index 3376e209..1d0cddf3 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayObject.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayObject.java @@ -14,94 +14,56 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.apple; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.internal.RuntimeHelper; -import overrungl.util.MemoryStack; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; - -import static java.lang.foreign.ValueLayout.JAVA_INT; -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_vertex_array_object} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_APPLE_vertex_array_object} + */ public final class GLAPPLEVertexArrayObject { + public static final int GL_VERTEX_ARRAY_BINDING_APPLE = 0x85B5; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_APPLE_vertex_array_object) return; - ext.glBindVertexArrayAPPLE = load.invoke("glBindVertexArrayAPPLE", IV); - ext.glDeleteVertexArraysAPPLE = load.invoke("glDeleteVertexArraysAPPLE", IPV); - ext.glGenVertexArraysAPPLE = load.invoke("glGenVertexArraysAPPLE", IPV); - ext.glIsVertexArrayAPPLE = load.invoke("glIsVertexArrayAPPLE", IZ); + ext.glBindVertexArrayAPPLE = load.invoke("glBindVertexArrayAPPLE", ofVoid(JAVA_INT)); + ext.glDeleteVertexArraysAPPLE = load.invoke("glDeleteVertexArraysAPPLE", ofVoid(JAVA_INT, ADDRESS)); + ext.glGenVertexArraysAPPLE = load.invoke("glGenVertexArraysAPPLE", ofVoid(JAVA_INT, ADDRESS)); + ext.glIsVertexArrayAPPLE = load.invoke("glIsVertexArrayAPPLE", of(JAVA_BYTE, JAVA_INT)); } public static void glBindVertexArrayAPPLE(int array) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glBindVertexArrayAPPLE).invokeExact(array); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glDeleteVertexArraysAPPLE(int n, MemorySegment arrays) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDeleteVertexArraysAPPLE).invokeExact(n, arrays); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glBindVertexArrayAPPLE).invokeExact(array); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glDeleteVertexArraysAPPLE(SegmentAllocator allocator, int[] arrays) { - glDeleteVertexArraysAPPLE(arrays.length, allocator.allocateArray(JAVA_INT, arrays)); - } - - public static void glDeleteVertexArrayAPPLE(SegmentAllocator allocator, int array) { - glDeleteVertexArraysAPPLE(1, allocator.allocate(JAVA_INT, array)); - } - - public static void glGenVertexArraysAPPLE(int n, MemorySegment arrays) { - var ext = GLLoader.getExtCapabilities(); + public static void glDeleteVertexArraysAPPLE(int n, @NativeType("const GLuint *") MemorySegment arrays) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGenVertexArraysAPPLE).invokeExact(n, arrays); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glDeleteVertexArraysAPPLE).invokeExact(n, arrays); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGenVertexArraysAPPLE(SegmentAllocator allocator, int[] arrays) { - var seg = allocator.allocateArray(JAVA_INT, arrays.length); - glGenVertexArraysAPPLE(arrays.length, seg); - RuntimeHelper.toArray(seg, arrays); - } - - public static int glGenVertexArrayAPPLE() { - var stack = MemoryStack.stackGet(); - long stackPointer = stack.getPointer(); + public static void glGenVertexArraysAPPLE(int n, @NativeType("GLuint *") MemorySegment arrays) { + final var ext = getExtCapabilities(); try { - var seg = stack.callocInt(); - glGenVertexArraysAPPLE(1, seg); - return seg.get(JAVA_INT, 0); - } finally { - stack.setPointer(stackPointer); - } + check(ext.glGenVertexArraysAPPLE).invokeExact(n, arrays); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static boolean glIsVertexArrayAPPLE(int array) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - return (boolean) GLLoader.check(ext.glIsVertexArrayAPPLE).invokeExact(array); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + return (boolean) + check(ext.glIsVertexArrayAPPLE).invokeExact(array); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayRange.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayRange.java index 0596e7fc..7c6195f6 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayRange.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayRange.java @@ -14,53 +14,51 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.apple; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; - -import java.lang.foreign.MemorySegment; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_vertex_array_range} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_APPLE_vertex_array_range} + */ public final class GLAPPLEVertexArrayRange { + public static final int GL_VERTEX_ARRAY_RANGE_APPLE = 0x851D; + public static final int GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE = 0x851E; + public static final int GL_VERTEX_ARRAY_STORAGE_HINT_APPLE = 0x851F; + public static final int GL_VERTEX_ARRAY_RANGE_POINTER_APPLE = 0x8521; + public static final int GL_STORAGE_CLIENT_APPLE = 0x85B4; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_APPLE_vertex_array_range) return; - ext.glFlushVertexArrayRangeAPPLE = load.invoke("glFlushVertexArrayRangeAPPLE", FunctionDescriptors.IPV); - ext.glVertexArrayParameteriAPPLE = load.invoke("glVertexArrayParameteriAPPLE", FunctionDescriptors.IIV); - ext.glVertexArrayRangeAPPLE = load.invoke("glVertexArrayRangeAPPLE", FunctionDescriptors.IPV); + ext.glVertexArrayRangeAPPLE = load.invoke("glVertexArrayRangeAPPLE", ofVoid(JAVA_INT, ADDRESS)); + ext.glFlushVertexArrayRangeAPPLE = load.invoke("glFlushVertexArrayRangeAPPLE", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexArrayParameteriAPPLE = load.invoke("glVertexArrayParameteriAPPLE", ofVoid(JAVA_INT, JAVA_INT)); } - public static void glFlushVertexArrayRangeAPPLE(int length, MemorySegment pointer) { - var ext = GLLoader.getExtCapabilities(); + public static void glVertexArrayRangeAPPLE(int length, @NativeType("void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glFlushVertexArrayRangeAPPLE).invokeExact(length, pointer); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glVertexArrayRangeAPPLE).invokeExact(length, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glVertexArrayParameteriAPPLE(int pname, int param) { - var ext = GLLoader.getExtCapabilities(); + public static void glFlushVertexArrayRangeAPPLE(int length, @NativeType("void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glVertexArrayParameteriAPPLE).invokeExact(pname, param); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glFlushVertexArrayRangeAPPLE).invokeExact(length, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glVertexArrayRangeAPPLE(int length, MemorySegment pointer) { - var ext = GLLoader.getExtCapabilities(); + public static void glVertexArrayParameteriAPPLE(int pname, int param) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glVertexArrayRangeAPPLE).invokeExact(length, pointer); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glVertexArrayParameteriAPPLE).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexProgramEvaluators.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexProgramEvaluators.java index 66e7218e..8024ed45 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexProgramEvaluators.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexProgramEvaluators.java @@ -14,113 +14,89 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.apple; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; - -import static java.lang.foreign.ValueLayout.JAVA_DOUBLE; -import static java.lang.foreign.ValueLayout.JAVA_FLOAT; -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_vertex_program_evaluators} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_APPLE_vertex_program_evaluators} + */ public final class GLAPPLEVertexProgramEvaluators { + public static final int GL_VERTEX_ATTRIB_MAP1_APPLE = 0x8A00; + public static final int GL_VERTEX_ATTRIB_MAP2_APPLE = 0x8A01; + public static final int GL_VERTEX_ATTRIB_MAP1_SIZE_APPLE = 0x8A02; + public static final int GL_VERTEX_ATTRIB_MAP1_COEFF_APPLE = 0x8A03; + public static final int GL_VERTEX_ATTRIB_MAP1_ORDER_APPLE = 0x8A04; + public static final int GL_VERTEX_ATTRIB_MAP1_DOMAIN_APPLE = 0x8A05; + public static final int GL_VERTEX_ATTRIB_MAP2_SIZE_APPLE = 0x8A06; + public static final int GL_VERTEX_ATTRIB_MAP2_COEFF_APPLE = 0x8A07; + public static final int GL_VERTEX_ATTRIB_MAP2_ORDER_APPLE = 0x8A08; + public static final int GL_VERTEX_ATTRIB_MAP2_DOMAIN_APPLE = 0x8A09; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_APPLE_vertex_program_evaluators) return; - ext.glDisableVertexAttribAPPLE = load.invoke("glDisableVertexAttribAPPLE", IIV); - ext.glEnableVertexAttribAPPLE = load.invoke("glEnableVertexAttribAPPLE", IIV); - ext.glIsVertexAttribEnabledAPPLE = load.invoke("glIsVertexAttribEnabledAPPLE", IIZ); - ext.glMapVertexAttrib1dAPPLE = load.invoke("glMapVertexAttrib1dAPPLE", IIDDIIPV); - ext.glMapVertexAttrib1fAPPLE = load.invoke("glMapVertexAttrib1fAPPLE", IIFFIIPV); - ext.glMapVertexAttrib2dAPPLE = load.invoke("glMapVertexAttrib2dAPPLE", IIDDIIDDIIPV); - ext.glMapVertexAttrib2fAPPLE = load.invoke("glMapVertexAttrib2fAPPLE", IIFFIIFFIIPV); + ext.glEnableVertexAttribAPPLE = load.invoke("glEnableVertexAttribAPPLE", ofVoid(JAVA_INT, JAVA_INT)); + ext.glDisableVertexAttribAPPLE = load.invoke("glDisableVertexAttribAPPLE", ofVoid(JAVA_INT, JAVA_INT)); + ext.glIsVertexAttribEnabledAPPLE = load.invoke("glIsVertexAttribEnabledAPPLE", of(JAVA_BYTE, JAVA_INT, JAVA_INT)); + ext.glMapVertexAttrib1dAPPLE = load.invoke("glMapVertexAttrib1dAPPLE", ofVoid(JAVA_INT, JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMapVertexAttrib1fAPPLE = load.invoke("glMapVertexAttrib1fAPPLE", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMapVertexAttrib2dAPPLE = load.invoke("glMapVertexAttrib2dAPPLE", ofVoid(JAVA_INT, JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_INT, JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMapVertexAttrib2fAPPLE = load.invoke("glMapVertexAttrib2fAPPLE", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_INT, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_INT, JAVA_INT, ADDRESS)); } - public static void glDisableVertexAttribAPPLE(int index, int pname) { - var ext = GLLoader.getExtCapabilities(); + public static void glEnableVertexAttribAPPLE(int index, int pname) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDisableVertexAttribAPPLE).invokeExact(index, pname); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glEnableVertexAttribAPPLE).invokeExact(index, pname); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glEnableVertexAttribAPPLE(int index, int pname) { - var ext = GLLoader.getExtCapabilities(); + public static void glDisableVertexAttribAPPLE(int index, int pname) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glEnableVertexAttribAPPLE).invokeExact(index, pname); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glDisableVertexAttribAPPLE).invokeExact(index, pname); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static boolean glIsVertexAttribEnabledAPPLE(int index, int pname) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - return (boolean) GLLoader.check(ext.glIsVertexAttribEnabledAPPLE).invokeExact(index, pname); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + return (boolean) + check(ext.glIsVertexAttribEnabledAPPLE).invokeExact(index, pname); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMapVertexAttrib1dAPPLE(int index, int size, double u1, double u2, int stride, int order, MemorySegment points) { - var ext = GLLoader.getExtCapabilities(); + public static void glMapVertexAttrib1dAPPLE(int index, int size, double u1, double u2, int stride, int order, @NativeType("const GLdouble *") MemorySegment points) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMapVertexAttrib1dAPPLE).invokeExact(index, size, u1, u2, stride, order, points); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMapVertexAttrib1dAPPLE).invokeExact(index, size, u1, u2, stride, order, points); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMapVertexAttrib1dAPPLE(SegmentAllocator allocator, int index, int size, double u1, double u2, int stride, int order, double[] points) { - glMapVertexAttrib1dAPPLE(index, size, u1, u2, stride, order, allocator.allocateArray(JAVA_DOUBLE, points)); - } - - public static void glMapVertexAttrib1fAPPLE(int index, int size, float u1, float u2, int stride, int order, MemorySegment points) { - var ext = GLLoader.getExtCapabilities(); + public static void glMapVertexAttrib1fAPPLE(int index, int size, float u1, float u2, int stride, int order, @NativeType("const GLfloat *") MemorySegment points) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMapVertexAttrib1fAPPLE).invokeExact(index, size, u1, u2, stride, order, points); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glMapVertexAttrib1fAPPLE(SegmentAllocator allocator, int index, int size, float u1, float u2, int stride, int order, float[] points) { - glMapVertexAttrib1fAPPLE(index, size, u1, u2, stride, order, allocator.allocateArray(JAVA_FLOAT, points)); + check(ext.glMapVertexAttrib1fAPPLE).invokeExact(index, size, u1, u2, stride, order, points); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMapVertexAttrib2dAPPLE(int index, int size, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, MemorySegment points) { - var ext = GLLoader.getExtCapabilities(); + public static void glMapVertexAttrib2dAPPLE(int index, int size, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, @NativeType("const GLdouble *") MemorySegment points) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMapVertexAttrib2dAPPLE).invokeExact(index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMapVertexAttrib2dAPPLE).invokeExact(index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMapVertexAttrib2dAPPLE(SegmentAllocator allocator, int index, int size, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, double[] points) { - glMapVertexAttrib2dAPPLE(index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, allocator.allocateArray(JAVA_DOUBLE, points)); - } - - public static void glMapVertexAttrib2fAPPLE(int index, int size, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, MemorySegment points) { - var ext = GLLoader.getExtCapabilities(); + public static void glMapVertexAttrib2fAPPLE(int index, int size, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, @NativeType("const GLfloat *") MemorySegment points) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMapVertexAttrib2fAPPLE).invokeExact(index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMapVertexAttrib2fAPPLE).invokeExact(index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMapVertexAttrib2fAPPLE(SegmentAllocator allocator, int index, int size, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, float[] points) { - glMapVertexAttrib2fAPPLE(index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, allocator.allocateArray(JAVA_FLOAT, points)); - } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEYcbcr422.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEYcbcr422.java new file mode 100644 index 00000000..b5b0013e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEYcbcr422.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.apple; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_APPLE_ycbcr_422} + */ +public final class GLAPPLEYcbcr422 { + public static final int GL_YCBCR_422_APPLE = 0x85B9; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBRobustness.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBRobustness.java index 9ac8c9e7..33880dda 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBRobustness.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBRobustness.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; @@ -20,7 +35,6 @@ public final class GLARBRobustness { public static final int GL_LOSE_CONTEXT_ON_RESET_ARB = 0x8252; public static final int GL_INNOCENT_CONTEXT_RESET_ARB = 0x8254; public static final int GL_GUILTY_CONTEXT_RESET_ARB = 0x8253; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_robustness) return; ext.glGetGraphicsResetStatusARB = load.invoke("glGetGraphicsResetStatusARB", of(JAVA_INT)); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleLocations.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleLocations.java index 05d15769..8db4d3b6 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleLocations.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleLocations.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; @@ -21,7 +36,6 @@ public final class GLARBSampleLocations { public static final int GL_PROGRAMMABLE_SAMPLE_LOCATION_ARB = 0x9341; public static final int GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_ARB = 0x9342; public static final int GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_ARB = 0x9343; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_sample_locations) return; ext.glEvaluateDepthValuesARB = load.invoke("glEvaluateDepthValuesARB", ofVoid()); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleShading.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleShading.java index f211d241..aef2adb9 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleShading.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleShading.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; @@ -15,7 +30,6 @@ public final class GLARBSampleShading { public static final int GL_SAMPLE_SHADING_ARB = 0x8C36; public static final int GL_MIN_SAMPLE_SHADING_VALUE_ARB = 0x8C37; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_sample_shading) return; ext.glMinSampleShadingARB = load.invoke("glMinSampleShadingARB", ofVoid(JAVA_FLOAT)); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShaderObjects.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShaderObjects.java index 04407a15..71afda02 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShaderObjects.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShaderObjects.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; @@ -47,7 +62,6 @@ public final class GLARBShaderObjects { public static final int GL_OBJECT_ACTIVE_UNIFORMS_ARB = 0x8B86; public static final int GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB = 0x8B87; public static final int GL_OBJECT_SHADER_SOURCE_LENGTH_ARB = 0x8B88; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_shader_objects) return; ext.glDeleteObjectARB = load.invoke("glDeleteObjectARB", ofVoid(JAVA_INT)); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadingLanguageInclude.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadingLanguageInclude.java index e515781d..d622f775 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadingLanguageInclude.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadingLanguageInclude.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; @@ -16,7 +31,6 @@ public final class GLARBShadingLanguageInclude { public static final int GL_SHADER_INCLUDE_ARB = 0x8DAE; public static final int GL_NAMED_STRING_LENGTH_ARB = 0x8DE9; public static final int GL_NAMED_STRING_TYPE_ARB = 0x8DEA; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_shading_language_include) return; ext.glNamedStringARB = load.invoke("glNamedStringARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, ADDRESS)); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadow.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadow.java index a749a987..cdd891be 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadow.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadow.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadowAmbient.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadowAmbient.java index 7d34cb66..364c5694 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadowAmbient.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadowAmbient.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseBuffer.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseBuffer.java index 36809721..9b81b6e2 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseBuffer.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseBuffer.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; @@ -15,7 +30,6 @@ public final class GLARBSparseBuffer { public static final int GL_SPARSE_STORAGE_BIT_ARB = 0x0400; public static final int GL_SPARSE_BUFFER_PAGE_SIZE_ARB = 0x82F8; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_sparse_buffer) return; ext.glBufferPageCommitmentARB = load.invoke("glBufferPageCommitmentARB", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_BYTE)); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseTexture.java index 216082d4..74170b9e 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseTexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseTexture.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; @@ -24,7 +39,6 @@ public final class GLARBSparseTexture { public static final int GL_MAX_SPARSE_3D_TEXTURE_SIZE_ARB = 0x9199; public static final int GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_ARB = 0x919A; public static final int GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_ARB = 0x91A9; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_sparse_texture) return; ext.glTexPageCommitmentARB = load.invoke("glTexPageCommitmentARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE)); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBorderClamp.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBorderClamp.java index 4b7e2020..e06c812e 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBorderClamp.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBorderClamp.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBufferObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBufferObject.java index 308b4a6a..40a3c8e4 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBufferObject.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBufferObject.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; @@ -18,7 +33,6 @@ public final class GLARBTextureBufferObject { public static final int GL_TEXTURE_BINDING_BUFFER_ARB = 0x8C2C; public static final int GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB = 0x8C2D; public static final int GL_TEXTURE_BUFFER_FORMAT_ARB = 0x8C2E; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_texture_buffer_object) return; ext.glTexBufferARB = load.invoke("glTexBufferARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompression.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompression.java index d75f5ea5..decd2138 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompression.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompression.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; @@ -24,7 +39,6 @@ public final class GLARBTextureCompression { public static final int GL_TEXTURE_COMPRESSED_ARB = 0x86A1; public static final int GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86A2; public static final int GL_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86A3; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_texture_compression) return; ext.glCompressedTexImage3DARB = load.invoke("glCompressedTexImage3DARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompressionBptc.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompressionBptc.java index 577880e7..cbf1bf3c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompressionBptc.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompressionBptc.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMap.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMap.java index bc30709f..8469ce5c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMap.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMap.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMapArray.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMapArray.java index e8578f9d..13498226 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMapArray.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMapArray.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvCombine.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvCombine.java index a37dbb78..665764b8 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvCombine.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvCombine.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvDot3.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvDot3.java index 5ab60e84..a7e3032a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvDot3.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvDot3.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFilterMinmax.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFilterMinmax.java index ed94f2b2..022857b9 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFilterMinmax.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFilterMinmax.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFloat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFloat.java index 4ae8853a..cc6c9967 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFloat.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFloat.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureGather.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureGather.java index ac6f67f1..031e6a30 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureGather.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureGather.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureMirroredRepeat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureMirroredRepeat.java index 2ef4c6c2..5e0f1ec8 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureMirroredRepeat.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureMirroredRepeat.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureRectangle.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureRectangle.java index cc795cff..28717aba 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureRectangle.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureRectangle.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransformFeedbackOverflowQuery.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransformFeedbackOverflowQuery.java index b5a65caf..d3fbd9cb 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransformFeedbackOverflowQuery.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransformFeedbackOverflowQuery.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransposeMatrix.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransposeMatrix.java index 46e7906c..2fc11aac 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransposeMatrix.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransposeMatrix.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; @@ -17,7 +32,6 @@ public final class GLARBTransposeMatrix { public static final int GL_TRANSPOSE_PROJECTION_MATRIX_ARB = 0x84E4; public static final int GL_TRANSPOSE_TEXTURE_MATRIX_ARB = 0x84E5; public static final int GL_TRANSPOSE_COLOR_MATRIX_ARB = 0x84E6; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_transpose_matrix) return; ext.glLoadTransposeMatrixfARB = load.invoke("glLoadTransposeMatrixfARB", ofVoid(ADDRESS)); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBlend.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBlend.java index aa67c9f1..1dc0565f 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBlend.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBlend.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; @@ -55,7 +70,6 @@ public final class GLARBVertexBlend { public static final int GL_MODELVIEW29_ARB = 0x873D; public static final int GL_MODELVIEW30_ARB = 0x873E; public static final int GL_MODELVIEW31_ARB = 0x873F; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_vertex_blend) return; ext.glWeightbvARB = load.invoke("glWeightbvARB", ofVoid(JAVA_INT, ADDRESS)); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBufferObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBufferObject.java index ddac7154..5434c49e 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBufferObject.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBufferObject.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; @@ -44,7 +59,6 @@ public final class GLARBVertexBufferObject { public static final int GL_DYNAMIC_DRAW_ARB = 0x88E8; public static final int GL_DYNAMIC_READ_ARB = 0x88E9; public static final int GL_DYNAMIC_COPY_ARB = 0x88EA; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_vertex_buffer_object) return; ext.glBindBufferARB = load.invoke("glBindBufferARB", ofVoid(JAVA_INT, JAVA_INT)); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexProgram.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexProgram.java index 49200ad6..b4f912e5 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexProgram.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexProgram.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; @@ -29,7 +44,6 @@ public final class GLARBVertexProgram { public static final int GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB = 0x88B1; public static final int GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88B2; public static final int GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88B3; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_vertex_program) return; ext.glVertexAttrib1dARB = load.invoke("glVertexAttrib1dARB", ofVoid(JAVA_INT, JAVA_DOUBLE)); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexShader.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexShader.java index 55e05c24..96df2a40 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexShader.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexShader.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; @@ -20,7 +35,6 @@ public final class GLARBVertexShader { public static final int GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB = 0x8B4D; public static final int GL_OBJECT_ACTIVE_ATTRIBUTES_ARB = 0x8B89; public static final int GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB = 0x8B8A; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_vertex_shader) return; ext.glBindAttribLocationARB = load.invoke("glBindAttribLocationARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBViewportArray.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBViewportArray.java index 5c624400..21b4b585 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBViewportArray.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBViewportArray.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; @@ -13,7 +28,6 @@ * {@code GL_ARB_viewport_array} */ public final class GLARBViewportArray { - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_viewport_array) return; ext.glDepthRangeArraydvNV = load.invoke("glDepthRangeArraydvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBWindowPos.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBWindowPos.java index a9b1b49f..95eb6359 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBWindowPos.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBWindowPos.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; @@ -13,7 +28,6 @@ * {@code GL_ARB_window_pos} */ public final class GLARBWindowPos { - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_window_pos) return; ext.glWindowPos2dARB = load.invoke("glWindowPos2dARB", ofVoid(JAVA_DOUBLE, JAVA_DOUBLE)); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMCullVertex.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMCullVertex.java new file mode 100644 index 00000000..d46168fb --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMCullVertex.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ibm; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_IBM_cull_vertex} + */ +public final class GLIBMCullVertex { + public static final int GL_CULL_VERTEX_IBM = 103050; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMMultimodeDrawArrays.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMMultimodeDrawArrays.java new file mode 100644 index 00000000..69cea8ca --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMMultimodeDrawArrays.java @@ -0,0 +1,51 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ibm; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_IBM_multimode_draw_arrays} + */ +public final class GLIBMMultimodeDrawArrays { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_IBM_multimode_draw_arrays) return; + ext.glMultiModeDrawArraysIBM = load.invoke("glMultiModeDrawArraysIBM", ofVoid(ADDRESS, ADDRESS, ADDRESS, JAVA_INT, JAVA_INT)); + ext.glMultiModeDrawElementsIBM = load.invoke("glMultiModeDrawElementsIBM", ofVoid(ADDRESS, ADDRESS, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT)); + } + + public static void glMultiModeDrawArraysIBM(@NativeType("const GLenum *") MemorySegment mode, @NativeType("const GLint *") MemorySegment first, @NativeType("const GLsizei *") MemorySegment count, int primcount, int modestride) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiModeDrawArraysIBM).invokeExact(mode, first, count, primcount, modestride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiModeDrawElementsIBM(@NativeType("const GLenum *") MemorySegment mode, @NativeType("const GLsizei *") MemorySegment count, int type, @NativeType("const void *const*") MemorySegment indices, int primcount, int modestride) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiModeDrawElementsIBM).invokeExact(mode, count, type, indices, primcount, modestride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMRasterposClip.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMRasterposClip.java new file mode 100644 index 00000000..dd732824 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMRasterposClip.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ibm; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_IBM_rasterpos_clip} + */ +public final class GLIBMRasterposClip { + public static final int GL_RASTER_POSITION_UNCLIPPED_IBM = 0x19262; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLIBMStaticData.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMStaticData.java similarity index 58% rename from modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLIBMStaticData.java rename to modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMStaticData.java index 4b7ae601..9411d6c8 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLIBMStaticData.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMStaticData.java @@ -14,31 +14,32 @@ * copies or substantial portions of the Software. */ -package overrungl.opengl.ext; +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ibm; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_IBM_static_data} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_IBM_static_data} + */ public final class GLIBMStaticData { + public static final int GL_ALL_STATIC_DATA_IBM = 103060; + public static final int GL_STATIC_VERTEX_ARRAY_IBM = 103061; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_IBM_static_data) return; - ext.glFlushStaticDataIBM = load.invoke("glFlushStaticDataIBM", FunctionDescriptors.IV); + ext.glFlushStaticDataIBM = load.invoke("glFlushStaticDataIBM", ofVoid(JAVA_INT)); } public static void glFlushStaticDataIBM(int target) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glFlushStaticDataIBM).invokeExact(target); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glFlushStaticDataIBM).invokeExact(target); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMTextureMirroredRepeat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMTextureMirroredRepeat.java new file mode 100644 index 00000000..18c271d2 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMTextureMirroredRepeat.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ibm; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_IBM_texture_mirrored_repeat} + */ +public final class GLIBMTextureMirroredRepeat { + public static final int GL_MIRRORED_REPEAT_IBM = 0x8370; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMVertexArrayLists.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMVertexArrayLists.java new file mode 100644 index 00000000..3ff66163 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMVertexArrayLists.java @@ -0,0 +1,115 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ibm; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_IBM_vertex_array_lists} + */ +public final class GLIBMVertexArrayLists { + public static final int GL_VERTEX_ARRAY_LIST_IBM = 103070; + public static final int GL_NORMAL_ARRAY_LIST_IBM = 103071; + public static final int GL_COLOR_ARRAY_LIST_IBM = 103072; + public static final int GL_INDEX_ARRAY_LIST_IBM = 103073; + public static final int GL_TEXTURE_COORD_ARRAY_LIST_IBM = 103074; + public static final int GL_EDGE_FLAG_ARRAY_LIST_IBM = 103075; + public static final int GL_FOG_COORDINATE_ARRAY_LIST_IBM = 103076; + public static final int GL_SECONDARY_COLOR_ARRAY_LIST_IBM = 103077; + public static final int GL_VERTEX_ARRAY_LIST_STRIDE_IBM = 103080; + public static final int GL_NORMAL_ARRAY_LIST_STRIDE_IBM = 103081; + public static final int GL_COLOR_ARRAY_LIST_STRIDE_IBM = 103082; + public static final int GL_INDEX_ARRAY_LIST_STRIDE_IBM = 103083; + public static final int GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM = 103084; + public static final int GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM = 103085; + public static final int GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM = 103086; + public static final int GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM = 103087; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_IBM_vertex_array_lists) return; + ext.glColorPointerListIBM = load.invoke("glColorPointerListIBM", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT)); + ext.glSecondaryColorPointerListIBM = load.invoke("glSecondaryColorPointerListIBM", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT)); + ext.glEdgeFlagPointerListIBM = load.invoke("glEdgeFlagPointerListIBM", ofVoid(JAVA_INT, ADDRESS, JAVA_INT)); + ext.glFogCoordPointerListIBM = load.invoke("glFogCoordPointerListIBM", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT)); + ext.glIndexPointerListIBM = load.invoke("glIndexPointerListIBM", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT)); + ext.glNormalPointerListIBM = load.invoke("glNormalPointerListIBM", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT)); + ext.glTexCoordPointerListIBM = load.invoke("glTexCoordPointerListIBM", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT)); + ext.glVertexPointerListIBM = load.invoke("glVertexPointerListIBM", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT)); + } + + public static void glColorPointerListIBM(int size, int type, int stride, @NativeType("const void **") MemorySegment pointer, int ptrstride) { + final var ext = getExtCapabilities(); + try { + check(ext.glColorPointerListIBM).invokeExact(size, type, stride, pointer, ptrstride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColorPointerListIBM(int size, int type, int stride, @NativeType("const void **") MemorySegment pointer, int ptrstride) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColorPointerListIBM).invokeExact(size, type, stride, pointer, ptrstride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEdgeFlagPointerListIBM(int stride, @NativeType("const GLboolean **") MemorySegment pointer, int ptrstride) { + final var ext = getExtCapabilities(); + try { + check(ext.glEdgeFlagPointerListIBM).invokeExact(stride, pointer, ptrstride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFogCoordPointerListIBM(int type, int stride, @NativeType("const void **") MemorySegment pointer, int ptrstride) { + final var ext = getExtCapabilities(); + try { + check(ext.glFogCoordPointerListIBM).invokeExact(type, stride, pointer, ptrstride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glIndexPointerListIBM(int type, int stride, @NativeType("const void **") MemorySegment pointer, int ptrstride) { + final var ext = getExtCapabilities(); + try { + check(ext.glIndexPointerListIBM).invokeExact(type, stride, pointer, ptrstride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormalPointerListIBM(int type, int stride, @NativeType("const void **") MemorySegment pointer, int ptrstride) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormalPointerListIBM).invokeExact(type, stride, pointer, ptrstride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoordPointerListIBM(int size, int type, int stride, @NativeType("const void **") MemorySegment pointer, int ptrstride) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoordPointerListIBM).invokeExact(size, type, stride, pointer, ptrstride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexPointerListIBM(int size, int type, int stride, @NativeType("const void **") MemorySegment pointer, int ptrstride) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexPointerListIBM).invokeExact(size, type, stride, pointer, ptrstride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINTELConst.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELBlackholeRender.java similarity index 61% rename from modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINTELConst.java rename to modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELBlackholeRender.java index 20d60325..17015fe2 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINTELConst.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELBlackholeRender.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2023 Overrun Organization + * Copyright (c) 2022-2023 Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,21 +14,19 @@ * copies or substantial portions of the Software. */ -package overrungl.opengl.ext; +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.intel; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * GL Intel constants - * - * @author squid233 - * @since 0.1.0 - */ -public final class GLINTELConst { - /** - * {@code GL_INTEL_blackhole_render} - */ + * {@code GL_INTEL_blackhole_render} + */ +public final class GLINTELBlackholeRender { public static final int GL_BLACKHOLE_RENDER_INTEL = 0x83FC; - /** - * {@code GL_INTEL_conservative_rasterization} - */ - public static final int GL_CONSERVATIVE_RASTERIZATION_INTEL = 0x83FE; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELConservativeRasterization.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELConservativeRasterization.java new file mode 100644 index 00000000..ff28c6b5 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELConservativeRasterization.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.intel; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_INTEL_conservative_rasterization} + */ +public final class GLINTELConservativeRasterization { + public static final int GL_CONSERVATIVE_RASTERIZATION_INTEL = 0x83FE; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINTELFramebufferCMAA.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELFramebufferCMAA.java similarity index 61% rename from modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINTELFramebufferCMAA.java rename to modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELFramebufferCMAA.java index 0e917a62..0966dbc1 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINTELFramebufferCMAA.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELFramebufferCMAA.java @@ -14,31 +14,30 @@ * copies or substantial portions of the Software. */ -package overrungl.opengl.ext; +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.intel; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_INTEL_framebuffer_CMAA} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_INTEL_framebuffer_CMAA} + */ public final class GLINTELFramebufferCMAA { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_INTEL_framebuffer_CMAA) return; - ext.glApplyFramebufferAttachmentCMAAINTEL = load.invoke("glApplyFramebufferAttachmentCMAAINTEL", FunctionDescriptors.V); + ext.glApplyFramebufferAttachmentCMAAINTEL = load.invoke("glApplyFramebufferAttachmentCMAAINTEL", ofVoid()); } public static void glApplyFramebufferAttachmentCMAAINTEL() { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glApplyFramebufferAttachmentCMAAINTEL).invokeExact(); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glApplyFramebufferAttachmentCMAAINTEL).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELMapTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELMapTexture.java new file mode 100644 index 00000000..0a8ef3b6 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELMapTexture.java @@ -0,0 +1,64 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.intel; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_INTEL_map_texture} + */ +public final class GLINTELMapTexture { + public static final int GL_TEXTURE_MEMORY_LAYOUT_INTEL = 0x83FF; + public static final int GL_LAYOUT_DEFAULT_INTEL = 0; + public static final int GL_LAYOUT_LINEAR_INTEL = 1; + public static final int GL_LAYOUT_LINEAR_CPU_CACHED_INTEL = 2; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_INTEL_map_texture) return; + ext.glSyncTextureINTEL = load.invoke("glSyncTextureINTEL", ofVoid(JAVA_INT)); + ext.glUnmapTexture2DINTEL = load.invoke("glUnmapTexture2DINTEL", ofVoid(JAVA_INT, JAVA_INT)); + ext.glMapTexture2DINTEL = load.invoke("glMapTexture2DINTEL", of(ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + } + + public static void glSyncTextureINTEL(int texture) { + final var ext = getExtCapabilities(); + try { + check(ext.glSyncTextureINTEL).invokeExact(texture); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUnmapTexture2DINTEL(int texture, int level) { + final var ext = getExtCapabilities(); + try { + check(ext.glUnmapTexture2DINTEL).invokeExact(texture, level); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static @NativeType("void*") MemorySegment glMapTexture2DINTEL(int texture, int level, int access, @NativeType("GLint *") MemorySegment stride, @NativeType("GLenum *") MemorySegment layout) { + final var ext = getExtCapabilities(); + try { + return (MemorySegment) + check(ext.glMapTexture2DINTEL).invokeExact(texture, level, access, stride, layout); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELParallelArrays.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELParallelArrays.java new file mode 100644 index 00000000..fa68b6c1 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELParallelArrays.java @@ -0,0 +1,72 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.intel; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_INTEL_parallel_arrays} + */ +public final class GLINTELParallelArrays { + public static final int GL_PARALLEL_ARRAYS_INTEL = 0x83F4; + public static final int GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F5; + public static final int GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F6; + public static final int GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F7; + public static final int GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F8; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_INTEL_parallel_arrays) return; + ext.glVertexPointervINTEL = load.invoke("glVertexPointervINTEL", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glNormalPointervINTEL = load.invoke("glNormalPointervINTEL", ofVoid(JAVA_INT, ADDRESS)); + ext.glColorPointervINTEL = load.invoke("glColorPointervINTEL", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glTexCoordPointervINTEL = load.invoke("glTexCoordPointervINTEL", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glVertexPointervINTEL(int size, int type, @NativeType("const void **") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexPointervINTEL).invokeExact(size, type, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormalPointervINTEL(int type, @NativeType("const void **") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormalPointervINTEL).invokeExact(type, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColorPointervINTEL(int size, int type, @NativeType("const void **") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glColorPointervINTEL).invokeExact(size, type, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoordPointervINTEL(int size, int type, @NativeType("const void **") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoordPointervINTEL).invokeExact(size, type, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELPerformanceQuery.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELPerformanceQuery.java new file mode 100644 index 00000000..2af90c94 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELPerformanceQuery.java @@ -0,0 +1,135 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.intel; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_INTEL_performance_query} + */ +public final class GLINTELPerformanceQuery { + public static final int GL_PERFQUERY_SINGLE_CONTEXT_INTEL = 0x00000000; + public static final int GL_PERFQUERY_GLOBAL_CONTEXT_INTEL = 0x00000001; + public static final int GL_PERFQUERY_WAIT_INTEL = 0x83FB; + public static final int GL_PERFQUERY_FLUSH_INTEL = 0x83FA; + public static final int GL_PERFQUERY_DONOT_FLUSH_INTEL = 0x83F9; + public static final int GL_PERFQUERY_COUNTER_EVENT_INTEL = 0x94F0; + public static final int GL_PERFQUERY_COUNTER_DURATION_NORM_INTEL = 0x94F1; + public static final int GL_PERFQUERY_COUNTER_DURATION_RAW_INTEL = 0x94F2; + public static final int GL_PERFQUERY_COUNTER_THROUGHPUT_INTEL = 0x94F3; + public static final int GL_PERFQUERY_COUNTER_RAW_INTEL = 0x94F4; + public static final int GL_PERFQUERY_COUNTER_TIMESTAMP_INTEL = 0x94F5; + public static final int GL_PERFQUERY_COUNTER_DATA_UINT32_INTEL = 0x94F8; + public static final int GL_PERFQUERY_COUNTER_DATA_UINT64_INTEL = 0x94F9; + public static final int GL_PERFQUERY_COUNTER_DATA_FLOAT_INTEL = 0x94FA; + public static final int GL_PERFQUERY_COUNTER_DATA_DOUBLE_INTEL = 0x94FB; + public static final int GL_PERFQUERY_COUNTER_DATA_BOOL32_INTEL = 0x94FC; + public static final int GL_PERFQUERY_QUERY_NAME_LENGTH_MAX_INTEL = 0x94FD; + public static final int GL_PERFQUERY_COUNTER_NAME_LENGTH_MAX_INTEL = 0x94FE; + public static final int GL_PERFQUERY_COUNTER_DESC_LENGTH_MAX_INTEL = 0x94FF; + public static final int GL_PERFQUERY_GPA_EXTENDED_COUNTERS_INTEL = 0x9500; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_INTEL_performance_query) return; + ext.glBeginPerfQueryINTEL = load.invoke("glBeginPerfQueryINTEL", ofVoid(JAVA_INT)); + ext.glCreatePerfQueryINTEL = load.invoke("glCreatePerfQueryINTEL", ofVoid(JAVA_INT, ADDRESS)); + ext.glDeletePerfQueryINTEL = load.invoke("glDeletePerfQueryINTEL", ofVoid(JAVA_INT)); + ext.glEndPerfQueryINTEL = load.invoke("glEndPerfQueryINTEL", ofVoid(JAVA_INT)); + ext.glGetFirstPerfQueryIdINTEL = load.invoke("glGetFirstPerfQueryIdINTEL", ofVoid(ADDRESS)); + ext.glGetNextPerfQueryIdINTEL = load.invoke("glGetNextPerfQueryIdINTEL", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetPerfCounterInfoINTEL = load.invoke("glGetPerfCounterInfoINTEL", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS)); + ext.glGetPerfQueryDataINTEL = load.invoke("glGetPerfQueryDataINTEL", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glGetPerfQueryIdByNameINTEL = load.invoke("glGetPerfQueryIdByNameINTEL", ofVoid(ADDRESS, ADDRESS)); + ext.glGetPerfQueryInfoINTEL = load.invoke("glGetPerfQueryInfoINTEL", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS)); + } + + public static void glBeginPerfQueryINTEL(int queryHandle) { + final var ext = getExtCapabilities(); + try { + check(ext.glBeginPerfQueryINTEL).invokeExact(queryHandle); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCreatePerfQueryINTEL(int queryId, @NativeType("GLuint *") MemorySegment queryHandle) { + final var ext = getExtCapabilities(); + try { + check(ext.glCreatePerfQueryINTEL).invokeExact(queryId, queryHandle); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeletePerfQueryINTEL(int queryHandle) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeletePerfQueryINTEL).invokeExact(queryHandle); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEndPerfQueryINTEL(int queryHandle) { + final var ext = getExtCapabilities(); + try { + check(ext.glEndPerfQueryINTEL).invokeExact(queryHandle); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetFirstPerfQueryIdINTEL(@NativeType("GLuint *") MemorySegment queryId) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetFirstPerfQueryIdINTEL).invokeExact(queryId); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetNextPerfQueryIdINTEL(int queryId, @NativeType("GLuint *") MemorySegment nextQueryId) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetNextPerfQueryIdINTEL).invokeExact(queryId, nextQueryId); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPerfCounterInfoINTEL(int queryId, int counterId, int counterNameLength, @NativeType("GLchar *") MemorySegment counterName, int counterDescLength, @NativeType("GLchar *") MemorySegment counterDesc, @NativeType("GLuint *") MemorySegment counterOffset, @NativeType("GLuint *") MemorySegment counterDataSize, @NativeType("GLuint *") MemorySegment counterTypeEnum, @NativeType("GLuint *") MemorySegment counterDataTypeEnum, @NativeType("GLuint64 *") MemorySegment rawCounterMaxValue) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPerfCounterInfoINTEL).invokeExact(queryId, counterId, counterNameLength, counterName, counterDescLength, counterDesc, counterOffset, counterDataSize, counterTypeEnum, counterDataTypeEnum, rawCounterMaxValue); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPerfQueryDataINTEL(int queryHandle, int flags, int dataSize, @NativeType("void *") MemorySegment data, @NativeType("GLuint *") MemorySegment bytesWritten) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPerfQueryDataINTEL).invokeExact(queryHandle, flags, dataSize, data, bytesWritten); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPerfQueryIdByNameINTEL(@NativeType("GLchar *") MemorySegment queryName, @NativeType("GLuint *") MemorySegment queryId) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPerfQueryIdByNameINTEL).invokeExact(queryName, queryId); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPerfQueryInfoINTEL(int queryId, int queryNameLength, @NativeType("GLchar *") MemorySegment queryName, @NativeType("GLuint *") MemorySegment dataSize, @NativeType("GLuint *") MemorySegment noCounters, @NativeType("GLuint *") MemorySegment noInstances, @NativeType("GLuint *") MemorySegment capsMask) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPerfQueryInfoINTEL).invokeExact(queryId, queryNameLength, queryName, dataSize, noCounters, noInstances, capsMask); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvanced.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvanced.java index f3139a28..23c95a69 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvanced.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvanced.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.khr; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; @@ -28,7 +43,6 @@ public final class GLKHRBlendEquationAdvanced { public static final int GL_HSL_SATURATION_KHR = 0x92AE; public static final int GL_HSL_COLOR_KHR = 0x92AF; public static final int GL_HSL_LUMINOSITY_KHR = 0x92B0; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_KHR_blend_equation_advanced) return; ext.glBlendBarrierKHR = load.invoke("glBlendBarrierKHR", ofVoid()); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvancedCoherent.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvancedCoherent.java index 6f80eded..f05c9ef8 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvancedCoherent.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvancedCoherent.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.khr; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRNoError.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRNoError.java index c25ba91f..4102fdc3 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRNoError.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRNoError.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.khr; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRParallelShaderCompile.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRParallelShaderCompile.java index 0baafa66..6302108b 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRParallelShaderCompile.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRParallelShaderCompile.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.khr; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; @@ -15,7 +30,6 @@ public final class GLKHRParallelShaderCompile { public static final int GL_MAX_SHADER_COMPILER_THREADS_KHR = 0x91B0; public static final int GL_COMPLETION_STATUS_KHR = 0x91B1; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_KHR_parallel_shader_compile) return; ext.glMaxShaderCompilerThreadsKHR = load.invoke("glMaxShaderCompilerThreadsKHR", ofVoid(JAVA_INT)); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRRobustness.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRRobustness.java index 95909150..ef4c686c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRRobustness.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRRobustness.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.khr; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRShaderSubgroup.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRShaderSubgroup.java index b7128680..4f21b428 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRShaderSubgroup.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRShaderSubgroup.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.khr; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRTextureCompressionAstcHdr.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRTextureCompressionAstcHdr.java index 5554a404..da263356 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRTextureCompressionAstcHdr.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRTextureCompressionAstcHdr.java @@ -1,11 +1,26 @@ -// this file is auto-generated. DO NOT EDIT! +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.khr; import overrungl.*; import overrungl.opengl.*; import java.lang.foreign.*; -import static java.lang.foreign.FunctionDescriptor.of; -import static java.lang.foreign.FunctionDescriptor.ofVoid; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; import static overrungl.opengl.GLLoader.*; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipX.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipX.java new file mode 100644 index 00000000..29050035 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipX.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.mesa; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_MESA_framebuffer_flip_x} + */ +public final class GLMESAFramebufferFlipX { + public static final int GL_FRAMEBUFFER_FLIP_X_MESA = 0x8BBC; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipY.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipY.java new file mode 100644 index 00000000..bf33b39e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipY.java @@ -0,0 +1,52 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.mesa; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_MESA_framebuffer_flip_y} + */ +public final class GLMESAFramebufferFlipY { + public static final int GL_FRAMEBUFFER_FLIP_Y_MESA = 0x8BBB; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_MESA_framebuffer_flip_y) return; + ext.glFramebufferParameteriMESA = load.invoke("glFramebufferParameteriMESA", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetFramebufferParameterivMESA = load.invoke("glGetFramebufferParameterivMESA", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glFramebufferParameteriMESA(int target, int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glFramebufferParameteriMESA).invokeExact(target, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetFramebufferParameterivMESA(int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetFramebufferParameterivMESA).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferSwapXY.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferSwapXY.java new file mode 100644 index 00000000..eb0b4b94 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferSwapXY.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.mesa; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_MESA_framebuffer_swap_xy} + */ +public final class GLMESAFramebufferSwapXY { + public static final int GL_FRAMEBUFFER_SWAP_XY_MESA = 0x8BBD; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAPackInvert.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAPackInvert.java new file mode 100644 index 00000000..c31731ea --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAPackInvert.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.mesa; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_MESA_pack_invert} + */ +public final class GLMESAPackInvert { + public static final int GL_PACK_INVERT_MESA = 0x8758; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAProgramBinaryFormats.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAProgramBinaryFormats.java new file mode 100644 index 00000000..92cd8197 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAProgramBinaryFormats.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.mesa; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_MESA_program_binary_formats} + */ +public final class GLMESAProgramBinaryFormats { + public static final int GL_PROGRAM_BINARY_FORMAT_MESA = 0x875F; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLMESAResizeBuffers.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAResizeBuffers.java similarity index 63% rename from modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLMESAResizeBuffers.java rename to modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAResizeBuffers.java index c0ed8889..b7384076 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLMESAResizeBuffers.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAResizeBuffers.java @@ -14,31 +14,30 @@ * copies or substantial portions of the Software. */ -package overrungl.opengl.ext; +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.mesa; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_MESA_resize_buffers} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_MESA_resize_buffers} + */ public final class GLMESAResizeBuffers { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_MESA_resize_buffers) return; - ext.glResizeBuffersMESA = load.invoke("glResizeBuffersMESA", FunctionDescriptors.V); + ext.glResizeBuffersMESA = load.invoke("glResizeBuffersMESA", ofVoid()); } public static void glResizeBuffersMESA() { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glResizeBuffersMESA).invokeExact(); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glResizeBuffersMESA).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESATileRasterOrder.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESATileRasterOrder.java new file mode 100644 index 00000000..93a3db15 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESATileRasterOrder.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.mesa; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_MESA_tile_raster_order} + */ +public final class GLMESATileRasterOrder { + public static final int GL_TILE_RASTER_ORDER_FIXED_MESA = 0x8BB8; + public static final int GL_TILE_RASTER_ORDER_INCREASING_X_MESA = 0x8BB9; + public static final int GL_TILE_RASTER_ORDER_INCREASING_Y_MESA = 0x8BBA; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAWindowPos.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAWindowPos.java new file mode 100644 index 00000000..e0fd4b35 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAWindowPos.java @@ -0,0 +1,227 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.mesa; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_MESA_window_pos} + */ +public final class GLMESAWindowPos { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_MESA_window_pos) return; + ext.glWindowPos2dMESA = load.invoke("glWindowPos2dMESA", ofVoid(JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glWindowPos2dvMESA = load.invoke("glWindowPos2dvMESA", ofVoid(ADDRESS)); + ext.glWindowPos2fMESA = load.invoke("glWindowPos2fMESA", ofVoid(JAVA_FLOAT, JAVA_FLOAT)); + ext.glWindowPos2fvMESA = load.invoke("glWindowPos2fvMESA", ofVoid(ADDRESS)); + ext.glWindowPos2iMESA = load.invoke("glWindowPos2iMESA", ofVoid(JAVA_INT, JAVA_INT)); + ext.glWindowPos2ivMESA = load.invoke("glWindowPos2ivMESA", ofVoid(ADDRESS)); + ext.glWindowPos2sMESA = load.invoke("glWindowPos2sMESA", ofVoid(JAVA_SHORT, JAVA_SHORT)); + ext.glWindowPos2svMESA = load.invoke("glWindowPos2svMESA", ofVoid(ADDRESS)); + ext.glWindowPos3dMESA = load.invoke("glWindowPos3dMESA", ofVoid(JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glWindowPos3dvMESA = load.invoke("glWindowPos3dvMESA", ofVoid(ADDRESS)); + ext.glWindowPos3fMESA = load.invoke("glWindowPos3fMESA", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glWindowPos3fvMESA = load.invoke("glWindowPos3fvMESA", ofVoid(ADDRESS)); + ext.glWindowPos3iMESA = load.invoke("glWindowPos3iMESA", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glWindowPos3ivMESA = load.invoke("glWindowPos3ivMESA", ofVoid(ADDRESS)); + ext.glWindowPos3sMESA = load.invoke("glWindowPos3sMESA", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glWindowPos3svMESA = load.invoke("glWindowPos3svMESA", ofVoid(ADDRESS)); + ext.glWindowPos4dMESA = load.invoke("glWindowPos4dMESA", ofVoid(JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glWindowPos4dvMESA = load.invoke("glWindowPos4dvMESA", ofVoid(ADDRESS)); + ext.glWindowPos4fMESA = load.invoke("glWindowPos4fMESA", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glWindowPos4fvMESA = load.invoke("glWindowPos4fvMESA", ofVoid(ADDRESS)); + ext.glWindowPos4iMESA = load.invoke("glWindowPos4iMESA", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glWindowPos4ivMESA = load.invoke("glWindowPos4ivMESA", ofVoid(ADDRESS)); + ext.glWindowPos4sMESA = load.invoke("glWindowPos4sMESA", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glWindowPos4svMESA = load.invoke("glWindowPos4svMESA", ofVoid(ADDRESS)); + } + + public static void glWindowPos2dMESA(double x, double y) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos2dMESA).invokeExact(x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos2dvMESA(@NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos2dvMESA).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos2fMESA(float x, float y) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos2fMESA).invokeExact(x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos2fvMESA(@NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos2fvMESA).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos2iMESA(int x, int y) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos2iMESA).invokeExact(x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos2ivMESA(@NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos2ivMESA).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos2sMESA(short x, short y) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos2sMESA).invokeExact(x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos2svMESA(@NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos2svMESA).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos3dMESA(double x, double y, double z) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos3dMESA).invokeExact(x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos3dvMESA(@NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos3dvMESA).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos3fMESA(float x, float y, float z) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos3fMESA).invokeExact(x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos3fvMESA(@NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos3fvMESA).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos3iMESA(int x, int y, int z) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos3iMESA).invokeExact(x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos3ivMESA(@NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos3ivMESA).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos3sMESA(short x, short y, short z) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos3sMESA).invokeExact(x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos3svMESA(@NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos3svMESA).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos4dMESA(double x, double y, double z, double w) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos4dMESA).invokeExact(x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos4dvMESA(@NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos4dvMESA).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos4fMESA(float x, float y, float z, float w) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos4fMESA).invokeExact(x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos4fvMESA(@NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos4fvMESA).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos4iMESA(int x, int y, int z, int w) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos4iMESA).invokeExact(x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos4ivMESA(@NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos4ivMESA).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos4sMESA(short x, short y, short z, short w) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos4sMESA).invokeExact(x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWindowPos4svMESA(@NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowPos4svMESA).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAXTextureStack.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAXTextureStack.java new file mode 100644 index 00000000..85c4565e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAXTextureStack.java @@ -0,0 +1,37 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.mesa; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_MESAX_texture_stack} + */ +public final class GLMESAXTextureStack { + public static final int GL_TEXTURE_1D_STACK_MESAX = 0x8759; + public static final int GL_TEXTURE_2D_STACK_MESAX = 0x875A; + public static final int GL_PROXY_TEXTURE_1D_STACK_MESAX = 0x875B; + public static final int GL_PROXY_TEXTURE_2D_STACK_MESAX = 0x875C; + public static final int GL_TEXTURE_1D_STACK_BINDING_MESAX = 0x875D; + public static final int GL_TEXTURE_2D_STACK_BINDING_MESAX = 0x875E; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAYcbcrTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAYcbcrTexture.java new file mode 100644 index 00000000..1923d95a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAYcbcrTexture.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.mesa; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_MESA_ycbcr_texture} + */ +public final class GLMESAYcbcrTexture { + public static final int GL_UNSIGNED_SHORT_8_8_MESA = 0x85BA; + public static final int GL_UNSIGNED_SHORT_8_8_REV_MESA = 0x85BB; + public static final int GL_YCBCR_MESA = 0x8757; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESByteCoordinates.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESByteCoordinates.java new file mode 100644 index 00000000..9911731c --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESByteCoordinates.java @@ -0,0 +1,211 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.oes; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_OES_byte_coordinates} + */ +public final class GLOESByteCoordinates { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_OES_byte_coordinates) return; + ext.glMultiTexCoord1bOES = load.invoke("glMultiTexCoord1bOES", ofVoid(JAVA_INT, JAVA_BYTE)); + ext.glMultiTexCoord1bvOES = load.invoke("glMultiTexCoord1bvOES", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord2bOES = load.invoke("glMultiTexCoord2bOES", ofVoid(JAVA_INT, JAVA_BYTE, JAVA_BYTE)); + ext.glMultiTexCoord2bvOES = load.invoke("glMultiTexCoord2bvOES", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord3bOES = load.invoke("glMultiTexCoord3bOES", ofVoid(JAVA_INT, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE)); + ext.glMultiTexCoord3bvOES = load.invoke("glMultiTexCoord3bvOES", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord4bOES = load.invoke("glMultiTexCoord4bOES", ofVoid(JAVA_INT, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE)); + ext.glMultiTexCoord4bvOES = load.invoke("glMultiTexCoord4bvOES", ofVoid(JAVA_INT, ADDRESS)); + ext.glTexCoord1bOES = load.invoke("glTexCoord1bOES", ofVoid(JAVA_BYTE)); + ext.glTexCoord1bvOES = load.invoke("glTexCoord1bvOES", ofVoid(ADDRESS)); + ext.glTexCoord2bOES = load.invoke("glTexCoord2bOES", ofVoid(JAVA_BYTE, JAVA_BYTE)); + ext.glTexCoord2bvOES = load.invoke("glTexCoord2bvOES", ofVoid(ADDRESS)); + ext.glTexCoord3bOES = load.invoke("glTexCoord3bOES", ofVoid(JAVA_BYTE, JAVA_BYTE, JAVA_BYTE)); + ext.glTexCoord3bvOES = load.invoke("glTexCoord3bvOES", ofVoid(ADDRESS)); + ext.glTexCoord4bOES = load.invoke("glTexCoord4bOES", ofVoid(JAVA_BYTE, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE)); + ext.glTexCoord4bvOES = load.invoke("glTexCoord4bvOES", ofVoid(ADDRESS)); + ext.glVertex2bOES = load.invoke("glVertex2bOES", ofVoid(JAVA_BYTE, JAVA_BYTE)); + ext.glVertex2bvOES = load.invoke("glVertex2bvOES", ofVoid(ADDRESS)); + ext.glVertex3bOES = load.invoke("glVertex3bOES", ofVoid(JAVA_BYTE, JAVA_BYTE, JAVA_BYTE)); + ext.glVertex3bvOES = load.invoke("glVertex3bvOES", ofVoid(ADDRESS)); + ext.glVertex4bOES = load.invoke("glVertex4bOES", ofVoid(JAVA_BYTE, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE)); + ext.glVertex4bvOES = load.invoke("glVertex4bvOES", ofVoid(ADDRESS)); + } + + public static void glMultiTexCoord1bOES(int texture, byte s) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord1bOES).invokeExact(texture, s); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord1bvOES(int texture, @NativeType("const GLbyte *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord1bvOES).invokeExact(texture, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord2bOES(int texture, byte s, byte t) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord2bOES).invokeExact(texture, s, t); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord2bvOES(int texture, @NativeType("const GLbyte *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord2bvOES).invokeExact(texture, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord3bOES(int texture, byte s, byte t, byte r) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord3bOES).invokeExact(texture, s, t, r); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord3bvOES(int texture, @NativeType("const GLbyte *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord3bvOES).invokeExact(texture, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord4bOES(int texture, byte s, byte t, byte r, byte q) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord4bOES).invokeExact(texture, s, t, r, q); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord4bvOES(int texture, @NativeType("const GLbyte *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord4bvOES).invokeExact(texture, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord1bOES(byte s) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord1bOES).invokeExact(s); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord1bvOES(@NativeType("const GLbyte *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord1bvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord2bOES(byte s, byte t) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord2bOES).invokeExact(s, t); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord2bvOES(@NativeType("const GLbyte *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord2bvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord3bOES(byte s, byte t, byte r) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord3bOES).invokeExact(s, t, r); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord3bvOES(@NativeType("const GLbyte *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord3bvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord4bOES(byte s, byte t, byte r, byte q) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord4bOES).invokeExact(s, t, r, q); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord4bvOES(@NativeType("const GLbyte *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord4bvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex2bOES(byte x, byte y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex2bOES).invokeExact(x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex2bvOES(@NativeType("const GLbyte *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex2bvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex3bOES(byte x, byte y, byte z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex3bOES).invokeExact(x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex3bvOES(@NativeType("const GLbyte *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex3bvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex4bOES(byte x, byte y, byte z, byte w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex4bOES).invokeExact(x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex4bvOES(@NativeType("const GLbyte *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex4bvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESCompressedPalettedTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESCompressedPalettedTexture.java new file mode 100644 index 00000000..19893878 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESCompressedPalettedTexture.java @@ -0,0 +1,41 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.oes; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_OES_compressed_paletted_texture} + */ +public final class GLOESCompressedPalettedTexture { + public static final int GL_PALETTE4_RGB8_OES = 0x8B90; + public static final int GL_PALETTE4_RGBA8_OES = 0x8B91; + public static final int GL_PALETTE4_R5_G6_B5_OES = 0x8B92; + public static final int GL_PALETTE4_RGBA4_OES = 0x8B93; + public static final int GL_PALETTE4_RGB5_A1_OES = 0x8B94; + public static final int GL_PALETTE8_RGB8_OES = 0x8B95; + public static final int GL_PALETTE8_RGBA8_OES = 0x8B96; + public static final int GL_PALETTE8_R5_G6_B5_OES = 0x8B97; + public static final int GL_PALETTE8_RGBA4_OES = 0x8B98; + public static final int GL_PALETTE8_RGB5_A1_OES = 0x8B99; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESFixedPoint.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESFixedPoint.java new file mode 100644 index 00000000..8a64f6c0 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESFixedPoint.java @@ -0,0 +1,860 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.oes; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_OES_fixed_point} + */ +public final class GLOESFixedPoint { + public static final int GL_FIXED_OES = 0x140C; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_OES_fixed_point) return; + ext.glAlphaFuncxOES = load.invoke("glAlphaFuncxOES", ofVoid(JAVA_INT, JAVA_INT)); + ext.glClearColorxOES = load.invoke("glClearColorxOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glClearDepthxOES = load.invoke("glClearDepthxOES", ofVoid(JAVA_INT)); + ext.glClipPlanexOES = load.invoke("glClipPlanexOES", ofVoid(JAVA_INT, ADDRESS)); + ext.glColor4xOES = load.invoke("glColor4xOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glDepthRangexOES = load.invoke("glDepthRangexOES", ofVoid(JAVA_INT, JAVA_INT)); + ext.glFogxOES = load.invoke("glFogxOES", ofVoid(JAVA_INT, JAVA_INT)); + ext.glFogxvOES = load.invoke("glFogxvOES", ofVoid(JAVA_INT, ADDRESS)); + ext.glFrustumxOES = load.invoke("glFrustumxOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetClipPlanexOES = load.invoke("glGetClipPlanexOES", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetFixedvOES = load.invoke("glGetFixedvOES", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetTexEnvxvOES = load.invoke("glGetTexEnvxvOES", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetTexParameterxvOES = load.invoke("glGetTexParameterxvOES", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glLightModelxOES = load.invoke("glLightModelxOES", ofVoid(JAVA_INT, JAVA_INT)); + ext.glLightModelxvOES = load.invoke("glLightModelxvOES", ofVoid(JAVA_INT, ADDRESS)); + ext.glLightxOES = load.invoke("glLightxOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glLightxvOES = load.invoke("glLightxvOES", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glLineWidthxOES = load.invoke("glLineWidthxOES", ofVoid(JAVA_INT)); + ext.glLoadMatrixxOES = load.invoke("glLoadMatrixxOES", ofVoid(ADDRESS)); + ext.glMaterialxOES = load.invoke("glMaterialxOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMaterialxvOES = load.invoke("glMaterialxvOES", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMultMatrixxOES = load.invoke("glMultMatrixxOES", ofVoid(ADDRESS)); + ext.glMultiTexCoord4xOES = load.invoke("glMultiTexCoord4xOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glNormal3xOES = load.invoke("glNormal3xOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glOrthoxOES = load.invoke("glOrthoxOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glPointParameterxvOES = load.invoke("glPointParameterxvOES", ofVoid(JAVA_INT, ADDRESS)); + ext.glPointSizexOES = load.invoke("glPointSizexOES", ofVoid(JAVA_INT)); + ext.glPolygonOffsetxOES = load.invoke("glPolygonOffsetxOES", ofVoid(JAVA_INT, JAVA_INT)); + ext.glRotatexOES = load.invoke("glRotatexOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glScalexOES = load.invoke("glScalexOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glTexEnvxOES = load.invoke("glTexEnvxOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glTexEnvxvOES = load.invoke("glTexEnvxvOES", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glTexParameterxOES = load.invoke("glTexParameterxOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glTexParameterxvOES = load.invoke("glTexParameterxvOES", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glTranslatexOES = load.invoke("glTranslatexOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glAccumxOES = load.invoke("glAccumxOES", ofVoid(JAVA_INT, JAVA_INT)); + ext.glBitmapxOES = load.invoke("glBitmapxOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glBlendColorxOES = load.invoke("glBlendColorxOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glClearAccumxOES = load.invoke("glClearAccumxOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glColor3xOES = load.invoke("glColor3xOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glColor3xvOES = load.invoke("glColor3xvOES", ofVoid(ADDRESS)); + ext.glColor4xvOES = load.invoke("glColor4xvOES", ofVoid(ADDRESS)); + ext.glConvolutionParameterxOES = load.invoke("glConvolutionParameterxOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glConvolutionParameterxvOES = load.invoke("glConvolutionParameterxvOES", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glEvalCoord1xOES = load.invoke("glEvalCoord1xOES", ofVoid(JAVA_INT)); + ext.glEvalCoord1xvOES = load.invoke("glEvalCoord1xvOES", ofVoid(ADDRESS)); + ext.glEvalCoord2xOES = load.invoke("glEvalCoord2xOES", ofVoid(JAVA_INT, JAVA_INT)); + ext.glEvalCoord2xvOES = load.invoke("glEvalCoord2xvOES", ofVoid(ADDRESS)); + ext.glFeedbackBufferxOES = load.invoke("glFeedbackBufferxOES", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetConvolutionParameterxvOES = load.invoke("glGetConvolutionParameterxvOES", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetHistogramParameterxvOES = load.invoke("glGetHistogramParameterxvOES", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetLightxOES = load.invoke("glGetLightxOES", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMapxvOES = load.invoke("glGetMapxvOES", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMaterialxOES = load.invoke("glGetMaterialxOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetPixelMapxv = load.invoke("glGetPixelMapxv", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetTexGenxvOES = load.invoke("glGetTexGenxvOES", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetTexLevelParameterxvOES = load.invoke("glGetTexLevelParameterxvOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glIndexxOES = load.invoke("glIndexxOES", ofVoid(JAVA_INT)); + ext.glIndexxvOES = load.invoke("glIndexxvOES", ofVoid(ADDRESS)); + ext.glLoadTransposeMatrixxOES = load.invoke("glLoadTransposeMatrixxOES", ofVoid(ADDRESS)); + ext.glMap1xOES = load.invoke("glMap1xOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMap2xOES = load.invoke("glMap2xOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMapGrid1xOES = load.invoke("glMapGrid1xOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMapGrid2xOES = load.invoke("glMapGrid2xOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMultTransposeMatrixxOES = load.invoke("glMultTransposeMatrixxOES", ofVoid(ADDRESS)); + ext.glMultiTexCoord1xOES = load.invoke("glMultiTexCoord1xOES", ofVoid(JAVA_INT, JAVA_INT)); + ext.glMultiTexCoord1xvOES = load.invoke("glMultiTexCoord1xvOES", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord2xOES = load.invoke("glMultiTexCoord2xOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMultiTexCoord2xvOES = load.invoke("glMultiTexCoord2xvOES", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord3xOES = load.invoke("glMultiTexCoord3xOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMultiTexCoord3xvOES = load.invoke("glMultiTexCoord3xvOES", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord4xvOES = load.invoke("glMultiTexCoord4xvOES", ofVoid(JAVA_INT, ADDRESS)); + ext.glNormal3xvOES = load.invoke("glNormal3xvOES", ofVoid(ADDRESS)); + ext.glPassThroughxOES = load.invoke("glPassThroughxOES", ofVoid(JAVA_INT)); + ext.glPixelMapx = load.invoke("glPixelMapx", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPixelStorex = load.invoke("glPixelStorex", ofVoid(JAVA_INT, JAVA_INT)); + ext.glPixelTransferxOES = load.invoke("glPixelTransferxOES", ofVoid(JAVA_INT, JAVA_INT)); + ext.glPixelZoomxOES = load.invoke("glPixelZoomxOES", ofVoid(JAVA_INT, JAVA_INT)); + ext.glPrioritizeTexturesxOES = load.invoke("glPrioritizeTexturesxOES", ofVoid(JAVA_INT, ADDRESS, ADDRESS)); + ext.glRasterPos2xOES = load.invoke("glRasterPos2xOES", ofVoid(JAVA_INT, JAVA_INT)); + ext.glRasterPos2xvOES = load.invoke("glRasterPos2xvOES", ofVoid(ADDRESS)); + ext.glRasterPos3xOES = load.invoke("glRasterPos3xOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glRasterPos3xvOES = load.invoke("glRasterPos3xvOES", ofVoid(ADDRESS)); + ext.glRasterPos4xOES = load.invoke("glRasterPos4xOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glRasterPos4xvOES = load.invoke("glRasterPos4xvOES", ofVoid(ADDRESS)); + ext.glRectxOES = load.invoke("glRectxOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glRectxvOES = load.invoke("glRectxvOES", ofVoid(ADDRESS, ADDRESS)); + ext.glTexCoord1xOES = load.invoke("glTexCoord1xOES", ofVoid(JAVA_INT)); + ext.glTexCoord1xvOES = load.invoke("glTexCoord1xvOES", ofVoid(ADDRESS)); + ext.glTexCoord2xOES = load.invoke("glTexCoord2xOES", ofVoid(JAVA_INT, JAVA_INT)); + ext.glTexCoord2xvOES = load.invoke("glTexCoord2xvOES", ofVoid(ADDRESS)); + ext.glTexCoord3xOES = load.invoke("glTexCoord3xOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glTexCoord3xvOES = load.invoke("glTexCoord3xvOES", ofVoid(ADDRESS)); + ext.glTexCoord4xOES = load.invoke("glTexCoord4xOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glTexCoord4xvOES = load.invoke("glTexCoord4xvOES", ofVoid(ADDRESS)); + ext.glTexGenxOES = load.invoke("glTexGenxOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glTexGenxvOES = load.invoke("glTexGenxvOES", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertex2xOES = load.invoke("glVertex2xOES", ofVoid(JAVA_INT)); + ext.glVertex2xvOES = load.invoke("glVertex2xvOES", ofVoid(ADDRESS)); + ext.glVertex3xOES = load.invoke("glVertex3xOES", ofVoid(JAVA_INT, JAVA_INT)); + ext.glVertex3xvOES = load.invoke("glVertex3xvOES", ofVoid(ADDRESS)); + ext.glVertex4xOES = load.invoke("glVertex4xOES", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glVertex4xvOES = load.invoke("glVertex4xvOES", ofVoid(ADDRESS)); + } + + public static void glAlphaFuncxOES(int func, int ref) { + final var ext = getExtCapabilities(); + try { + check(ext.glAlphaFuncxOES).invokeExact(func, ref); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glClearColorxOES(int red, int green, int blue, int alpha) { + final var ext = getExtCapabilities(); + try { + check(ext.glClearColorxOES).invokeExact(red, green, blue, alpha); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glClearDepthxOES(int depth) { + final var ext = getExtCapabilities(); + try { + check(ext.glClearDepthxOES).invokeExact(depth); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glClipPlanexOES(int plane, @NativeType("const GLfixed *") MemorySegment equation) { + final var ext = getExtCapabilities(); + try { + check(ext.glClipPlanexOES).invokeExact(plane, equation); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColor4xOES(int red, int green, int blue, int alpha) { + final var ext = getExtCapabilities(); + try { + check(ext.glColor4xOES).invokeExact(red, green, blue, alpha); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDepthRangexOES(int n, int f) { + final var ext = getExtCapabilities(); + try { + check(ext.glDepthRangexOES).invokeExact(n, f); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFogxOES(int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glFogxOES).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFogxvOES(int pname, @NativeType("const GLfixed *") MemorySegment param) { + final var ext = getExtCapabilities(); + try { + check(ext.glFogxvOES).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFrustumxOES(int l, int r, int b, int t, int n, int f) { + final var ext = getExtCapabilities(); + try { + check(ext.glFrustumxOES).invokeExact(l, r, b, t, n, f); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetClipPlanexOES(int plane, @NativeType("GLfixed *") MemorySegment equation) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetClipPlanexOES).invokeExact(plane, equation); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetFixedvOES(int pname, @NativeType("GLfixed *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetFixedvOES).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetTexEnvxvOES(int target, int pname, @NativeType("GLfixed *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetTexEnvxvOES).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetTexParameterxvOES(int target, int pname, @NativeType("GLfixed *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetTexParameterxvOES).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glLightModelxOES(int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glLightModelxOES).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glLightModelxvOES(int pname, @NativeType("const GLfixed *") MemorySegment param) { + final var ext = getExtCapabilities(); + try { + check(ext.glLightModelxvOES).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glLightxOES(int light, int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glLightxOES).invokeExact(light, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glLightxvOES(int light, int pname, @NativeType("const GLfixed *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glLightxvOES).invokeExact(light, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glLineWidthxOES(int width) { + final var ext = getExtCapabilities(); + try { + check(ext.glLineWidthxOES).invokeExact(width); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glLoadMatrixxOES(@NativeType("const GLfixed *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glLoadMatrixxOES).invokeExact(m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMaterialxOES(int face, int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glMaterialxOES).invokeExact(face, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMaterialxvOES(int face, int pname, @NativeType("const GLfixed *") MemorySegment param) { + final var ext = getExtCapabilities(); + try { + check(ext.glMaterialxvOES).invokeExact(face, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultMatrixxOES(@NativeType("const GLfixed *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultMatrixxOES).invokeExact(m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord4xOES(int texture, int s, int t, int r, int q) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord4xOES).invokeExact(texture, s, t, r, q); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormal3xOES(int nx, int ny, int nz) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormal3xOES).invokeExact(nx, ny, nz); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glOrthoxOES(int l, int r, int b, int t, int n, int f) { + final var ext = getExtCapabilities(); + try { + check(ext.glOrthoxOES).invokeExact(l, r, b, t, n, f); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPointParameterxvOES(int pname, @NativeType("const GLfixed *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glPointParameterxvOES).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPointSizexOES(int size) { + final var ext = getExtCapabilities(); + try { + check(ext.glPointSizexOES).invokeExact(size); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPolygonOffsetxOES(int factor, int units) { + final var ext = getExtCapabilities(); + try { + check(ext.glPolygonOffsetxOES).invokeExact(factor, units); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glRotatexOES(int angle, int x, int y, int z) { + final var ext = getExtCapabilities(); + try { + check(ext.glRotatexOES).invokeExact(angle, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glScalexOES(int x, int y, int z) { + final var ext = getExtCapabilities(); + try { + check(ext.glScalexOES).invokeExact(x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexEnvxOES(int target, int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexEnvxOES).invokeExact(target, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexEnvxvOES(int target, int pname, @NativeType("const GLfixed *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexEnvxvOES).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexParameterxOES(int target, int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexParameterxOES).invokeExact(target, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexParameterxvOES(int target, int pname, @NativeType("const GLfixed *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexParameterxvOES).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTranslatexOES(int x, int y, int z) { + final var ext = getExtCapabilities(); + try { + check(ext.glTranslatexOES).invokeExact(x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glAccumxOES(int op, int value) { + final var ext = getExtCapabilities(); + try { + check(ext.glAccumxOES).invokeExact(op, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBitmapxOES(int width, int height, int xorig, int yorig, int xmove, int ymove, @NativeType("const GLubyte *") MemorySegment bitmap) { + final var ext = getExtCapabilities(); + try { + check(ext.glBitmapxOES).invokeExact(width, height, xorig, yorig, xmove, ymove, bitmap); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBlendColorxOES(int red, int green, int blue, int alpha) { + final var ext = getExtCapabilities(); + try { + check(ext.glBlendColorxOES).invokeExact(red, green, blue, alpha); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glClearAccumxOES(int red, int green, int blue, int alpha) { + final var ext = getExtCapabilities(); + try { + check(ext.glClearAccumxOES).invokeExact(red, green, blue, alpha); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColor3xOES(int red, int green, int blue) { + final var ext = getExtCapabilities(); + try { + check(ext.glColor3xOES).invokeExact(red, green, blue); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColor3xvOES(@NativeType("const GLfixed *") MemorySegment components) { + final var ext = getExtCapabilities(); + try { + check(ext.glColor3xvOES).invokeExact(components); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColor4xvOES(@NativeType("const GLfixed *") MemorySegment components) { + final var ext = getExtCapabilities(); + try { + check(ext.glColor4xvOES).invokeExact(components); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glConvolutionParameterxOES(int target, int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glConvolutionParameterxOES).invokeExact(target, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glConvolutionParameterxvOES(int target, int pname, @NativeType("const GLfixed *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glConvolutionParameterxvOES).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEvalCoord1xOES(int u) { + final var ext = getExtCapabilities(); + try { + check(ext.glEvalCoord1xOES).invokeExact(u); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEvalCoord1xvOES(@NativeType("const GLfixed *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glEvalCoord1xvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEvalCoord2xOES(int u, int v) { + final var ext = getExtCapabilities(); + try { + check(ext.glEvalCoord2xOES).invokeExact(u, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEvalCoord2xvOES(@NativeType("const GLfixed *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glEvalCoord2xvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFeedbackBufferxOES(int n, int type, @NativeType("const GLfixed *") MemorySegment buffer) { + final var ext = getExtCapabilities(); + try { + check(ext.glFeedbackBufferxOES).invokeExact(n, type, buffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetConvolutionParameterxvOES(int target, int pname, @NativeType("GLfixed *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetConvolutionParameterxvOES).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetHistogramParameterxvOES(int target, int pname, @NativeType("GLfixed *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetHistogramParameterxvOES).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetLightxOES(int light, int pname, @NativeType("GLfixed *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetLightxOES).invokeExact(light, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMapxvOES(int target, int query, @NativeType("GLfixed *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMapxvOES).invokeExact(target, query, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMaterialxOES(int face, int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMaterialxOES).invokeExact(face, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPixelMapxv(int map, int size, @NativeType("GLfixed *") MemorySegment values) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPixelMapxv).invokeExact(map, size, values); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetTexGenxvOES(int coord, int pname, @NativeType("GLfixed *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetTexGenxvOES).invokeExact(coord, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetTexLevelParameterxvOES(int target, int level, int pname, @NativeType("GLfixed *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetTexLevelParameterxvOES).invokeExact(target, level, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glIndexxOES(int component) { + final var ext = getExtCapabilities(); + try { + check(ext.glIndexxOES).invokeExact(component); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glIndexxvOES(@NativeType("const GLfixed *") MemorySegment component) { + final var ext = getExtCapabilities(); + try { + check(ext.glIndexxvOES).invokeExact(component); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glLoadTransposeMatrixxOES(@NativeType("const GLfixed *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glLoadTransposeMatrixxOES).invokeExact(m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMap1xOES(int target, int u1, int u2, int stride, int order, int points) { + final var ext = getExtCapabilities(); + try { + check(ext.glMap1xOES).invokeExact(target, u1, u2, stride, order, points); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMap2xOES(int target, int u1, int u2, int ustride, int uorder, int v1, int v2, int vstride, int vorder, int points) { + final var ext = getExtCapabilities(); + try { + check(ext.glMap2xOES).invokeExact(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMapGrid1xOES(int n, int u1, int u2) { + final var ext = getExtCapabilities(); + try { + check(ext.glMapGrid1xOES).invokeExact(n, u1, u2); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMapGrid2xOES(int n, int u1, int u2, int v1, int v2) { + final var ext = getExtCapabilities(); + try { + check(ext.glMapGrid2xOES).invokeExact(n, u1, u2, v1, v2); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultTransposeMatrixxOES(@NativeType("const GLfixed *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultTransposeMatrixxOES).invokeExact(m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord1xOES(int texture, int s) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord1xOES).invokeExact(texture, s); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord1xvOES(int texture, @NativeType("const GLfixed *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord1xvOES).invokeExact(texture, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord2xOES(int texture, int s, int t) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord2xOES).invokeExact(texture, s, t); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord2xvOES(int texture, @NativeType("const GLfixed *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord2xvOES).invokeExact(texture, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord3xOES(int texture, int s, int t, int r) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord3xOES).invokeExact(texture, s, t, r); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord3xvOES(int texture, @NativeType("const GLfixed *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord3xvOES).invokeExact(texture, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord4xvOES(int texture, @NativeType("const GLfixed *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord4xvOES).invokeExact(texture, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormal3xvOES(@NativeType("const GLfixed *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormal3xvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPassThroughxOES(int token) { + final var ext = getExtCapabilities(); + try { + check(ext.glPassThroughxOES).invokeExact(token); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPixelMapx(int map, int size, @NativeType("const GLfixed *") MemorySegment values) { + final var ext = getExtCapabilities(); + try { + check(ext.glPixelMapx).invokeExact(map, size, values); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPixelStorex(int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glPixelStorex).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPixelTransferxOES(int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glPixelTransferxOES).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPixelZoomxOES(int xfactor, int yfactor) { + final var ext = getExtCapabilities(); + try { + check(ext.glPixelZoomxOES).invokeExact(xfactor, yfactor); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPrioritizeTexturesxOES(int n, @NativeType("const GLuint *") MemorySegment textures, @NativeType("const GLfixed *") MemorySegment priorities) { + final var ext = getExtCapabilities(); + try { + check(ext.glPrioritizeTexturesxOES).invokeExact(n, textures, priorities); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glRasterPos2xOES(int x, int y) { + final var ext = getExtCapabilities(); + try { + check(ext.glRasterPos2xOES).invokeExact(x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glRasterPos2xvOES(@NativeType("const GLfixed *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glRasterPos2xvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glRasterPos3xOES(int x, int y, int z) { + final var ext = getExtCapabilities(); + try { + check(ext.glRasterPos3xOES).invokeExact(x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glRasterPos3xvOES(@NativeType("const GLfixed *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glRasterPos3xvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glRasterPos4xOES(int x, int y, int z, int w) { + final var ext = getExtCapabilities(); + try { + check(ext.glRasterPos4xOES).invokeExact(x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glRasterPos4xvOES(@NativeType("const GLfixed *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glRasterPos4xvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glRectxOES(int x1, int y1, int x2, int y2) { + final var ext = getExtCapabilities(); + try { + check(ext.glRectxOES).invokeExact(x1, y1, x2, y2); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glRectxvOES(@NativeType("const GLfixed *") MemorySegment v1, @NativeType("const GLfixed *") MemorySegment v2) { + final var ext = getExtCapabilities(); + try { + check(ext.glRectxvOES).invokeExact(v1, v2); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord1xOES(int s) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord1xOES).invokeExact(s); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord1xvOES(@NativeType("const GLfixed *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord1xvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord2xOES(int s, int t) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord2xOES).invokeExact(s, t); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord2xvOES(@NativeType("const GLfixed *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord2xvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord3xOES(int s, int t, int r) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord3xOES).invokeExact(s, t, r); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord3xvOES(@NativeType("const GLfixed *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord3xvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord4xOES(int s, int t, int r, int q) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord4xOES).invokeExact(s, t, r, q); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord4xvOES(@NativeType("const GLfixed *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord4xvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexGenxOES(int coord, int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexGenxOES).invokeExact(coord, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexGenxvOES(int coord, int pname, @NativeType("const GLfixed *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexGenxvOES).invokeExact(coord, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex2xOES(int x) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex2xOES).invokeExact(x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex2xvOES(@NativeType("const GLfixed *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex2xvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex3xOES(int x, int y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex3xOES).invokeExact(x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex3xvOES(@NativeType("const GLfixed *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex3xvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex4xOES(int x, int y, int z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex4xOES).invokeExact(x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex4xvOES(@NativeType("const GLfixed *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex4xvOES).invokeExact(coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESQueryMatrix.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESQueryMatrix.java new file mode 100644 index 00000000..686760da --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESQueryMatrix.java @@ -0,0 +1,44 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.oes; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_OES_query_matrix} + */ +public final class GLOESQueryMatrix { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_OES_query_matrix) return; + ext.glQueryMatrixxOES = load.invoke("glQueryMatrixxOES", of(JAVA_INT, ADDRESS, ADDRESS)); + } + + public static int glQueryMatrixxOES(@NativeType("GLfixed *") MemorySegment mantissa, @NativeType("GLint *") MemorySegment exponent) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glQueryMatrixxOES).invokeExact(mantissa, exponent); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESReadFormat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESReadFormat.java new file mode 100644 index 00000000..56514999 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESReadFormat.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.oes; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_OES_read_format} + */ +public final class GLOESReadFormat { + public static final int GL_IMPLEMENTATION_COLOR_READ_TYPE_OES = 0x8B9A; + public static final int GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES = 0x8B9B; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESSinglePrecision.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESSinglePrecision.java new file mode 100644 index 00000000..87763fdc --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESSinglePrecision.java @@ -0,0 +1,83 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.oes; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_OES_single_precision} + */ +public final class GLOESSinglePrecision { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_OES_single_precision) return; + ext.glClearDepthfOES = load.invoke("glClearDepthfOES", ofVoid(JAVA_FLOAT)); + ext.glClipPlanefOES = load.invoke("glClipPlanefOES", ofVoid(JAVA_INT, ADDRESS)); + ext.glDepthRangefOES = load.invoke("glDepthRangefOES", ofVoid(JAVA_FLOAT, JAVA_FLOAT)); + ext.glFrustumfOES = load.invoke("glFrustumfOES", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glGetClipPlanefOES = load.invoke("glGetClipPlanefOES", ofVoid(JAVA_INT, ADDRESS)); + ext.glOrthofOES = load.invoke("glOrthofOES", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + } + + public static void glClearDepthfOES(float depth) { + final var ext = getExtCapabilities(); + try { + check(ext.glClearDepthfOES).invokeExact(depth); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glClipPlanefOES(int plane, @NativeType("const GLfloat *") MemorySegment equation) { + final var ext = getExtCapabilities(); + try { + check(ext.glClipPlanefOES).invokeExact(plane, equation); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDepthRangefOES(float n, float f) { + final var ext = getExtCapabilities(); + try { + check(ext.glDepthRangefOES).invokeExact(n, f); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFrustumfOES(float l, float r, float b, float t, float n, float f) { + final var ext = getExtCapabilities(); + try { + check(ext.glFrustumfOES).invokeExact(l, r, b, t, n, f); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetClipPlanefOES(int plane, @NativeType("GLfloat *") MemorySegment equation) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetClipPlanefOES).invokeExact(plane, equation); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glOrthofOES(float l, float r, float b, float t, float n, float f) { + final var ext = getExtCapabilities(); + try { + check(ext.glOrthofOES).invokeExact(l, r, b, t, n, f); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNConvolutionBorderModes.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNConvolutionBorderModes.java new file mode 100644 index 00000000..a66d8358 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNConvolutionBorderModes.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sun; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SUN_convolution_border_modes} + */ +public final class GLSUNConvolutionBorderModes { + public static final int GL_WRAP_BORDER_SUN = 0x81D4; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNGlobalAlpha.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNGlobalAlpha.java index 7f10634b..5f6807ac 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNGlobalAlpha.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNGlobalAlpha.java @@ -14,102 +14,88 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.sun; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SUN_global_alpha} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_SUN_global_alpha} + */ public final class GLSUNGlobalAlpha { + public static final int GL_GLOBAL_ALPHA_SUN = 0x81D9; + public static final int GL_GLOBAL_ALPHA_FACTOR_SUN = 0x81DA; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_SUN_global_alpha) return; - ext.glGlobalAlphaFactorbSUN = load.invoke("glGlobalAlphaFactorbSUN", BV); - ext.glGlobalAlphaFactordSUN = load.invoke("glGlobalAlphaFactordSUN", DV); - ext.glGlobalAlphaFactorfSUN = load.invoke("glGlobalAlphaFactorfSUN", FV); - ext.glGlobalAlphaFactoriSUN = load.invoke("glGlobalAlphaFactoriSUN", IV); - ext.glGlobalAlphaFactorsSUN = load.invoke("glGlobalAlphaFactorsSUN", SV); - ext.glGlobalAlphaFactorubSUN = load.invoke("glGlobalAlphaFactorubSUN", BV); - ext.glGlobalAlphaFactoruiSUN = load.invoke("glGlobalAlphaFactoruiSUN", IV); - ext.glGlobalAlphaFactorusSUN = load.invoke("glGlobalAlphaFactorusSUN", SV); + ext.glGlobalAlphaFactorbSUN = load.invoke("glGlobalAlphaFactorbSUN", ofVoid(JAVA_BYTE)); + ext.glGlobalAlphaFactorsSUN = load.invoke("glGlobalAlphaFactorsSUN", ofVoid(JAVA_SHORT)); + ext.glGlobalAlphaFactoriSUN = load.invoke("glGlobalAlphaFactoriSUN", ofVoid(JAVA_INT)); + ext.glGlobalAlphaFactorfSUN = load.invoke("glGlobalAlphaFactorfSUN", ofVoid(JAVA_FLOAT)); + ext.glGlobalAlphaFactordSUN = load.invoke("glGlobalAlphaFactordSUN", ofVoid(JAVA_DOUBLE)); + ext.glGlobalAlphaFactorubSUN = load.invoke("glGlobalAlphaFactorubSUN", ofVoid(JAVA_BYTE)); + ext.glGlobalAlphaFactorusSUN = load.invoke("glGlobalAlphaFactorusSUN", ofVoid(JAVA_SHORT)); + ext.glGlobalAlphaFactoruiSUN = load.invoke("glGlobalAlphaFactoruiSUN", ofVoid(JAVA_INT)); } public static void glGlobalAlphaFactorbSUN(byte factor) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGlobalAlphaFactorbSUN).invokeExact(factor); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGlobalAlphaFactorbSUN).invokeExact(factor); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGlobalAlphaFactordSUN(double factor) { - var ext = GLLoader.getExtCapabilities(); + public static void glGlobalAlphaFactorsSUN(short factor) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGlobalAlphaFactordSUN).invokeExact(factor); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGlobalAlphaFactorsSUN).invokeExact(factor); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGlobalAlphaFactorfSUN(float factor) { - var ext = GLLoader.getExtCapabilities(); + public static void glGlobalAlphaFactoriSUN(int factor) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGlobalAlphaFactorfSUN).invokeExact(factor); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGlobalAlphaFactoriSUN).invokeExact(factor); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGlobalAlphaFactoriSUN(int factor) { - var ext = GLLoader.getExtCapabilities(); + public static void glGlobalAlphaFactorfSUN(float factor) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGlobalAlphaFactoriSUN).invokeExact(factor); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGlobalAlphaFactorfSUN).invokeExact(factor); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGlobalAlphaFactorsSUN(short factor) { - var ext = GLLoader.getExtCapabilities(); + public static void glGlobalAlphaFactordSUN(double factor) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGlobalAlphaFactorsSUN).invokeExact(factor); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGlobalAlphaFactordSUN).invokeExact(factor); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glGlobalAlphaFactorubSUN(byte factor) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGlobalAlphaFactorubSUN).invokeExact(factor); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGlobalAlphaFactorubSUN).invokeExact(factor); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGlobalAlphaFactoruiSUN(int factor) { - var ext = GLLoader.getExtCapabilities(); + public static void glGlobalAlphaFactorusSUN(short factor) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGlobalAlphaFactoruiSUN).invokeExact(factor); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGlobalAlphaFactorusSUN).invokeExact(factor); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGlobalAlphaFactorusSUN(short factor) { - var ext = GLLoader.getExtCapabilities(); + public static void glGlobalAlphaFactoruiSUN(int factor) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGlobalAlphaFactorusSUN).invokeExact(factor); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGlobalAlphaFactoruiSUN).invokeExact(factor); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNMeshArray.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNMeshArray.java index 31bf0ee9..d795fb1a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNMeshArray.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNMeshArray.java @@ -14,31 +14,32 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.sun; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SUN_mesh_array} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_SUN_mesh_array} + */ public final class GLSUNMeshArray { + public static final int GL_QUAD_MESH_SUN = 0x8614; + public static final int GL_TRIANGLE_MESH_SUN = 0x8615; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_SUN_mesh_array) return; - ext.glDrawMeshArraysSUN = load.invoke("glDrawMeshArraysSUN", FunctionDescriptors.IIIIV); + ext.glDrawMeshArraysSUN = load.invoke("glDrawMeshArraysSUN", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); } public static void glDrawMeshArraysSUN(int mode, int first, int count, int width) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDrawMeshArraysSUN).invokeExact(mode, first, count, width); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glDrawMeshArraysSUN).invokeExact(mode, first, count, width); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNSliceAccum.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNSliceAccum.java new file mode 100644 index 00000000..cab9ae9f --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNSliceAccum.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sun; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SUN_slice_accum} + */ +public final class GLSUNSliceAccum { + public static final int GL_SLICE_ACCUM_SUN = 0x85CC; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNTriangleList.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNTriangleList.java index c077cbc1..5f5f2a01 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNTriangleList.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNTriangleList.java @@ -14,108 +14,95 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.sun; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; - +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; -import static overrungl.FunctionDescriptors.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SUN_triangle_list} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_SUN_triangle_list} + */ public final class GLSUNTriangleList { + public static final int GL_RESTART_SUN = 0x0001; + public static final int GL_REPLACE_MIDDLE_SUN = 0x0002; + public static final int GL_REPLACE_OLDEST_SUN = 0x0003; + public static final int GL_TRIANGLE_LIST_SUN = 0x81D7; + public static final int GL_REPLACEMENT_CODE_SUN = 0x81D8; + public static final int GL_REPLACEMENT_CODE_ARRAY_SUN = 0x85C0; + public static final int GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN = 0x85C1; + public static final int GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN = 0x85C2; + public static final int GL_REPLACEMENT_CODE_ARRAY_POINTER_SUN = 0x85C3; + public static final int GL_R1UI_V3F_SUN = 0x85C4; + public static final int GL_R1UI_C4UB_V3F_SUN = 0x85C5; + public static final int GL_R1UI_C3F_V3F_SUN = 0x85C6; + public static final int GL_R1UI_N3F_V3F_SUN = 0x85C7; + public static final int GL_R1UI_C4F_N3F_V3F_SUN = 0x85C8; + public static final int GL_R1UI_T2F_V3F_SUN = 0x85C9; + public static final int GL_R1UI_T2F_N3F_V3F_SUN = 0x85CA; + public static final int GL_R1UI_T2F_C4F_N3F_V3F_SUN = 0x85CB; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_SUN_triangle_list) return; - ext.glReplacementCodePointerSUN = load.invoke("glReplacementCodePointerSUN", IIPV); - ext.glReplacementCodeubSUN = load.invoke("glReplacementCodeubSUN", BV); - ext.glReplacementCodeubvSUN = load.invoke("glReplacementCodeubvSUN", PV); - ext.glReplacementCodeuiSUN = load.invoke("glReplacementCodeuiSUN", IV); - ext.glReplacementCodeuivSUN = load.invoke("glReplacementCodeuivSUN", PV); - ext.glReplacementCodeusSUN = load.invoke("glReplacementCodeusSUN", SV); - ext.glReplacementCodeusvSUN = load.invoke("glReplacementCodeusvSUN", PV); + ext.glReplacementCodeuiSUN = load.invoke("glReplacementCodeuiSUN", ofVoid(JAVA_INT)); + ext.glReplacementCodeusSUN = load.invoke("glReplacementCodeusSUN", ofVoid(JAVA_SHORT)); + ext.glReplacementCodeubSUN = load.invoke("glReplacementCodeubSUN", ofVoid(JAVA_BYTE)); + ext.glReplacementCodeuivSUN = load.invoke("glReplacementCodeuivSUN", ofVoid(ADDRESS)); + ext.glReplacementCodeusvSUN = load.invoke("glReplacementCodeusvSUN", ofVoid(ADDRESS)); + ext.glReplacementCodeubvSUN = load.invoke("glReplacementCodeubvSUN", ofVoid(ADDRESS)); + ext.glReplacementCodePointerSUN = load.invoke("glReplacementCodePointerSUN", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); } - public static void glReplacementCodePointerSUN(int type, int stride, MemorySegment pointer) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeuiSUN(int code) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodePointerSUN).invokeExact(type, stride, pointer); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReplacementCodeuiSUN).invokeExact(code); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeubSUN(byte code) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeusSUN(short code) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeubSUN).invokeExact(code); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReplacementCodeusSUN).invokeExact(code); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeubvSUN(MemorySegment code) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeubSUN(byte code) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeubvSUN).invokeExact(code); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReplacementCodeubSUN).invokeExact(code); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeubvSUN(SegmentAllocator allocator, byte[] code) { - glReplacementCodeubvSUN(allocator.allocateArray(JAVA_BYTE, code)); - } - - public static void glReplacementCodeuiSUN(int code) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeuivSUN(@NativeType("const GLuint *") MemorySegment code) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeuiSUN).invokeExact(code); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReplacementCodeuivSUN).invokeExact(code); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeuivSUN(MemorySegment code) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeusvSUN(@NativeType("const GLushort *") MemorySegment code) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeuivSUN).invokeExact(code); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReplacementCodeusvSUN).invokeExact(code); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeuivSUN(SegmentAllocator allocator, int[] code) { - glReplacementCodeuivSUN(allocator.allocateArray(JAVA_INT, code)); - } - - public static void glReplacementCodeusSUN(short code) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeubvSUN(@NativeType("const GLubyte *") MemorySegment code) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeusSUN).invokeExact(code); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReplacementCodeubvSUN).invokeExact(code); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeusvSUN(MemorySegment code) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodePointerSUN(int type, int stride, @NativeType("const void **") MemorySegment pointer) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeusvSUN).invokeExact(code); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReplacementCodePointerSUN).invokeExact(type, stride, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeusvSUN(SegmentAllocator allocator, short[] code) { - glReplacementCodeusvSUN(allocator.allocateArray(JAVA_SHORT, code)); - } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNVertex.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNVertex.java index 7621679c..f6ecbb9a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNVertex.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNVertex.java @@ -14,506 +14,342 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.sun; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; - +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; -import static overrungl.FunctionDescriptors.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SUN_vertex} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_SUN_vertex} + */ public final class GLSUNVertex { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_SUN_vertex) return; - ext.glColor3fVertex3fSUN = load.invoke("glColor3fVertex3fSUN", FFFFFFV); - ext.glColor3fVertex3fvSUN = load.invoke("glColor3fVertex3fvSUN", PPV); - ext.glColor4fNormal3fVertex3fSUN = load.invoke("glColor4fNormal3fVertex3fSUN", FFFFFFFFFFV); - ext.glColor4fNormal3fVertex3fvSUN = load.invoke("glColor4fNormal3fVertex3fvSUN", PPPV); - ext.glColor4ubVertex2fSUN = load.invoke("glColor4ubVertex2fSUN", BBBBFFV); - ext.glColor4ubVertex2fvSUN = load.invoke("glColor4ubVertex2fvSUN", PPV); - ext.glColor4ubVertex3fSUN = load.invoke("glColor4ubVertex3fSUN", BBBBFFFV); - ext.glColor4ubVertex3fvSUN = load.invoke("glColor4ubVertex3fvSUN", PPV); - ext.glNormal3fVertex3fSUN = load.invoke("glNormal3fVertex3fSUN", FFFFFFV); - ext.glNormal3fVertex3fvSUN = load.invoke("glNormal3fVertex3fvSUN", PPV); - ext.glReplacementCodeuiColor3fVertex3fSUN = load.invoke("glReplacementCodeuiColor3fVertex3fSUN", IFFFFFFV); - ext.glReplacementCodeuiColor3fVertex3fvSUN = load.invoke("glReplacementCodeuiColor3fVertex3fvSUN", PPPV); - ext.glReplacementCodeuiColor4fNormal3fVertex3fSUN = load.invoke("glReplacementCodeuiColor4fNormal3fVertex3fSUN", IFFFFFFFFFFV); - ext.glReplacementCodeuiColor4fNormal3fVertex3fvSUN = load.invoke("glReplacementCodeuiColor4fNormal3fVertex3fvSUN", PPPPV); - ext.glReplacementCodeuiColor4ubVertex3fSUN = load.invoke("glReplacementCodeuiColor4ubVertex3fSUN", IBBBBFFFV); - ext.glReplacementCodeuiColor4ubVertex3fvSUN = load.invoke("glReplacementCodeuiColor4ubVertex3fvSUN", PPPV); - ext.glReplacementCodeuiNormal3fVertex3fSUN = load.invoke("glReplacementCodeuiNormal3fVertex3fSUN", IFFFFFFV); - ext.glReplacementCodeuiNormal3fVertex3fvSUN = load.invoke("glReplacementCodeuiNormal3fVertex3fvSUN", PPPV); - ext.glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN = load.invoke("glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN", IFFFFFFFFFFFFV); - ext.glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN = load.invoke("glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN", PPPPPV); - ext.glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN = load.invoke("glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN", IFFFFFFFFV); - ext.glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN = load.invoke("glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN", PPPPV); - ext.glReplacementCodeuiTexCoord2fVertex3fSUN = load.invoke("glReplacementCodeuiTexCoord2fVertex3fSUN", IFFFFFV); - ext.glReplacementCodeuiTexCoord2fVertex3fvSUN = load.invoke("glReplacementCodeuiTexCoord2fVertex3fvSUN", PPPV); - ext.glReplacementCodeuiVertex3fSUN = load.invoke("glReplacementCodeuiVertex3fSUN", IFFFV); - ext.glReplacementCodeuiVertex3fvSUN = load.invoke("glReplacementCodeuiVertex3fvSUN", PPV); - ext.glTexCoord2fColor3fVertex3fSUN = load.invoke("glTexCoord2fColor3fVertex3fSUN", FFFFFFFFV); - ext.glTexCoord2fColor3fVertex3fvSUN = load.invoke("glTexCoord2fColor3fVertex3fvSUN", PPPV); - ext.glTexCoord2fColor4fNormal3fVertex3fSUN = load.invoke("glTexCoord2fColor4fNormal3fVertex3fSUN", FFFFFFFFFFFFV); - ext.glTexCoord2fColor4fNormal3fVertex3fvSUN = load.invoke("glTexCoord2fColor4fNormal3fVertex3fvSUN", PPPPV); - ext.glTexCoord2fColor4ubVertex3fSUN = load.invoke("glTexCoord2fColor4ubVertex3fSUN", FFBBBBFFFV); - ext.glTexCoord2fColor4ubVertex3fvSUN = load.invoke("glTexCoord2fColor4ubVertex3fvSUN", PPPV); - ext.glTexCoord2fNormal3fVertex3fSUN = load.invoke("glTexCoord2fNormal3fVertex3fSUN", FFFFFFFFV); - ext.glTexCoord2fNormal3fVertex3fvSUN = load.invoke("glTexCoord2fNormal3fVertex3fvSUN", PPPV); - ext.glTexCoord2fVertex3fSUN = load.invoke("glTexCoord2fVertex3fSUN", FFFFFV); - ext.glTexCoord2fVertex3fvSUN = load.invoke("glTexCoord2fVertex3fvSUN", PPV); - ext.glTexCoord4fColor4fNormal3fVertex4fSUN = load.invoke("glTexCoord4fColor4fNormal3fVertex4fSUN", FFFFFFFFFFFFFFFV); - ext.glTexCoord4fColor4fNormal3fVertex4fvSUN = load.invoke("glTexCoord4fColor4fNormal3fVertex4fvSUN", PPPPV); - ext.glTexCoord4fVertex4fSUN = load.invoke("glTexCoord4fVertex4fSUN", FFFFFFFFV); - ext.glTexCoord4fVertex4fvSUN = load.invoke("glTexCoord4fVertex4fvSUN", PPV); + ext.glColor4ubVertex2fSUN = load.invoke("glColor4ubVertex2fSUN", ofVoid(JAVA_BYTE, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE, JAVA_FLOAT, JAVA_FLOAT)); + ext.glColor4ubVertex2fvSUN = load.invoke("glColor4ubVertex2fvSUN", ofVoid(ADDRESS, ADDRESS)); + ext.glColor4ubVertex3fSUN = load.invoke("glColor4ubVertex3fSUN", ofVoid(JAVA_BYTE, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glColor4ubVertex3fvSUN = load.invoke("glColor4ubVertex3fvSUN", ofVoid(ADDRESS, ADDRESS)); + ext.glColor3fVertex3fSUN = load.invoke("glColor3fVertex3fSUN", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glColor3fVertex3fvSUN = load.invoke("glColor3fVertex3fvSUN", ofVoid(ADDRESS, ADDRESS)); + ext.glNormal3fVertex3fSUN = load.invoke("glNormal3fVertex3fSUN", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glNormal3fVertex3fvSUN = load.invoke("glNormal3fVertex3fvSUN", ofVoid(ADDRESS, ADDRESS)); + ext.glColor4fNormal3fVertex3fSUN = load.invoke("glColor4fNormal3fVertex3fSUN", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glColor4fNormal3fVertex3fvSUN = load.invoke("glColor4fNormal3fVertex3fvSUN", ofVoid(ADDRESS, ADDRESS, ADDRESS)); + ext.glTexCoord2fVertex3fSUN = load.invoke("glTexCoord2fVertex3fSUN", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glTexCoord2fVertex3fvSUN = load.invoke("glTexCoord2fVertex3fvSUN", ofVoid(ADDRESS, ADDRESS)); + ext.glTexCoord4fVertex4fSUN = load.invoke("glTexCoord4fVertex4fSUN", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glTexCoord4fVertex4fvSUN = load.invoke("glTexCoord4fVertex4fvSUN", ofVoid(ADDRESS, ADDRESS)); + ext.glTexCoord2fColor4ubVertex3fSUN = load.invoke("glTexCoord2fColor4ubVertex3fSUN", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glTexCoord2fColor4ubVertex3fvSUN = load.invoke("glTexCoord2fColor4ubVertex3fvSUN", ofVoid(ADDRESS, ADDRESS, ADDRESS)); + ext.glTexCoord2fColor3fVertex3fSUN = load.invoke("glTexCoord2fColor3fVertex3fSUN", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glTexCoord2fColor3fVertex3fvSUN = load.invoke("glTexCoord2fColor3fVertex3fvSUN", ofVoid(ADDRESS, ADDRESS, ADDRESS)); + ext.glTexCoord2fNormal3fVertex3fSUN = load.invoke("glTexCoord2fNormal3fVertex3fSUN", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glTexCoord2fNormal3fVertex3fvSUN = load.invoke("glTexCoord2fNormal3fVertex3fvSUN", ofVoid(ADDRESS, ADDRESS, ADDRESS)); + ext.glTexCoord2fColor4fNormal3fVertex3fSUN = load.invoke("glTexCoord2fColor4fNormal3fVertex3fSUN", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glTexCoord2fColor4fNormal3fVertex3fvSUN = load.invoke("glTexCoord2fColor4fNormal3fVertex3fvSUN", ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS)); + ext.glTexCoord4fColor4fNormal3fVertex4fSUN = load.invoke("glTexCoord4fColor4fNormal3fVertex4fSUN", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glTexCoord4fColor4fNormal3fVertex4fvSUN = load.invoke("glTexCoord4fColor4fNormal3fVertex4fvSUN", ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS)); + ext.glReplacementCodeuiVertex3fSUN = load.invoke("glReplacementCodeuiVertex3fSUN", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glReplacementCodeuiVertex3fvSUN = load.invoke("glReplacementCodeuiVertex3fvSUN", ofVoid(ADDRESS, ADDRESS)); + ext.glReplacementCodeuiColor4ubVertex3fSUN = load.invoke("glReplacementCodeuiColor4ubVertex3fSUN", ofVoid(JAVA_INT, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glReplacementCodeuiColor4ubVertex3fvSUN = load.invoke("glReplacementCodeuiColor4ubVertex3fvSUN", ofVoid(ADDRESS, ADDRESS, ADDRESS)); + ext.glReplacementCodeuiColor3fVertex3fSUN = load.invoke("glReplacementCodeuiColor3fVertex3fSUN", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glReplacementCodeuiColor3fVertex3fvSUN = load.invoke("glReplacementCodeuiColor3fVertex3fvSUN", ofVoid(ADDRESS, ADDRESS, ADDRESS)); + ext.glReplacementCodeuiNormal3fVertex3fSUN = load.invoke("glReplacementCodeuiNormal3fVertex3fSUN", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glReplacementCodeuiNormal3fVertex3fvSUN = load.invoke("glReplacementCodeuiNormal3fVertex3fvSUN", ofVoid(ADDRESS, ADDRESS, ADDRESS)); + ext.glReplacementCodeuiColor4fNormal3fVertex3fSUN = load.invoke("glReplacementCodeuiColor4fNormal3fVertex3fSUN", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glReplacementCodeuiColor4fNormal3fVertex3fvSUN = load.invoke("glReplacementCodeuiColor4fNormal3fVertex3fvSUN", ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS)); + ext.glReplacementCodeuiTexCoord2fVertex3fSUN = load.invoke("glReplacementCodeuiTexCoord2fVertex3fSUN", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glReplacementCodeuiTexCoord2fVertex3fvSUN = load.invoke("glReplacementCodeuiTexCoord2fVertex3fvSUN", ofVoid(ADDRESS, ADDRESS, ADDRESS)); + ext.glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN = load.invoke("glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN = load.invoke("glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN", ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS)); + ext.glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN = load.invoke("glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN = load.invoke("glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN", ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS)); } - public static void glColor3fVertex3fSUN(float r, float g, float b, float x, float y, float z) { - var ext = GLLoader.getExtCapabilities(); + public static void glColor4ubVertex2fSUN(byte r, byte g, byte b, byte a, float x, float y) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glColor3fVertex3fSUN).invokeExact(r, g, b, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glColor4ubVertex2fSUN).invokeExact(r, g, b, a, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glColor3fVertex3fvSUN(MemorySegment c, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glColor4ubVertex2fvSUN(@NativeType("const GLubyte *") MemorySegment c, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glColor3fVertex3fvSUN).invokeExact(c, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glColor4ubVertex2fvSUN).invokeExact(c, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glColor3fVertex3fvSUN(SegmentAllocator allocator, float[] c, float[] v) { - glColor3fVertex3fvSUN(allocator.allocateArray(JAVA_FLOAT, c), allocator.allocateArray(JAVA_FLOAT, v)); - } - - public static void glColor4fNormal3fVertex3fSUN(float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z) { - var ext = GLLoader.getExtCapabilities(); + public static void glColor4ubVertex3fSUN(byte r, byte g, byte b, byte a, float x, float y, float z) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glColor4fNormal3fVertex3fSUN).invokeExact(r, g, b, a, nx, ny, nz, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glColor4ubVertex3fSUN).invokeExact(r, g, b, a, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glColor4fNormal3fVertex3fvSUN(MemorySegment c, MemorySegment n, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glColor4ubVertex3fvSUN(@NativeType("const GLubyte *") MemorySegment c, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glColor4fNormal3fVertex3fvSUN).invokeExact(c, n, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glColor4ubVertex3fvSUN).invokeExact(c, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glColor4fNormal3fVertex3fvSUN(SegmentAllocator allocator, float[] c, float[] n, float[] v) { - glColor4fNormal3fVertex3fvSUN(allocator.allocateArray(JAVA_FLOAT, c), allocator.allocateArray(JAVA_FLOAT, n), allocator.allocateArray(JAVA_FLOAT, v)); - } - - public static void glColor4ubVertex2fSUN(byte r, byte g, byte b, byte a, float x, float y) { - var ext = GLLoader.getExtCapabilities(); + public static void glColor3fVertex3fSUN(float r, float g, float b, float x, float y, float z) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glColor4ubVertex2fSUN).invokeExact(r, g, b, a, x, y); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glColor3fVertex3fSUN).invokeExact(r, g, b, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glColor4ubVertex2fvSUN(MemorySegment c, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glColor3fVertex3fvSUN(@NativeType("const GLfloat *") MemorySegment c, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glColor4ubVertex2fvSUN).invokeExact(c, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glColor4ubVertex2fvSUN(SegmentAllocator allocator, byte[] c, float[] v) { - glColor4ubVertex2fvSUN(allocator.allocateArray(JAVA_BYTE, c), allocator.allocateArray(JAVA_FLOAT, v)); + check(ext.glColor3fVertex3fvSUN).invokeExact(c, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glColor4ubVertex3fSUN(byte r, byte g, byte b, byte a, float x, float y, float z) { - var ext = GLLoader.getExtCapabilities(); + public static void glNormal3fVertex3fSUN(float nx, float ny, float nz, float x, float y, float z) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glColor4ubVertex3fSUN).invokeExact(r, g, b, a, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glNormal3fVertex3fSUN).invokeExact(nx, ny, nz, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glColor4ubVertex3fvSUN(MemorySegment c, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glNormal3fVertex3fvSUN(@NativeType("const GLfloat *") MemorySegment n, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glColor4ubVertex3fvSUN).invokeExact(c, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glNormal3fVertex3fvSUN).invokeExact(n, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glColor4ubVertex3fvSUN(SegmentAllocator allocator, byte[] c, float[] v) { - glColor4ubVertex3fvSUN(allocator.allocateArray(JAVA_BYTE, c), allocator.allocateArray(JAVA_FLOAT, v)); - } - - public static void glNormal3fVertex3fSUN(float nx, float ny, float nz, float x, float y, float z) { - var ext = GLLoader.getExtCapabilities(); + public static void glColor4fNormal3fVertex3fSUN(float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glNormal3fVertex3fSUN).invokeExact(nx, ny, nz, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glColor4fNormal3fVertex3fSUN).invokeExact(r, g, b, a, nx, ny, nz, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glNormal3fVertex3fvSUN(MemorySegment n, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glColor4fNormal3fVertex3fvSUN(@NativeType("const GLfloat *") MemorySegment c, @NativeType("const GLfloat *") MemorySegment n, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glNormal3fVertex3fvSUN).invokeExact(n, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glNormal3fVertex3fvSUN(SegmentAllocator allocator, float[] n, float[] v) { - glNormal3fVertex3fvSUN(allocator.allocateArray(JAVA_FLOAT, n), allocator.allocateArray(JAVA_FLOAT, v)); + check(ext.glColor4fNormal3fVertex3fvSUN).invokeExact(c, n, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeuiColor3fVertex3fSUN(int rc, float r, float g, float b, float x, float y, float z) { - var ext = GLLoader.getExtCapabilities(); + public static void glTexCoord2fVertex3fSUN(float s, float t, float x, float y, float z) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeuiColor3fVertex3fSUN).invokeExact(rc, r, g, b, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glTexCoord2fVertex3fSUN).invokeExact(s, t, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeuiColor3fVertex3fvSUN(MemorySegment rc, MemorySegment c, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glTexCoord2fVertex3fvSUN(@NativeType("const GLfloat *") MemorySegment tc, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeuiColor3fVertex3fvSUN).invokeExact(rc, c, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glTexCoord2fVertex3fvSUN).invokeExact(tc, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeuiColor3fVertex3fvSUN(SegmentAllocator allocator, int[] rc, float[] c, float[] v) { - glReplacementCodeuiColor3fVertex3fvSUN(allocator.allocateArray(JAVA_INT, rc), allocator.allocateArray(JAVA_FLOAT, c), allocator.allocateArray(JAVA_FLOAT, v)); - } - - public static void glReplacementCodeuiColor4fNormal3fVertex3fSUN(int rc, float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z) { - var ext = GLLoader.getExtCapabilities(); + public static void glTexCoord4fVertex4fSUN(float s, float t, float p, float q, float x, float y, float z, float w) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeuiColor4fNormal3fVertex3fSUN).invokeExact(rc, r, g, b, a, nx, ny, nz, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glTexCoord4fVertex4fSUN).invokeExact(s, t, p, q, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeuiColor4fNormal3fVertex3fvSUN(MemorySegment rc, MemorySegment c, MemorySegment n, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glTexCoord4fVertex4fvSUN(@NativeType("const GLfloat *") MemorySegment tc, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeuiColor4fNormal3fVertex3fvSUN).invokeExact(rc, c, n, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glReplacementCodeuiColor4fNormal3fVertex3fvSUN(SegmentAllocator allocator, int[] rc, float[] c, float[] n, float[] v) { - glReplacementCodeuiColor4fNormal3fVertex3fvSUN(allocator.allocateArray(JAVA_INT, rc), allocator.allocateArray(JAVA_FLOAT, c), allocator.allocateArray(JAVA_FLOAT, n), allocator.allocateArray(JAVA_FLOAT, v)); + check(ext.glTexCoord4fVertex4fvSUN).invokeExact(tc, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeuiColor4ubVertex3fSUN(int rc, byte r, byte g, byte b, byte a, float x, float y, float z) { - var ext = GLLoader.getExtCapabilities(); + public static void glTexCoord2fColor4ubVertex3fSUN(float s, float t, byte r, byte g, byte b, byte a, float x, float y, float z) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeuiColor4ubVertex3fSUN).invokeExact(rc, r, g, b, a, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glTexCoord2fColor4ubVertex3fSUN).invokeExact(s, t, r, g, b, a, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeuiColor4ubVertex3fvSUN(MemorySegment rc, MemorySegment c, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glTexCoord2fColor4ubVertex3fvSUN(@NativeType("const GLfloat *") MemorySegment tc, @NativeType("const GLubyte *") MemorySegment c, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeuiColor4ubVertex3fvSUN).invokeExact(rc, c, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glReplacementCodeuiColor4ubVertex3fvSUN(SegmentAllocator allocator, int[] rc, byte[] c, float[] v) { - glReplacementCodeuiColor4ubVertex3fvSUN(allocator.allocateArray(JAVA_INT, rc), allocator.allocateArray(JAVA_BYTE, c), allocator.allocateArray(JAVA_FLOAT, v)); + check(ext.glTexCoord2fColor4ubVertex3fvSUN).invokeExact(tc, c, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeuiNormal3fVertex3fSUN(int rc, float nx, float ny, float nz, float x, float y, float z) { - var ext = GLLoader.getExtCapabilities(); + public static void glTexCoord2fColor3fVertex3fSUN(float s, float t, float r, float g, float b, float x, float y, float z) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeuiNormal3fVertex3fSUN).invokeExact(rc, nx, ny, nz, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glTexCoord2fColor3fVertex3fSUN).invokeExact(s, t, r, g, b, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeuiNormal3fVertex3fvSUN(MemorySegment rc, MemorySegment n, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glTexCoord2fColor3fVertex3fvSUN(@NativeType("const GLfloat *") MemorySegment tc, @NativeType("const GLfloat *") MemorySegment c, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeuiNormal3fVertex3fvSUN).invokeExact(rc, n, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glTexCoord2fColor3fVertex3fvSUN).invokeExact(tc, c, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeuiNormal3fVertex3fvSUN(SegmentAllocator allocator, int[] rc, float[] n, float[] v) { - glReplacementCodeuiNormal3fVertex3fvSUN(allocator.allocateArray(JAVA_INT, rc), allocator.allocateArray(JAVA_FLOAT, n), allocator.allocateArray(JAVA_FLOAT, v)); - } - - public static void glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN(int rc, float s, float t, float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z) { - var ext = GLLoader.getExtCapabilities(); + public static void glTexCoord2fNormal3fVertex3fSUN(float s, float t, float nx, float ny, float nz, float x, float y, float z) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN).invokeExact(rc, s, t, r, g, b, a, nx, ny, nz, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glTexCoord2fNormal3fVertex3fSUN).invokeExact(s, t, nx, ny, nz, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN(MemorySegment rc, MemorySegment tc, MemorySegment c, MemorySegment n, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glTexCoord2fNormal3fVertex3fvSUN(@NativeType("const GLfloat *") MemorySegment tc, @NativeType("const GLfloat *") MemorySegment n, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN).invokeExact(rc, tc, c, n, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN(SegmentAllocator allocator, int[] rc, float[] tc, float[] c, float[] n, float[] v) { - glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN(allocator.allocateArray(JAVA_INT, rc), allocator.allocateArray(JAVA_FLOAT, tc), allocator.allocateArray(JAVA_FLOAT, c), allocator.allocateArray(JAVA_FLOAT, n), allocator.allocateArray(JAVA_FLOAT, v)); + check(ext.glTexCoord2fNormal3fVertex3fvSUN).invokeExact(tc, n, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN(int rc, float s, float t, float nx, float ny, float nz, float x, float y, float z) { - var ext = GLLoader.getExtCapabilities(); + public static void glTexCoord2fColor4fNormal3fVertex3fSUN(float s, float t, float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN).invokeExact(rc, s, t, nx, ny, nz, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glTexCoord2fColor4fNormal3fVertex3fSUN).invokeExact(s, t, r, g, b, a, nx, ny, nz, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN(MemorySegment rc, MemorySegment tc, MemorySegment n, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glTexCoord2fColor4fNormal3fVertex3fvSUN(@NativeType("const GLfloat *") MemorySegment tc, @NativeType("const GLfloat *") MemorySegment c, @NativeType("const GLfloat *") MemorySegment n, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN).invokeExact(rc, tc, n, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glTexCoord2fColor4fNormal3fVertex3fvSUN).invokeExact(tc, c, n, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN(SegmentAllocator allocator, int[] rc, float[] tc, float[] n, float[] v) { - glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN(allocator.allocateArray(JAVA_INT, rc), allocator.allocateArray(JAVA_FLOAT, tc), allocator.allocateArray(JAVA_FLOAT, n), allocator.allocateArray(JAVA_FLOAT, v)); - } - - public static void glReplacementCodeuiTexCoord2fVertex3fSUN(int rc, float s, float t, float x, float y, float z) { - var ext = GLLoader.getExtCapabilities(); + public static void glTexCoord4fColor4fNormal3fVertex4fSUN(float s, float t, float p, float q, float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z, float w) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeuiTexCoord2fVertex3fSUN).invokeExact(rc, s, t, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glTexCoord4fColor4fNormal3fVertex4fSUN).invokeExact(s, t, p, q, r, g, b, a, nx, ny, nz, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeuiTexCoord2fVertex3fvSUN(MemorySegment rc, MemorySegment tc, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glTexCoord4fColor4fNormal3fVertex4fvSUN(@NativeType("const GLfloat *") MemorySegment tc, @NativeType("const GLfloat *") MemorySegment c, @NativeType("const GLfloat *") MemorySegment n, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeuiTexCoord2fVertex3fvSUN).invokeExact(rc, tc, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glReplacementCodeuiTexCoord2fVertex3fvSUN(SegmentAllocator allocator, int[] rc, float[] tc, float[] v) { - glReplacementCodeuiTexCoord2fVertex3fvSUN(allocator.allocateArray(JAVA_INT, rc), allocator.allocateArray(JAVA_FLOAT, tc), allocator.allocateArray(JAVA_FLOAT, v)); + check(ext.glTexCoord4fColor4fNormal3fVertex4fvSUN).invokeExact(tc, c, n, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glReplacementCodeuiVertex3fSUN(int rc, float x, float y, float z) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeuiVertex3fSUN).invokeExact(rc, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReplacementCodeuiVertex3fSUN).invokeExact(rc, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glReplacementCodeuiVertex3fvSUN(MemorySegment rc, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeuiVertex3fvSUN(@NativeType("const GLuint *") MemorySegment rc, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glReplacementCodeuiVertex3fvSUN).invokeExact(rc, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glReplacementCodeuiVertex3fvSUN(SegmentAllocator allocator, int[] rc, float[] v) { - glReplacementCodeuiVertex3fvSUN(allocator.allocateArray(JAVA_INT, rc), allocator.allocateArray(JAVA_FLOAT, v)); + check(ext.glReplacementCodeuiVertex3fvSUN).invokeExact(rc, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glTexCoord2fColor3fVertex3fSUN(float s, float t, float r, float g, float b, float x, float y, float z) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeuiColor4ubVertex3fSUN(int rc, byte r, byte g, byte b, byte a, float x, float y, float z) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTexCoord2fColor3fVertex3fSUN).invokeExact(s, t, r, g, b, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReplacementCodeuiColor4ubVertex3fSUN).invokeExact(rc, r, g, b, a, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glTexCoord2fColor3fVertex3fvSUN(MemorySegment tc, MemorySegment c, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeuiColor4ubVertex3fvSUN(@NativeType("const GLuint *") MemorySegment rc, @NativeType("const GLubyte *") MemorySegment c, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTexCoord2fColor3fVertex3fvSUN).invokeExact(tc, c, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReplacementCodeuiColor4ubVertex3fvSUN).invokeExact(rc, c, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glTexCoord2fColor3fVertex3fvSUN(SegmentAllocator allocator, float[] tc, float[] c, float[] v) { - glTexCoord2fColor3fVertex3fvSUN(allocator.allocateArray(JAVA_FLOAT, tc), allocator.allocateArray(JAVA_FLOAT, c), allocator.allocateArray(JAVA_FLOAT, v)); - } - - public static void glTexCoord2fColor4fNormal3fVertex3fSUN(float s, float t, float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeuiColor3fVertex3fSUN(int rc, float r, float g, float b, float x, float y, float z) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTexCoord2fColor4fNormal3fVertex3fSUN).invokeExact(s, t, r, g, b, a, nx, ny, nz, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReplacementCodeuiColor3fVertex3fSUN).invokeExact(rc, r, g, b, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glTexCoord2fColor4fNormal3fVertex3fvSUN(MemorySegment tc, MemorySegment c, MemorySegment n, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeuiColor3fVertex3fvSUN(@NativeType("const GLuint *") MemorySegment rc, @NativeType("const GLfloat *") MemorySegment c, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTexCoord2fColor4fNormal3fVertex3fvSUN).invokeExact(tc, c, n, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glTexCoord2fColor4fNormal3fVertex3fvSUN(SegmentAllocator allocator, float[] tc, float[] c, float[] n, float[] v) { - glTexCoord2fColor4fNormal3fVertex3fvSUN(allocator.allocateArray(JAVA_FLOAT, tc), allocator.allocateArray(JAVA_FLOAT, c), allocator.allocateArray(JAVA_FLOAT, n), allocator.allocateArray(JAVA_FLOAT, v)); + check(ext.glReplacementCodeuiColor3fVertex3fvSUN).invokeExact(rc, c, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glTexCoord2fColor4ubVertex3fSUN(float s, float t, byte r, byte g, byte b, byte a, float x, float y, float z) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeuiNormal3fVertex3fSUN(int rc, float nx, float ny, float nz, float x, float y, float z) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTexCoord2fColor4ubVertex3fSUN).invokeExact(s, t, r, g, b, a, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReplacementCodeuiNormal3fVertex3fSUN).invokeExact(rc, nx, ny, nz, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glTexCoord2fColor4ubVertex3fvSUN(MemorySegment tc, MemorySegment c, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeuiNormal3fVertex3fvSUN(@NativeType("const GLuint *") MemorySegment rc, @NativeType("const GLfloat *") MemorySegment n, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTexCoord2fColor4ubVertex3fvSUN).invokeExact(tc, c, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glTexCoord2fColor4ubVertex3fvSUN(SegmentAllocator allocator, float[] tc, byte[] c, float[] v) { - glTexCoord2fColor4ubVertex3fvSUN(allocator.allocateArray(JAVA_FLOAT, tc), allocator.allocateArray(JAVA_BYTE, c), allocator.allocateArray(JAVA_FLOAT, v)); + check(ext.glReplacementCodeuiNormal3fVertex3fvSUN).invokeExact(rc, n, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glTexCoord2fNormal3fVertex3fSUN(float s, float t, float nx, float ny, float nz, float x, float y, float z) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeuiColor4fNormal3fVertex3fSUN(int rc, float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTexCoord2fNormal3fVertex3fSUN).invokeExact(s, t, nx, ny, nz, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReplacementCodeuiColor4fNormal3fVertex3fSUN).invokeExact(rc, r, g, b, a, nx, ny, nz, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glTexCoord2fNormal3fVertex3fvSUN(MemorySegment tc, MemorySegment n, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeuiColor4fNormal3fVertex3fvSUN(@NativeType("const GLuint *") MemorySegment rc, @NativeType("const GLfloat *") MemorySegment c, @NativeType("const GLfloat *") MemorySegment n, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTexCoord2fNormal3fVertex3fvSUN).invokeExact(tc, n, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReplacementCodeuiColor4fNormal3fVertex3fvSUN).invokeExact(rc, c, n, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glTexCoord2fNormal3fVertex3fvSUN(SegmentAllocator allocator, float[] tc, float[] n, float[] v) { - glTexCoord2fNormal3fVertex3fvSUN(allocator.allocateArray(JAVA_FLOAT, tc), allocator.allocateArray(JAVA_FLOAT, n), allocator.allocateArray(JAVA_FLOAT, v)); - } - - public static void glTexCoord2fVertex3fSUN(float s, float t, float x, float y, float z) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeuiTexCoord2fVertex3fSUN(int rc, float s, float t, float x, float y, float z) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTexCoord2fVertex3fSUN).invokeExact(s, t, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReplacementCodeuiTexCoord2fVertex3fSUN).invokeExact(rc, s, t, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glTexCoord2fVertex3fvSUN(MemorySegment tc, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeuiTexCoord2fVertex3fvSUN(@NativeType("const GLuint *") MemorySegment rc, @NativeType("const GLfloat *") MemorySegment tc, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTexCoord2fVertex3fvSUN).invokeExact(tc, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glTexCoord2fVertex3fvSUN(SegmentAllocator allocator, float[] tc, float[] v) { - glTexCoord2fVertex3fvSUN(allocator.allocateArray(JAVA_FLOAT, tc), allocator.allocateArray(JAVA_FLOAT, v)); + check(ext.glReplacementCodeuiTexCoord2fVertex3fvSUN).invokeExact(rc, tc, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glTexCoord4fColor4fNormal3fVertex4fSUN(float s, float t, float p, float q, float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z, float w) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN(int rc, float s, float t, float nx, float ny, float nz, float x, float y, float z) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTexCoord4fColor4fNormal3fVertex4fSUN).invokeExact(s, t, p, q, r, g, b, a, nx, ny, nz, x, y, z, w); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN).invokeExact(rc, s, t, nx, ny, nz, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glTexCoord4fColor4fNormal3fVertex4fvSUN(MemorySegment tc, MemorySegment c, MemorySegment n, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN(@NativeType("const GLuint *") MemorySegment rc, @NativeType("const GLfloat *") MemorySegment tc, @NativeType("const GLfloat *") MemorySegment n, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTexCoord4fColor4fNormal3fVertex4fvSUN).invokeExact(tc, c, n, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN).invokeExact(rc, tc, n, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glTexCoord4fColor4fNormal3fVertex4fvSUN(SegmentAllocator allocator, float[] tc, float[] c, float[] n, float[] v) { - glTexCoord4fColor4fNormal3fVertex4fvSUN(allocator.allocateArray(JAVA_FLOAT, tc), allocator.allocateArray(JAVA_FLOAT, c), allocator.allocateArray(JAVA_FLOAT, n), allocator.allocateArray(JAVA_FLOAT, v)); - } - - public static void glTexCoord4fVertex4fSUN(float s, float t, float p, float q, float x, float y, float z, float w) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN(int rc, float s, float t, float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTexCoord4fVertex4fSUN).invokeExact(s, t, p, q, x, y, z, w); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN).invokeExact(rc, s, t, r, g, b, a, nx, ny, nz, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glTexCoord4fVertex4fvSUN(MemorySegment tc, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN(@NativeType("const GLuint *") MemorySegment rc, @NativeType("const GLfloat *") MemorySegment tc, @NativeType("const GLfloat *") MemorySegment c, @NativeType("const GLfloat *") MemorySegment n, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glTexCoord4fVertex4fvSUN).invokeExact(tc, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN).invokeExact(rc, tc, c, n, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glTexCoord4fVertex4fvSUN(SegmentAllocator allocator, float[] tc, float[] v) { - glTexCoord4fVertex4fvSUN(allocator.allocateArray(JAVA_FLOAT, tc), allocator.allocateArray(JAVA_FLOAT, v)); - } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNXConstantData.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNXConstantData.java index 7b0b28a0..3a908a38 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNXConstantData.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNXConstantData.java @@ -14,31 +14,32 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.sun; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SUNX_constant_data} - * - * @author squid233 - * @since 0.1.0 - */ + * {@code GL_SUNX_constant_data} + */ public final class GLSUNXConstantData { + public static final int GL_UNPACK_CONSTANT_DATA_SUNX = 0x81D5; + public static final int GL_TEXTURE_CONSTANT_DATA_SUNX = 0x81D6; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_SUNX_constant_data) return; - ext.glFinishTextureSUNX = load.invoke("glFinishTextureSUNX", FunctionDescriptors.V); + ext.glFinishTextureSUNX = load.invoke("glFinishTextureSUNX", ofVoid()); } public static void glFinishTextureSUNX() { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glFinishTextureSUNX).invokeExact(); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glFinishTextureSUNX).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } From 0010cc76b4683cccfb443d8a945bdd577078abb7 Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Sat, 14 Oct 2023 12:17:27 +0800 Subject: [PATCH 08/20] [OpenGL] Added new extensions; update license header --- .../overrungl/opengl/OpenGLGenerator.kt | 1299 ++++++++++++++--- .../java/overrungl/opengl/GLCapabilities.java | 2 +- .../main/java/overrungl/opengl/GLExtCaps.java | 828 +++++++++-- .../java/overrungl/opengl/GLExtFinder.java | 646 +------- .../opengl/ext/GL3DFXMultisample.java | 2 +- .../overrungl/opengl/ext/GL3DFXTbuffer.java | 2 +- .../ext/GL3DFXTextureCompressionFXT1.java | 2 +- .../opengl/ext/GLGREMEDYFrameTerminator.java | 2 +- .../opengl/ext/GLGREMEDYStringMarker.java | 2 +- .../ext/GLHPConvolutionBorderModes.java | 2 +- .../opengl/ext/GLHPImageTransform.java | 2 +- .../opengl/ext/GLHPOcclusionTest.java | 2 +- .../opengl/ext/GLHPTextureLighting.java | 2 +- .../opengl/ext/GLINGRBlendFuncSeparate.java | 2 +- .../opengl/ext/GLINGRColorClamp.java | 2 +- .../opengl/ext/GLINGRInterlaceRead.java | 2 +- .../overrungl/opengl/ext/GLOMLInterlace.java | 33 + .../overrungl/opengl/ext/GLOMLResample.java | 37 + .../overrungl/opengl/ext/GLOMLSubsample.java | 33 + .../overrungl/opengl/ext/GLOVRMultiview.java | 2 +- .../overrungl/opengl/ext/GLPGIMiscHints.java | 2 +- .../opengl/ext/GLPGIVertexHints.java | 2 +- .../opengl/ext/GLRENDScreenCoordinates.java | 33 + .../java/overrungl/opengl/ext/GLS3S3tc.java | 37 + .../opengl/ext/GLWINPhongShading.java | 2 +- .../opengl/ext/GLWINSpecularFog.java | 2 +- .../ext/amd/GLAMDBlendMinmaxFactor.java | 2 +- .../opengl/ext/amd/GLAMDDebugOutput.java | 2 +- .../ext/amd/GLAMDDepthClampSeparate.java | 2 +- .../opengl/ext/amd/GLAMDDrawBuffersBlend.java | 2 +- .../GLAMDFramebufferMultisampleAdvanced.java | 2 +- .../amd/GLAMDFramebufferSamplePositions.java | 2 +- .../ext/amd/GLAMDGpuShaderHalfFloat.java | 2 +- .../opengl/ext/amd/GLAMDGpuShaderInt64.java | 2 +- .../ext/amd/GLAMDInterleavedElements.java | 2 +- .../ext/amd/GLAMDMultiDrawIndirect.java | 2 +- .../opengl/ext/amd/GLAMDNameGenDelete.java | 2 +- .../ext/amd/GLAMDOcclusionQueryEvent.java | 2 +- .../ext/amd/GLAMDPerformanceMonitor.java | 2 +- .../opengl/ext/amd/GLAMDPinnedMemory.java | 2 +- .../ext/amd/GLAMDQueryBufferObject.java | 2 +- .../opengl/ext/amd/GLAMDSamplePositions.java | 2 +- .../opengl/ext/amd/GLAMDSparseTexture.java | 2 +- .../amd/GLAMDStencilOperationExtended.java | 2 +- .../ext/amd/GLAMDTransformFeedback4.java | 2 +- .../ext/amd/GLAMDVertexShaderTessellator.java | 2 +- .../ext/apple/GLAPPLEAuxDepthStencil.java | 2 +- .../ext/apple/GLAPPLEClientStorage.java | 2 +- .../opengl/ext/apple/GLAPPLEElementArray.java | 2 +- .../opengl/ext/apple/GLAPPLEFence.java | 2 +- .../opengl/ext/apple/GLAPPLEFloatPixels.java | 2 +- .../ext/apple/GLAPPLEFlushBufferRange.java | 2 +- .../ext/apple/GLAPPLEObjectPurgeable.java | 2 +- .../opengl/ext/apple/GLAPPLERgb422.java | 2 +- .../opengl/ext/apple/GLAPPLERowBytes.java | 2 +- .../ext/apple/GLAPPLESpecularVector.java | 2 +- .../opengl/ext/apple/GLAPPLETextureRange.java | 2 +- .../ext/apple/GLAPPLETransformHint.java | 2 +- .../ext/apple/GLAPPLEVertexArrayObject.java | 2 +- .../ext/apple/GLAPPLEVertexArrayRange.java | 2 +- .../apple/GLAPPLEVertexProgramEvaluators.java | 2 +- .../opengl/ext/apple/GLAPPLEYcbcr422.java | 2 +- .../opengl/ext/arb/GLARBRobustness.java | 2 +- .../opengl/ext/arb/GLARBSampleLocations.java | 2 +- .../opengl/ext/arb/GLARBSampleShading.java | 2 +- .../opengl/ext/arb/GLARBShaderObjects.java | 2 +- .../ext/arb/GLARBShadingLanguageInclude.java | 2 +- .../overrungl/opengl/ext/arb/GLARBShadow.java | 2 +- .../opengl/ext/arb/GLARBShadowAmbient.java | 2 +- .../opengl/ext/arb/GLARBSparseBuffer.java | 2 +- .../opengl/ext/arb/GLARBSparseTexture.java | 2 +- .../ext/arb/GLARBTextureBorderClamp.java | 2 +- .../ext/arb/GLARBTextureBufferObject.java | 2 +- .../ext/arb/GLARBTextureCompression.java | 2 +- .../ext/arb/GLARBTextureCompressionBptc.java | 2 +- .../opengl/ext/arb/GLARBTextureCubeMap.java | 2 +- .../ext/arb/GLARBTextureCubeMapArray.java | 2 +- .../ext/arb/GLARBTextureEnvCombine.java | 2 +- .../opengl/ext/arb/GLARBTextureEnvDot3.java | 2 +- .../ext/arb/GLARBTextureFilterMinmax.java | 2 +- .../opengl/ext/arb/GLARBTextureFloat.java | 2 +- .../opengl/ext/arb/GLARBTextureGather.java | 2 +- .../ext/arb/GLARBTextureMirroredRepeat.java | 2 +- .../opengl/ext/arb/GLARBTextureRectangle.java | 2 +- .../GLARBTransformFeedbackOverflowQuery.java | 2 +- .../opengl/ext/arb/GLARBTransposeMatrix.java | 2 +- .../opengl/ext/arb/GLARBVertexBlend.java | 2 +- .../ext/arb/GLARBVertexBufferObject.java | 2 +- .../opengl/ext/arb/GLARBVertexProgram.java | 2 +- .../opengl/ext/arb/GLARBVertexShader.java | 2 +- .../opengl/ext/arb/GLARBViewportArray.java | 2 +- .../opengl/ext/arb/GLARBWindowPos.java | 2 +- .../opengl/ext/ati/GLATIDrawBuffers.java | 60 + .../opengl/ext/ati/GLATIElementArray.java | 62 + .../opengl/ext/ati/GLATIEnvmapBumpmap.java | 75 + .../opengl/ext/ati/GLATIFragmentShader.java | 252 ++++ .../opengl/ext/ati/GLATIMapObjectBuffer.java | 52 + .../opengl/ext/ati/GLATIMeminfo.java | 34 + .../opengl/ext/ati/GLATIPixelFormatFloat.java | 33 + .../opengl/ext/ati/GLATIPnTriangles.java | 60 + .../opengl/ext/ati/GLATISeparateStencil.java | 55 + .../ext/ati/GLATITextFragmentShader.java | 32 + .../ext/ati/GLATITextureEnvCombine3.java | 34 + .../opengl/ext/ati/GLATITextureFloat.java | 43 + .../ext/ati/GLATITextureMirrorOnce.java | 33 + .../ext/ati/GLATIVertexArrayObject.java | 141 ++ .../ext/ati/GLATIVertexAttribArrayObject.java | 59 + .../opengl/ext/ati/GLATIVertexStreams.java | 405 +++++ .../opengl/ext/ibm/GLIBMCullVertex.java | 2 +- .../ext/ibm/GLIBMMultimodeDrawArrays.java | 2 +- .../opengl/ext/ibm/GLIBMRasterposClip.java | 2 +- .../opengl/ext/ibm/GLIBMStaticData.java | 2 +- .../ext/ibm/GLIBMTextureMirroredRepeat.java | 2 +- .../opengl/ext/ibm/GLIBMVertexArrayLists.java | 2 +- .../ext/intel/GLINTELBlackholeRender.java | 2 +- .../GLINTELConservativeRasterization.java | 2 +- .../ext/intel/GLINTELFramebufferCMAA.java | 2 +- .../opengl/ext/intel/GLINTELMapTexture.java | 2 +- .../ext/intel/GLINTELParallelArrays.java | 2 +- .../ext/intel/GLINTELPerformanceQuery.java | 2 +- .../ext/khr/GLKHRBlendEquationAdvanced.java | 2 +- .../GLKHRBlendEquationAdvancedCoherent.java | 2 +- .../opengl/ext/khr/GLKHRNoError.java | 2 +- .../ext/khr/GLKHRParallelShaderCompile.java | 2 +- .../opengl/ext/khr/GLKHRRobustness.java | 2 +- .../opengl/ext/khr/GLKHRShaderSubgroup.java | 2 +- .../khr/GLKHRTextureCompressionAstcHdr.java | 2 +- .../ext/mesa/GLMESAFramebufferFlipX.java | 2 +- .../ext/mesa/GLMESAFramebufferFlipY.java | 2 +- .../ext/mesa/GLMESAFramebufferSwapXY.java | 2 +- .../opengl/ext/mesa/GLMESAPackInvert.java | 2 +- .../ext/mesa/GLMESAProgramBinaryFormats.java | 2 +- .../opengl/ext/mesa/GLMESAResizeBuffers.java | 2 +- .../ext/mesa/GLMESATileRasterOrder.java | 2 +- .../opengl/ext/mesa/GLMESAWindowPos.java | 2 +- .../opengl/ext/mesa/GLMESAXTextureStack.java | 2 +- .../opengl/ext/mesa/GLMESAYcbcrTexture.java | 2 +- .../opengl/ext/oes/GLOESByteCoordinates.java | 2 +- .../oes/GLOESCompressedPalettedTexture.java | 2 +- .../opengl/ext/oes/GLOESFixedPoint.java | 2 +- .../opengl/ext/oes/GLOESQueryMatrix.java | 2 +- .../opengl/ext/oes/GLOESReadFormat.java | 2 +- .../opengl/ext/oes/GLOESSinglePrecision.java | 2 +- .../opengl/ext/sgi/GLSGISDetailTexture.java | 59 + .../opengl/ext/sgi/GLSGISFogFunction.java | 54 + .../opengl/ext/sgi/GLSGISGenerateMipmap.java | 33 + .../ext/sun/GLSUNConvolutionBorderModes.java | 2 +- .../opengl/ext/sun/GLSUNGlobalAlpha.java | 2 +- .../opengl/ext/sun/GLSUNMeshArray.java | 2 +- .../opengl/ext/sun/GLSUNSliceAccum.java | 2 +- .../opengl/ext/sun/GLSUNTriangleList.java | 2 +- .../overrungl/opengl/ext/sun/GLSUNVertex.java | 2 +- .../opengl/ext/sun/GLSUNXConstantData.java | 2 +- 153 files changed, 3683 insertions(+), 1091 deletions(-) create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLInterlace.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLResample.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLSubsample.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLRENDScreenCoordinates.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLS3S3tc.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIDrawBuffers.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIElementArray.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIEnvmapBumpmap.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIFragmentShader.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIMapObjectBuffer.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIMeminfo.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIPixelFormatFloat.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIPnTriangles.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATISeparateStencil.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextFragmentShader.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureEnvCombine3.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureFloat.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureMirrorOnce.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexArrayObject.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexAttribArrayObject.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexStreams.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISDetailTexture.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISFogFunction.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISGenerateMipmap.java diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt index 9afa95af..17cf0f23 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt @@ -18,8 +18,6 @@ package overrungl.opengl import overrungl.opengl.OpenGLExt.* import java.nio.file.Files -import java.time.Clock -import java.time.LocalDate import kotlin.io.path.Path enum class OpenGLExt(val dir: String, val packageName: String, val extName: String) { @@ -62,7 +60,7 @@ data class Type(val name: String, val layout: String?) { val fileHeader = """/* * MIT License * - * Copyright (c) 2022-${LocalDate.now(Clock.systemUTC()).year} Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -1973,7 +1971,417 @@ fun apple() { file("Ycbcr422", APPLE, "GL_APPLE_ycbcr_422", "GL_YCBCR_422_APPLE" to "0x85B9") } -fun ati() {} +fun ati() { + file("DrawBuffers", ATI, "GL_ATI_draw_buffers") { + "GL_MAX_DRAW_BUFFERS_ATI"("0x8824") + "GL_DRAW_BUFFER0_ATI"("0x8825") + "GL_DRAW_BUFFER1_ATI"("0x8826") + "GL_DRAW_BUFFER2_ATI"("0x8827") + "GL_DRAW_BUFFER3_ATI"("0x8828") + "GL_DRAW_BUFFER4_ATI"("0x8829") + "GL_DRAW_BUFFER5_ATI"("0x882A") + "GL_DRAW_BUFFER6_ATI"("0x882B") + "GL_DRAW_BUFFER7_ATI"("0x882C") + "GL_DRAW_BUFFER8_ATI"("0x882D") + "GL_DRAW_BUFFER9_ATI"("0x882E") + "GL_DRAW_BUFFER10_ATI"("0x882F") + "GL_DRAW_BUFFER11_ATI"("0x8830") + "GL_DRAW_BUFFER12_ATI"("0x8831") + "GL_DRAW_BUFFER13_ATI"("0x8832") + "GL_DRAW_BUFFER14_ATI"("0x8833") + "GL_DRAW_BUFFER15_ATI"("0x8834") + "glDrawBuffersATI"(void, GLsizei("n"), address("bufs", "const GLenum *")) + } + file("ElementArray", ATI, "GL_ATI_element_array") { + "GL_ELEMENT_ARRAY_ATI"("0x8768") + "GL_ELEMENT_ARRAY_TYPE_ATI"("0x8769") + "GL_ELEMENT_ARRAY_POINTER_ATI"("0x876A") + "glElementPointerATI"(void, GLenum("type"), address("pointer", "const void *")) + "glDrawElementArrayATI"(void, GLenum("mode"), GLsizei("count")) + "glDrawRangeElementArrayATI"(void, GLenum("mode"), GLuint("start"), GLuint("end"), GLsizei("count")) + } + file("EnvmapBumpmap", ATI, "GL_ATI_envmap_bumpmap") { + "GL_BUMP_ROT_MATRIX_ATI"("0x8775") + "GL_BUMP_ROT_MATRIX_SIZE_ATI"("0x8776") + "GL_BUMP_NUM_TEX_UNITS_ATI"("0x8777") + "GL_BUMP_TEX_UNITS_ATI"("0x8778") + "GL_DUDV_ATI"("0x8779") + "GL_DU8DV8_ATI"("0x877A") + "GL_BUMP_ENVMAP_ATI"("0x877B") + "GL_BUMP_TARGET_ATI"("0x877C") + "glTexBumpParameterivATI"(void, GLenum("pname"), address("param", "const GLint *")) + "glTexBumpParameterfvATI"(void, GLenum("pname"), address("param", "const GLfloat *")) + "glGetTexBumpParameterivATI"(void, GLenum("pname"), address("param", "GLint *")) + "glGetTexBumpParameterfvATI"(void, GLenum("pname"), address("param", "GLfloat *")) + } + file("FragmentShader", ATI, "GL_ATI_fragment_shader") { + "GL_FRAGMENT_SHADER_ATI"("0x8920") + "GL_REG_0_ATI"("0x8921") + "GL_REG_1_ATI"("0x8922") + "GL_REG_2_ATI"("0x8923") + "GL_REG_3_ATI"("0x8924") + "GL_REG_4_ATI"("0x8925") + "GL_REG_5_ATI"("0x8926") + "GL_REG_6_ATI"("0x8927") + "GL_REG_7_ATI"("0x8928") + "GL_REG_8_ATI"("0x8929") + "GL_REG_9_ATI"("0x892A") + "GL_REG_10_ATI"("0x892B") + "GL_REG_11_ATI"("0x892C") + "GL_REG_12_ATI"("0x892D") + "GL_REG_13_ATI"("0x892E") + "GL_REG_14_ATI"("0x892F") + "GL_REG_15_ATI"("0x8930") + "GL_REG_16_ATI"("0x8931") + "GL_REG_17_ATI"("0x8932") + "GL_REG_18_ATI"("0x8933") + "GL_REG_19_ATI"("0x8934") + "GL_REG_20_ATI"("0x8935") + "GL_REG_21_ATI"("0x8936") + "GL_REG_22_ATI"("0x8937") + "GL_REG_23_ATI"("0x8938") + "GL_REG_24_ATI"("0x8939") + "GL_REG_25_ATI"("0x893A") + "GL_REG_26_ATI"("0x893B") + "GL_REG_27_ATI"("0x893C") + "GL_REG_28_ATI"("0x893D") + "GL_REG_29_ATI"("0x893E") + "GL_REG_30_ATI"("0x893F") + "GL_REG_31_ATI"("0x8940") + "GL_CON_0_ATI"("0x8941") + "GL_CON_1_ATI"("0x8942") + "GL_CON_2_ATI"("0x8943") + "GL_CON_3_ATI"("0x8944") + "GL_CON_4_ATI"("0x8945") + "GL_CON_5_ATI"("0x8946") + "GL_CON_6_ATI"("0x8947") + "GL_CON_7_ATI"("0x8948") + "GL_CON_8_ATI"("0x8949") + "GL_CON_9_ATI"("0x894A") + "GL_CON_10_ATI"("0x894B") + "GL_CON_11_ATI"("0x894C") + "GL_CON_12_ATI"("0x894D") + "GL_CON_13_ATI"("0x894E") + "GL_CON_14_ATI"("0x894F") + "GL_CON_15_ATI"("0x8950") + "GL_CON_16_ATI"("0x8951") + "GL_CON_17_ATI"("0x8952") + "GL_CON_18_ATI"("0x8953") + "GL_CON_19_ATI"("0x8954") + "GL_CON_20_ATI"("0x8955") + "GL_CON_21_ATI"("0x8956") + "GL_CON_22_ATI"("0x8957") + "GL_CON_23_ATI"("0x8958") + "GL_CON_24_ATI"("0x8959") + "GL_CON_25_ATI"("0x895A") + "GL_CON_26_ATI"("0x895B") + "GL_CON_27_ATI"("0x895C") + "GL_CON_28_ATI"("0x895D") + "GL_CON_29_ATI"("0x895E") + "GL_CON_30_ATI"("0x895F") + "GL_CON_31_ATI"("0x8960") + "GL_MOV_ATI"("0x8961") + "GL_ADD_ATI"("0x8963") + "GL_MUL_ATI"("0x8964") + "GL_SUB_ATI"("0x8965") + "GL_DOT3_ATI"("0x8966") + "GL_DOT4_ATI"("0x8967") + "GL_MAD_ATI"("0x8968") + "GL_LERP_ATI"("0x8969") + "GL_CND_ATI"("0x896A") + "GL_CND0_ATI"("0x896B") + "GL_DOT2_ADD_ATI"("0x896C") + "GL_SECONDARY_INTERPOLATOR_ATI"("0x896D") + "GL_NUM_FRAGMENT_REGISTERS_ATI"("0x896E") + "GL_NUM_FRAGMENT_CONSTANTS_ATI"("0x896F") + "GL_NUM_PASSES_ATI"("0x8970") + "GL_NUM_INSTRUCTIONS_PER_PASS_ATI"("0x8971") + "GL_NUM_INSTRUCTIONS_TOTAL_ATI"("0x8972") + "GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI"("0x8973") + "GL_NUM_LOOPBACK_COMPONENTS_ATI"("0x8974") + "GL_COLOR_ALPHA_PAIRING_ATI"("0x8975") + "GL_SWIZZLE_STR_ATI"("0x8976") + "GL_SWIZZLE_STQ_ATI"("0x8977") + "GL_SWIZZLE_STR_DR_ATI"("0x8978") + "GL_SWIZZLE_STQ_DQ_ATI"("0x8979") + "GL_SWIZZLE_STRQ_ATI"("0x897A") + "GL_SWIZZLE_STRQ_DQ_ATI"("0x897B") + "GL_RED_BIT_ATI"("0x00000001") + "GL_GREEN_BIT_ATI"("0x00000002") + "GL_BLUE_BIT_ATI"("0x00000004") + "GL_2X_BIT_ATI"("0x00000001") + "GL_4X_BIT_ATI"("0x00000002") + "GL_8X_BIT_ATI"("0x00000004") + "GL_HALF_BIT_ATI"("0x00000008") + "GL_QUARTER_BIT_ATI"("0x00000010") + "GL_EIGHTH_BIT_ATI"("0x00000020") + "GL_SATURATE_BIT_ATI"("0x00000040") + "GL_COMP_BIT_ATI"("0x00000002") + "GL_NEGATE_BIT_ATI"("0x00000004") + "GL_BIAS_BIT_ATI"("0x00000008") + "glGenFragmentShadersATI"(GLuint, GLuint("range")) + "glBindFragmentShaderATI"(void, GLuint("id")) + "glDeleteFragmentShaderATI"(void, GLuint("id")) + "glBeginFragmentShaderATI"(void) + "glEndFragmentShaderATI"(void) + "glPassTexCoordATI"(void, GLuint("dst"), GLuint("coord"), GLenum("swizzle")) + "glSampleMapATI"(void, GLuint("dst"), GLuint("interp"), GLenum("swizzle")) + "glColorFragmentOp1ATI"( + void, + GLenum("op"), + GLuint("dst"), + GLuint("dstMask"), + GLuint("dstMod"), + GLuint("arg1"), + GLuint("arg1Rep"), + GLuint("arg1Mod") + ) + "glColorFragmentOp2ATI"( + void, + GLenum("op"), + GLuint("dst"), + GLuint("dstMask"), + GLuint("dstMod"), + GLuint("arg1"), + GLuint("arg1Rep"), + GLuint("arg1Mod"), + GLuint("arg2"), + GLuint("arg2Rep"), + GLuint("arg2Mod") + ) + "glColorFragmentOp3ATI"( + void, + GLenum("op"), + GLuint("dst"), + GLuint("dstMask"), + GLuint("dstMod"), + GLuint("arg1"), + GLuint("arg1Rep"), + GLuint("arg1Mod"), + GLuint("arg2"), + GLuint("arg2Rep"), + GLuint("arg2Mod"), + GLuint("arg3"), + GLuint("arg3Rep"), + GLuint("arg3Mod") + ) + "glAlphaFragmentOp1ATI"( + void, + GLenum("op"), + GLuint("dst"), + GLuint("dstMod"), + GLuint("arg1"), + GLuint("arg1Rep"), + GLuint("arg1Mod") + ) + "glAlphaFragmentOp2ATI"( + void, + GLenum("op"), + GLuint("dst"), + GLuint("dstMod"), + GLuint("arg1"), + GLuint("arg1Rep"), + GLuint("arg1Mod"), + GLuint("arg2"), + GLuint("arg2Rep"), + GLuint("arg2Mod") + ) + "glAlphaFragmentOp3ATI"( + void, + GLenum("op"), + GLuint("dst"), + GLuint("dstMod"), + GLuint("arg1"), + GLuint("arg1Rep"), + GLuint("arg1Mod"), + GLuint("arg2"), + GLuint("arg2Rep"), + GLuint("arg2Mod"), + GLuint("arg3"), + GLuint("arg3Rep"), + GLuint("arg3Mod") + ) + "glSetFragmentShaderConstantATI"(void, GLuint("dst"), address("value", "const GLfloat *")) + } + file("MapObjectBuffer", ATI, "GL_ATI_map_object_buffer") { + "glMapObjectBufferATI"(address, GLuint("buffer"), nativeType = "void*") + "glUnmapObjectBufferATI"(void, GLuint("buffer")) + } + file( + "Meminfo", ATI, "GL_ATI_meminfo", + "GL_VBO_FREE_MEMORY_ATI" to "0x87FB", + "GL_TEXTURE_FREE_MEMORY_ATI" to "0x87FC", + "GL_RENDERBUFFER_FREE_MEMORY_ATI" to "0x87FD" + ) + file( + "PixelFormatFloat", ATI, "GL_ATI_pixel_format_float", + "GL_RGBA_FLOAT_MODE_ATI" to "0x8820", + "GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI" to "0x8835" + ) + file("PnTriangles", ATI, "GL_ATI_pn_triangles") { + "GL_PN_TRIANGLES_ATI"("0x87F0") + "GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI"("0x87F1") + "GL_PN_TRIANGLES_POINT_MODE_ATI"("0x87F2") + "GL_PN_TRIANGLES_NORMAL_MODE_ATI"("0x87F3") + "GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI"("0x87F4") + "GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI"("0x87F5") + "GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI"("0x87F6") + "GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI"("0x87F7") + "GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI"("0x87F8") + "glPNTrianglesiATI"(void, GLenum("pname"), GLint("param")) + "glPNTrianglesfATI"(void, GLenum("pname"), GLfloat("param")) + } + file("SeparateStencil", ATI, "GL_ATI_separate_stencil") { + "GL_STENCIL_BACK_FUNC_ATI"("0x8800") + "GL_STENCIL_BACK_FAIL_ATI"("0x8801") + "GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI"("0x8802") + "GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI"("0x8803") + "glStencilOpSeparateATI"(void, GLenum("face"), GLenum("sfail"), GLenum("dpfail"), GLenum("dppass")) + "glStencilFuncSeparateATI"(void, GLenum("frontfunc"), GLenum("backfunc"), GLint("ref"), GLuint("mask")) + } + file("TextFragmentShader", ATI, "GL_ATI_text_fragment_shader", "GL_TEXT_FRAGMENT_SHADER_ATI" to "0x8200") + file( + "TextureEnvCombine3", ATI, "GL_ATI_texture_env_combine3", + "GL_MODULATE_ADD_ATI" to "0x8744", + "GL_MODULATE_SIGNED_ADD_ATI" to "0x8745", + "GL_MODULATE_SUBTRACT_ATI" to "0x8746" + ) + file( + "TextureFloat", ATI, "GL_ATI_texture_float", + "GL_RGBA_FLOAT32_ATI" to "0x8814", + "GL_RGB_FLOAT32_ATI" to "0x8815", + "GL_ALPHA_FLOAT32_ATI" to "0x8816", + "GL_INTENSITY_FLOAT32_ATI" to "0x8817", + "GL_LUMINANCE_FLOAT32_ATI" to "0x8818", + "GL_LUMINANCE_ALPHA_FLOAT32_ATI" to "0x8819", + "GL_RGBA_FLOAT16_ATI" to "0x881A", + "GL_RGB_FLOAT16_ATI" to "0x881B", + "GL_ALPHA_FLOAT16_ATI" to "0x881C", + "GL_INTENSITY_FLOAT16_ATI" to "0x881D", + "GL_LUMINANCE_FLOAT16_ATI" to "0x881E", + "GL_LUMINANCE_ALPHA_FLOAT16_ATI" to "0x881F" + ) + file( + "TextureMirrorOnce", ATI, "GL_ATI_texture_mirror_once", + "GL_MIRROR_CLAMP_ATI" to "0x8742", + "GL_MIRROR_CLAMP_TO_EDGE_ATI" to "0x8743" + ) + file("VertexArrayObject", ATI, "GL_ATI_vertex_array_object") { + "GL_STATIC_ATI"("0x8760") + "GL_DYNAMIC_ATI"("0x8761") + "GL_PRESERVE_ATI"("0x8762") + "GL_DISCARD_ATI"("0x8763") + "GL_OBJECT_BUFFER_SIZE_ATI"("0x8764") + "GL_OBJECT_BUFFER_USAGE_ATI"("0x8765") + "GL_ARRAY_OBJECT_BUFFER_ATI"("0x8766") + "GL_ARRAY_OBJECT_OFFSET_ATI"("0x8767") + "glNewObjectBufferATI"(GLuint, GLsizei("size"), address("pointer", "const void *"), GLenum("usage")) + "glIsObjectBufferATI"(GLboolean, GLuint("buffer")) + "glUpdateObjectBufferATI"( + void, + GLuint("buffer"), + GLuint("offset"), + GLsizei("size"), + address("pointer", "const void *"), + GLenum("preserve") + ) + "glGetObjectBufferfvATI"(void, GLuint("buffer"), GLenum("pname"), address("params", "GLfloat *")) + "glGetObjectBufferivATI"(void, GLuint("buffer"), GLenum("pname"), address("params", "GLint *")) + "glFreeObjectBufferATI"(void, GLuint("buffer")) + "glArrayObjectATI"( + void, + GLenum("array"), + GLint("size"), + GLenum("type"), + GLsizei("stride"), + GLuint("buffer"), + GLuint("offset") + ) + "glGetArrayObjectfvATI"(void, GLenum("array"), GLenum("pname"), address("params", "GLfloat *")) + "glGetArrayObjectivATI"(void, GLenum("array"), GLenum("pname"), address("params", "GLint *")) + "glVariantArrayObjectATI"( + void, + GLuint("id"), + GLenum("type"), + GLsizei("stride"), + GLuint("buffer"), + GLuint("offset") + ) + "glGetVariantArrayObjectfvATI"(void, GLuint("id"), GLenum("pname"), address("params", "GLfloat *")) + "glGetVariantArrayObjectivATI"(void, GLuint("id"), GLenum("pname"), address("params", "GLint *")) + } + file("VertexAttribArrayObject", ATI, "GL_ATI_vertex_attrib_array_object") { + "glVertexAttribArrayObjectATI"( + void, + GLuint("index"), + GLint("size"), + GLenum("type"), + GLboolean("normalized"), + GLsizei("stride"), + GLuint("buffer"), + GLuint("offset") + ) + "glGetVertexAttribArrayObjectfvATI"(void, GLuint("index"), GLenum("pname"), address("params", "GLfloat *")) + "glGetVertexAttribArrayObjectivATI"(void, GLuint("index"), GLenum("pname"), address("params", "GLint *")) + } + file("VertexStreams", ATI, "GL_ATI_vertex_streams") { + "GL_MAX_VERTEX_STREAMS_ATI"("0x876B") + "GL_VERTEX_STREAM0_ATI"("0x876C") + "GL_VERTEX_STREAM1_ATI"("0x876D") + "GL_VERTEX_STREAM2_ATI"("0x876E") + "GL_VERTEX_STREAM3_ATI"("0x876F") + "GL_VERTEX_STREAM4_ATI"("0x8770") + "GL_VERTEX_STREAM5_ATI"("0x8771") + "GL_VERTEX_STREAM6_ATI"("0x8772") + "GL_VERTEX_STREAM7_ATI"("0x8773") + "GL_VERTEX_SOURCE_ATI"("0x8774") + "glVertexStream1sATI"(void, GLenum("stream"), GLshort("x")) + "glVertexStream1svATI"(void, GLenum("stream"), address("coords", "const GLshort *")) + "glVertexStream1iATI"(void, GLenum("stream"), GLint("x")) + "glVertexStream1ivATI"(void, GLenum("stream"), address("coords", "const GLint *")) + "glVertexStream1fATI"(void, GLenum("stream"), GLfloat("x")) + "glVertexStream1fvATI"(void, GLenum("stream"), address("coords", "const GLfloat *")) + "glVertexStream1dATI"(void, GLenum("stream"), GLdouble("x")) + "glVertexStream1dvATI"(void, GLenum("stream"), address("coords", "const GLdouble *")) + "glVertexStream2sATI"(void, GLenum("stream"), GLshort("x"), GLshort("y")) + "glVertexStream2svATI"(void, GLenum("stream"), address("coords", "const GLshort *")) + "glVertexStream2iATI"(void, GLenum("stream"), GLint("x"), GLint("y")) + "glVertexStream2ivATI"(void, GLenum("stream"), address("coords", "const GLint *")) + "glVertexStream2fATI"(void, GLenum("stream"), GLfloat("x"), GLfloat("y")) + "glVertexStream2fvATI"(void, GLenum("stream"), address("coords", "const GLfloat *")) + "glVertexStream2dATI"(void, GLenum("stream"), GLdouble("x"), GLdouble("y")) + "glVertexStream2dvATI"(void, GLenum("stream"), address("coords", "const GLdouble *")) + "glVertexStream3sATI"(void, GLenum("stream"), GLshort("x"), GLshort("y"), GLshort("z")) + "glVertexStream3svATI"(void, GLenum("stream"), address("coords", "const GLshort *")) + "glVertexStream3iATI"(void, GLenum("stream"), GLint("x"), GLint("y"), GLint("z")) + "glVertexStream3ivATI"(void, GLenum("stream"), address("coords", "const GLint *")) + "glVertexStream3fATI"(void, GLenum("stream"), GLfloat("x"), GLfloat("y"), GLfloat("z")) + "glVertexStream3fvATI"(void, GLenum("stream"), address("coords", "const GLfloat *")) + "glVertexStream3dATI"(void, GLenum("stream"), GLdouble("x"), GLdouble("y"), GLdouble("z")) + "glVertexStream3dvATI"(void, GLenum("stream"), address("coords", "const GLdouble *")) + "glVertexStream4sATI"(void, GLenum("stream"), GLshort("x"), GLshort("y"), GLshort("z"), GLshort("w")) + "glVertexStream4svATI"(void, GLenum("stream"), address("coords", "const GLshort *")) + "glVertexStream4iATI"(void, GLenum("stream"), GLint("x"), GLint("y"), GLint("z"), GLint("w")) + "glVertexStream4ivATI"(void, GLenum("stream"), address("coords", "const GLint *")) + "glVertexStream4fATI"(void, GLenum("stream"), GLfloat("x"), GLfloat("y"), GLfloat("z"), GLfloat("w")) + "glVertexStream4fvATI"(void, GLenum("stream"), address("coords", "const GLfloat *")) + "glVertexStream4dATI"(void, GLenum("stream"), GLdouble("x"), GLdouble("y"), GLdouble("z"), GLdouble("w")) + "glVertexStream4dvATI"(void, GLenum("stream"), address("coords", "const GLdouble *")) + "glNormalStream3bATI"(void, GLenum("stream"), GLbyte("nx"), GLbyte("ny"), GLbyte("nz")) + "glNormalStream3bvATI"(void, GLenum("stream"), address("coords", "const GLbyte *")) + "glNormalStream3sATI"(void, GLenum("stream"), GLshort("nx"), GLshort("ny"), GLshort("nz")) + "glNormalStream3svATI"(void, GLenum("stream"), address("coords", "const GLshort *")) + "glNormalStream3iATI"(void, GLenum("stream"), GLint("nx"), GLint("ny"), GLint("nz")) + "glNormalStream3ivATI"(void, GLenum("stream"), address("coords", "const GLint *")) + "glNormalStream3fATI"(void, GLenum("stream"), GLfloat("nx"), GLfloat("ny"), GLfloat("nz")) + "glNormalStream3fvATI"(void, GLenum("stream"), address("coords", "const GLfloat *")) + "glNormalStream3dATI"(void, GLenum("stream"), GLdouble("nx"), GLdouble("ny"), GLdouble("nz")) + "glNormalStream3dvATI"(void, GLenum("stream"), address("coords", "const GLdouble *")) + "glClientActiveVertexStreamATI"(void, GLenum("stream")) + "glVertexBlendEnviATI"(void, GLenum("pname"), GLint("param")) + "glVertexBlendEnvfATI"(void, GLenum("pname"), GLfloat("param")) + } +} fun ext() {} @@ -2317,7 +2725,27 @@ fun mesa() { fun nv() {} -fun oml() {} +fun oml() { + file( + "Interlace", OML, "GL_OML_interlace", + "GL_INTERLACE_OML" to "0x8980", + "GL_INTERLACE_READ_OML" to "0x8981" + ) + file( + "Resample", OML, "GL_OML_resample", + "GL_PACK_RESAMPLE_OML" to "0x8984", + "GL_UNPACK_RESAMPLE_OML" to "0x8985", + "GL_RESAMPLE_REPLICATE_OML" to "0x8986", + "GL_RESAMPLE_ZERO_FILL_OML" to "0x8987", + "GL_RESAMPLE_AVERAGE_OML" to "0x8988", + "GL_RESAMPLE_DECIMATE_OML" to "0x8989" + ) + file( + "Subsample", OML, "GL_OML_subsample", + "GL_FORMAT_SUBSAMPLE_24_24_OML" to "0x8982", + "GL_FORMAT_SUBSAMPLE_244_244_OML" to "0x8983" + ) +} fun ovr() { file("Multiview", OVR, "GL_OVR_multiview") { @@ -2388,11 +2816,52 @@ fun pgi() { ) } -fun rend() {} +fun rend() { + file( + "ScreenCoordinates", REND, "GL_REND_screen_coordinates", + "GL_SCREEN_COORDINATES_REND" to "0x8490", + "GL_INVERTED_SCREEN_W_REND" to "0x8491" + ) +} -fun s3() {} +fun s3() { + file( + "S3tc", S3, "GL_S3_s3tc", + "GL_RGB_S3TC" to "0x83A0", + "GL_RGB4_S3TC" to "0x83A1", + "GL_RGBA_S3TC" to "0x83A2", + "GL_RGBA4_S3TC" to "0x83A3", + "GL_RGBA_DXT5_S3TC" to "0x83A4", + "GL_RGBA4_DXT5_S3TC" to "0x83A5" + ) +} -fun sgi() {} +fun sgi() { + file("DetailTexture", SGIS, "GL_SGIS_detail_texture") { + "GL_DETAIL_TEXTURE_2D_SGIS"("0x8095") + "GL_DETAIL_TEXTURE_2D_BINDING_SGIS"("0x8096") + "GL_LINEAR_DETAIL_SGIS"("0x8097") + "GL_LINEAR_DETAIL_ALPHA_SGIS"("0x8098") + "GL_LINEAR_DETAIL_COLOR_SGIS"("0x8099") + "GL_DETAIL_TEXTURE_LEVEL_SGIS"("0x809A") + "GL_DETAIL_TEXTURE_MODE_SGIS"("0x809B") + "GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS"("0x809C") + "glDetailTexFuncSGIS"(void, GLenum("target"), GLsizei("n"), address("points", "const GLfloat *")) + "glGetDetailTexFuncSGIS"(void, GLenum("target"), address("points", "GLfloat *")) + } + file("FogFunction", SGIS, "GL_SGIS_fog_function") { + "GL_FOG_FUNC_SGIS"("0x812A") + "GL_FOG_FUNC_POINTS_SGIS"("0x812B") + "GL_MAX_FOG_FUNC_POINTS_SGIS"("0x812C") + "glFogFuncSGIS"(void, GLsizei("n"), address("points", "const GLfloat *")) + "glGetFogFuncSGIS"(void, address("points", "GLfloat *")) + } + file( + "GenerateMipmap", SGIS, "GL_SGIS_generate_mipmap", + "GL_GENERATE_MIPMAP_SGIS" to "0x8191", + "GL_GENERATE_MIPMAP_HINT_SGIS" to "0x8192" + ) +} fun sun() { file("ConstantData", SUNX, "GL_SUNX_constant_data") { @@ -2763,29 +3232,654 @@ fun win() { } fun glExtCaps() { + val caps = arrayOf( + "GL_ARB_ES2_compatibility", + "GL_ARB_ES3_1_compatibility", + "GL_ARB_ES3_2_compatibility", + "GL_ARB_ES3_compatibility", + "GL_ARB_arrays_of_arrays", + "GL_ARB_base_instance", + "GL_ARB_bindless_texture", + "GL_ARB_blend_func_extended", + "GL_ARB_buffer_storage", + "GL_ARB_cl_event", + "GL_ARB_clear_buffer_object", + "GL_ARB_clear_texture", + "GL_ARB_clip_control", + "GL_ARB_color_buffer_float", + "GL_ARB_compatibility", + "GL_ARB_compressed_texture_pixel_storage", + "GL_ARB_compute_shader", + "GL_ARB_compute_variable_group_size", + "GL_ARB_conditional_render_inverted", + "GL_ARB_conservative_depth", + "GL_ARB_copy_buffer", + "GL_ARB_copy_image", + "GL_ARB_cull_distance", + "GL_ARB_debug_output", + "GL_ARB_depth_buffer_float", + "GL_ARB_depth_clamp", + "GL_ARB_depth_texture", + "GL_ARB_derivative_control", + "GL_ARB_direct_state_access", + "GL_ARB_draw_buffers", + "GL_ARB_draw_buffers_blend", + "GL_ARB_draw_elements_base_vertex", + "GL_ARB_draw_indirect", + "GL_ARB_draw_instanced", + "GL_ARB_enhanced_layouts", + "GL_ARB_explicit_attrib_location", + "GL_ARB_explicit_uniform_location", + "GL_ARB_fragment_coord_conventions", + "GL_ARB_fragment_layer_viewport", + "GL_ARB_fragment_program", + "GL_ARB_fragment_program_shadow", + "GL_ARB_fragment_shader", + "GL_ARB_fragment_shader_interlock", + "GL_ARB_framebuffer_no_attachments", + "GL_ARB_framebuffer_object", + "GL_ARB_framebuffer_sRGB", + "GL_ARB_geometry_shader4", + "GL_ARB_get_program_binary", + "GL_ARB_get_texture_sub_image", + "GL_ARB_gl_spirv", + "GL_ARB_gpu_shader5", + "GL_ARB_gpu_shader_fp64", + "GL_ARB_gpu_shader_int64", + "GL_ARB_half_float_pixel", + "GL_ARB_half_float_vertex", + "GL_ARB_imaging", + "GL_ARB_indirect_parameters", + "GL_ARB_instanced_arrays", + "GL_ARB_internalformat_query", + "GL_ARB_internalformat_query2", + "GL_ARB_invalidate_subdata", + "GL_ARB_map_buffer_alignment", + "GL_ARB_map_buffer_range", + "GL_ARB_matrix_palette", + "GL_ARB_multi_bind", + "GL_ARB_multi_draw_indirect", + "GL_ARB_multisample", + "GL_ARB_multitexture", + "GL_ARB_occlusion_query", + "GL_ARB_occlusion_query2", + "GL_ARB_parallel_shader_compile", + "GL_ARB_pipeline_statistics_query", + "GL_ARB_pixel_buffer_object", + "GL_ARB_point_parameters", + "GL_ARB_point_sprite", + "GL_ARB_polygon_offset_clamp", + "GL_ARB_post_depth_coverage", + "GL_ARB_program_interface_query", + "GL_ARB_provoking_vertex", + "GL_ARB_query_buffer_object", + "GL_ARB_robust_buffer_access_behavior", + "GL_ARB_robustness", + "GL_ARB_robustness_isolation", + "GL_ARB_sample_locations", + "GL_ARB_sample_shading", + "GL_ARB_sampler_objects", + "GL_ARB_seamless_cube_map", + "GL_ARB_seamless_cubemap_per_texture", + "GL_ARB_separate_shader_objects", + "GL_ARB_shader_atomic_counter_ops", + "GL_ARB_shader_atomic_counters", + "GL_ARB_shader_ballot", + "GL_ARB_shader_bit_encoding", + "GL_ARB_shader_clock", + "GL_ARB_shader_draw_parameters", + "GL_ARB_shader_group_vote", + "GL_ARB_shader_image_load_store", + "GL_ARB_shader_image_size", + "GL_ARB_shader_objects", + "GL_ARB_shader_precision", + "GL_ARB_shader_stencil_export", + "GL_ARB_shader_storage_buffer_object", + "GL_ARB_shader_subroutine", + "GL_ARB_shader_texture_image_samples", + "GL_ARB_shader_texture_lod", + "GL_ARB_shader_viewport_layer_array", + "GL_ARB_shading_language_100", + "GL_ARB_shading_language_420pack", + "GL_ARB_shading_language_include", + "GL_ARB_shading_language_packing", + "GL_ARB_shadow", + "GL_ARB_shadow_ambient", + "GL_ARB_sparse_buffer", + "GL_ARB_sparse_texture", + "GL_ARB_sparse_texture2", + "GL_ARB_sparse_texture_clamp", + "GL_ARB_spirv_extensions", + "GL_ARB_stencil_texturing", + "GL_ARB_sync", + "GL_ARB_tessellation_shader", + "GL_ARB_texture_barrier", + "GL_ARB_texture_border_clamp", + "GL_ARB_texture_buffer_object", + "GL_ARB_texture_buffer_object_rgb32", + "GL_ARB_texture_buffer_range", + "GL_ARB_texture_compression", + "GL_ARB_texture_compression_bptc", + "GL_ARB_texture_compression_rgtc", + "GL_ARB_texture_cube_map", + "GL_ARB_texture_cube_map_array", + "GL_ARB_texture_env_add", + "GL_ARB_texture_env_combine", + "GL_ARB_texture_env_crossbar", + "GL_ARB_texture_env_dot3", + "GL_ARB_texture_filter_anisotropic", + "GL_ARB_texture_filter_minmax", + "GL_ARB_texture_float", + "GL_ARB_texture_gather", + "GL_ARB_texture_mirror_clamp_to_edge", + "GL_ARB_texture_mirrored_repeat", + "GL_ARB_texture_multisample", + "GL_ARB_texture_non_power_of_two", + "GL_ARB_texture_query_levels", + "GL_ARB_texture_query_lod", + "GL_ARB_texture_rectangle", + "GL_ARB_texture_rg", + "GL_ARB_texture_rgb10_a2ui", + "GL_ARB_texture_stencil8", + "GL_ARB_texture_storage", + "GL_ARB_texture_storage_multisample", + "GL_ARB_texture_swizzle", + "GL_ARB_texture_view", + "GL_ARB_timer_query", + "GL_ARB_transform_feedback2", + "GL_ARB_transform_feedback3", + "GL_ARB_transform_feedback_instanced", + "GL_ARB_transform_feedback_overflow_query", + "GL_ARB_transpose_matrix", + "GL_ARB_uniform_buffer_object", + "GL_ARB_vertex_array_bgra", + "GL_ARB_vertex_array_object", + "GL_ARB_vertex_attrib_64bit", + "GL_ARB_vertex_attrib_binding", + "GL_ARB_vertex_blend", + "GL_ARB_vertex_buffer_object", + "GL_ARB_vertex_program", + "GL_ARB_vertex_shader", + "GL_ARB_vertex_type_10f_11f_11f_rev", + "GL_ARB_vertex_type_2_10_10_10_rev", + "GL_ARB_viewport_array", + "GL_ARB_window_pos", + "GL_KHR_blend_equation_advanced", + "GL_KHR_blend_equation_advanced_coherent", + "GL_KHR_context_flush_control", + "GL_KHR_debug", + "GL_KHR_no_error", + "GL_KHR_parallel_shader_compile", + "GL_KHR_robust_buffer_access_behavior", + "GL_KHR_robustness", + "GL_KHR_shader_subgroup", + "GL_KHR_texture_compression_astc_hdr", + "GL_KHR_texture_compression_astc_ldr", + "GL_KHR_texture_compression_astc_sliced_3d", + "GL_OES_byte_coordinates", + "GL_OES_compressed_paletted_texture", + "GL_OES_fixed_point", + "GL_OES_query_matrix", + "GL_OES_read_format", + "GL_OES_single_precision", + "GL_3DFX_multisample", + "GL_3DFX_tbuffer", + "GL_3DFX_texture_compression_FXT1", + "GL_AMD_blend_minmax_factor", + "GL_AMD_conservative_depth", + "GL_AMD_debug_output", + "GL_AMD_depth_clamp_separate", + "GL_AMD_draw_buffers_blend", + "GL_AMD_framebuffer_multisample_advanced", + "GL_AMD_framebuffer_sample_positions", + "GL_AMD_gcn_shader", + "GL_AMD_gpu_shader_half_float", + "GL_AMD_gpu_shader_int16", + "GL_AMD_gpu_shader_int64", + "GL_AMD_interleaved_elements", + "GL_AMD_multi_draw_indirect", + "GL_AMD_name_gen_delete", + "GL_AMD_occlusion_query_event", + "GL_AMD_performance_monitor", + "GL_AMD_pinned_memory", + "GL_AMD_query_buffer_object", + "GL_AMD_sample_positions", + "GL_AMD_seamless_cubemap_per_texture", + "GL_AMD_shader_atomic_counter_ops", + "GL_AMD_shader_ballot", + "GL_AMD_shader_explicit_vertex_parameter", + "GL_AMD_shader_gpu_shader_half_float_fetch", + "GL_AMD_shader_image_load_store_lod", + "GL_AMD_shader_stencil_export", + "GL_AMD_shader_trinary_minmax", + "GL_AMD_sparse_texture", + "GL_AMD_stencil_operation_extended", + "GL_AMD_texture_gather_bias_lod", + "GL_AMD_texture_texture4", + "GL_AMD_transform_feedback3_lines_triangles", + "GL_AMD_transform_feedback4", + "GL_AMD_vertex_shader_layer", + "GL_AMD_vertex_shader_tessellator", + "GL_AMD_vertex_shader_viewport_index", + "GL_APPLE_aux_depth_stencil", + "GL_APPLE_client_storage", + "GL_APPLE_element_array", + "GL_APPLE_fence", + "GL_APPLE_float_pixels", + "GL_APPLE_flush_buffer_range", + "GL_APPLE_object_purgeable", + "GL_APPLE_rgb_422", + "GL_APPLE_row_bytes", + "GL_APPLE_specular_vector", + "GL_APPLE_texture_range", + "GL_APPLE_transform_hint", + "GL_APPLE_vertex_array_object", + "GL_APPLE_vertex_array_range", + "GL_APPLE_vertex_program_evaluators", + "GL_APPLE_ycbcr_422", + "GL_ATI_draw_buffers", + "GL_ATI_element_array", + "GL_ATI_envmap_bumpmap", + "GL_ATI_fragment_shader", + "GL_ATI_map_object_buffer", + "GL_ATI_meminfo", + "GL_ATI_pixel_format_float", + "GL_ATI_pn_triangles", + "GL_ATI_separate_stencil", + "GL_ATI_text_fragment_shader", + "GL_ATI_texture_env_combine3", + "GL_ATI_texture_float", + "GL_ATI_texture_mirror_once", + "GL_ATI_vertex_array_object", + "GL_ATI_vertex_attrib_array_object", + "GL_ATI_vertex_streams", + "GL_EXT_422_pixels", + "GL_EXT_EGL_image_storage", + "GL_EXT_EGL_sync", + "GL_EXT_abgr", + "GL_EXT_bgra", + "GL_EXT_bindable_uniform", + "GL_EXT_blend_color", + "GL_EXT_blend_equation_separate", + "GL_EXT_blend_func_separate", + "GL_EXT_blend_logic_op", + "GL_EXT_blend_minmax", + "GL_EXT_blend_subtract", + "GL_EXT_clip_volume_hint", + "GL_EXT_cmyka", + "GL_EXT_color_subtable", + "GL_EXT_compiled_vertex_array", + "GL_EXT_convolution", + "GL_EXT_coordinate_frame", + "GL_EXT_copy_texture", + "GL_EXT_cull_vertex", + "GL_EXT_debug_label", + "GL_EXT_debug_marker", + "GL_EXT_depth_bounds_test", + "GL_EXT_direct_state_access", + "GL_EXT_draw_buffers2", + "GL_EXT_draw_instanced", + "GL_EXT_draw_range_elements", + "GL_EXT_external_buffer", + "GL_EXT_fog_coord", + "GL_EXT_framebuffer_blit", + "GL_EXT_framebuffer_blit_layers", + "GL_EXT_framebuffer_multisample", + "GL_EXT_framebuffer_multisample_blit_scaled", + "GL_EXT_framebuffer_object", + "GL_EXT_framebuffer_sRGB", + "GL_EXT_geometry_shader4", + "GL_EXT_gpu_program_parameters", + "GL_EXT_gpu_shader4", + "GL_EXT_histogram", + "GL_EXT_index_array_formats", + "GL_EXT_index_func", + "GL_EXT_index_material", + "GL_EXT_index_texture", + "GL_EXT_light_texture", + "GL_EXT_memory_object", + "GL_EXT_memory_object_fd", + "GL_EXT_memory_object_win32", + "GL_EXT_misc_attribute", + "GL_EXT_multi_draw_arrays", + "GL_EXT_multisample", + "GL_EXT_multiview_tessellation_geometry_shader", + "GL_EXT_multiview_texture_multisample", + "GL_EXT_multiview_timer_query", + "GL_EXT_packed_depth_stencil", + "GL_EXT_packed_float", + "GL_EXT_packed_pixels", + "GL_EXT_paletted_texture", + "GL_EXT_pixel_buffer_object", + "GL_EXT_pixel_transform", + "GL_EXT_pixel_transform_color_table", + "GL_EXT_point_parameters", + "GL_EXT_polygon_offset", + "GL_EXT_polygon_offset_clamp", + "GL_EXT_post_depth_coverage", + "GL_EXT_provoking_vertex", + "GL_EXT_raster_multisample", + "GL_EXT_rescale_normal", + "GL_EXT_secondary_color", + "GL_EXT_semaphore", + "GL_EXT_semaphore_fd", + "GL_EXT_semaphore_win32", + "GL_EXT_separate_shader_objects", + "GL_EXT_separate_specular_color", + "GL_EXT_shader_framebuffer_fetch", + "GL_EXT_shader_framebuffer_fetch_non_coherent", + "GL_EXT_shader_image_load_formatted", + "GL_EXT_shader_image_load_store", + "GL_EXT_shader_integer_mix", + "GL_EXT_shader_samples_identical", + "GL_EXT_shadow_funcs", + "GL_EXT_shared_texture_palette", + "GL_EXT_sparse_texture2", + "GL_EXT_stencil_clear_tag", + "GL_EXT_stencil_two_side", + "GL_EXT_stencil_wrap", + "GL_EXT_subtexture", + "GL_EXT_texture", + "GL_EXT_texture3D", + "GL_EXT_texture_array", + "GL_EXT_texture_buffer_object", + "GL_EXT_texture_compression_latc", + "GL_EXT_texture_compression_rgtc", + "GL_EXT_texture_compression_s3tc", + "GL_EXT_texture_cube_map", + "GL_EXT_texture_env_add", + "GL_EXT_texture_env_combine", + "GL_EXT_texture_env_dot3", + "GL_EXT_texture_filter_anisotropic", + "GL_EXT_texture_filter_minmax", + "GL_EXT_texture_integer", + "GL_EXT_texture_lod_bias", + "GL_EXT_texture_mirror_clamp", + "GL_EXT_texture_object", + "GL_EXT_texture_perturb_normal", + "GL_EXT_texture_sRGB", + "GL_EXT_texture_sRGB_R8", + "GL_EXT_texture_sRGB_RG8", + "GL_EXT_texture_sRGB_decode", + "GL_EXT_texture_shadow_lod", + "GL_EXT_texture_shared_exponent", + "GL_EXT_texture_snorm", + "GL_EXT_texture_storage", + "GL_EXT_texture_swizzle", + "GL_EXT_timer_query", + "GL_EXT_transform_feedback", + "GL_EXT_vertex_array", + "GL_EXT_vertex_array_bgra", + "GL_EXT_vertex_attrib_64bit", + "GL_EXT_vertex_shader", + "GL_EXT_vertex_weighting", + "GL_EXT_win32_keyed_mutex", + "GL_EXT_window_rectangles", + "GL_EXT_x11_sync_object", + "GL_GREMEDY_frame_terminator", + "GL_GREMEDY_string_marker", + "GL_HP_convolution_border_modes", + "GL_HP_image_transform", + "GL_HP_occlusion_test", + "GL_HP_texture_lighting", + "GL_IBM_cull_vertex", + "GL_IBM_multimode_draw_arrays", + "GL_IBM_rasterpos_clip", + "GL_IBM_static_data", + "GL_IBM_texture_mirrored_repeat", + "GL_IBM_vertex_array_lists", + "GL_INGR_blend_func_separate", + "GL_INGR_color_clamp", + "GL_INGR_interlace_read", + "GL_INTEL_blackhole_render", + "GL_INTEL_conservative_rasterization", + "GL_INTEL_fragment_shader_ordering", + "GL_INTEL_framebuffer_CMAA", + "GL_INTEL_map_texture", + "GL_INTEL_parallel_arrays", + "GL_INTEL_performance_query", + "GL_MESAX_texture_stack", + "GL_MESA_framebuffer_flip_x", + "GL_MESA_framebuffer_flip_y", + "GL_MESA_framebuffer_swap_xy", + "GL_MESA_pack_invert", + "GL_MESA_program_binary_formats", + "GL_MESA_resize_buffers", + "GL_MESA_shader_integer_functions", + "GL_MESA_tile_raster_order", + "GL_MESA_window_pos", + "GL_MESA_ycbcr_texture", + "GL_NVX_blend_equation_advanced_multi_draw_buffers", + "GL_NVX_conditional_render", + "GL_NVX_gpu_memory_info", + "GL_NVX_gpu_multicast2", + "GL_NVX_linked_gpu_multicast", + "GL_NVX_progress_fence", + "GL_NV_alpha_to_coverage_dither_control", + "GL_NV_bindless_multi_draw_indirect", + "GL_NV_bindless_multi_draw_indirect_count", + "GL_NV_bindless_texture", + "GL_NV_blend_equation_advanced", + "GL_NV_blend_equation_advanced_coherent", + "GL_NV_blend_minmax_factor", + "GL_NV_blend_square", + "GL_NV_clip_space_w_scaling", + "GL_NV_command_list", + "GL_NV_compute_program5", + "GL_NV_compute_shader_derivatives", + "GL_NV_conditional_render", + "GL_NV_conservative_raster", + "GL_NV_conservative_raster_dilate", + "GL_NV_conservative_raster_pre_snap", + "GL_NV_conservative_raster_pre_snap_triangles", + "GL_NV_conservative_raster_underestimation", + "GL_NV_copy_depth_to_color", + "GL_NV_copy_image", + "GL_NV_deep_texture3D", + "GL_NV_depth_buffer_float", + "GL_NV_depth_clamp", + "GL_NV_draw_texture", + "GL_NV_draw_vulkan_image", + "GL_NV_evaluators", + "GL_NV_explicit_multisample", + "GL_NV_fence", + "GL_NV_fill_rectangle", + "GL_NV_float_buffer", + "GL_NV_fog_distance", + "GL_NV_fragment_coverage_to_color", + "GL_NV_fragment_program", + "GL_NV_fragment_program2", + "GL_NV_fragment_program4", + "GL_NV_fragment_program_option", + "GL_NV_fragment_shader_barycentric", + "GL_NV_fragment_shader_interlock", + "GL_NV_framebuffer_mixed_samples", + "GL_NV_framebuffer_multisample_coverage", + "GL_NV_geometry_program4", + "GL_NV_geometry_shader4", + "GL_NV_geometry_shader_passthrough", + "GL_NV_gpu_multicast", + "GL_NV_gpu_program4", + "GL_NV_gpu_program5", + "GL_NV_gpu_program5_mem_extended", + "GL_NV_gpu_shader5", + "GL_NV_half_float", + "GL_NV_internalformat_sample_query", + "GL_NV_light_max_exponent", + "GL_NV_memory_attachment", + "GL_NV_memory_object_sparse", + "GL_NV_mesh_shader", + "GL_NV_multisample_coverage", + "GL_NV_multisample_filter_hint", + "GL_NV_occlusion_query", + "GL_NV_packed_depth_stencil", + "GL_NV_parameter_buffer_object", + "GL_NV_parameter_buffer_object2", + "GL_NV_path_rendering", + "GL_NV_path_rendering_shared_edge", + "GL_NV_pixel_data_range", + "GL_NV_point_sprite", + "GL_NV_present_video", + "GL_NV_primitive_restart", + "GL_NV_primitive_shading_rate", + "GL_NV_query_resource", + "GL_NV_query_resource_tag", + "GL_NV_register_combiners", + "GL_NV_register_combiners2", + "GL_NV_representative_fragment_test", + "GL_NV_robustness_video_memory_purge", + "GL_NV_sample_locations", + "GL_NV_sample_mask_override_coverage", + "GL_NV_scissor_exclusive", + "GL_NV_shader_atomic_counters", + "GL_NV_shader_atomic_float", + "GL_NV_shader_atomic_float64", + "GL_NV_shader_atomic_fp16_vector", + "GL_NV_shader_atomic_int64", + "GL_NV_shader_buffer_load", + "GL_NV_shader_buffer_store", + "GL_NV_shader_storage_buffer_object", + "GL_NV_shader_subgroup_partitioned", + "GL_NV_shader_texture_footprint", + "GL_NV_shader_thread_group", + "GL_NV_shader_thread_shuffle", + "GL_NV_shading_rate_image", + "GL_NV_stereo_view_rendering", + "GL_NV_tessellation_program5", + "GL_NV_texgen_emboss", + "GL_NV_texgen_reflection", + "GL_NV_texture_barrier", + "GL_NV_texture_compression_vtc", + "GL_NV_texture_env_combine4", + "GL_NV_texture_expand_normal", + "GL_NV_texture_multisample", + "GL_NV_texture_rectangle", + "GL_NV_texture_rectangle_compressed", + "GL_NV_texture_shader", + "GL_NV_texture_shader2", + "GL_NV_texture_shader3", + "GL_NV_timeline_semaphore", + "GL_NV_transform_feedback", + "GL_NV_transform_feedback2", + "GL_NV_uniform_buffer_unified_memory", + "GL_NV_vdpau_interop", + "GL_NV_vdpau_interop2", + "GL_NV_vertex_array_range", + "GL_NV_vertex_array_range2", + "GL_NV_vertex_attrib_integer_64bit", + "GL_NV_vertex_buffer_unified_memory", + "GL_NV_vertex_program", + "GL_NV_vertex_program1_1", + "GL_NV_vertex_program2", + "GL_NV_vertex_program2_option", + "GL_NV_vertex_program3", + "GL_NV_vertex_program4", + "GL_NV_video_capture", + "GL_NV_viewport_array2", + "GL_NV_viewport_swizzle", + "GL_OML_interlace", + "GL_OML_resample", + "GL_OML_subsample", + "GL_OVR_multiview", + "GL_OVR_multiview2", + "GL_PGI_misc_hints", + "GL_PGI_vertex_hints", + "GL_REND_screen_coordinates", + "GL_S3_s3tc", + "GL_SGIS_detail_texture", + "GL_SGIS_fog_function", + "GL_SGIS_generate_mipmap", + "GL_SGIS_multisample", + "GL_SGIS_pixel_texture", + "GL_SGIS_point_line_texgen", + "GL_SGIS_point_parameters", + "GL_SGIS_sharpen_texture", + "GL_SGIS_texture4D", + "GL_SGIS_texture_border_clamp", + "GL_SGIS_texture_color_mask", + "GL_SGIS_texture_edge_clamp", + "GL_SGIS_texture_filter4", + "GL_SGIS_texture_lod", + "GL_SGIS_texture_select", + "GL_SGIX_async", + "GL_SGIX_async_histogram", + "GL_SGIX_async_pixel", + "GL_SGIX_blend_alpha_minmax", + "GL_SGIX_calligraphic_fragment", + "GL_SGIX_clipmap", + "GL_SGIX_convolution_accuracy", + "GL_SGIX_depth_pass_instrument", + "GL_SGIX_depth_texture", + "GL_SGIX_flush_raster", + "GL_SGIX_fog_offset", + "GL_SGIX_fragment_lighting", + "GL_SGIX_framezoom", + "GL_SGIX_igloo_interface", + "GL_SGIX_instruments", + "GL_SGIX_interlace", + "GL_SGIX_ir_instrument1", + "GL_SGIX_list_priority", + "GL_SGIX_pixel_texture", + "GL_SGIX_pixel_tiles", + "GL_SGIX_polynomial_ffd", + "GL_SGIX_reference_plane", + "GL_SGIX_resample", + "GL_SGIX_scalebias_hint", + "GL_SGIX_shadow", + "GL_SGIX_shadow_ambient", + "GL_SGIX_sprite", + "GL_SGIX_subsample", + "GL_SGIX_tag_sample_buffer", + "GL_SGIX_texture_add_env", + "GL_SGIX_texture_coordinate_clamp", + "GL_SGIX_texture_lod_bias", + "GL_SGIX_texture_multi_buffer", + "GL_SGIX_texture_scale_bias", + "GL_SGIX_vertex_preclip", + "GL_SGIX_ycrcb", + "GL_SGIX_ycrcb_subsample", + "GL_SGIX_ycrcba", + "GL_SGI_color_matrix", + "GL_SGI_color_table", + "GL_SGI_texture_color_table", + "GL_SUNX_constant_data", + "GL_SUN_convolution_border_modes", + "GL_SUN_global_alpha", + "GL_SUN_mesh_array", + "GL_SUN_slice_accum", + "GL_SUN_triangle_list", + "GL_SUN_vertex", + "GL_WIN_phong_shading", + "GL_WIN_specular_fog" + ) Files.writeString(Path("GLExtCaps.java"), buildString { append( """ ${fileHeader.prependIndent("|")} |package overrungl.opengl; - + | |import overrungl.opengl.ext.*; |import overrungl.opengl.ext.arb.*; |import overrungl.opengl.ext.khr.*; |import overrungl.opengl.ext.oes.*; |import overrungl.opengl.ext.amd.*; |import overrungl.opengl.ext.apple.*; - |//import overrungl.opengl.ext.ati.*; + |import overrungl.opengl.ext.ati.*; |//import overrungl.opengl.ext.ext.*; |import overrungl.opengl.ext.ibm.*; |import overrungl.opengl.ext.intel.*; |import overrungl.opengl.ext.mesa.*; |//import overrungl.opengl.ext.nv.*; - |//import overrungl.opengl.ext.sgi.*; + |import overrungl.opengl.ext.sgi.*; |import overrungl.opengl.ext.sun.*; - + | + |import java.lang.foreign.MemorySegment; + |import java.lang.foreign.SegmentAllocator; |import java.lang.invoke.MethodHandle; - + | + |import static java.lang.foreign.ValueLayout.*; + |import static overrungl.opengl.GLExtFinder.*; + | |/** | * The OpenGL extension capabilities. | * @@ -2793,158 +3887,11 @@ fun glExtCaps() { | */ |public final class GLExtCaps { | /** The OpenGL extension flags. */ - | public boolean GL_3DFX_multisample, GL_3DFX_tbuffer, GL_3DFX_texture_compression_FXT1, GL_AMD_blend_minmax_factor, - | GL_AMD_conservative_depth, GL_AMD_debug_output, GL_AMD_depth_clamp_separate, GL_AMD_draw_buffers_blend, - | GL_AMD_framebuffer_multisample_advanced, GL_AMD_framebuffer_sample_positions, GL_AMD_gcn_shader, - | GL_AMD_gpu_shader_half_float, GL_AMD_gpu_shader_int16, GL_AMD_gpu_shader_int64, GL_AMD_interleaved_elements, - | GL_AMD_multi_draw_indirect, GL_AMD_name_gen_delete, GL_AMD_occlusion_query_event, GL_AMD_performance_monitor, - | GL_AMD_pinned_memory, GL_AMD_query_buffer_object, GL_AMD_sample_positions, GL_AMD_seamless_cubemap_per_texture, - | GL_AMD_shader_atomic_counter_ops, GL_AMD_shader_ballot, GL_AMD_shader_explicit_vertex_parameter, - | GL_AMD_shader_gpu_shader_half_float_fetch, GL_AMD_shader_image_load_store_lod, GL_AMD_shader_stencil_export, - | GL_AMD_shader_trinary_minmax, GL_AMD_sparse_texture, GL_AMD_stencil_operation_extended, - | GL_AMD_texture_gather_bias_lod, GL_AMD_texture_texture4, GL_AMD_transform_feedback3_lines_triangles, - | GL_AMD_transform_feedback4, GL_AMD_vertex_shader_layer, GL_AMD_vertex_shader_tessellator, - | GL_AMD_vertex_shader_viewport_index, GL_APPLE_aux_depth_stencil, GL_APPLE_client_storage, GL_APPLE_element_array, - | GL_APPLE_fence, GL_APPLE_float_pixels, GL_APPLE_flush_buffer_range, GL_APPLE_object_purgeable, GL_APPLE_rgb_422, - | GL_APPLE_row_bytes, GL_APPLE_specular_vector, GL_APPLE_texture_range, GL_APPLE_transform_hint, - | GL_APPLE_vertex_array_object, GL_APPLE_vertex_array_range, GL_APPLE_vertex_program_evaluators, GL_APPLE_ycbcr_422, - | GL_ARB_ES2_compatibility, GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, GL_ARB_ES3_compatibility, - | GL_ARB_arrays_of_arrays, GL_ARB_base_instance, GL_ARB_bindless_texture, GL_ARB_blend_func_extended, - | GL_ARB_buffer_storage, GL_ARB_cl_event, GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, - | GL_ARB_color_buffer_float, GL_ARB_compatibility, GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, - | GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, GL_ARB_copy_buffer, - | GL_ARB_copy_image, GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float, GL_ARB_depth_clamp, - | GL_ARB_depth_texture, GL_ARB_derivative_control, GL_ARB_direct_state_access, GL_ARB_draw_buffers, - | GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex, GL_ARB_draw_indirect, GL_ARB_draw_instanced, - | GL_ARB_enhanced_layouts, GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, - | GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, GL_ARB_fragment_program, - | GL_ARB_fragment_program_shadow, GL_ARB_fragment_shader, GL_ARB_fragment_shader_interlock, - | GL_ARB_framebuffer_no_attachments, GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB, GL_ARB_geometry_shader4, - | GL_ARB_get_program_binary, GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64, - | GL_ARB_gpu_shader_int64, GL_ARB_half_float_pixel, GL_ARB_half_float_vertex, GL_ARB_imaging, GL_ARB_indirect_parameters, - | GL_ARB_instanced_arrays, GL_ARB_internalformat_query, GL_ARB_internalformat_query2, GL_ARB_invalidate_subdata, - | GL_ARB_map_buffer_alignment, GL_ARB_map_buffer_range, GL_ARB_matrix_palette, GL_ARB_multi_bind, - | GL_ARB_multi_draw_indirect, GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_occlusion_query, GL_ARB_occlusion_query2, - | GL_ARB_parallel_shader_compile, GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, - | GL_ARB_point_sprite, GL_ARB_polygon_offset_clamp, GL_ARB_post_depth_coverage, GL_ARB_program_interface_query, - | GL_ARB_provoking_vertex, GL_ARB_query_buffer_object, GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness, - | GL_ARB_robustness_isolation, GL_ARB_sample_locations, GL_ARB_sample_shading, GL_ARB_sampler_objects, - | GL_ARB_seamless_cube_map, GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects, - | GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters, GL_ARB_shader_ballot, GL_ARB_shader_bit_encoding, - | GL_ARB_shader_clock, GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote, GL_ARB_shader_image_load_store, - | GL_ARB_shader_image_size, GL_ARB_shader_objects, GL_ARB_shader_precision, GL_ARB_shader_stencil_export, - | GL_ARB_shader_storage_buffer_object, GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, - | GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, GL_ARB_shading_language_100, - | GL_ARB_shading_language_420pack, GL_ARB_shading_language_include, GL_ARB_shading_language_packing, GL_ARB_shadow, - | GL_ARB_shadow_ambient, GL_ARB_sparse_buffer, GL_ARB_sparse_texture, GL_ARB_sparse_texture2, GL_ARB_sparse_texture_clamp, - | GL_ARB_spirv_extensions, GL_ARB_stencil_texturing, GL_ARB_sync, GL_ARB_tessellation_shader, GL_ARB_texture_barrier, - | GL_ARB_texture_border_clamp, GL_ARB_texture_buffer_object, GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range, - | GL_ARB_texture_compression, GL_ARB_texture_compression_bptc, GL_ARB_texture_compression_rgtc, - | GL_ARB_texture_cube_map, GL_ARB_texture_cube_map_array, GL_ARB_texture_env_add, GL_ARB_texture_env_combine, - | GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3, GL_ARB_texture_filter_anisotropic, GL_ARB_texture_filter_minmax, - | GL_ARB_texture_float, GL_ARB_texture_gather, GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_mirrored_repeat, - | GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two, GL_ARB_texture_query_levels, GL_ARB_texture_query_lod, - | GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui, GL_ARB_texture_stencil8, GL_ARB_texture_storage, - | GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle, GL_ARB_texture_view, GL_ARB_timer_query, - | GL_ARB_transform_feedback2, GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced, - | GL_ARB_transform_feedback_overflow_query, GL_ARB_transpose_matrix, GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra, - | GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_64bit, GL_ARB_vertex_attrib_binding, GL_ARB_vertex_blend, - | GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_vertex_shader, GL_ARB_vertex_type_10f_11f_11f_rev, - | GL_ARB_vertex_type_2_10_10_10_rev, GL_ARB_viewport_array, GL_ARB_window_pos, GL_ATI_draw_buffers, GL_ATI_element_array, - | GL_ATI_envmap_bumpmap, GL_ATI_fragment_shader, GL_ATI_map_object_buffer, GL_ATI_meminfo, GL_ATI_pixel_format_float, - | GL_ATI_pn_triangles, GL_ATI_separate_stencil, GL_ATI_text_fragment_shader, GL_ATI_texture_env_combine3, GL_ATI_texture_float, - | GL_ATI_texture_mirror_once, GL_ATI_vertex_array_object, GL_ATI_vertex_attrib_array_object, GL_ATI_vertex_streams, - | GL_EXT_422_pixels, GL_EXT_EGL_image_storage, GL_EXT_EGL_sync, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_bindable_uniform, - | GL_EXT_blend_color, GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate, GL_EXT_blend_logic_op, GL_EXT_blend_minmax, - | GL_EXT_blend_subtract, GL_EXT_clip_volume_hint, GL_EXT_cmyka, GL_EXT_color_subtable, GL_EXT_compiled_vertex_array, - | GL_EXT_convolution, GL_EXT_coordinate_frame, GL_EXT_copy_texture, GL_EXT_cull_vertex, GL_EXT_debug_label, GL_EXT_debug_marker, - | GL_EXT_depth_bounds_test, GL_EXT_direct_state_access, GL_EXT_draw_buffers2, GL_EXT_draw_instanced, GL_EXT_draw_range_elements, - | GL_EXT_external_buffer, GL_EXT_fog_coord, GL_EXT_framebuffer_blit, GL_EXT_framebuffer_multisample, - | GL_EXT_framebuffer_multisample_blit_scaled, GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, GL_EXT_geometry_shader4, - | GL_EXT_gpu_program_parameters, GL_EXT_gpu_shader4, GL_EXT_histogram, GL_EXT_index_array_formats, GL_EXT_index_func, - | GL_EXT_index_material, GL_EXT_index_texture, GL_EXT_light_texture, GL_EXT_memory_object, GL_EXT_memory_object_fd, - | GL_EXT_memory_object_win32, GL_EXT_misc_attribute, GL_EXT_multi_draw_arrays, GL_EXT_multisample, - | GL_EXT_multiview_tessellation_geometry_shader, GL_EXT_multiview_texture_multisample, GL_EXT_multiview_timer_query, - | GL_EXT_packed_depth_stencil, GL_EXT_packed_float, GL_EXT_packed_pixels, GL_EXT_paletted_texture, - | GL_EXT_pixel_buffer_object, GL_EXT_pixel_transform, GL_EXT_pixel_transform_color_table, GL_EXT_point_parameters, - | GL_EXT_polygon_offset, GL_EXT_polygon_offset_clamp, GL_EXT_post_depth_coverage, GL_EXT_provoking_vertex, - | GL_EXT_raster_multisample, GL_EXT_rescale_normal, GL_EXT_secondary_color, GL_EXT_semaphore, GL_EXT_semaphore_fd, - | GL_EXT_semaphore_win32, GL_EXT_separate_shader_objects, GL_EXT_separate_specular_color, GL_EXT_shader_framebuffer_fetch, - | GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_image_load_formatted, GL_EXT_shader_image_load_store, - | GL_EXT_shader_integer_mix, GL_EXT_shadow_funcs, GL_EXT_shared_texture_palette, GL_EXT_sparse_texture2, - | GL_EXT_stencil_clear_tag, GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture, GL_EXT_texture, - | GL_EXT_texture3D, GL_EXT_texture_array, GL_EXT_texture_buffer_object, GL_EXT_texture_compression_latc, - | GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map, GL_EXT_texture_env_add, - | GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic, GL_EXT_texture_filter_minmax, - | GL_EXT_texture_integer, GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp, GL_EXT_texture_object, - | GL_EXT_texture_perturb_normal, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_RG8, - | GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm, - | GL_EXT_texture_storage, GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback, GL_EXT_vertex_array, - | GL_EXT_vertex_array_bgra, GL_EXT_vertex_attrib_64bit, GL_EXT_vertex_shader, GL_EXT_vertex_weighting, - | GL_EXT_win32_keyed_mutex, GL_EXT_window_rectangles, GL_EXT_x11_sync_object, GL_GREMEDY_frame_terminator, - | GL_GREMEDY_string_marker, GL_HP_convolution_border_modes, GL_HP_image_transform, GL_HP_occlusion_test, - | GL_HP_texture_lighting, GL_IBM_cull_vertex, GL_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip, GL_IBM_static_data, - | GL_IBM_texture_mirrored_repeat, GL_IBM_vertex_array_lists, GL_INGR_blend_func_separate, GL_INGR_color_clamp, - | GL_INGR_interlace_read, GL_INTEL_blackhole_render, GL_INTEL_conservative_rasterization, GL_INTEL_fragment_shader_ordering, - | GL_INTEL_framebuffer_CMAA, GL_INTEL_map_texture, GL_INTEL_parallel_arrays, GL_INTEL_performance_query, - | GL_KHR_blend_equation_advanced, GL_KHR_blend_equation_advanced_coherent, GL_KHR_context_flush_control, GL_KHR_debug, - | GL_KHR_no_error, GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior, GL_KHR_robustness, - | GL_KHR_shader_subgroup, GL_KHR_texture_compression_astc_hdr, GL_KHR_texture_compression_astc_ldr, - | GL_KHR_texture_compression_astc_sliced_3d, GL_MESAX_texture_stack, GL_MESA_framebuffer_flip_x, GL_MESA_framebuffer_flip_y, - | GL_MESA_framebuffer_swap_xy, GL_MESA_pack_invert, GL_MESA_program_binary_formats, GL_MESA_resize_buffers, - | GL_MESA_shader_integer_functions, GL_MESA_tile_raster_order, GL_MESA_window_pos, GL_MESA_ycbcr_texture, - | GL_NVX_blend_equation_advanced_multi_draw_buffers, GL_NVX_conditional_render, GL_NVX_gpu_memory_info, - | GL_NVX_gpu_multicast2, GL_NVX_linked_gpu_multicast, GL_NVX_progress_fence, GL_NV_alpha_to_coverage_dither_control, - | GL_NV_bindless_multi_draw_indirect, GL_NV_bindless_multi_draw_indirect_count, GL_NV_bindless_texture, - | GL_NV_blend_equation_advanced, GL_NV_blend_equation_advanced_coherent, GL_NV_blend_minmax_factor, GL_NV_blend_square, - | GL_NV_clip_space_w_scaling, GL_NV_command_list, GL_NV_compute_program5, GL_NV_compute_shader_derivatives, - | GL_NV_conditional_render, GL_NV_conservative_raster, GL_NV_conservative_raster_dilate, GL_NV_conservative_raster_pre_snap, - | GL_NV_conservative_raster_pre_snap_triangles, GL_NV_conservative_raster_underestimation, GL_NV_copy_depth_to_color, - | GL_NV_copy_image, GL_NV_deep_texture3D, GL_NV_depth_buffer_float, GL_NV_depth_clamp, GL_NV_draw_texture, - | GL_NV_draw_vulkan_image, GL_NV_evaluators, GL_NV_explicit_multisample, GL_NV_fence, GL_NV_fill_rectangle, - | GL_NV_float_buffer, GL_NV_fog_distance, GL_NV_fragment_coverage_to_color, GL_NV_fragment_program, GL_NV_fragment_program2, - | GL_NV_fragment_program4, GL_NV_fragment_program_option, GL_NV_fragment_shader_barycentric, GL_NV_fragment_shader_interlock, - | GL_NV_framebuffer_mixed_samples, GL_NV_framebuffer_multisample_coverage, GL_NV_geometry_program4, GL_NV_geometry_shader4, - | GL_NV_geometry_shader_passthrough, GL_NV_gpu_multicast, GL_NV_gpu_program4, GL_NV_gpu_program5, - | GL_NV_gpu_program5_mem_extended, GL_NV_gpu_shader5, GL_NV_half_float, GL_NV_internalformat_sample_query, - | GL_NV_light_max_exponent, GL_NV_memory_attachment, GL_NV_memory_object_sparse, GL_NV_mesh_shader, - | GL_NV_multisample_coverage, GL_NV_multisample_filter_hint, GL_NV_occlusion_query, GL_NV_packed_depth_stencil, - | GL_NV_parameter_buffer_object, GL_NV_parameter_buffer_object2, GL_NV_path_rendering, GL_NV_path_rendering_shared_edge, - | GL_NV_pixel_data_range, GL_NV_point_sprite, GL_NV_present_video, GL_NV_primitive_restart, GL_NV_primitive_shading_rate, - | GL_NV_query_resource, GL_NV_query_resource_tag, GL_NV_register_combiners, GL_NV_register_combiners2, - | GL_NV_representative_fragment_test, GL_NV_robustness_video_memory_purge, GL_NV_sample_locations, - | GL_NV_sample_mask_override_coverage, GL_NV_scissor_exclusive, GL_NV_shader_atomic_counters, GL_NV_shader_atomic_float, - | GL_NV_shader_atomic_float64, GL_NV_shader_atomic_fp16_vector, GL_NV_shader_atomic_int64, GL_NV_shader_buffer_load, - | GL_NV_shader_buffer_store, GL_NV_shader_storage_buffer_object, GL_NV_shader_subgroup_partitioned, - | GL_NV_shader_texture_footprint, GL_NV_shader_thread_group, GL_NV_shader_thread_shuffle, GL_NV_shading_rate_image, - | GL_NV_stereo_view_rendering, GL_NV_tessellation_program5, GL_NV_texgen_emboss, GL_NV_texgen_reflection, - | GL_NV_texture_barrier, GL_NV_texture_compression_vtc, GL_NV_texture_env_combine4, GL_NV_texture_expand_normal, - | GL_NV_texture_multisample, GL_NV_texture_rectangle, GL_NV_texture_rectangle_compressed, GL_NV_texture_shader, - | GL_NV_texture_shader2, GL_NV_texture_shader3, GL_NV_timeline_semaphore, GL_NV_transform_feedback, - | GL_NV_transform_feedback2, GL_NV_uniform_buffer_unified_memory, GL_NV_vdpau_interop, GL_NV_vdpau_interop2, - | GL_NV_vertex_array_range, GL_NV_vertex_array_range2, GL_NV_vertex_attrib_integer_64bit, GL_NV_vertex_buffer_unified_memory, - | GL_NV_vertex_program, GL_NV_vertex_program1_1, GL_NV_vertex_program2, GL_NV_vertex_program2_option, GL_NV_vertex_program3, - | GL_NV_vertex_program4, GL_NV_video_capture, GL_NV_viewport_array2, GL_NV_viewport_swizzle, GL_OES_byte_coordinates, - | GL_OES_compressed_paletted_texture, GL_OES_fixed_point, GL_OES_query_matrix, GL_OES_read_format, GL_OES_single_precision, - | GL_OML_interlace, GL_OML_resample, GL_OML_subsample, GL_OVR_multiview, GL_OVR_multiview2, GL_PGI_misc_hints, - | GL_PGI_vertex_hints, GL_REND_screen_coordinates, GL_S3_s3tc, GL_SGIS_detail_texture, GL_SGIS_fog_function, - | GL_SGIS_generate_mipmap, GL_SGIS_multisample, GL_SGIS_pixel_texture, GL_SGIS_point_line_texgen, GL_SGIS_point_parameters, - | GL_SGIS_sharpen_texture, GL_SGIS_texture4D, GL_SGIS_texture_border_clamp, GL_SGIS_texture_color_mask, - | GL_SGIS_texture_edge_clamp, GL_SGIS_texture_filter4, GL_SGIS_texture_lod, GL_SGIS_texture_select, GL_SGIX_async, - | GL_SGIX_async_histogram, GL_SGIX_async_pixel, GL_SGIX_blend_alpha_minmax, GL_SGIX_calligraphic_fragment, GL_SGIX_clipmap, - | GL_SGIX_convolution_accuracy, GL_SGIX_depth_pass_instrument, GL_SGIX_depth_texture, GL_SGIX_flush_raster, - | GL_SGIX_fog_offset, GL_SGIX_fragment_lighting, GL_SGIX_framezoom, GL_SGIX_igloo_interface, GL_SGIX_instruments, - | GL_SGIX_interlace, GL_SGIX_ir_instrument1, GL_SGIX_list_priority, GL_SGIX_pixel_texture, GL_SGIX_pixel_tiles, - | GL_SGIX_polynomial_ffd, GL_SGIX_reference_plane, GL_SGIX_resample, GL_SGIX_scalebias_hint, GL_SGIX_shadow, - | GL_SGIX_shadow_ambient, GL_SGIX_sprite, GL_SGIX_subsample, GL_SGIX_tag_sample_buffer, GL_SGIX_texture_add_env, - | GL_SGIX_texture_coordinate_clamp, GL_SGIX_texture_lod_bias, GL_SGIX_texture_multi_buffer, GL_SGIX_texture_scale_bias, - | GL_SGIX_vertex_preclip, GL_SGIX_ycrcb, GL_SGIX_ycrcb_subsample, GL_SGIX_ycrcba, GL_SGI_color_matrix, GL_SGI_color_table, - | GL_SGI_texture_color_table, GL_SUNX_constant_data, GL_SUN_convolution_border_modes, GL_SUN_global_alpha, GL_SUN_mesh_array, - | GL_SUN_slice_accum, GL_SUN_triangle_list, GL_SUN_vertex, GL_WIN_phong_shading, GL_WIN_specular_fog; - + | public boolean ${caps.joinToString()}; + | | /** GLCapabilities */ | public final GLCapabilities caps; - + | | /** | * Construct incomplete OpenGL extension capabilities. | * @@ -2953,7 +3900,7 @@ fun glExtCaps() { | public GLExtCaps(GLCapabilities caps) { | this.caps = caps; | } - + | | /** Method handles. */ | public MethodHandle """.trimMargin() @@ -2962,15 +3909,33 @@ fun glExtCaps() { if (index.rem(16) == 0) { if (index == 0) append("\n ") else append(",\n ") - } - else append(", ") + } else append(", ") append(function.name) } appendLine(";\n\n void load(GLLoadFunc load) {") generatedExtClasses.forEach { if (it.hasFunction) appendLine(" GL${it.ext.extName}${it.name}.load(this, load);") } - appendLine(" }\n}") + appendLine(" }\n") + appendLine( + """ + | boolean findExtensionsGL(int version, SegmentAllocator allocator) { + | var pExts = allocator.allocate(ADDRESS); + | var pNumExtsI = allocator.allocate(JAVA_INT); + | var pExtsI = new MemorySegment[1]; + | if (!getExtensions(allocator, version, pExts, pNumExtsI, pExtsI, caps)) return false; + | + | String exts = pExts.getUtf8String(0); + | int numExtsI = pNumExtsI.get(JAVA_INT, 0); + | var extsI = pExtsI[0]; + | + | ${caps.map { "this.$it = hasExtension(version, exts, numExtsI, extsI, \"$it\");" }.joinToString(separator = "\n| ")} + | + | return true; + | } + """.trimMargin() + ) + appendLine("}") }) } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLCapabilities.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLCapabilities.java index df17a94e..95ad7588 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLCapabilities.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLCapabilities.java @@ -335,7 +335,7 @@ public int load(GLLoadFunc load) { ext = new GLExtCaps(this); try (var arena = Arena.ofConfined()) { - if (!GLExtFinder.findExtensionsGL(ext, version, arena, this)) return 0; + if (!ext.findExtensionsGL(version, arena)) return 0; findCoreGL(true); } ext.load(load); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java index fe2a840f..acad7a76 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -23,17 +23,22 @@ import overrungl.opengl.ext.oes.*; import overrungl.opengl.ext.amd.*; import overrungl.opengl.ext.apple.*; -//import overrungl.opengl.ext.ati.*; +import overrungl.opengl.ext.ati.*; //import overrungl.opengl.ext.ext.*; import overrungl.opengl.ext.ibm.*; import overrungl.opengl.ext.intel.*; import overrungl.opengl.ext.mesa.*; //import overrungl.opengl.ext.nv.*; -//import overrungl.opengl.ext.sgi.*; +import overrungl.opengl.ext.sgi.*; import overrungl.opengl.ext.sun.*; +import java.lang.foreign.MemorySegment; +import java.lang.foreign.SegmentAllocator; import java.lang.invoke.MethodHandle; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLExtFinder.*; + /** * The OpenGL extension capabilities. * @@ -41,154 +46,7 @@ */ public final class GLExtCaps { /** The OpenGL extension flags. */ - public boolean GL_3DFX_multisample, GL_3DFX_tbuffer, GL_3DFX_texture_compression_FXT1, GL_AMD_blend_minmax_factor, - GL_AMD_conservative_depth, GL_AMD_debug_output, GL_AMD_depth_clamp_separate, GL_AMD_draw_buffers_blend, - GL_AMD_framebuffer_multisample_advanced, GL_AMD_framebuffer_sample_positions, GL_AMD_gcn_shader, - GL_AMD_gpu_shader_half_float, GL_AMD_gpu_shader_int16, GL_AMD_gpu_shader_int64, GL_AMD_interleaved_elements, - GL_AMD_multi_draw_indirect, GL_AMD_name_gen_delete, GL_AMD_occlusion_query_event, GL_AMD_performance_monitor, - GL_AMD_pinned_memory, GL_AMD_query_buffer_object, GL_AMD_sample_positions, GL_AMD_seamless_cubemap_per_texture, - GL_AMD_shader_atomic_counter_ops, GL_AMD_shader_ballot, GL_AMD_shader_explicit_vertex_parameter, - GL_AMD_shader_gpu_shader_half_float_fetch, GL_AMD_shader_image_load_store_lod, GL_AMD_shader_stencil_export, - GL_AMD_shader_trinary_minmax, GL_AMD_sparse_texture, GL_AMD_stencil_operation_extended, - GL_AMD_texture_gather_bias_lod, GL_AMD_texture_texture4, GL_AMD_transform_feedback3_lines_triangles, - GL_AMD_transform_feedback4, GL_AMD_vertex_shader_layer, GL_AMD_vertex_shader_tessellator, - GL_AMD_vertex_shader_viewport_index, GL_APPLE_aux_depth_stencil, GL_APPLE_client_storage, GL_APPLE_element_array, - GL_APPLE_fence, GL_APPLE_float_pixels, GL_APPLE_flush_buffer_range, GL_APPLE_object_purgeable, GL_APPLE_rgb_422, - GL_APPLE_row_bytes, GL_APPLE_specular_vector, GL_APPLE_texture_range, GL_APPLE_transform_hint, - GL_APPLE_vertex_array_object, GL_APPLE_vertex_array_range, GL_APPLE_vertex_program_evaluators, GL_APPLE_ycbcr_422, - GL_ARB_ES2_compatibility, GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, GL_ARB_ES3_compatibility, - GL_ARB_arrays_of_arrays, GL_ARB_base_instance, GL_ARB_bindless_texture, GL_ARB_blend_func_extended, - GL_ARB_buffer_storage, GL_ARB_cl_event, GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, - GL_ARB_color_buffer_float, GL_ARB_compatibility, GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, - GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, GL_ARB_copy_buffer, - GL_ARB_copy_image, GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float, GL_ARB_depth_clamp, - GL_ARB_depth_texture, GL_ARB_derivative_control, GL_ARB_direct_state_access, GL_ARB_draw_buffers, - GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex, GL_ARB_draw_indirect, GL_ARB_draw_instanced, - GL_ARB_enhanced_layouts, GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, - GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, GL_ARB_fragment_program, - GL_ARB_fragment_program_shadow, GL_ARB_fragment_shader, GL_ARB_fragment_shader_interlock, - GL_ARB_framebuffer_no_attachments, GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB, GL_ARB_geometry_shader4, - GL_ARB_get_program_binary, GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64, - GL_ARB_gpu_shader_int64, GL_ARB_half_float_pixel, GL_ARB_half_float_vertex, GL_ARB_imaging, GL_ARB_indirect_parameters, - GL_ARB_instanced_arrays, GL_ARB_internalformat_query, GL_ARB_internalformat_query2, GL_ARB_invalidate_subdata, - GL_ARB_map_buffer_alignment, GL_ARB_map_buffer_range, GL_ARB_matrix_palette, GL_ARB_multi_bind, - GL_ARB_multi_draw_indirect, GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_occlusion_query, GL_ARB_occlusion_query2, - GL_ARB_parallel_shader_compile, GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, - GL_ARB_point_sprite, GL_ARB_polygon_offset_clamp, GL_ARB_post_depth_coverage, GL_ARB_program_interface_query, - GL_ARB_provoking_vertex, GL_ARB_query_buffer_object, GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness, - GL_ARB_robustness_isolation, GL_ARB_sample_locations, GL_ARB_sample_shading, GL_ARB_sampler_objects, - GL_ARB_seamless_cube_map, GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects, - GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters, GL_ARB_shader_ballot, GL_ARB_shader_bit_encoding, - GL_ARB_shader_clock, GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote, GL_ARB_shader_image_load_store, - GL_ARB_shader_image_size, GL_ARB_shader_objects, GL_ARB_shader_precision, GL_ARB_shader_stencil_export, - GL_ARB_shader_storage_buffer_object, GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, - GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, GL_ARB_shading_language_100, - GL_ARB_shading_language_420pack, GL_ARB_shading_language_include, GL_ARB_shading_language_packing, GL_ARB_shadow, - GL_ARB_shadow_ambient, GL_ARB_sparse_buffer, GL_ARB_sparse_texture, GL_ARB_sparse_texture2, GL_ARB_sparse_texture_clamp, - GL_ARB_spirv_extensions, GL_ARB_stencil_texturing, GL_ARB_sync, GL_ARB_tessellation_shader, GL_ARB_texture_barrier, - GL_ARB_texture_border_clamp, GL_ARB_texture_buffer_object, GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range, - GL_ARB_texture_compression, GL_ARB_texture_compression_bptc, GL_ARB_texture_compression_rgtc, - GL_ARB_texture_cube_map, GL_ARB_texture_cube_map_array, GL_ARB_texture_env_add, GL_ARB_texture_env_combine, - GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3, GL_ARB_texture_filter_anisotropic, GL_ARB_texture_filter_minmax, - GL_ARB_texture_float, GL_ARB_texture_gather, GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_mirrored_repeat, - GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two, GL_ARB_texture_query_levels, GL_ARB_texture_query_lod, - GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui, GL_ARB_texture_stencil8, GL_ARB_texture_storage, - GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle, GL_ARB_texture_view, GL_ARB_timer_query, - GL_ARB_transform_feedback2, GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced, - GL_ARB_transform_feedback_overflow_query, GL_ARB_transpose_matrix, GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra, - GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_64bit, GL_ARB_vertex_attrib_binding, GL_ARB_vertex_blend, - GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_vertex_shader, GL_ARB_vertex_type_10f_11f_11f_rev, - GL_ARB_vertex_type_2_10_10_10_rev, GL_ARB_viewport_array, GL_ARB_window_pos, GL_ATI_draw_buffers, GL_ATI_element_array, - GL_ATI_envmap_bumpmap, GL_ATI_fragment_shader, GL_ATI_map_object_buffer, GL_ATI_meminfo, GL_ATI_pixel_format_float, - GL_ATI_pn_triangles, GL_ATI_separate_stencil, GL_ATI_text_fragment_shader, GL_ATI_texture_env_combine3, GL_ATI_texture_float, - GL_ATI_texture_mirror_once, GL_ATI_vertex_array_object, GL_ATI_vertex_attrib_array_object, GL_ATI_vertex_streams, - GL_EXT_422_pixels, GL_EXT_EGL_image_storage, GL_EXT_EGL_sync, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_bindable_uniform, - GL_EXT_blend_color, GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate, GL_EXT_blend_logic_op, GL_EXT_blend_minmax, - GL_EXT_blend_subtract, GL_EXT_clip_volume_hint, GL_EXT_cmyka, GL_EXT_color_subtable, GL_EXT_compiled_vertex_array, - GL_EXT_convolution, GL_EXT_coordinate_frame, GL_EXT_copy_texture, GL_EXT_cull_vertex, GL_EXT_debug_label, GL_EXT_debug_marker, - GL_EXT_depth_bounds_test, GL_EXT_direct_state_access, GL_EXT_draw_buffers2, GL_EXT_draw_instanced, GL_EXT_draw_range_elements, - GL_EXT_external_buffer, GL_EXT_fog_coord, GL_EXT_framebuffer_blit, GL_EXT_framebuffer_multisample, - GL_EXT_framebuffer_multisample_blit_scaled, GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, GL_EXT_geometry_shader4, - GL_EXT_gpu_program_parameters, GL_EXT_gpu_shader4, GL_EXT_histogram, GL_EXT_index_array_formats, GL_EXT_index_func, - GL_EXT_index_material, GL_EXT_index_texture, GL_EXT_light_texture, GL_EXT_memory_object, GL_EXT_memory_object_fd, - GL_EXT_memory_object_win32, GL_EXT_misc_attribute, GL_EXT_multi_draw_arrays, GL_EXT_multisample, - GL_EXT_multiview_tessellation_geometry_shader, GL_EXT_multiview_texture_multisample, GL_EXT_multiview_timer_query, - GL_EXT_packed_depth_stencil, GL_EXT_packed_float, GL_EXT_packed_pixels, GL_EXT_paletted_texture, - GL_EXT_pixel_buffer_object, GL_EXT_pixel_transform, GL_EXT_pixel_transform_color_table, GL_EXT_point_parameters, - GL_EXT_polygon_offset, GL_EXT_polygon_offset_clamp, GL_EXT_post_depth_coverage, GL_EXT_provoking_vertex, - GL_EXT_raster_multisample, GL_EXT_rescale_normal, GL_EXT_secondary_color, GL_EXT_semaphore, GL_EXT_semaphore_fd, - GL_EXT_semaphore_win32, GL_EXT_separate_shader_objects, GL_EXT_separate_specular_color, GL_EXT_shader_framebuffer_fetch, - GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_image_load_formatted, GL_EXT_shader_image_load_store, - GL_EXT_shader_integer_mix, GL_EXT_shadow_funcs, GL_EXT_shared_texture_palette, GL_EXT_sparse_texture2, - GL_EXT_stencil_clear_tag, GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture, GL_EXT_texture, - GL_EXT_texture3D, GL_EXT_texture_array, GL_EXT_texture_buffer_object, GL_EXT_texture_compression_latc, - GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map, GL_EXT_texture_env_add, - GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic, GL_EXT_texture_filter_minmax, - GL_EXT_texture_integer, GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp, GL_EXT_texture_object, - GL_EXT_texture_perturb_normal, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_RG8, - GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm, - GL_EXT_texture_storage, GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback, GL_EXT_vertex_array, - GL_EXT_vertex_array_bgra, GL_EXT_vertex_attrib_64bit, GL_EXT_vertex_shader, GL_EXT_vertex_weighting, - GL_EXT_win32_keyed_mutex, GL_EXT_window_rectangles, GL_EXT_x11_sync_object, GL_GREMEDY_frame_terminator, - GL_GREMEDY_string_marker, GL_HP_convolution_border_modes, GL_HP_image_transform, GL_HP_occlusion_test, - GL_HP_texture_lighting, GL_IBM_cull_vertex, GL_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip, GL_IBM_static_data, - GL_IBM_texture_mirrored_repeat, GL_IBM_vertex_array_lists, GL_INGR_blend_func_separate, GL_INGR_color_clamp, - GL_INGR_interlace_read, GL_INTEL_blackhole_render, GL_INTEL_conservative_rasterization, GL_INTEL_fragment_shader_ordering, - GL_INTEL_framebuffer_CMAA, GL_INTEL_map_texture, GL_INTEL_parallel_arrays, GL_INTEL_performance_query, - GL_KHR_blend_equation_advanced, GL_KHR_blend_equation_advanced_coherent, GL_KHR_context_flush_control, GL_KHR_debug, - GL_KHR_no_error, GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior, GL_KHR_robustness, - GL_KHR_shader_subgroup, GL_KHR_texture_compression_astc_hdr, GL_KHR_texture_compression_astc_ldr, - GL_KHR_texture_compression_astc_sliced_3d, GL_MESAX_texture_stack, GL_MESA_framebuffer_flip_x, GL_MESA_framebuffer_flip_y, - GL_MESA_framebuffer_swap_xy, GL_MESA_pack_invert, GL_MESA_program_binary_formats, GL_MESA_resize_buffers, - GL_MESA_shader_integer_functions, GL_MESA_tile_raster_order, GL_MESA_window_pos, GL_MESA_ycbcr_texture, - GL_NVX_blend_equation_advanced_multi_draw_buffers, GL_NVX_conditional_render, GL_NVX_gpu_memory_info, - GL_NVX_gpu_multicast2, GL_NVX_linked_gpu_multicast, GL_NVX_progress_fence, GL_NV_alpha_to_coverage_dither_control, - GL_NV_bindless_multi_draw_indirect, GL_NV_bindless_multi_draw_indirect_count, GL_NV_bindless_texture, - GL_NV_blend_equation_advanced, GL_NV_blend_equation_advanced_coherent, GL_NV_blend_minmax_factor, GL_NV_blend_square, - GL_NV_clip_space_w_scaling, GL_NV_command_list, GL_NV_compute_program5, GL_NV_compute_shader_derivatives, - GL_NV_conditional_render, GL_NV_conservative_raster, GL_NV_conservative_raster_dilate, GL_NV_conservative_raster_pre_snap, - GL_NV_conservative_raster_pre_snap_triangles, GL_NV_conservative_raster_underestimation, GL_NV_copy_depth_to_color, - GL_NV_copy_image, GL_NV_deep_texture3D, GL_NV_depth_buffer_float, GL_NV_depth_clamp, GL_NV_draw_texture, - GL_NV_draw_vulkan_image, GL_NV_evaluators, GL_NV_explicit_multisample, GL_NV_fence, GL_NV_fill_rectangle, - GL_NV_float_buffer, GL_NV_fog_distance, GL_NV_fragment_coverage_to_color, GL_NV_fragment_program, GL_NV_fragment_program2, - GL_NV_fragment_program4, GL_NV_fragment_program_option, GL_NV_fragment_shader_barycentric, GL_NV_fragment_shader_interlock, - GL_NV_framebuffer_mixed_samples, GL_NV_framebuffer_multisample_coverage, GL_NV_geometry_program4, GL_NV_geometry_shader4, - GL_NV_geometry_shader_passthrough, GL_NV_gpu_multicast, GL_NV_gpu_program4, GL_NV_gpu_program5, - GL_NV_gpu_program5_mem_extended, GL_NV_gpu_shader5, GL_NV_half_float, GL_NV_internalformat_sample_query, - GL_NV_light_max_exponent, GL_NV_memory_attachment, GL_NV_memory_object_sparse, GL_NV_mesh_shader, - GL_NV_multisample_coverage, GL_NV_multisample_filter_hint, GL_NV_occlusion_query, GL_NV_packed_depth_stencil, - GL_NV_parameter_buffer_object, GL_NV_parameter_buffer_object2, GL_NV_path_rendering, GL_NV_path_rendering_shared_edge, - GL_NV_pixel_data_range, GL_NV_point_sprite, GL_NV_present_video, GL_NV_primitive_restart, GL_NV_primitive_shading_rate, - GL_NV_query_resource, GL_NV_query_resource_tag, GL_NV_register_combiners, GL_NV_register_combiners2, - GL_NV_representative_fragment_test, GL_NV_robustness_video_memory_purge, GL_NV_sample_locations, - GL_NV_sample_mask_override_coverage, GL_NV_scissor_exclusive, GL_NV_shader_atomic_counters, GL_NV_shader_atomic_float, - GL_NV_shader_atomic_float64, GL_NV_shader_atomic_fp16_vector, GL_NV_shader_atomic_int64, GL_NV_shader_buffer_load, - GL_NV_shader_buffer_store, GL_NV_shader_storage_buffer_object, GL_NV_shader_subgroup_partitioned, - GL_NV_shader_texture_footprint, GL_NV_shader_thread_group, GL_NV_shader_thread_shuffle, GL_NV_shading_rate_image, - GL_NV_stereo_view_rendering, GL_NV_tessellation_program5, GL_NV_texgen_emboss, GL_NV_texgen_reflection, - GL_NV_texture_barrier, GL_NV_texture_compression_vtc, GL_NV_texture_env_combine4, GL_NV_texture_expand_normal, - GL_NV_texture_multisample, GL_NV_texture_rectangle, GL_NV_texture_rectangle_compressed, GL_NV_texture_shader, - GL_NV_texture_shader2, GL_NV_texture_shader3, GL_NV_timeline_semaphore, GL_NV_transform_feedback, - GL_NV_transform_feedback2, GL_NV_uniform_buffer_unified_memory, GL_NV_vdpau_interop, GL_NV_vdpau_interop2, - GL_NV_vertex_array_range, GL_NV_vertex_array_range2, GL_NV_vertex_attrib_integer_64bit, GL_NV_vertex_buffer_unified_memory, - GL_NV_vertex_program, GL_NV_vertex_program1_1, GL_NV_vertex_program2, GL_NV_vertex_program2_option, GL_NV_vertex_program3, - GL_NV_vertex_program4, GL_NV_video_capture, GL_NV_viewport_array2, GL_NV_viewport_swizzle, GL_OES_byte_coordinates, - GL_OES_compressed_paletted_texture, GL_OES_fixed_point, GL_OES_query_matrix, GL_OES_read_format, GL_OES_single_precision, - GL_OML_interlace, GL_OML_resample, GL_OML_subsample, GL_OVR_multiview, GL_OVR_multiview2, GL_PGI_misc_hints, - GL_PGI_vertex_hints, GL_REND_screen_coordinates, GL_S3_s3tc, GL_SGIS_detail_texture, GL_SGIS_fog_function, - GL_SGIS_generate_mipmap, GL_SGIS_multisample, GL_SGIS_pixel_texture, GL_SGIS_point_line_texgen, GL_SGIS_point_parameters, - GL_SGIS_sharpen_texture, GL_SGIS_texture4D, GL_SGIS_texture_border_clamp, GL_SGIS_texture_color_mask, - GL_SGIS_texture_edge_clamp, GL_SGIS_texture_filter4, GL_SGIS_texture_lod, GL_SGIS_texture_select, GL_SGIX_async, - GL_SGIX_async_histogram, GL_SGIX_async_pixel, GL_SGIX_blend_alpha_minmax, GL_SGIX_calligraphic_fragment, GL_SGIX_clipmap, - GL_SGIX_convolution_accuracy, GL_SGIX_depth_pass_instrument, GL_SGIX_depth_texture, GL_SGIX_flush_raster, - GL_SGIX_fog_offset, GL_SGIX_fragment_lighting, GL_SGIX_framezoom, GL_SGIX_igloo_interface, GL_SGIX_instruments, - GL_SGIX_interlace, GL_SGIX_ir_instrument1, GL_SGIX_list_priority, GL_SGIX_pixel_texture, GL_SGIX_pixel_tiles, - GL_SGIX_polynomial_ffd, GL_SGIX_reference_plane, GL_SGIX_resample, GL_SGIX_scalebias_hint, GL_SGIX_shadow, - GL_SGIX_shadow_ambient, GL_SGIX_sprite, GL_SGIX_subsample, GL_SGIX_tag_sample_buffer, GL_SGIX_texture_add_env, - GL_SGIX_texture_coordinate_clamp, GL_SGIX_texture_lod_bias, GL_SGIX_texture_multi_buffer, GL_SGIX_texture_scale_bias, - GL_SGIX_vertex_preclip, GL_SGIX_ycrcb, GL_SGIX_ycrcb_subsample, GL_SGIX_ycrcba, GL_SGI_color_matrix, GL_SGI_color_table, - GL_SGI_texture_color_table, GL_SUNX_constant_data, GL_SUN_convolution_border_modes, GL_SUN_global_alpha, GL_SUN_mesh_array, - GL_SUN_slice_accum, GL_SUN_triangle_list, GL_SUN_vertex, GL_WIN_phong_shading, GL_WIN_specular_fog; + public boolean GL_ARB_ES2_compatibility, GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays, GL_ARB_base_instance, GL_ARB_bindless_texture, GL_ARB_blend_func_extended, GL_ARB_buffer_storage, GL_ARB_cl_event, GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, GL_ARB_color_buffer_float, GL_ARB_compatibility, GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, GL_ARB_copy_buffer, GL_ARB_copy_image, GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float, GL_ARB_depth_clamp, GL_ARB_depth_texture, GL_ARB_derivative_control, GL_ARB_direct_state_access, GL_ARB_draw_buffers, GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex, GL_ARB_draw_indirect, GL_ARB_draw_instanced, GL_ARB_enhanced_layouts, GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, GL_ARB_fragment_program, GL_ARB_fragment_program_shadow, GL_ARB_fragment_shader, GL_ARB_fragment_shader_interlock, GL_ARB_framebuffer_no_attachments, GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB, GL_ARB_geometry_shader4, GL_ARB_get_program_binary, GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64, GL_ARB_half_float_pixel, GL_ARB_half_float_vertex, GL_ARB_imaging, GL_ARB_indirect_parameters, GL_ARB_instanced_arrays, GL_ARB_internalformat_query, GL_ARB_internalformat_query2, GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment, GL_ARB_map_buffer_range, GL_ARB_matrix_palette, GL_ARB_multi_bind, GL_ARB_multi_draw_indirect, GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_occlusion_query, GL_ARB_occlusion_query2, GL_ARB_parallel_shader_compile, GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, GL_ARB_point_sprite, GL_ARB_polygon_offset_clamp, GL_ARB_post_depth_coverage, GL_ARB_program_interface_query, GL_ARB_provoking_vertex, GL_ARB_query_buffer_object, GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness, GL_ARB_robustness_isolation, GL_ARB_sample_locations, GL_ARB_sample_shading, GL_ARB_sampler_objects, GL_ARB_seamless_cube_map, GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects, GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters, GL_ARB_shader_ballot, GL_ARB_shader_bit_encoding, GL_ARB_shader_clock, GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote, GL_ARB_shader_image_load_store, GL_ARB_shader_image_size, GL_ARB_shader_objects, GL_ARB_shader_precision, GL_ARB_shader_stencil_export, GL_ARB_shader_storage_buffer_object, GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, GL_ARB_shading_language_100, GL_ARB_shading_language_420pack, GL_ARB_shading_language_include, GL_ARB_shading_language_packing, GL_ARB_shadow, GL_ARB_shadow_ambient, GL_ARB_sparse_buffer, GL_ARB_sparse_texture, GL_ARB_sparse_texture2, GL_ARB_sparse_texture_clamp, GL_ARB_spirv_extensions, GL_ARB_stencil_texturing, GL_ARB_sync, GL_ARB_tessellation_shader, GL_ARB_texture_barrier, GL_ARB_texture_border_clamp, GL_ARB_texture_buffer_object, GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range, GL_ARB_texture_compression, GL_ARB_texture_compression_bptc, GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map, GL_ARB_texture_cube_map_array, GL_ARB_texture_env_add, GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3, GL_ARB_texture_filter_anisotropic, GL_ARB_texture_filter_minmax, GL_ARB_texture_float, GL_ARB_texture_gather, GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_mirrored_repeat, GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two, GL_ARB_texture_query_levels, GL_ARB_texture_query_lod, GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui, GL_ARB_texture_stencil8, GL_ARB_texture_storage, GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle, GL_ARB_texture_view, GL_ARB_timer_query, GL_ARB_transform_feedback2, GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced, GL_ARB_transform_feedback_overflow_query, GL_ARB_transpose_matrix, GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra, GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_64bit, GL_ARB_vertex_attrib_binding, GL_ARB_vertex_blend, GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_vertex_shader, GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev, GL_ARB_viewport_array, GL_ARB_window_pos, GL_KHR_blend_equation_advanced, GL_KHR_blend_equation_advanced_coherent, GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error, GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior, GL_KHR_robustness, GL_KHR_shader_subgroup, GL_KHR_texture_compression_astc_hdr, GL_KHR_texture_compression_astc_ldr, GL_KHR_texture_compression_astc_sliced_3d, GL_OES_byte_coordinates, GL_OES_compressed_paletted_texture, GL_OES_fixed_point, GL_OES_query_matrix, GL_OES_read_format, GL_OES_single_precision, GL_3DFX_multisample, GL_3DFX_tbuffer, GL_3DFX_texture_compression_FXT1, GL_AMD_blend_minmax_factor, GL_AMD_conservative_depth, GL_AMD_debug_output, GL_AMD_depth_clamp_separate, GL_AMD_draw_buffers_blend, GL_AMD_framebuffer_multisample_advanced, GL_AMD_framebuffer_sample_positions, GL_AMD_gcn_shader, GL_AMD_gpu_shader_half_float, GL_AMD_gpu_shader_int16, GL_AMD_gpu_shader_int64, GL_AMD_interleaved_elements, GL_AMD_multi_draw_indirect, GL_AMD_name_gen_delete, GL_AMD_occlusion_query_event, GL_AMD_performance_monitor, GL_AMD_pinned_memory, GL_AMD_query_buffer_object, GL_AMD_sample_positions, GL_AMD_seamless_cubemap_per_texture, GL_AMD_shader_atomic_counter_ops, GL_AMD_shader_ballot, GL_AMD_shader_explicit_vertex_parameter, GL_AMD_shader_gpu_shader_half_float_fetch, GL_AMD_shader_image_load_store_lod, GL_AMD_shader_stencil_export, GL_AMD_shader_trinary_minmax, GL_AMD_sparse_texture, GL_AMD_stencil_operation_extended, GL_AMD_texture_gather_bias_lod, GL_AMD_texture_texture4, GL_AMD_transform_feedback3_lines_triangles, GL_AMD_transform_feedback4, GL_AMD_vertex_shader_layer, GL_AMD_vertex_shader_tessellator, GL_AMD_vertex_shader_viewport_index, GL_APPLE_aux_depth_stencil, GL_APPLE_client_storage, GL_APPLE_element_array, GL_APPLE_fence, GL_APPLE_float_pixels, GL_APPLE_flush_buffer_range, GL_APPLE_object_purgeable, GL_APPLE_rgb_422, GL_APPLE_row_bytes, GL_APPLE_specular_vector, GL_APPLE_texture_range, GL_APPLE_transform_hint, GL_APPLE_vertex_array_object, GL_APPLE_vertex_array_range, GL_APPLE_vertex_program_evaluators, GL_APPLE_ycbcr_422, GL_ATI_draw_buffers, GL_ATI_element_array, GL_ATI_envmap_bumpmap, GL_ATI_fragment_shader, GL_ATI_map_object_buffer, GL_ATI_meminfo, GL_ATI_pixel_format_float, GL_ATI_pn_triangles, GL_ATI_separate_stencil, GL_ATI_text_fragment_shader, GL_ATI_texture_env_combine3, GL_ATI_texture_float, GL_ATI_texture_mirror_once, GL_ATI_vertex_array_object, GL_ATI_vertex_attrib_array_object, GL_ATI_vertex_streams, GL_EXT_422_pixels, GL_EXT_EGL_image_storage, GL_EXT_EGL_sync, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_bindable_uniform, GL_EXT_blend_color, GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate, GL_EXT_blend_logic_op, GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_clip_volume_hint, GL_EXT_cmyka, GL_EXT_color_subtable, GL_EXT_compiled_vertex_array, GL_EXT_convolution, GL_EXT_coordinate_frame, GL_EXT_copy_texture, GL_EXT_cull_vertex, GL_EXT_debug_label, GL_EXT_debug_marker, GL_EXT_depth_bounds_test, GL_EXT_direct_state_access, GL_EXT_draw_buffers2, GL_EXT_draw_instanced, GL_EXT_draw_range_elements, GL_EXT_external_buffer, GL_EXT_fog_coord, GL_EXT_framebuffer_blit, GL_EXT_framebuffer_blit_layers, GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_multisample_blit_scaled, GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, GL_EXT_geometry_shader4, GL_EXT_gpu_program_parameters, GL_EXT_gpu_shader4, GL_EXT_histogram, GL_EXT_index_array_formats, GL_EXT_index_func, GL_EXT_index_material, GL_EXT_index_texture, GL_EXT_light_texture, GL_EXT_memory_object, GL_EXT_memory_object_fd, GL_EXT_memory_object_win32, GL_EXT_misc_attribute, GL_EXT_multi_draw_arrays, GL_EXT_multisample, GL_EXT_multiview_tessellation_geometry_shader, GL_EXT_multiview_texture_multisample, GL_EXT_multiview_timer_query, GL_EXT_packed_depth_stencil, GL_EXT_packed_float, GL_EXT_packed_pixels, GL_EXT_paletted_texture, GL_EXT_pixel_buffer_object, GL_EXT_pixel_transform, GL_EXT_pixel_transform_color_table, GL_EXT_point_parameters, GL_EXT_polygon_offset, GL_EXT_polygon_offset_clamp, GL_EXT_post_depth_coverage, GL_EXT_provoking_vertex, GL_EXT_raster_multisample, GL_EXT_rescale_normal, GL_EXT_secondary_color, GL_EXT_semaphore, GL_EXT_semaphore_fd, GL_EXT_semaphore_win32, GL_EXT_separate_shader_objects, GL_EXT_separate_specular_color, GL_EXT_shader_framebuffer_fetch, GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_image_load_formatted, GL_EXT_shader_image_load_store, GL_EXT_shader_integer_mix, GL_EXT_shader_samples_identical, GL_EXT_shadow_funcs, GL_EXT_shared_texture_palette, GL_EXT_sparse_texture2, GL_EXT_stencil_clear_tag, GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture, GL_EXT_texture, GL_EXT_texture3D, GL_EXT_texture_array, GL_EXT_texture_buffer_object, GL_EXT_texture_compression_latc, GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map, GL_EXT_texture_env_add, GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic, GL_EXT_texture_filter_minmax, GL_EXT_texture_integer, GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp, GL_EXT_texture_object, GL_EXT_texture_perturb_normal, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_RG8, GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm, GL_EXT_texture_storage, GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback, GL_EXT_vertex_array, GL_EXT_vertex_array_bgra, GL_EXT_vertex_attrib_64bit, GL_EXT_vertex_shader, GL_EXT_vertex_weighting, GL_EXT_win32_keyed_mutex, GL_EXT_window_rectangles, GL_EXT_x11_sync_object, GL_GREMEDY_frame_terminator, GL_GREMEDY_string_marker, GL_HP_convolution_border_modes, GL_HP_image_transform, GL_HP_occlusion_test, GL_HP_texture_lighting, GL_IBM_cull_vertex, GL_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip, GL_IBM_static_data, GL_IBM_texture_mirrored_repeat, GL_IBM_vertex_array_lists, GL_INGR_blend_func_separate, GL_INGR_color_clamp, GL_INGR_interlace_read, GL_INTEL_blackhole_render, GL_INTEL_conservative_rasterization, GL_INTEL_fragment_shader_ordering, GL_INTEL_framebuffer_CMAA, GL_INTEL_map_texture, GL_INTEL_parallel_arrays, GL_INTEL_performance_query, GL_MESAX_texture_stack, GL_MESA_framebuffer_flip_x, GL_MESA_framebuffer_flip_y, GL_MESA_framebuffer_swap_xy, GL_MESA_pack_invert, GL_MESA_program_binary_formats, GL_MESA_resize_buffers, GL_MESA_shader_integer_functions, GL_MESA_tile_raster_order, GL_MESA_window_pos, GL_MESA_ycbcr_texture, GL_NVX_blend_equation_advanced_multi_draw_buffers, GL_NVX_conditional_render, GL_NVX_gpu_memory_info, GL_NVX_gpu_multicast2, GL_NVX_linked_gpu_multicast, GL_NVX_progress_fence, GL_NV_alpha_to_coverage_dither_control, GL_NV_bindless_multi_draw_indirect, GL_NV_bindless_multi_draw_indirect_count, GL_NV_bindless_texture, GL_NV_blend_equation_advanced, GL_NV_blend_equation_advanced_coherent, GL_NV_blend_minmax_factor, GL_NV_blend_square, GL_NV_clip_space_w_scaling, GL_NV_command_list, GL_NV_compute_program5, GL_NV_compute_shader_derivatives, GL_NV_conditional_render, GL_NV_conservative_raster, GL_NV_conservative_raster_dilate, GL_NV_conservative_raster_pre_snap, GL_NV_conservative_raster_pre_snap_triangles, GL_NV_conservative_raster_underestimation, GL_NV_copy_depth_to_color, GL_NV_copy_image, GL_NV_deep_texture3D, GL_NV_depth_buffer_float, GL_NV_depth_clamp, GL_NV_draw_texture, GL_NV_draw_vulkan_image, GL_NV_evaluators, GL_NV_explicit_multisample, GL_NV_fence, GL_NV_fill_rectangle, GL_NV_float_buffer, GL_NV_fog_distance, GL_NV_fragment_coverage_to_color, GL_NV_fragment_program, GL_NV_fragment_program2, GL_NV_fragment_program4, GL_NV_fragment_program_option, GL_NV_fragment_shader_barycentric, GL_NV_fragment_shader_interlock, GL_NV_framebuffer_mixed_samples, GL_NV_framebuffer_multisample_coverage, GL_NV_geometry_program4, GL_NV_geometry_shader4, GL_NV_geometry_shader_passthrough, GL_NV_gpu_multicast, GL_NV_gpu_program4, GL_NV_gpu_program5, GL_NV_gpu_program5_mem_extended, GL_NV_gpu_shader5, GL_NV_half_float, GL_NV_internalformat_sample_query, GL_NV_light_max_exponent, GL_NV_memory_attachment, GL_NV_memory_object_sparse, GL_NV_mesh_shader, GL_NV_multisample_coverage, GL_NV_multisample_filter_hint, GL_NV_occlusion_query, GL_NV_packed_depth_stencil, GL_NV_parameter_buffer_object, GL_NV_parameter_buffer_object2, GL_NV_path_rendering, GL_NV_path_rendering_shared_edge, GL_NV_pixel_data_range, GL_NV_point_sprite, GL_NV_present_video, GL_NV_primitive_restart, GL_NV_primitive_shading_rate, GL_NV_query_resource, GL_NV_query_resource_tag, GL_NV_register_combiners, GL_NV_register_combiners2, GL_NV_representative_fragment_test, GL_NV_robustness_video_memory_purge, GL_NV_sample_locations, GL_NV_sample_mask_override_coverage, GL_NV_scissor_exclusive, GL_NV_shader_atomic_counters, GL_NV_shader_atomic_float, GL_NV_shader_atomic_float64, GL_NV_shader_atomic_fp16_vector, GL_NV_shader_atomic_int64, GL_NV_shader_buffer_load, GL_NV_shader_buffer_store, GL_NV_shader_storage_buffer_object, GL_NV_shader_subgroup_partitioned, GL_NV_shader_texture_footprint, GL_NV_shader_thread_group, GL_NV_shader_thread_shuffle, GL_NV_shading_rate_image, GL_NV_stereo_view_rendering, GL_NV_tessellation_program5, GL_NV_texgen_emboss, GL_NV_texgen_reflection, GL_NV_texture_barrier, GL_NV_texture_compression_vtc, GL_NV_texture_env_combine4, GL_NV_texture_expand_normal, GL_NV_texture_multisample, GL_NV_texture_rectangle, GL_NV_texture_rectangle_compressed, GL_NV_texture_shader, GL_NV_texture_shader2, GL_NV_texture_shader3, GL_NV_timeline_semaphore, GL_NV_transform_feedback, GL_NV_transform_feedback2, GL_NV_uniform_buffer_unified_memory, GL_NV_vdpau_interop, GL_NV_vdpau_interop2, GL_NV_vertex_array_range, GL_NV_vertex_array_range2, GL_NV_vertex_attrib_integer_64bit, GL_NV_vertex_buffer_unified_memory, GL_NV_vertex_program, GL_NV_vertex_program1_1, GL_NV_vertex_program2, GL_NV_vertex_program2_option, GL_NV_vertex_program3, GL_NV_vertex_program4, GL_NV_video_capture, GL_NV_viewport_array2, GL_NV_viewport_swizzle, GL_OML_interlace, GL_OML_resample, GL_OML_subsample, GL_OVR_multiview, GL_OVR_multiview2, GL_PGI_misc_hints, GL_PGI_vertex_hints, GL_REND_screen_coordinates, GL_S3_s3tc, GL_SGIS_detail_texture, GL_SGIS_fog_function, GL_SGIS_generate_mipmap, GL_SGIS_multisample, GL_SGIS_pixel_texture, GL_SGIS_point_line_texgen, GL_SGIS_point_parameters, GL_SGIS_sharpen_texture, GL_SGIS_texture4D, GL_SGIS_texture_border_clamp, GL_SGIS_texture_color_mask, GL_SGIS_texture_edge_clamp, GL_SGIS_texture_filter4, GL_SGIS_texture_lod, GL_SGIS_texture_select, GL_SGIX_async, GL_SGIX_async_histogram, GL_SGIX_async_pixel, GL_SGIX_blend_alpha_minmax, GL_SGIX_calligraphic_fragment, GL_SGIX_clipmap, GL_SGIX_convolution_accuracy, GL_SGIX_depth_pass_instrument, GL_SGIX_depth_texture, GL_SGIX_flush_raster, GL_SGIX_fog_offset, GL_SGIX_fragment_lighting, GL_SGIX_framezoom, GL_SGIX_igloo_interface, GL_SGIX_instruments, GL_SGIX_interlace, GL_SGIX_ir_instrument1, GL_SGIX_list_priority, GL_SGIX_pixel_texture, GL_SGIX_pixel_tiles, GL_SGIX_polynomial_ffd, GL_SGIX_reference_plane, GL_SGIX_resample, GL_SGIX_scalebias_hint, GL_SGIX_shadow, GL_SGIX_shadow_ambient, GL_SGIX_sprite, GL_SGIX_subsample, GL_SGIX_tag_sample_buffer, GL_SGIX_texture_add_env, GL_SGIX_texture_coordinate_clamp, GL_SGIX_texture_lod_bias, GL_SGIX_texture_multi_buffer, GL_SGIX_texture_scale_bias, GL_SGIX_vertex_preclip, GL_SGIX_ycrcb, GL_SGIX_ycrcb_subsample, GL_SGIX_ycrcba, GL_SGI_color_matrix, GL_SGI_color_table, GL_SGI_texture_color_table, GL_SUNX_constant_data, GL_SUN_convolution_border_modes, GL_SUN_global_alpha, GL_SUN_mesh_array, GL_SUN_slice_accum, GL_SUN_triangle_list, GL_SUN_vertex, GL_WIN_phong_shading, GL_WIN_specular_fog; /** GLCapabilities */ public final GLCapabilities caps; @@ -228,15 +86,21 @@ public GLExtCaps(GLCapabilities caps) { glProgramUniform4ui64NV, glProgramUniform1ui64vNV, glProgramUniform2ui64vNV, glProgramUniform3ui64vNV, glProgramUniform4ui64vNV, glVertexAttribParameteriAMD, glMultiDrawArraysIndirectAMD, glMultiDrawElementsIndirectAMD, glGenNamesAMD, glDeleteNamesAMD, glIsNameAMD, glQueryObjectParameteruiAMD, glGetPerfMonitorGroupsAMD, glGetPerfMonitorCountersAMD, glGetPerfMonitorGroupStringAMD, glGetPerfMonitorCounterStringAMD, glGetPerfMonitorCounterInfoAMD, glGenPerfMonitorsAMD, glDeletePerfMonitorsAMD, glSelectPerfMonitorCountersAMD, glBeginPerfMonitorAMD, glEndPerfMonitorAMD, glGetPerfMonitorCounterDataAMD, glSetMultisamplefvAMD, glTexStorageSparseAMD, glTextureStorageSparseAMD, glStencilOpValueAMD, glTessellationFactorAMD, glTessellationModeAMD, glElementPointerAPPLE, glDrawElementArrayAPPLE, glDrawRangeElementArrayAPPLE, glMultiDrawElementArrayAPPLE, glMultiDrawRangeElementArrayAPPLE, glGenFencesAPPLE, glDeleteFencesAPPLE, glSetFenceAPPLE, glIsFenceAPPLE, glTestFenceAPPLE, glFinishFenceAPPLE, glTestObjectAPPLE, glFinishObjectAPPLE, glBufferParameteriAPPLE, glFlushMappedBufferRangeAPPLE, glObjectPurgeableAPPLE, glObjectUnpurgeableAPPLE, glGetObjectParameterivAPPLE, glTextureRangeAPPLE, - glGetTexParameterPointervAPPLE, glBindVertexArrayAPPLE, glDeleteVertexArraysAPPLE, glGenVertexArraysAPPLE, glIsVertexArrayAPPLE, glVertexArrayRangeAPPLE, glFlushVertexArrayRangeAPPLE, glVertexArrayParameteriAPPLE, glEnableVertexAttribAPPLE, glDisableVertexAttribAPPLE, glIsVertexAttribEnabledAPPLE, glMapVertexAttrib1dAPPLE, glMapVertexAttrib1fAPPLE, glMapVertexAttrib2dAPPLE, glMapVertexAttrib2fAPPLE, glFrameTerminatorGREMEDY, - glStringMarkerGREMEDY, glImageTransformParameteriHP, glImageTransformParameterfHP, glImageTransformParameterivHP, glImageTransformParameterfvHP, glGetImageTransformParameterivHP, glGetImageTransformParameterfvHP, glMultiModeDrawArraysIBM, glMultiModeDrawElementsIBM, glFlushStaticDataIBM, glColorPointerListIBM, glSecondaryColorPointerListIBM, glEdgeFlagPointerListIBM, glFogCoordPointerListIBM, glIndexPointerListIBM, glNormalPointerListIBM, - glTexCoordPointerListIBM, glVertexPointerListIBM, glBlendFuncSeparateINGR, glApplyFramebufferAttachmentCMAAINTEL, glSyncTextureINTEL, glUnmapTexture2DINTEL, glMapTexture2DINTEL, glVertexPointervINTEL, glNormalPointervINTEL, glColorPointervINTEL, glTexCoordPointervINTEL, glBeginPerfQueryINTEL, glCreatePerfQueryINTEL, glDeletePerfQueryINTEL, glEndPerfQueryINTEL, glGetFirstPerfQueryIdINTEL, - glGetNextPerfQueryIdINTEL, glGetPerfCounterInfoINTEL, glGetPerfQueryDataINTEL, glGetPerfQueryIdByNameINTEL, glGetPerfQueryInfoINTEL, glFramebufferParameteriMESA, glGetFramebufferParameterivMESA, glResizeBuffersMESA, glWindowPos2dMESA, glWindowPos2dvMESA, glWindowPos2fMESA, glWindowPos2fvMESA, glWindowPos2iMESA, glWindowPos2ivMESA, glWindowPos2sMESA, glWindowPos2svMESA, - glWindowPos3dMESA, glWindowPos3dvMESA, glWindowPos3fMESA, glWindowPos3fvMESA, glWindowPos3iMESA, glWindowPos3ivMESA, glWindowPos3sMESA, glWindowPos3svMESA, glWindowPos4dMESA, glWindowPos4dvMESA, glWindowPos4fMESA, glWindowPos4fvMESA, glWindowPos4iMESA, glWindowPos4ivMESA, glWindowPos4sMESA, glWindowPos4svMESA, - glFramebufferTextureMultiviewOVR, glHintPGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, - glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, - glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, - glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; + glGetTexParameterPointervAPPLE, glBindVertexArrayAPPLE, glDeleteVertexArraysAPPLE, glGenVertexArraysAPPLE, glIsVertexArrayAPPLE, glVertexArrayRangeAPPLE, glFlushVertexArrayRangeAPPLE, glVertexArrayParameteriAPPLE, glEnableVertexAttribAPPLE, glDisableVertexAttribAPPLE, glIsVertexAttribEnabledAPPLE, glMapVertexAttrib1dAPPLE, glMapVertexAttrib1fAPPLE, glMapVertexAttrib2dAPPLE, glMapVertexAttrib2fAPPLE, glDrawBuffersATI, + glElementPointerATI, glDrawElementArrayATI, glDrawRangeElementArrayATI, glTexBumpParameterivATI, glTexBumpParameterfvATI, glGetTexBumpParameterivATI, glGetTexBumpParameterfvATI, glGenFragmentShadersATI, glBindFragmentShaderATI, glDeleteFragmentShaderATI, glBeginFragmentShaderATI, glEndFragmentShaderATI, glPassTexCoordATI, glSampleMapATI, glColorFragmentOp1ATI, glColorFragmentOp2ATI, + glColorFragmentOp3ATI, glAlphaFragmentOp1ATI, glAlphaFragmentOp2ATI, glAlphaFragmentOp3ATI, glSetFragmentShaderConstantATI, glMapObjectBufferATI, glUnmapObjectBufferATI, glPNTrianglesiATI, glPNTrianglesfATI, glStencilOpSeparateATI, glStencilFuncSeparateATI, glNewObjectBufferATI, glIsObjectBufferATI, glUpdateObjectBufferATI, glGetObjectBufferfvATI, glGetObjectBufferivATI, + glFreeObjectBufferATI, glArrayObjectATI, glGetArrayObjectfvATI, glGetArrayObjectivATI, glVariantArrayObjectATI, glGetVariantArrayObjectfvATI, glGetVariantArrayObjectivATI, glVertexAttribArrayObjectATI, glGetVertexAttribArrayObjectfvATI, glGetVertexAttribArrayObjectivATI, glVertexStream1sATI, glVertexStream1svATI, glVertexStream1iATI, glVertexStream1ivATI, glVertexStream1fATI, glVertexStream1fvATI, + glVertexStream1dATI, glVertexStream1dvATI, glVertexStream2sATI, glVertexStream2svATI, glVertexStream2iATI, glVertexStream2ivATI, glVertexStream2fATI, glVertexStream2fvATI, glVertexStream2dATI, glVertexStream2dvATI, glVertexStream3sATI, glVertexStream3svATI, glVertexStream3iATI, glVertexStream3ivATI, glVertexStream3fATI, glVertexStream3fvATI, + glVertexStream3dATI, glVertexStream3dvATI, glVertexStream4sATI, glVertexStream4svATI, glVertexStream4iATI, glVertexStream4ivATI, glVertexStream4fATI, glVertexStream4fvATI, glVertexStream4dATI, glVertexStream4dvATI, glNormalStream3bATI, glNormalStream3bvATI, glNormalStream3sATI, glNormalStream3svATI, glNormalStream3iATI, glNormalStream3ivATI, + glNormalStream3fATI, glNormalStream3fvATI, glNormalStream3dATI, glNormalStream3dvATI, glClientActiveVertexStreamATI, glVertexBlendEnviATI, glVertexBlendEnvfATI, glFrameTerminatorGREMEDY, glStringMarkerGREMEDY, glImageTransformParameteriHP, glImageTransformParameterfHP, glImageTransformParameterivHP, glImageTransformParameterfvHP, glGetImageTransformParameterivHP, glGetImageTransformParameterfvHP, glMultiModeDrawArraysIBM, + glMultiModeDrawElementsIBM, glFlushStaticDataIBM, glColorPointerListIBM, glSecondaryColorPointerListIBM, glEdgeFlagPointerListIBM, glFogCoordPointerListIBM, glIndexPointerListIBM, glNormalPointerListIBM, glTexCoordPointerListIBM, glVertexPointerListIBM, glBlendFuncSeparateINGR, glApplyFramebufferAttachmentCMAAINTEL, glSyncTextureINTEL, glUnmapTexture2DINTEL, glMapTexture2DINTEL, glVertexPointervINTEL, + glNormalPointervINTEL, glColorPointervINTEL, glTexCoordPointervINTEL, glBeginPerfQueryINTEL, glCreatePerfQueryINTEL, glDeletePerfQueryINTEL, glEndPerfQueryINTEL, glGetFirstPerfQueryIdINTEL, glGetNextPerfQueryIdINTEL, glGetPerfCounterInfoINTEL, glGetPerfQueryDataINTEL, glGetPerfQueryIdByNameINTEL, glGetPerfQueryInfoINTEL, glFramebufferParameteriMESA, glGetFramebufferParameterivMESA, glResizeBuffersMESA, + glWindowPos2dMESA, glWindowPos2dvMESA, glWindowPos2fMESA, glWindowPos2fvMESA, glWindowPos2iMESA, glWindowPos2ivMESA, glWindowPos2sMESA, glWindowPos2svMESA, glWindowPos3dMESA, glWindowPos3dvMESA, glWindowPos3fMESA, glWindowPos3fvMESA, glWindowPos3iMESA, glWindowPos3ivMESA, glWindowPos3sMESA, glWindowPos3svMESA, + glWindowPos4dMESA, glWindowPos4dvMESA, glWindowPos4fMESA, glWindowPos4fvMESA, glWindowPos4iMESA, glWindowPos4ivMESA, glWindowPos4sMESA, glWindowPos4svMESA, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, glFogFuncSGIS, glGetFogFuncSGIS, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, + glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, + glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, + glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, + glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; void load(GLLoadFunc load) { GLARBRobustness.load(this, load); @@ -284,6 +148,16 @@ void load(GLLoadFunc load) { GLAPPLEVertexArrayObject.load(this, load); GLAPPLEVertexArrayRange.load(this, load); GLAPPLEVertexProgramEvaluators.load(this, load); + GLATIDrawBuffers.load(this, load); + GLATIElementArray.load(this, load); + GLATIEnvmapBumpmap.load(this, load); + GLATIFragmentShader.load(this, load); + GLATIMapObjectBuffer.load(this, load); + GLATIPnTriangles.load(this, load); + GLATISeparateStencil.load(this, load); + GLATIVertexArrayObject.load(this, load); + GLATIVertexAttribArrayObject.load(this, load); + GLATIVertexStreams.load(this, load); GLGREMEDYFrameTerminator.load(this, load); GLGREMEDYStringMarker.load(this, load); GLHPImageTransform.load(this, load); @@ -300,10 +174,644 @@ void load(GLLoadFunc load) { GLMESAWindowPos.load(this, load); GLOVRMultiview.load(this, load); GLPGIMiscHints.load(this, load); + GLSGISDetailTexture.load(this, load); + GLSGISFogFunction.load(this, load); GLSUNXConstantData.load(this, load); GLSUNGlobalAlpha.load(this, load); GLSUNMeshArray.load(this, load); GLSUNTriangleList.load(this, load); GLSUNVertex.load(this, load); } + + boolean findExtensionsGL(int version, SegmentAllocator allocator) { + var pExts = allocator.allocate(ADDRESS); + var pNumExtsI = allocator.allocate(JAVA_INT); + var pExtsI = new MemorySegment[1]; + if (!getExtensions(allocator, version, pExts, pNumExtsI, pExtsI, caps)) return false; + + String exts = pExts.getUtf8String(0); + int numExtsI = pNumExtsI.get(JAVA_INT, 0); + var extsI = pExtsI[0]; + + this.GL_ARB_ES2_compatibility = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_ES2_compatibility"); + this.GL_ARB_ES3_1_compatibility = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_ES3_1_compatibility"); + this.GL_ARB_ES3_2_compatibility = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_ES3_2_compatibility"); + this.GL_ARB_ES3_compatibility = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_ES3_compatibility"); + this.GL_ARB_arrays_of_arrays = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_arrays_of_arrays"); + this.GL_ARB_base_instance = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_base_instance"); + this.GL_ARB_bindless_texture = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_bindless_texture"); + this.GL_ARB_blend_func_extended = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_blend_func_extended"); + this.GL_ARB_buffer_storage = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_buffer_storage"); + this.GL_ARB_cl_event = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_cl_event"); + this.GL_ARB_clear_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_clear_buffer_object"); + this.GL_ARB_clear_texture = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_clear_texture"); + this.GL_ARB_clip_control = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_clip_control"); + this.GL_ARB_color_buffer_float = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_color_buffer_float"); + this.GL_ARB_compatibility = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_compatibility"); + this.GL_ARB_compressed_texture_pixel_storage = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_compressed_texture_pixel_storage"); + this.GL_ARB_compute_shader = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_compute_shader"); + this.GL_ARB_compute_variable_group_size = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_compute_variable_group_size"); + this.GL_ARB_conditional_render_inverted = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_conditional_render_inverted"); + this.GL_ARB_conservative_depth = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_conservative_depth"); + this.GL_ARB_copy_buffer = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_copy_buffer"); + this.GL_ARB_copy_image = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_copy_image"); + this.GL_ARB_cull_distance = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_cull_distance"); + this.GL_ARB_debug_output = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_debug_output"); + this.GL_ARB_depth_buffer_float = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_depth_buffer_float"); + this.GL_ARB_depth_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_depth_clamp"); + this.GL_ARB_depth_texture = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_depth_texture"); + this.GL_ARB_derivative_control = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_derivative_control"); + this.GL_ARB_direct_state_access = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_direct_state_access"); + this.GL_ARB_draw_buffers = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_draw_buffers"); + this.GL_ARB_draw_buffers_blend = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_draw_buffers_blend"); + this.GL_ARB_draw_elements_base_vertex = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_draw_elements_base_vertex"); + this.GL_ARB_draw_indirect = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_draw_indirect"); + this.GL_ARB_draw_instanced = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_draw_instanced"); + this.GL_ARB_enhanced_layouts = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_enhanced_layouts"); + this.GL_ARB_explicit_attrib_location = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_explicit_attrib_location"); + this.GL_ARB_explicit_uniform_location = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_explicit_uniform_location"); + this.GL_ARB_fragment_coord_conventions = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_fragment_coord_conventions"); + this.GL_ARB_fragment_layer_viewport = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_fragment_layer_viewport"); + this.GL_ARB_fragment_program = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_fragment_program"); + this.GL_ARB_fragment_program_shadow = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_fragment_program_shadow"); + this.GL_ARB_fragment_shader = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_fragment_shader"); + this.GL_ARB_fragment_shader_interlock = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_fragment_shader_interlock"); + this.GL_ARB_framebuffer_no_attachments = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_framebuffer_no_attachments"); + this.GL_ARB_framebuffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_framebuffer_object"); + this.GL_ARB_framebuffer_sRGB = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_framebuffer_sRGB"); + this.GL_ARB_geometry_shader4 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_geometry_shader4"); + this.GL_ARB_get_program_binary = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_get_program_binary"); + this.GL_ARB_get_texture_sub_image = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_get_texture_sub_image"); + this.GL_ARB_gl_spirv = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_gl_spirv"); + this.GL_ARB_gpu_shader5 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_gpu_shader5"); + this.GL_ARB_gpu_shader_fp64 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_gpu_shader_fp64"); + this.GL_ARB_gpu_shader_int64 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_gpu_shader_int64"); + this.GL_ARB_half_float_pixel = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_half_float_pixel"); + this.GL_ARB_half_float_vertex = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_half_float_vertex"); + this.GL_ARB_imaging = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_imaging"); + this.GL_ARB_indirect_parameters = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_indirect_parameters"); + this.GL_ARB_instanced_arrays = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_instanced_arrays"); + this.GL_ARB_internalformat_query = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_internalformat_query"); + this.GL_ARB_internalformat_query2 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_internalformat_query2"); + this.GL_ARB_invalidate_subdata = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_invalidate_subdata"); + this.GL_ARB_map_buffer_alignment = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_map_buffer_alignment"); + this.GL_ARB_map_buffer_range = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_map_buffer_range"); + this.GL_ARB_matrix_palette = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_matrix_palette"); + this.GL_ARB_multi_bind = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_multi_bind"); + this.GL_ARB_multi_draw_indirect = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_multi_draw_indirect"); + this.GL_ARB_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_multisample"); + this.GL_ARB_multitexture = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_multitexture"); + this.GL_ARB_occlusion_query = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_occlusion_query"); + this.GL_ARB_occlusion_query2 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_occlusion_query2"); + this.GL_ARB_parallel_shader_compile = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_parallel_shader_compile"); + this.GL_ARB_pipeline_statistics_query = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_pipeline_statistics_query"); + this.GL_ARB_pixel_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_pixel_buffer_object"); + this.GL_ARB_point_parameters = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_point_parameters"); + this.GL_ARB_point_sprite = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_point_sprite"); + this.GL_ARB_polygon_offset_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_polygon_offset_clamp"); + this.GL_ARB_post_depth_coverage = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_post_depth_coverage"); + this.GL_ARB_program_interface_query = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_program_interface_query"); + this.GL_ARB_provoking_vertex = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_provoking_vertex"); + this.GL_ARB_query_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_query_buffer_object"); + this.GL_ARB_robust_buffer_access_behavior = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_robust_buffer_access_behavior"); + this.GL_ARB_robustness = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_robustness"); + this.GL_ARB_robustness_isolation = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_robustness_isolation"); + this.GL_ARB_sample_locations = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_sample_locations"); + this.GL_ARB_sample_shading = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_sample_shading"); + this.GL_ARB_sampler_objects = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_sampler_objects"); + this.GL_ARB_seamless_cube_map = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_seamless_cube_map"); + this.GL_ARB_seamless_cubemap_per_texture = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_seamless_cubemap_per_texture"); + this.GL_ARB_separate_shader_objects = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_separate_shader_objects"); + this.GL_ARB_shader_atomic_counter_ops = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_atomic_counter_ops"); + this.GL_ARB_shader_atomic_counters = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_atomic_counters"); + this.GL_ARB_shader_ballot = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_ballot"); + this.GL_ARB_shader_bit_encoding = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_bit_encoding"); + this.GL_ARB_shader_clock = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_clock"); + this.GL_ARB_shader_draw_parameters = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_draw_parameters"); + this.GL_ARB_shader_group_vote = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_group_vote"); + this.GL_ARB_shader_image_load_store = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_image_load_store"); + this.GL_ARB_shader_image_size = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_image_size"); + this.GL_ARB_shader_objects = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_objects"); + this.GL_ARB_shader_precision = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_precision"); + this.GL_ARB_shader_stencil_export = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_stencil_export"); + this.GL_ARB_shader_storage_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_storage_buffer_object"); + this.GL_ARB_shader_subroutine = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_subroutine"); + this.GL_ARB_shader_texture_image_samples = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_texture_image_samples"); + this.GL_ARB_shader_texture_lod = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_texture_lod"); + this.GL_ARB_shader_viewport_layer_array = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_viewport_layer_array"); + this.GL_ARB_shading_language_100 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shading_language_100"); + this.GL_ARB_shading_language_420pack = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shading_language_420pack"); + this.GL_ARB_shading_language_include = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shading_language_include"); + this.GL_ARB_shading_language_packing = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shading_language_packing"); + this.GL_ARB_shadow = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shadow"); + this.GL_ARB_shadow_ambient = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shadow_ambient"); + this.GL_ARB_sparse_buffer = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_sparse_buffer"); + this.GL_ARB_sparse_texture = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_sparse_texture"); + this.GL_ARB_sparse_texture2 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_sparse_texture2"); + this.GL_ARB_sparse_texture_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_sparse_texture_clamp"); + this.GL_ARB_spirv_extensions = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_spirv_extensions"); + this.GL_ARB_stencil_texturing = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_stencil_texturing"); + this.GL_ARB_sync = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_sync"); + this.GL_ARB_tessellation_shader = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_tessellation_shader"); + this.GL_ARB_texture_barrier = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_barrier"); + this.GL_ARB_texture_border_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_border_clamp"); + this.GL_ARB_texture_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_buffer_object"); + this.GL_ARB_texture_buffer_object_rgb32 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_buffer_object_rgb32"); + this.GL_ARB_texture_buffer_range = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_buffer_range"); + this.GL_ARB_texture_compression = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_compression"); + this.GL_ARB_texture_compression_bptc = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_compression_bptc"); + this.GL_ARB_texture_compression_rgtc = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_compression_rgtc"); + this.GL_ARB_texture_cube_map = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_cube_map"); + this.GL_ARB_texture_cube_map_array = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_cube_map_array"); + this.GL_ARB_texture_env_add = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_env_add"); + this.GL_ARB_texture_env_combine = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_env_combine"); + this.GL_ARB_texture_env_crossbar = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_env_crossbar"); + this.GL_ARB_texture_env_dot3 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_env_dot3"); + this.GL_ARB_texture_filter_anisotropic = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_filter_anisotropic"); + this.GL_ARB_texture_filter_minmax = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_filter_minmax"); + this.GL_ARB_texture_float = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_float"); + this.GL_ARB_texture_gather = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_gather"); + this.GL_ARB_texture_mirror_clamp_to_edge = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_mirror_clamp_to_edge"); + this.GL_ARB_texture_mirrored_repeat = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_mirrored_repeat"); + this.GL_ARB_texture_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_multisample"); + this.GL_ARB_texture_non_power_of_two = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_non_power_of_two"); + this.GL_ARB_texture_query_levels = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_query_levels"); + this.GL_ARB_texture_query_lod = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_query_lod"); + this.GL_ARB_texture_rectangle = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_rectangle"); + this.GL_ARB_texture_rg = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_rg"); + this.GL_ARB_texture_rgb10_a2ui = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_rgb10_a2ui"); + this.GL_ARB_texture_stencil8 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_stencil8"); + this.GL_ARB_texture_storage = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_storage"); + this.GL_ARB_texture_storage_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_storage_multisample"); + this.GL_ARB_texture_swizzle = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_swizzle"); + this.GL_ARB_texture_view = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_view"); + this.GL_ARB_timer_query = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_timer_query"); + this.GL_ARB_transform_feedback2 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_transform_feedback2"); + this.GL_ARB_transform_feedback3 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_transform_feedback3"); + this.GL_ARB_transform_feedback_instanced = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_transform_feedback_instanced"); + this.GL_ARB_transform_feedback_overflow_query = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_transform_feedback_overflow_query"); + this.GL_ARB_transpose_matrix = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_transpose_matrix"); + this.GL_ARB_uniform_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_uniform_buffer_object"); + this.GL_ARB_vertex_array_bgra = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_array_bgra"); + this.GL_ARB_vertex_array_object = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_array_object"); + this.GL_ARB_vertex_attrib_64bit = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_attrib_64bit"); + this.GL_ARB_vertex_attrib_binding = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_attrib_binding"); + this.GL_ARB_vertex_blend = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_blend"); + this.GL_ARB_vertex_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_buffer_object"); + this.GL_ARB_vertex_program = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_program"); + this.GL_ARB_vertex_shader = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_shader"); + this.GL_ARB_vertex_type_10f_11f_11f_rev = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_type_10f_11f_11f_rev"); + this.GL_ARB_vertex_type_2_10_10_10_rev = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_type_2_10_10_10_rev"); + this.GL_ARB_viewport_array = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_viewport_array"); + this.GL_ARB_window_pos = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_window_pos"); + this.GL_KHR_blend_equation_advanced = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_blend_equation_advanced"); + this.GL_KHR_blend_equation_advanced_coherent = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_blend_equation_advanced_coherent"); + this.GL_KHR_context_flush_control = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_context_flush_control"); + this.GL_KHR_debug = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_debug"); + this.GL_KHR_no_error = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_no_error"); + this.GL_KHR_parallel_shader_compile = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_parallel_shader_compile"); + this.GL_KHR_robust_buffer_access_behavior = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_robust_buffer_access_behavior"); + this.GL_KHR_robustness = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_robustness"); + this.GL_KHR_shader_subgroup = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_shader_subgroup"); + this.GL_KHR_texture_compression_astc_hdr = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_texture_compression_astc_hdr"); + this.GL_KHR_texture_compression_astc_ldr = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_texture_compression_astc_ldr"); + this.GL_KHR_texture_compression_astc_sliced_3d = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_texture_compression_astc_sliced_3d"); + this.GL_OES_byte_coordinates = hasExtension(version, exts, numExtsI, extsI, "GL_OES_byte_coordinates"); + this.GL_OES_compressed_paletted_texture = hasExtension(version, exts, numExtsI, extsI, "GL_OES_compressed_paletted_texture"); + this.GL_OES_fixed_point = hasExtension(version, exts, numExtsI, extsI, "GL_OES_fixed_point"); + this.GL_OES_query_matrix = hasExtension(version, exts, numExtsI, extsI, "GL_OES_query_matrix"); + this.GL_OES_read_format = hasExtension(version, exts, numExtsI, extsI, "GL_OES_read_format"); + this.GL_OES_single_precision = hasExtension(version, exts, numExtsI, extsI, "GL_OES_single_precision"); + this.GL_3DFX_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_3DFX_multisample"); + this.GL_3DFX_tbuffer = hasExtension(version, exts, numExtsI, extsI, "GL_3DFX_tbuffer"); + this.GL_3DFX_texture_compression_FXT1 = hasExtension(version, exts, numExtsI, extsI, "GL_3DFX_texture_compression_FXT1"); + this.GL_AMD_blend_minmax_factor = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_blend_minmax_factor"); + this.GL_AMD_conservative_depth = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_conservative_depth"); + this.GL_AMD_debug_output = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_debug_output"); + this.GL_AMD_depth_clamp_separate = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_depth_clamp_separate"); + this.GL_AMD_draw_buffers_blend = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_draw_buffers_blend"); + this.GL_AMD_framebuffer_multisample_advanced = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_framebuffer_multisample_advanced"); + this.GL_AMD_framebuffer_sample_positions = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_framebuffer_sample_positions"); + this.GL_AMD_gcn_shader = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_gcn_shader"); + this.GL_AMD_gpu_shader_half_float = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_gpu_shader_half_float"); + this.GL_AMD_gpu_shader_int16 = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_gpu_shader_int16"); + this.GL_AMD_gpu_shader_int64 = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_gpu_shader_int64"); + this.GL_AMD_interleaved_elements = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_interleaved_elements"); + this.GL_AMD_multi_draw_indirect = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_multi_draw_indirect"); + this.GL_AMD_name_gen_delete = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_name_gen_delete"); + this.GL_AMD_occlusion_query_event = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_occlusion_query_event"); + this.GL_AMD_performance_monitor = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_performance_monitor"); + this.GL_AMD_pinned_memory = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_pinned_memory"); + this.GL_AMD_query_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_query_buffer_object"); + this.GL_AMD_sample_positions = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_sample_positions"); + this.GL_AMD_seamless_cubemap_per_texture = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_seamless_cubemap_per_texture"); + this.GL_AMD_shader_atomic_counter_ops = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_shader_atomic_counter_ops"); + this.GL_AMD_shader_ballot = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_shader_ballot"); + this.GL_AMD_shader_explicit_vertex_parameter = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_shader_explicit_vertex_parameter"); + this.GL_AMD_shader_gpu_shader_half_float_fetch = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_shader_gpu_shader_half_float_fetch"); + this.GL_AMD_shader_image_load_store_lod = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_shader_image_load_store_lod"); + this.GL_AMD_shader_stencil_export = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_shader_stencil_export"); + this.GL_AMD_shader_trinary_minmax = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_shader_trinary_minmax"); + this.GL_AMD_sparse_texture = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_sparse_texture"); + this.GL_AMD_stencil_operation_extended = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_stencil_operation_extended"); + this.GL_AMD_texture_gather_bias_lod = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_texture_gather_bias_lod"); + this.GL_AMD_texture_texture4 = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_texture_texture4"); + this.GL_AMD_transform_feedback3_lines_triangles = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_transform_feedback3_lines_triangles"); + this.GL_AMD_transform_feedback4 = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_transform_feedback4"); + this.GL_AMD_vertex_shader_layer = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_vertex_shader_layer"); + this.GL_AMD_vertex_shader_tessellator = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_vertex_shader_tessellator"); + this.GL_AMD_vertex_shader_viewport_index = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_vertex_shader_viewport_index"); + this.GL_APPLE_aux_depth_stencil = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_aux_depth_stencil"); + this.GL_APPLE_client_storage = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_client_storage"); + this.GL_APPLE_element_array = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_element_array"); + this.GL_APPLE_fence = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_fence"); + this.GL_APPLE_float_pixels = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_float_pixels"); + this.GL_APPLE_flush_buffer_range = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_flush_buffer_range"); + this.GL_APPLE_object_purgeable = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_object_purgeable"); + this.GL_APPLE_rgb_422 = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_rgb_422"); + this.GL_APPLE_row_bytes = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_row_bytes"); + this.GL_APPLE_specular_vector = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_specular_vector"); + this.GL_APPLE_texture_range = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_texture_range"); + this.GL_APPLE_transform_hint = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_transform_hint"); + this.GL_APPLE_vertex_array_object = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_vertex_array_object"); + this.GL_APPLE_vertex_array_range = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_vertex_array_range"); + this.GL_APPLE_vertex_program_evaluators = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_vertex_program_evaluators"); + this.GL_APPLE_ycbcr_422 = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_ycbcr_422"); + this.GL_ATI_draw_buffers = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_draw_buffers"); + this.GL_ATI_element_array = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_element_array"); + this.GL_ATI_envmap_bumpmap = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_envmap_bumpmap"); + this.GL_ATI_fragment_shader = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_fragment_shader"); + this.GL_ATI_map_object_buffer = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_map_object_buffer"); + this.GL_ATI_meminfo = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_meminfo"); + this.GL_ATI_pixel_format_float = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_pixel_format_float"); + this.GL_ATI_pn_triangles = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_pn_triangles"); + this.GL_ATI_separate_stencil = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_separate_stencil"); + this.GL_ATI_text_fragment_shader = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_text_fragment_shader"); + this.GL_ATI_texture_env_combine3 = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_texture_env_combine3"); + this.GL_ATI_texture_float = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_texture_float"); + this.GL_ATI_texture_mirror_once = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_texture_mirror_once"); + this.GL_ATI_vertex_array_object = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_vertex_array_object"); + this.GL_ATI_vertex_attrib_array_object = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_vertex_attrib_array_object"); + this.GL_ATI_vertex_streams = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_vertex_streams"); + this.GL_EXT_422_pixels = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_422_pixels"); + this.GL_EXT_EGL_image_storage = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_EGL_image_storage"); + this.GL_EXT_EGL_sync = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_EGL_sync"); + this.GL_EXT_abgr = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_abgr"); + this.GL_EXT_bgra = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_bgra"); + this.GL_EXT_bindable_uniform = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_bindable_uniform"); + this.GL_EXT_blend_color = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_blend_color"); + this.GL_EXT_blend_equation_separate = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_blend_equation_separate"); + this.GL_EXT_blend_func_separate = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_blend_func_separate"); + this.GL_EXT_blend_logic_op = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_blend_logic_op"); + this.GL_EXT_blend_minmax = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_blend_minmax"); + this.GL_EXT_blend_subtract = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_blend_subtract"); + this.GL_EXT_clip_volume_hint = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_clip_volume_hint"); + this.GL_EXT_cmyka = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_cmyka"); + this.GL_EXT_color_subtable = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_color_subtable"); + this.GL_EXT_compiled_vertex_array = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_compiled_vertex_array"); + this.GL_EXT_convolution = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_convolution"); + this.GL_EXT_coordinate_frame = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_coordinate_frame"); + this.GL_EXT_copy_texture = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_copy_texture"); + this.GL_EXT_cull_vertex = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_cull_vertex"); + this.GL_EXT_debug_label = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_debug_label"); + this.GL_EXT_debug_marker = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_debug_marker"); + this.GL_EXT_depth_bounds_test = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_depth_bounds_test"); + this.GL_EXT_direct_state_access = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_direct_state_access"); + this.GL_EXT_draw_buffers2 = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_draw_buffers2"); + this.GL_EXT_draw_instanced = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_draw_instanced"); + this.GL_EXT_draw_range_elements = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_draw_range_elements"); + this.GL_EXT_external_buffer = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_external_buffer"); + this.GL_EXT_fog_coord = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_fog_coord"); + this.GL_EXT_framebuffer_blit = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_framebuffer_blit"); + this.GL_EXT_framebuffer_blit_layers = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_framebuffer_blit_layers"); + this.GL_EXT_framebuffer_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_framebuffer_multisample"); + this.GL_EXT_framebuffer_multisample_blit_scaled = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_framebuffer_multisample_blit_scaled"); + this.GL_EXT_framebuffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_framebuffer_object"); + this.GL_EXT_framebuffer_sRGB = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_framebuffer_sRGB"); + this.GL_EXT_geometry_shader4 = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_geometry_shader4"); + this.GL_EXT_gpu_program_parameters = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_gpu_program_parameters"); + this.GL_EXT_gpu_shader4 = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_gpu_shader4"); + this.GL_EXT_histogram = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_histogram"); + this.GL_EXT_index_array_formats = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_index_array_formats"); + this.GL_EXT_index_func = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_index_func"); + this.GL_EXT_index_material = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_index_material"); + this.GL_EXT_index_texture = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_index_texture"); + this.GL_EXT_light_texture = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_light_texture"); + this.GL_EXT_memory_object = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_memory_object"); + this.GL_EXT_memory_object_fd = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_memory_object_fd"); + this.GL_EXT_memory_object_win32 = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_memory_object_win32"); + this.GL_EXT_misc_attribute = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_misc_attribute"); + this.GL_EXT_multi_draw_arrays = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_multi_draw_arrays"); + this.GL_EXT_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_multisample"); + this.GL_EXT_multiview_tessellation_geometry_shader = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_multiview_tessellation_geometry_shader"); + this.GL_EXT_multiview_texture_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_multiview_texture_multisample"); + this.GL_EXT_multiview_timer_query = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_multiview_timer_query"); + this.GL_EXT_packed_depth_stencil = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_packed_depth_stencil"); + this.GL_EXT_packed_float = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_packed_float"); + this.GL_EXT_packed_pixels = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_packed_pixels"); + this.GL_EXT_paletted_texture = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_paletted_texture"); + this.GL_EXT_pixel_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_pixel_buffer_object"); + this.GL_EXT_pixel_transform = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_pixel_transform"); + this.GL_EXT_pixel_transform_color_table = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_pixel_transform_color_table"); + this.GL_EXT_point_parameters = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_point_parameters"); + this.GL_EXT_polygon_offset = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_polygon_offset"); + this.GL_EXT_polygon_offset_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_polygon_offset_clamp"); + this.GL_EXT_post_depth_coverage = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_post_depth_coverage"); + this.GL_EXT_provoking_vertex = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_provoking_vertex"); + this.GL_EXT_raster_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_raster_multisample"); + this.GL_EXT_rescale_normal = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_rescale_normal"); + this.GL_EXT_secondary_color = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_secondary_color"); + this.GL_EXT_semaphore = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_semaphore"); + this.GL_EXT_semaphore_fd = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_semaphore_fd"); + this.GL_EXT_semaphore_win32 = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_semaphore_win32"); + this.GL_EXT_separate_shader_objects = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_separate_shader_objects"); + this.GL_EXT_separate_specular_color = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_separate_specular_color"); + this.GL_EXT_shader_framebuffer_fetch = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_shader_framebuffer_fetch"); + this.GL_EXT_shader_framebuffer_fetch_non_coherent = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_shader_framebuffer_fetch_non_coherent"); + this.GL_EXT_shader_image_load_formatted = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_shader_image_load_formatted"); + this.GL_EXT_shader_image_load_store = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_shader_image_load_store"); + this.GL_EXT_shader_integer_mix = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_shader_integer_mix"); + this.GL_EXT_shader_samples_identical = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_shader_samples_identical"); + this.GL_EXT_shadow_funcs = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_shadow_funcs"); + this.GL_EXT_shared_texture_palette = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_shared_texture_palette"); + this.GL_EXT_sparse_texture2 = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_sparse_texture2"); + this.GL_EXT_stencil_clear_tag = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_stencil_clear_tag"); + this.GL_EXT_stencil_two_side = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_stencil_two_side"); + this.GL_EXT_stencil_wrap = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_stencil_wrap"); + this.GL_EXT_subtexture = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_subtexture"); + this.GL_EXT_texture = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture"); + this.GL_EXT_texture3D = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture3D"); + this.GL_EXT_texture_array = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_array"); + this.GL_EXT_texture_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_buffer_object"); + this.GL_EXT_texture_compression_latc = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_compression_latc"); + this.GL_EXT_texture_compression_rgtc = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_compression_rgtc"); + this.GL_EXT_texture_compression_s3tc = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_compression_s3tc"); + this.GL_EXT_texture_cube_map = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_cube_map"); + this.GL_EXT_texture_env_add = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_env_add"); + this.GL_EXT_texture_env_combine = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_env_combine"); + this.GL_EXT_texture_env_dot3 = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_env_dot3"); + this.GL_EXT_texture_filter_anisotropic = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_filter_anisotropic"); + this.GL_EXT_texture_filter_minmax = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_filter_minmax"); + this.GL_EXT_texture_integer = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_integer"); + this.GL_EXT_texture_lod_bias = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_lod_bias"); + this.GL_EXT_texture_mirror_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_mirror_clamp"); + this.GL_EXT_texture_object = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_object"); + this.GL_EXT_texture_perturb_normal = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_perturb_normal"); + this.GL_EXT_texture_sRGB = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_sRGB"); + this.GL_EXT_texture_sRGB_R8 = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_sRGB_R8"); + this.GL_EXT_texture_sRGB_RG8 = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_sRGB_RG8"); + this.GL_EXT_texture_sRGB_decode = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_sRGB_decode"); + this.GL_EXT_texture_shadow_lod = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_shadow_lod"); + this.GL_EXT_texture_shared_exponent = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_shared_exponent"); + this.GL_EXT_texture_snorm = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_snorm"); + this.GL_EXT_texture_storage = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_storage"); + this.GL_EXT_texture_swizzle = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_swizzle"); + this.GL_EXT_timer_query = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_timer_query"); + this.GL_EXT_transform_feedback = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_transform_feedback"); + this.GL_EXT_vertex_array = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_vertex_array"); + this.GL_EXT_vertex_array_bgra = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_vertex_array_bgra"); + this.GL_EXT_vertex_attrib_64bit = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_vertex_attrib_64bit"); + this.GL_EXT_vertex_shader = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_vertex_shader"); + this.GL_EXT_vertex_weighting = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_vertex_weighting"); + this.GL_EXT_win32_keyed_mutex = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_win32_keyed_mutex"); + this.GL_EXT_window_rectangles = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_window_rectangles"); + this.GL_EXT_x11_sync_object = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_x11_sync_object"); + this.GL_GREMEDY_frame_terminator = hasExtension(version, exts, numExtsI, extsI, "GL_GREMEDY_frame_terminator"); + this.GL_GREMEDY_string_marker = hasExtension(version, exts, numExtsI, extsI, "GL_GREMEDY_string_marker"); + this.GL_HP_convolution_border_modes = hasExtension(version, exts, numExtsI, extsI, "GL_HP_convolution_border_modes"); + this.GL_HP_image_transform = hasExtension(version, exts, numExtsI, extsI, "GL_HP_image_transform"); + this.GL_HP_occlusion_test = hasExtension(version, exts, numExtsI, extsI, "GL_HP_occlusion_test"); + this.GL_HP_texture_lighting = hasExtension(version, exts, numExtsI, extsI, "GL_HP_texture_lighting"); + this.GL_IBM_cull_vertex = hasExtension(version, exts, numExtsI, extsI, "GL_IBM_cull_vertex"); + this.GL_IBM_multimode_draw_arrays = hasExtension(version, exts, numExtsI, extsI, "GL_IBM_multimode_draw_arrays"); + this.GL_IBM_rasterpos_clip = hasExtension(version, exts, numExtsI, extsI, "GL_IBM_rasterpos_clip"); + this.GL_IBM_static_data = hasExtension(version, exts, numExtsI, extsI, "GL_IBM_static_data"); + this.GL_IBM_texture_mirrored_repeat = hasExtension(version, exts, numExtsI, extsI, "GL_IBM_texture_mirrored_repeat"); + this.GL_IBM_vertex_array_lists = hasExtension(version, exts, numExtsI, extsI, "GL_IBM_vertex_array_lists"); + this.GL_INGR_blend_func_separate = hasExtension(version, exts, numExtsI, extsI, "GL_INGR_blend_func_separate"); + this.GL_INGR_color_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_INGR_color_clamp"); + this.GL_INGR_interlace_read = hasExtension(version, exts, numExtsI, extsI, "GL_INGR_interlace_read"); + this.GL_INTEL_blackhole_render = hasExtension(version, exts, numExtsI, extsI, "GL_INTEL_blackhole_render"); + this.GL_INTEL_conservative_rasterization = hasExtension(version, exts, numExtsI, extsI, "GL_INTEL_conservative_rasterization"); + this.GL_INTEL_fragment_shader_ordering = hasExtension(version, exts, numExtsI, extsI, "GL_INTEL_fragment_shader_ordering"); + this.GL_INTEL_framebuffer_CMAA = hasExtension(version, exts, numExtsI, extsI, "GL_INTEL_framebuffer_CMAA"); + this.GL_INTEL_map_texture = hasExtension(version, exts, numExtsI, extsI, "GL_INTEL_map_texture"); + this.GL_INTEL_parallel_arrays = hasExtension(version, exts, numExtsI, extsI, "GL_INTEL_parallel_arrays"); + this.GL_INTEL_performance_query = hasExtension(version, exts, numExtsI, extsI, "GL_INTEL_performance_query"); + this.GL_MESAX_texture_stack = hasExtension(version, exts, numExtsI, extsI, "GL_MESAX_texture_stack"); + this.GL_MESA_framebuffer_flip_x = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_framebuffer_flip_x"); + this.GL_MESA_framebuffer_flip_y = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_framebuffer_flip_y"); + this.GL_MESA_framebuffer_swap_xy = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_framebuffer_swap_xy"); + this.GL_MESA_pack_invert = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_pack_invert"); + this.GL_MESA_program_binary_formats = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_program_binary_formats"); + this.GL_MESA_resize_buffers = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_resize_buffers"); + this.GL_MESA_shader_integer_functions = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_shader_integer_functions"); + this.GL_MESA_tile_raster_order = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_tile_raster_order"); + this.GL_MESA_window_pos = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_window_pos"); + this.GL_MESA_ycbcr_texture = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_ycbcr_texture"); + this.GL_NVX_blend_equation_advanced_multi_draw_buffers = hasExtension(version, exts, numExtsI, extsI, "GL_NVX_blend_equation_advanced_multi_draw_buffers"); + this.GL_NVX_conditional_render = hasExtension(version, exts, numExtsI, extsI, "GL_NVX_conditional_render"); + this.GL_NVX_gpu_memory_info = hasExtension(version, exts, numExtsI, extsI, "GL_NVX_gpu_memory_info"); + this.GL_NVX_gpu_multicast2 = hasExtension(version, exts, numExtsI, extsI, "GL_NVX_gpu_multicast2"); + this.GL_NVX_linked_gpu_multicast = hasExtension(version, exts, numExtsI, extsI, "GL_NVX_linked_gpu_multicast"); + this.GL_NVX_progress_fence = hasExtension(version, exts, numExtsI, extsI, "GL_NVX_progress_fence"); + this.GL_NV_alpha_to_coverage_dither_control = hasExtension(version, exts, numExtsI, extsI, "GL_NV_alpha_to_coverage_dither_control"); + this.GL_NV_bindless_multi_draw_indirect = hasExtension(version, exts, numExtsI, extsI, "GL_NV_bindless_multi_draw_indirect"); + this.GL_NV_bindless_multi_draw_indirect_count = hasExtension(version, exts, numExtsI, extsI, "GL_NV_bindless_multi_draw_indirect_count"); + this.GL_NV_bindless_texture = hasExtension(version, exts, numExtsI, extsI, "GL_NV_bindless_texture"); + this.GL_NV_blend_equation_advanced = hasExtension(version, exts, numExtsI, extsI, "GL_NV_blend_equation_advanced"); + this.GL_NV_blend_equation_advanced_coherent = hasExtension(version, exts, numExtsI, extsI, "GL_NV_blend_equation_advanced_coherent"); + this.GL_NV_blend_minmax_factor = hasExtension(version, exts, numExtsI, extsI, "GL_NV_blend_minmax_factor"); + this.GL_NV_blend_square = hasExtension(version, exts, numExtsI, extsI, "GL_NV_blend_square"); + this.GL_NV_clip_space_w_scaling = hasExtension(version, exts, numExtsI, extsI, "GL_NV_clip_space_w_scaling"); + this.GL_NV_command_list = hasExtension(version, exts, numExtsI, extsI, "GL_NV_command_list"); + this.GL_NV_compute_program5 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_compute_program5"); + this.GL_NV_compute_shader_derivatives = hasExtension(version, exts, numExtsI, extsI, "GL_NV_compute_shader_derivatives"); + this.GL_NV_conditional_render = hasExtension(version, exts, numExtsI, extsI, "GL_NV_conditional_render"); + this.GL_NV_conservative_raster = hasExtension(version, exts, numExtsI, extsI, "GL_NV_conservative_raster"); + this.GL_NV_conservative_raster_dilate = hasExtension(version, exts, numExtsI, extsI, "GL_NV_conservative_raster_dilate"); + this.GL_NV_conservative_raster_pre_snap = hasExtension(version, exts, numExtsI, extsI, "GL_NV_conservative_raster_pre_snap"); + this.GL_NV_conservative_raster_pre_snap_triangles = hasExtension(version, exts, numExtsI, extsI, "GL_NV_conservative_raster_pre_snap_triangles"); + this.GL_NV_conservative_raster_underestimation = hasExtension(version, exts, numExtsI, extsI, "GL_NV_conservative_raster_underestimation"); + this.GL_NV_copy_depth_to_color = hasExtension(version, exts, numExtsI, extsI, "GL_NV_copy_depth_to_color"); + this.GL_NV_copy_image = hasExtension(version, exts, numExtsI, extsI, "GL_NV_copy_image"); + this.GL_NV_deep_texture3D = hasExtension(version, exts, numExtsI, extsI, "GL_NV_deep_texture3D"); + this.GL_NV_depth_buffer_float = hasExtension(version, exts, numExtsI, extsI, "GL_NV_depth_buffer_float"); + this.GL_NV_depth_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_NV_depth_clamp"); + this.GL_NV_draw_texture = hasExtension(version, exts, numExtsI, extsI, "GL_NV_draw_texture"); + this.GL_NV_draw_vulkan_image = hasExtension(version, exts, numExtsI, extsI, "GL_NV_draw_vulkan_image"); + this.GL_NV_evaluators = hasExtension(version, exts, numExtsI, extsI, "GL_NV_evaluators"); + this.GL_NV_explicit_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_NV_explicit_multisample"); + this.GL_NV_fence = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fence"); + this.GL_NV_fill_rectangle = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fill_rectangle"); + this.GL_NV_float_buffer = hasExtension(version, exts, numExtsI, extsI, "GL_NV_float_buffer"); + this.GL_NV_fog_distance = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fog_distance"); + this.GL_NV_fragment_coverage_to_color = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fragment_coverage_to_color"); + this.GL_NV_fragment_program = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fragment_program"); + this.GL_NV_fragment_program2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fragment_program2"); + this.GL_NV_fragment_program4 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fragment_program4"); + this.GL_NV_fragment_program_option = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fragment_program_option"); + this.GL_NV_fragment_shader_barycentric = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fragment_shader_barycentric"); + this.GL_NV_fragment_shader_interlock = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fragment_shader_interlock"); + this.GL_NV_framebuffer_mixed_samples = hasExtension(version, exts, numExtsI, extsI, "GL_NV_framebuffer_mixed_samples"); + this.GL_NV_framebuffer_multisample_coverage = hasExtension(version, exts, numExtsI, extsI, "GL_NV_framebuffer_multisample_coverage"); + this.GL_NV_geometry_program4 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_geometry_program4"); + this.GL_NV_geometry_shader4 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_geometry_shader4"); + this.GL_NV_geometry_shader_passthrough = hasExtension(version, exts, numExtsI, extsI, "GL_NV_geometry_shader_passthrough"); + this.GL_NV_gpu_multicast = hasExtension(version, exts, numExtsI, extsI, "GL_NV_gpu_multicast"); + this.GL_NV_gpu_program4 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_gpu_program4"); + this.GL_NV_gpu_program5 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_gpu_program5"); + this.GL_NV_gpu_program5_mem_extended = hasExtension(version, exts, numExtsI, extsI, "GL_NV_gpu_program5_mem_extended"); + this.GL_NV_gpu_shader5 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_gpu_shader5"); + this.GL_NV_half_float = hasExtension(version, exts, numExtsI, extsI, "GL_NV_half_float"); + this.GL_NV_internalformat_sample_query = hasExtension(version, exts, numExtsI, extsI, "GL_NV_internalformat_sample_query"); + this.GL_NV_light_max_exponent = hasExtension(version, exts, numExtsI, extsI, "GL_NV_light_max_exponent"); + this.GL_NV_memory_attachment = hasExtension(version, exts, numExtsI, extsI, "GL_NV_memory_attachment"); + this.GL_NV_memory_object_sparse = hasExtension(version, exts, numExtsI, extsI, "GL_NV_memory_object_sparse"); + this.GL_NV_mesh_shader = hasExtension(version, exts, numExtsI, extsI, "GL_NV_mesh_shader"); + this.GL_NV_multisample_coverage = hasExtension(version, exts, numExtsI, extsI, "GL_NV_multisample_coverage"); + this.GL_NV_multisample_filter_hint = hasExtension(version, exts, numExtsI, extsI, "GL_NV_multisample_filter_hint"); + this.GL_NV_occlusion_query = hasExtension(version, exts, numExtsI, extsI, "GL_NV_occlusion_query"); + this.GL_NV_packed_depth_stencil = hasExtension(version, exts, numExtsI, extsI, "GL_NV_packed_depth_stencil"); + this.GL_NV_parameter_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_NV_parameter_buffer_object"); + this.GL_NV_parameter_buffer_object2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_parameter_buffer_object2"); + this.GL_NV_path_rendering = hasExtension(version, exts, numExtsI, extsI, "GL_NV_path_rendering"); + this.GL_NV_path_rendering_shared_edge = hasExtension(version, exts, numExtsI, extsI, "GL_NV_path_rendering_shared_edge"); + this.GL_NV_pixel_data_range = hasExtension(version, exts, numExtsI, extsI, "GL_NV_pixel_data_range"); + this.GL_NV_point_sprite = hasExtension(version, exts, numExtsI, extsI, "GL_NV_point_sprite"); + this.GL_NV_present_video = hasExtension(version, exts, numExtsI, extsI, "GL_NV_present_video"); + this.GL_NV_primitive_restart = hasExtension(version, exts, numExtsI, extsI, "GL_NV_primitive_restart"); + this.GL_NV_primitive_shading_rate = hasExtension(version, exts, numExtsI, extsI, "GL_NV_primitive_shading_rate"); + this.GL_NV_query_resource = hasExtension(version, exts, numExtsI, extsI, "GL_NV_query_resource"); + this.GL_NV_query_resource_tag = hasExtension(version, exts, numExtsI, extsI, "GL_NV_query_resource_tag"); + this.GL_NV_register_combiners = hasExtension(version, exts, numExtsI, extsI, "GL_NV_register_combiners"); + this.GL_NV_register_combiners2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_register_combiners2"); + this.GL_NV_representative_fragment_test = hasExtension(version, exts, numExtsI, extsI, "GL_NV_representative_fragment_test"); + this.GL_NV_robustness_video_memory_purge = hasExtension(version, exts, numExtsI, extsI, "GL_NV_robustness_video_memory_purge"); + this.GL_NV_sample_locations = hasExtension(version, exts, numExtsI, extsI, "GL_NV_sample_locations"); + this.GL_NV_sample_mask_override_coverage = hasExtension(version, exts, numExtsI, extsI, "GL_NV_sample_mask_override_coverage"); + this.GL_NV_scissor_exclusive = hasExtension(version, exts, numExtsI, extsI, "GL_NV_scissor_exclusive"); + this.GL_NV_shader_atomic_counters = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_atomic_counters"); + this.GL_NV_shader_atomic_float = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_atomic_float"); + this.GL_NV_shader_atomic_float64 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_atomic_float64"); + this.GL_NV_shader_atomic_fp16_vector = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_atomic_fp16_vector"); + this.GL_NV_shader_atomic_int64 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_atomic_int64"); + this.GL_NV_shader_buffer_load = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_buffer_load"); + this.GL_NV_shader_buffer_store = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_buffer_store"); + this.GL_NV_shader_storage_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_storage_buffer_object"); + this.GL_NV_shader_subgroup_partitioned = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_subgroup_partitioned"); + this.GL_NV_shader_texture_footprint = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_texture_footprint"); + this.GL_NV_shader_thread_group = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_thread_group"); + this.GL_NV_shader_thread_shuffle = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_thread_shuffle"); + this.GL_NV_shading_rate_image = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shading_rate_image"); + this.GL_NV_stereo_view_rendering = hasExtension(version, exts, numExtsI, extsI, "GL_NV_stereo_view_rendering"); + this.GL_NV_tessellation_program5 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_tessellation_program5"); + this.GL_NV_texgen_emboss = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texgen_emboss"); + this.GL_NV_texgen_reflection = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texgen_reflection"); + this.GL_NV_texture_barrier = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_barrier"); + this.GL_NV_texture_compression_vtc = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_compression_vtc"); + this.GL_NV_texture_env_combine4 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_env_combine4"); + this.GL_NV_texture_expand_normal = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_expand_normal"); + this.GL_NV_texture_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_multisample"); + this.GL_NV_texture_rectangle = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_rectangle"); + this.GL_NV_texture_rectangle_compressed = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_rectangle_compressed"); + this.GL_NV_texture_shader = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_shader"); + this.GL_NV_texture_shader2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_shader2"); + this.GL_NV_texture_shader3 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_shader3"); + this.GL_NV_timeline_semaphore = hasExtension(version, exts, numExtsI, extsI, "GL_NV_timeline_semaphore"); + this.GL_NV_transform_feedback = hasExtension(version, exts, numExtsI, extsI, "GL_NV_transform_feedback"); + this.GL_NV_transform_feedback2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_transform_feedback2"); + this.GL_NV_uniform_buffer_unified_memory = hasExtension(version, exts, numExtsI, extsI, "GL_NV_uniform_buffer_unified_memory"); + this.GL_NV_vdpau_interop = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vdpau_interop"); + this.GL_NV_vdpau_interop2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vdpau_interop2"); + this.GL_NV_vertex_array_range = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_array_range"); + this.GL_NV_vertex_array_range2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_array_range2"); + this.GL_NV_vertex_attrib_integer_64bit = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_attrib_integer_64bit"); + this.GL_NV_vertex_buffer_unified_memory = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_buffer_unified_memory"); + this.GL_NV_vertex_program = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_program"); + this.GL_NV_vertex_program1_1 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_program1_1"); + this.GL_NV_vertex_program2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_program2"); + this.GL_NV_vertex_program2_option = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_program2_option"); + this.GL_NV_vertex_program3 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_program3"); + this.GL_NV_vertex_program4 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_program4"); + this.GL_NV_video_capture = hasExtension(version, exts, numExtsI, extsI, "GL_NV_video_capture"); + this.GL_NV_viewport_array2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_viewport_array2"); + this.GL_NV_viewport_swizzle = hasExtension(version, exts, numExtsI, extsI, "GL_NV_viewport_swizzle"); + this.GL_OML_interlace = hasExtension(version, exts, numExtsI, extsI, "GL_OML_interlace"); + this.GL_OML_resample = hasExtension(version, exts, numExtsI, extsI, "GL_OML_resample"); + this.GL_OML_subsample = hasExtension(version, exts, numExtsI, extsI, "GL_OML_subsample"); + this.GL_OVR_multiview = hasExtension(version, exts, numExtsI, extsI, "GL_OVR_multiview"); + this.GL_OVR_multiview2 = hasExtension(version, exts, numExtsI, extsI, "GL_OVR_multiview2"); + this.GL_PGI_misc_hints = hasExtension(version, exts, numExtsI, extsI, "GL_PGI_misc_hints"); + this.GL_PGI_vertex_hints = hasExtension(version, exts, numExtsI, extsI, "GL_PGI_vertex_hints"); + this.GL_REND_screen_coordinates = hasExtension(version, exts, numExtsI, extsI, "GL_REND_screen_coordinates"); + this.GL_S3_s3tc = hasExtension(version, exts, numExtsI, extsI, "GL_S3_s3tc"); + this.GL_SGIS_detail_texture = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_detail_texture"); + this.GL_SGIS_fog_function = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_fog_function"); + this.GL_SGIS_generate_mipmap = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_generate_mipmap"); + this.GL_SGIS_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_multisample"); + this.GL_SGIS_pixel_texture = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_pixel_texture"); + this.GL_SGIS_point_line_texgen = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_point_line_texgen"); + this.GL_SGIS_point_parameters = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_point_parameters"); + this.GL_SGIS_sharpen_texture = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_sharpen_texture"); + this.GL_SGIS_texture4D = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_texture4D"); + this.GL_SGIS_texture_border_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_texture_border_clamp"); + this.GL_SGIS_texture_color_mask = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_texture_color_mask"); + this.GL_SGIS_texture_edge_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_texture_edge_clamp"); + this.GL_SGIS_texture_filter4 = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_texture_filter4"); + this.GL_SGIS_texture_lod = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_texture_lod"); + this.GL_SGIS_texture_select = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_texture_select"); + this.GL_SGIX_async = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_async"); + this.GL_SGIX_async_histogram = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_async_histogram"); + this.GL_SGIX_async_pixel = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_async_pixel"); + this.GL_SGIX_blend_alpha_minmax = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_blend_alpha_minmax"); + this.GL_SGIX_calligraphic_fragment = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_calligraphic_fragment"); + this.GL_SGIX_clipmap = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_clipmap"); + this.GL_SGIX_convolution_accuracy = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_convolution_accuracy"); + this.GL_SGIX_depth_pass_instrument = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_depth_pass_instrument"); + this.GL_SGIX_depth_texture = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_depth_texture"); + this.GL_SGIX_flush_raster = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_flush_raster"); + this.GL_SGIX_fog_offset = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_fog_offset"); + this.GL_SGIX_fragment_lighting = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_fragment_lighting"); + this.GL_SGIX_framezoom = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_framezoom"); + this.GL_SGIX_igloo_interface = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_igloo_interface"); + this.GL_SGIX_instruments = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_instruments"); + this.GL_SGIX_interlace = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_interlace"); + this.GL_SGIX_ir_instrument1 = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_ir_instrument1"); + this.GL_SGIX_list_priority = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_list_priority"); + this.GL_SGIX_pixel_texture = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_pixel_texture"); + this.GL_SGIX_pixel_tiles = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_pixel_tiles"); + this.GL_SGIX_polynomial_ffd = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_polynomial_ffd"); + this.GL_SGIX_reference_plane = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_reference_plane"); + this.GL_SGIX_resample = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_resample"); + this.GL_SGIX_scalebias_hint = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_scalebias_hint"); + this.GL_SGIX_shadow = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_shadow"); + this.GL_SGIX_shadow_ambient = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_shadow_ambient"); + this.GL_SGIX_sprite = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_sprite"); + this.GL_SGIX_subsample = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_subsample"); + this.GL_SGIX_tag_sample_buffer = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_tag_sample_buffer"); + this.GL_SGIX_texture_add_env = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_texture_add_env"); + this.GL_SGIX_texture_coordinate_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_texture_coordinate_clamp"); + this.GL_SGIX_texture_lod_bias = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_texture_lod_bias"); + this.GL_SGIX_texture_multi_buffer = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_texture_multi_buffer"); + this.GL_SGIX_texture_scale_bias = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_texture_scale_bias"); + this.GL_SGIX_vertex_preclip = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_vertex_preclip"); + this.GL_SGIX_ycrcb = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_ycrcb"); + this.GL_SGIX_ycrcb_subsample = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_ycrcb_subsample"); + this.GL_SGIX_ycrcba = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_ycrcba"); + this.GL_SGI_color_matrix = hasExtension(version, exts, numExtsI, extsI, "GL_SGI_color_matrix"); + this.GL_SGI_color_table = hasExtension(version, exts, numExtsI, extsI, "GL_SGI_color_table"); + this.GL_SGI_texture_color_table = hasExtension(version, exts, numExtsI, extsI, "GL_SGI_texture_color_table"); + this.GL_SUNX_constant_data = hasExtension(version, exts, numExtsI, extsI, "GL_SUNX_constant_data"); + this.GL_SUN_convolution_border_modes = hasExtension(version, exts, numExtsI, extsI, "GL_SUN_convolution_border_modes"); + this.GL_SUN_global_alpha = hasExtension(version, exts, numExtsI, extsI, "GL_SUN_global_alpha"); + this.GL_SUN_mesh_array = hasExtension(version, exts, numExtsI, extsI, "GL_SUN_mesh_array"); + this.GL_SUN_slice_accum = hasExtension(version, exts, numExtsI, extsI, "GL_SUN_slice_accum"); + this.GL_SUN_triangle_list = hasExtension(version, exts, numExtsI, extsI, "GL_SUN_triangle_list"); + this.GL_SUN_vertex = hasExtension(version, exts, numExtsI, extsI, "GL_SUN_vertex"); + this.GL_WIN_phong_shading = hasExtension(version, exts, numExtsI, extsI, "GL_WIN_phong_shading"); + this.GL_WIN_specular_fog = hasExtension(version, exts, numExtsI, extsI, "GL_WIN_specular_fog"); + + return true; + } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtFinder.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtFinder.java index 40052e76..07e0cba5 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtFinder.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtFinder.java @@ -25,18 +25,18 @@ import static java.lang.foreign.ValueLayout.JAVA_INT; /** - * The findExtensionGL method is moved to here to bring better performance for the IDE. + * Utilities * * @author squid233 * @since 0.1.0 */ final class GLExtFinder { - private static boolean getExtensions(SegmentAllocator allocator, - int version, - MemorySegment outExts, - MemorySegment outNumExtsI, - MemorySegment[] outExtsI, - GLCapabilities caps) { + static boolean getExtensions(SegmentAllocator allocator, + int version, + MemorySegment outExts, + MemorySegment outNumExtsI, + MemorySegment[] outExtsI, + GLCapabilities caps) { if (GLLoader.versionMajor(version) < 3) { if (caps.glGetString == null) { return false; @@ -65,7 +65,7 @@ private static boolean getExtensions(SegmentAllocator allocator, return true; } - private static boolean hasExtension(int version, String exts, int numExtsI, MemorySegment extsI, String ext) { + static boolean hasExtension(int version, String exts, int numExtsI, MemorySegment extsI, String ext) { if (GLLoader.versionMajor(version) < 3) { if (exts == null || ext == null) { return false; @@ -79,634 +79,4 @@ private static boolean hasExtension(int version, String exts, int numExtsI, Memo } return false; } - - static boolean findExtensionsGL(GLExtCaps extCaps, int version, SegmentAllocator allocator, GLCapabilities caps) { - var pExts = allocator.allocate(ADDRESS); - var pNumExtsI = allocator.allocate(JAVA_INT); - var pExtsI = new MemorySegment[1]; - if (!getExtensions(allocator, version, pExts, pNumExtsI, pExtsI, caps)) return false; - - String exts = pExts.getUtf8String(0); - int numExtsI = pNumExtsI.get(JAVA_INT, 0); - var extsI = pExtsI[0]; - - extCaps.GL_3DFX_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_3DFX_multisample"); - extCaps.GL_3DFX_tbuffer = hasExtension(version, exts, numExtsI, extsI, "GL_3DFX_tbuffer"); - extCaps.GL_3DFX_texture_compression_FXT1 = hasExtension(version, exts, numExtsI, extsI, "GL_3DFX_texture_compression_FXT1"); - extCaps.GL_AMD_blend_minmax_factor = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_blend_minmax_factor"); - extCaps.GL_AMD_conservative_depth = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_conservative_depth"); - extCaps.GL_AMD_debug_output = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_debug_output"); - extCaps.GL_AMD_depth_clamp_separate = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_depth_clamp_separate"); - extCaps.GL_AMD_draw_buffers_blend = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_draw_buffers_blend"); - extCaps.GL_AMD_framebuffer_multisample_advanced = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_framebuffer_multisample_advanced"); - extCaps.GL_AMD_framebuffer_sample_positions = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_framebuffer_sample_positions"); - extCaps.GL_AMD_gcn_shader = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_gcn_shader"); - extCaps.GL_AMD_gpu_shader_half_float = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_gpu_shader_half_float"); - extCaps.GL_AMD_gpu_shader_int16 = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_gpu_shader_int16"); - extCaps.GL_AMD_gpu_shader_int64 = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_gpu_shader_int64"); - extCaps.GL_AMD_interleaved_elements = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_interleaved_elements"); - extCaps.GL_AMD_multi_draw_indirect = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_multi_draw_indirect"); - extCaps.GL_AMD_name_gen_delete = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_name_gen_delete"); - extCaps.GL_AMD_occlusion_query_event = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_occlusion_query_event"); - extCaps.GL_AMD_performance_monitor = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_performance_monitor"); - extCaps.GL_AMD_pinned_memory = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_pinned_memory"); - extCaps.GL_AMD_query_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_query_buffer_object"); - extCaps.GL_AMD_sample_positions = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_sample_positions"); - extCaps.GL_AMD_seamless_cubemap_per_texture = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_seamless_cubemap_per_texture"); - extCaps.GL_AMD_shader_atomic_counter_ops = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_shader_atomic_counter_ops"); - extCaps.GL_AMD_shader_ballot = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_shader_ballot"); - extCaps.GL_AMD_shader_explicit_vertex_parameter = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_shader_explicit_vertex_parameter"); - extCaps.GL_AMD_shader_gpu_shader_half_float_fetch = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_shader_gpu_shader_half_float_fetch"); - extCaps.GL_AMD_shader_image_load_store_lod = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_shader_image_load_store_lod"); - extCaps.GL_AMD_shader_stencil_export = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_shader_stencil_export"); - extCaps.GL_AMD_shader_trinary_minmax = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_shader_trinary_minmax"); - extCaps.GL_AMD_sparse_texture = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_sparse_texture"); - extCaps.GL_AMD_stencil_operation_extended = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_stencil_operation_extended"); - extCaps.GL_AMD_texture_gather_bias_lod = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_texture_gather_bias_lod"); - extCaps.GL_AMD_texture_texture4 = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_texture_texture4"); - extCaps.GL_AMD_transform_feedback3_lines_triangles = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_transform_feedback3_lines_triangles"); - extCaps.GL_AMD_transform_feedback4 = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_transform_feedback4"); - extCaps.GL_AMD_vertex_shader_layer = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_vertex_shader_layer"); - extCaps.GL_AMD_vertex_shader_tessellator = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_vertex_shader_tessellator"); - extCaps.GL_AMD_vertex_shader_viewport_index = hasExtension(version, exts, numExtsI, extsI, "GL_AMD_vertex_shader_viewport_index"); - extCaps.GL_APPLE_aux_depth_stencil = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_aux_depth_stencil"); - extCaps.GL_APPLE_client_storage = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_client_storage"); - extCaps.GL_APPLE_element_array = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_element_array"); - extCaps.GL_APPLE_fence = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_fence"); - extCaps.GL_APPLE_float_pixels = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_float_pixels"); - extCaps.GL_APPLE_flush_buffer_range = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_flush_buffer_range"); - extCaps.GL_APPLE_object_purgeable = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_object_purgeable"); - extCaps.GL_APPLE_rgb_422 = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_rgb_422"); - extCaps.GL_APPLE_row_bytes = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_row_bytes"); - extCaps.GL_APPLE_specular_vector = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_specular_vector"); - extCaps.GL_APPLE_texture_range = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_texture_range"); - extCaps.GL_APPLE_transform_hint = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_transform_hint"); - extCaps.GL_APPLE_vertex_array_object = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_vertex_array_object"); - extCaps.GL_APPLE_vertex_array_range = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_vertex_array_range"); - extCaps.GL_APPLE_vertex_program_evaluators = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_vertex_program_evaluators"); - extCaps.GL_APPLE_ycbcr_422 = hasExtension(version, exts, numExtsI, extsI, "GL_APPLE_ycbcr_422"); - extCaps.GL_ARB_ES2_compatibility = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_ES2_compatibility"); - extCaps.GL_ARB_ES3_1_compatibility = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_ES3_1_compatibility"); - extCaps.GL_ARB_ES3_2_compatibility = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_ES3_2_compatibility"); - extCaps.GL_ARB_ES3_compatibility = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_ES3_compatibility"); - extCaps.GL_ARB_arrays_of_arrays = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_arrays_of_arrays"); - extCaps.GL_ARB_base_instance = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_base_instance"); - extCaps.GL_ARB_bindless_texture = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_bindless_texture"); - extCaps.GL_ARB_blend_func_extended = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_blend_func_extended"); - extCaps.GL_ARB_buffer_storage = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_buffer_storage"); - extCaps.GL_ARB_cl_event = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_cl_event"); - extCaps.GL_ARB_clear_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_clear_buffer_object"); - extCaps.GL_ARB_clear_texture = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_clear_texture"); - extCaps.GL_ARB_clip_control = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_clip_control"); - extCaps.GL_ARB_color_buffer_float = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_color_buffer_float"); - extCaps.GL_ARB_compatibility = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_compatibility"); - extCaps.GL_ARB_compressed_texture_pixel_storage = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_compressed_texture_pixel_storage"); - extCaps.GL_ARB_compute_shader = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_compute_shader"); - extCaps.GL_ARB_compute_variable_group_size = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_compute_variable_group_size"); - extCaps.GL_ARB_conditional_render_inverted = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_conditional_render_inverted"); - extCaps.GL_ARB_conservative_depth = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_conservative_depth"); - extCaps.GL_ARB_copy_buffer = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_copy_buffer"); - extCaps.GL_ARB_copy_image = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_copy_image"); - extCaps.GL_ARB_cull_distance = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_cull_distance"); - extCaps.GL_ARB_debug_output = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_debug_output"); - extCaps.GL_ARB_depth_buffer_float = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_depth_buffer_float"); - extCaps.GL_ARB_depth_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_depth_clamp"); - extCaps.GL_ARB_depth_texture = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_depth_texture"); - extCaps.GL_ARB_derivative_control = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_derivative_control"); - extCaps.GL_ARB_direct_state_access = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_direct_state_access"); - extCaps.GL_ARB_draw_buffers = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_draw_buffers"); - extCaps.GL_ARB_draw_buffers_blend = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_draw_buffers_blend"); - extCaps.GL_ARB_draw_elements_base_vertex = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_draw_elements_base_vertex"); - extCaps.GL_ARB_draw_indirect = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_draw_indirect"); - extCaps.GL_ARB_draw_instanced = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_draw_instanced"); - extCaps.GL_ARB_enhanced_layouts = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_enhanced_layouts"); - extCaps.GL_ARB_explicit_attrib_location = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_explicit_attrib_location"); - extCaps.GL_ARB_explicit_uniform_location = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_explicit_uniform_location"); - extCaps.GL_ARB_fragment_coord_conventions = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_fragment_coord_conventions"); - extCaps.GL_ARB_fragment_layer_viewport = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_fragment_layer_viewport"); - extCaps.GL_ARB_fragment_program = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_fragment_program"); - extCaps.GL_ARB_fragment_program_shadow = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_fragment_program_shadow"); - extCaps.GL_ARB_fragment_shader = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_fragment_shader"); - extCaps.GL_ARB_fragment_shader_interlock = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_fragment_shader_interlock"); - extCaps.GL_ARB_framebuffer_no_attachments = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_framebuffer_no_attachments"); - extCaps.GL_ARB_framebuffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_framebuffer_object"); - extCaps.GL_ARB_framebuffer_sRGB = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_framebuffer_sRGB"); - extCaps.GL_ARB_geometry_shader4 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_geometry_shader4"); - extCaps.GL_ARB_get_program_binary = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_get_program_binary"); - extCaps.GL_ARB_get_texture_sub_image = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_get_texture_sub_image"); - extCaps.GL_ARB_gl_spirv = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_gl_spirv"); - extCaps.GL_ARB_gpu_shader5 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_gpu_shader5"); - extCaps.GL_ARB_gpu_shader_fp64 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_gpu_shader_fp64"); - extCaps.GL_ARB_gpu_shader_int64 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_gpu_shader_int64"); - extCaps.GL_ARB_half_float_pixel = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_half_float_pixel"); - extCaps.GL_ARB_half_float_vertex = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_half_float_vertex"); - extCaps.GL_ARB_imaging = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_imaging"); - extCaps.GL_ARB_indirect_parameters = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_indirect_parameters"); - extCaps.GL_ARB_instanced_arrays = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_instanced_arrays"); - extCaps.GL_ARB_internalformat_query = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_internalformat_query"); - extCaps.GL_ARB_internalformat_query2 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_internalformat_query2"); - extCaps.GL_ARB_invalidate_subdata = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_invalidate_subdata"); - extCaps.GL_ARB_map_buffer_alignment = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_map_buffer_alignment"); - extCaps.GL_ARB_map_buffer_range = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_map_buffer_range"); - extCaps.GL_ARB_matrix_palette = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_matrix_palette"); - extCaps.GL_ARB_multi_bind = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_multi_bind"); - extCaps.GL_ARB_multi_draw_indirect = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_multi_draw_indirect"); - extCaps.GL_ARB_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_multisample"); - extCaps.GL_ARB_multitexture = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_multitexture"); - extCaps.GL_ARB_occlusion_query = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_occlusion_query"); - extCaps.GL_ARB_occlusion_query2 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_occlusion_query2"); - extCaps.GL_ARB_parallel_shader_compile = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_parallel_shader_compile"); - extCaps.GL_ARB_pipeline_statistics_query = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_pipeline_statistics_query"); - extCaps.GL_ARB_pixel_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_pixel_buffer_object"); - extCaps.GL_ARB_point_parameters = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_point_parameters"); - extCaps.GL_ARB_point_sprite = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_point_sprite"); - extCaps.GL_ARB_polygon_offset_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_polygon_offset_clamp"); - extCaps.GL_ARB_post_depth_coverage = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_post_depth_coverage"); - extCaps.GL_ARB_program_interface_query = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_program_interface_query"); - extCaps.GL_ARB_provoking_vertex = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_provoking_vertex"); - extCaps.GL_ARB_query_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_query_buffer_object"); - extCaps.GL_ARB_robust_buffer_access_behavior = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_robust_buffer_access_behavior"); - extCaps.GL_ARB_robustness = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_robustness"); - extCaps.GL_ARB_robustness_isolation = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_robustness_isolation"); - extCaps.GL_ARB_sample_locations = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_sample_locations"); - extCaps.GL_ARB_sample_shading = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_sample_shading"); - extCaps.GL_ARB_sampler_objects = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_sampler_objects"); - extCaps.GL_ARB_seamless_cube_map = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_seamless_cube_map"); - extCaps.GL_ARB_seamless_cubemap_per_texture = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_seamless_cubemap_per_texture"); - extCaps.GL_ARB_separate_shader_objects = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_separate_shader_objects"); - extCaps.GL_ARB_shader_atomic_counter_ops = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_atomic_counter_ops"); - extCaps.GL_ARB_shader_atomic_counters = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_atomic_counters"); - extCaps.GL_ARB_shader_ballot = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_ballot"); - extCaps.GL_ARB_shader_bit_encoding = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_bit_encoding"); - extCaps.GL_ARB_shader_clock = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_clock"); - extCaps.GL_ARB_shader_draw_parameters = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_draw_parameters"); - extCaps.GL_ARB_shader_group_vote = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_group_vote"); - extCaps.GL_ARB_shader_image_load_store = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_image_load_store"); - extCaps.GL_ARB_shader_image_size = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_image_size"); - extCaps.GL_ARB_shader_objects = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_objects"); - extCaps.GL_ARB_shader_precision = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_precision"); - extCaps.GL_ARB_shader_stencil_export = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_stencil_export"); - extCaps.GL_ARB_shader_storage_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_storage_buffer_object"); - extCaps.GL_ARB_shader_subroutine = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_subroutine"); - extCaps.GL_ARB_shader_texture_image_samples = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_texture_image_samples"); - extCaps.GL_ARB_shader_texture_lod = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_texture_lod"); - extCaps.GL_ARB_shader_viewport_layer_array = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shader_viewport_layer_array"); - extCaps.GL_ARB_shading_language_100 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shading_language_100"); - extCaps.GL_ARB_shading_language_420pack = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shading_language_420pack"); - extCaps.GL_ARB_shading_language_include = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shading_language_include"); - extCaps.GL_ARB_shading_language_packing = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shading_language_packing"); - extCaps.GL_ARB_shadow = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shadow"); - extCaps.GL_ARB_shadow_ambient = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_shadow_ambient"); - extCaps.GL_ARB_sparse_buffer = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_sparse_buffer"); - extCaps.GL_ARB_sparse_texture = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_sparse_texture"); - extCaps.GL_ARB_sparse_texture2 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_sparse_texture2"); - extCaps.GL_ARB_sparse_texture_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_sparse_texture_clamp"); - extCaps.GL_ARB_spirv_extensions = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_spirv_extensions"); - extCaps.GL_ARB_stencil_texturing = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_stencil_texturing"); - extCaps.GL_ARB_sync = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_sync"); - extCaps.GL_ARB_tessellation_shader = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_tessellation_shader"); - extCaps.GL_ARB_texture_barrier = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_barrier"); - extCaps.GL_ARB_texture_border_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_border_clamp"); - extCaps.GL_ARB_texture_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_buffer_object"); - extCaps.GL_ARB_texture_buffer_object_rgb32 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_buffer_object_rgb32"); - extCaps.GL_ARB_texture_buffer_range = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_buffer_range"); - extCaps.GL_ARB_texture_compression = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_compression"); - extCaps.GL_ARB_texture_compression_bptc = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_compression_bptc"); - extCaps.GL_ARB_texture_compression_rgtc = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_compression_rgtc"); - extCaps.GL_ARB_texture_cube_map = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_cube_map"); - extCaps.GL_ARB_texture_cube_map_array = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_cube_map_array"); - extCaps.GL_ARB_texture_env_add = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_env_add"); - extCaps.GL_ARB_texture_env_combine = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_env_combine"); - extCaps.GL_ARB_texture_env_crossbar = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_env_crossbar"); - extCaps.GL_ARB_texture_env_dot3 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_env_dot3"); - extCaps.GL_ARB_texture_filter_anisotropic = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_filter_anisotropic"); - extCaps.GL_ARB_texture_filter_minmax = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_filter_minmax"); - extCaps.GL_ARB_texture_float = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_float"); - extCaps.GL_ARB_texture_gather = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_gather"); - extCaps.GL_ARB_texture_mirror_clamp_to_edge = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_mirror_clamp_to_edge"); - extCaps.GL_ARB_texture_mirrored_repeat = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_mirrored_repeat"); - extCaps.GL_ARB_texture_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_multisample"); - extCaps.GL_ARB_texture_non_power_of_two = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_non_power_of_two"); - extCaps.GL_ARB_texture_query_levels = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_query_levels"); - extCaps.GL_ARB_texture_query_lod = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_query_lod"); - extCaps.GL_ARB_texture_rectangle = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_rectangle"); - extCaps.GL_ARB_texture_rg = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_rg"); - extCaps.GL_ARB_texture_rgb10_a2ui = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_rgb10_a2ui"); - extCaps.GL_ARB_texture_stencil8 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_stencil8"); - extCaps.GL_ARB_texture_storage = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_storage"); - extCaps.GL_ARB_texture_storage_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_storage_multisample"); - extCaps.GL_ARB_texture_swizzle = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_swizzle"); - extCaps.GL_ARB_texture_view = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_texture_view"); - extCaps.GL_ARB_timer_query = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_timer_query"); - extCaps.GL_ARB_transform_feedback2 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_transform_feedback2"); - extCaps.GL_ARB_transform_feedback3 = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_transform_feedback3"); - extCaps.GL_ARB_transform_feedback_instanced = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_transform_feedback_instanced"); - extCaps.GL_ARB_transform_feedback_overflow_query = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_transform_feedback_overflow_query"); - extCaps.GL_ARB_transpose_matrix = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_transpose_matrix"); - extCaps.GL_ARB_uniform_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_uniform_buffer_object"); - extCaps.GL_ARB_vertex_array_bgra = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_array_bgra"); - extCaps.GL_ARB_vertex_array_object = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_array_object"); - extCaps.GL_ARB_vertex_attrib_64bit = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_attrib_64bit"); - extCaps.GL_ARB_vertex_attrib_binding = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_attrib_binding"); - extCaps.GL_ARB_vertex_blend = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_blend"); - extCaps.GL_ARB_vertex_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_buffer_object"); - extCaps.GL_ARB_vertex_program = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_program"); - extCaps.GL_ARB_vertex_shader = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_shader"); - extCaps.GL_ARB_vertex_type_10f_11f_11f_rev = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_type_10f_11f_11f_rev"); - extCaps.GL_ARB_vertex_type_2_10_10_10_rev = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_vertex_type_2_10_10_10_rev"); - extCaps.GL_ARB_viewport_array = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_viewport_array"); - extCaps.GL_ARB_window_pos = hasExtension(version, exts, numExtsI, extsI, "GL_ARB_window_pos"); - extCaps.GL_ATI_draw_buffers = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_draw_buffers"); - extCaps.GL_ATI_element_array = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_element_array"); - extCaps.GL_ATI_envmap_bumpmap = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_envmap_bumpmap"); - extCaps.GL_ATI_fragment_shader = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_fragment_shader"); - extCaps.GL_ATI_map_object_buffer = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_map_object_buffer"); - extCaps.GL_ATI_meminfo = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_meminfo"); - extCaps.GL_ATI_pixel_format_float = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_pixel_format_float"); - extCaps.GL_ATI_pn_triangles = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_pn_triangles"); - extCaps.GL_ATI_separate_stencil = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_separate_stencil"); - extCaps.GL_ATI_text_fragment_shader = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_text_fragment_shader"); - extCaps.GL_ATI_texture_env_combine3 = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_texture_env_combine3"); - extCaps.GL_ATI_texture_float = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_texture_float"); - extCaps.GL_ATI_texture_mirror_once = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_texture_mirror_once"); - extCaps.GL_ATI_vertex_array_object = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_vertex_array_object"); - extCaps.GL_ATI_vertex_attrib_array_object = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_vertex_attrib_array_object"); - extCaps.GL_ATI_vertex_streams = hasExtension(version, exts, numExtsI, extsI, "GL_ATI_vertex_streams"); - extCaps.GL_EXT_422_pixels = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_422_pixels"); - extCaps.GL_EXT_EGL_image_storage = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_EGL_image_storage"); - extCaps.GL_EXT_EGL_sync = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_EGL_sync"); - extCaps.GL_EXT_abgr = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_abgr"); - extCaps.GL_EXT_bgra = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_bgra"); - extCaps.GL_EXT_bindable_uniform = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_bindable_uniform"); - extCaps.GL_EXT_blend_color = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_blend_color"); - extCaps.GL_EXT_blend_equation_separate = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_blend_equation_separate"); - extCaps.GL_EXT_blend_func_separate = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_blend_func_separate"); - extCaps.GL_EXT_blend_logic_op = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_blend_logic_op"); - extCaps.GL_EXT_blend_minmax = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_blend_minmax"); - extCaps.GL_EXT_blend_subtract = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_blend_subtract"); - extCaps.GL_EXT_clip_volume_hint = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_clip_volume_hint"); - extCaps.GL_EXT_cmyka = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_cmyka"); - extCaps.GL_EXT_color_subtable = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_color_subtable"); - extCaps.GL_EXT_compiled_vertex_array = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_compiled_vertex_array"); - extCaps.GL_EXT_convolution = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_convolution"); - extCaps.GL_EXT_coordinate_frame = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_coordinate_frame"); - extCaps.GL_EXT_copy_texture = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_copy_texture"); - extCaps.GL_EXT_cull_vertex = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_cull_vertex"); - extCaps.GL_EXT_debug_label = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_debug_label"); - extCaps.GL_EXT_debug_marker = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_debug_marker"); - extCaps.GL_EXT_depth_bounds_test = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_depth_bounds_test"); - extCaps.GL_EXT_direct_state_access = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_direct_state_access"); - extCaps.GL_EXT_draw_buffers2 = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_draw_buffers2"); - extCaps.GL_EXT_draw_instanced = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_draw_instanced"); - extCaps.GL_EXT_draw_range_elements = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_draw_range_elements"); - extCaps.GL_EXT_external_buffer = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_external_buffer"); - extCaps.GL_EXT_fog_coord = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_fog_coord"); - extCaps.GL_EXT_framebuffer_blit = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_framebuffer_blit"); - extCaps.GL_EXT_framebuffer_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_framebuffer_multisample"); - extCaps.GL_EXT_framebuffer_multisample_blit_scaled = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_framebuffer_multisample_blit_scaled"); - extCaps.GL_EXT_framebuffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_framebuffer_object"); - extCaps.GL_EXT_framebuffer_sRGB = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_framebuffer_sRGB"); - extCaps.GL_EXT_geometry_shader4 = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_geometry_shader4"); - extCaps.GL_EXT_gpu_program_parameters = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_gpu_program_parameters"); - extCaps.GL_EXT_gpu_shader4 = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_gpu_shader4"); - extCaps.GL_EXT_histogram = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_histogram"); - extCaps.GL_EXT_index_array_formats = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_index_array_formats"); - extCaps.GL_EXT_index_func = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_index_func"); - extCaps.GL_EXT_index_material = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_index_material"); - extCaps.GL_EXT_index_texture = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_index_texture"); - extCaps.GL_EXT_light_texture = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_light_texture"); - extCaps.GL_EXT_memory_object = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_memory_object"); - extCaps.GL_EXT_memory_object_fd = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_memory_object_fd"); - extCaps.GL_EXT_memory_object_win32 = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_memory_object_win32"); - extCaps.GL_EXT_misc_attribute = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_misc_attribute"); - extCaps.GL_EXT_multi_draw_arrays = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_multi_draw_arrays"); - extCaps.GL_EXT_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_multisample"); - extCaps.GL_EXT_multiview_tessellation_geometry_shader = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_multiview_tessellation_geometry_shader"); - extCaps.GL_EXT_multiview_texture_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_multiview_texture_multisample"); - extCaps.GL_EXT_multiview_timer_query = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_multiview_timer_query"); - extCaps.GL_EXT_packed_depth_stencil = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_packed_depth_stencil"); - extCaps.GL_EXT_packed_float = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_packed_float"); - extCaps.GL_EXT_packed_pixels = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_packed_pixels"); - extCaps.GL_EXT_paletted_texture = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_paletted_texture"); - extCaps.GL_EXT_pixel_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_pixel_buffer_object"); - extCaps.GL_EXT_pixel_transform = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_pixel_transform"); - extCaps.GL_EXT_pixel_transform_color_table = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_pixel_transform_color_table"); - extCaps.GL_EXT_point_parameters = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_point_parameters"); - extCaps.GL_EXT_polygon_offset = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_polygon_offset"); - extCaps.GL_EXT_polygon_offset_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_polygon_offset_clamp"); - extCaps.GL_EXT_post_depth_coverage = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_post_depth_coverage"); - extCaps.GL_EXT_provoking_vertex = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_provoking_vertex"); - extCaps.GL_EXT_raster_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_raster_multisample"); - extCaps.GL_EXT_rescale_normal = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_rescale_normal"); - extCaps.GL_EXT_secondary_color = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_secondary_color"); - extCaps.GL_EXT_semaphore = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_semaphore"); - extCaps.GL_EXT_semaphore_fd = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_semaphore_fd"); - extCaps.GL_EXT_semaphore_win32 = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_semaphore_win32"); - extCaps.GL_EXT_separate_shader_objects = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_separate_shader_objects"); - extCaps.GL_EXT_separate_specular_color = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_separate_specular_color"); - extCaps.GL_EXT_shader_framebuffer_fetch = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_shader_framebuffer_fetch"); - extCaps.GL_EXT_shader_framebuffer_fetch_non_coherent = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_shader_framebuffer_fetch_non_coherent"); - extCaps.GL_EXT_shader_image_load_formatted = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_shader_image_load_formatted"); - extCaps.GL_EXT_shader_image_load_store = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_shader_image_load_store"); - extCaps.GL_EXT_shader_integer_mix = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_shader_integer_mix"); - extCaps.GL_EXT_shadow_funcs = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_shadow_funcs"); - extCaps.GL_EXT_shared_texture_palette = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_shared_texture_palette"); - extCaps.GL_EXT_sparse_texture2 = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_sparse_texture2"); - extCaps.GL_EXT_stencil_clear_tag = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_stencil_clear_tag"); - extCaps.GL_EXT_stencil_two_side = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_stencil_two_side"); - extCaps.GL_EXT_stencil_wrap = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_stencil_wrap"); - extCaps.GL_EXT_subtexture = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_subtexture"); - extCaps.GL_EXT_texture = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture"); - extCaps.GL_EXT_texture3D = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture3D"); - extCaps.GL_EXT_texture_array = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_array"); - extCaps.GL_EXT_texture_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_buffer_object"); - extCaps.GL_EXT_texture_compression_latc = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_compression_latc"); - extCaps.GL_EXT_texture_compression_rgtc = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_compression_rgtc"); - extCaps.GL_EXT_texture_compression_s3tc = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_compression_s3tc"); - extCaps.GL_EXT_texture_cube_map = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_cube_map"); - extCaps.GL_EXT_texture_env_add = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_env_add"); - extCaps.GL_EXT_texture_env_combine = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_env_combine"); - extCaps.GL_EXT_texture_env_dot3 = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_env_dot3"); - extCaps.GL_EXT_texture_filter_anisotropic = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_filter_anisotropic"); - extCaps.GL_EXT_texture_filter_minmax = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_filter_minmax"); - extCaps.GL_EXT_texture_integer = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_integer"); - extCaps.GL_EXT_texture_lod_bias = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_lod_bias"); - extCaps.GL_EXT_texture_mirror_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_mirror_clamp"); - extCaps.GL_EXT_texture_object = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_object"); - extCaps.GL_EXT_texture_perturb_normal = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_perturb_normal"); - extCaps.GL_EXT_texture_sRGB = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_sRGB"); - extCaps.GL_EXT_texture_sRGB_R8 = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_sRGB_R8"); - extCaps.GL_EXT_texture_sRGB_RG8 = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_sRGB_RG8"); - extCaps.GL_EXT_texture_sRGB_decode = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_sRGB_decode"); - extCaps.GL_EXT_texture_shadow_lod = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_shadow_lod"); - extCaps.GL_EXT_texture_shared_exponent = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_shared_exponent"); - extCaps.GL_EXT_texture_snorm = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_snorm"); - extCaps.GL_EXT_texture_storage = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_storage"); - extCaps.GL_EXT_texture_swizzle = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_texture_swizzle"); - extCaps.GL_EXT_timer_query = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_timer_query"); - extCaps.GL_EXT_transform_feedback = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_transform_feedback"); - extCaps.GL_EXT_vertex_array = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_vertex_array"); - extCaps.GL_EXT_vertex_array_bgra = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_vertex_array_bgra"); - extCaps.GL_EXT_vertex_attrib_64bit = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_vertex_attrib_64bit"); - extCaps.GL_EXT_vertex_shader = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_vertex_shader"); - extCaps.GL_EXT_vertex_weighting = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_vertex_weighting"); - extCaps.GL_EXT_win32_keyed_mutex = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_win32_keyed_mutex"); - extCaps.GL_EXT_window_rectangles = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_window_rectangles"); - extCaps.GL_EXT_x11_sync_object = hasExtension(version, exts, numExtsI, extsI, "GL_EXT_x11_sync_object"); - extCaps.GL_GREMEDY_frame_terminator = hasExtension(version, exts, numExtsI, extsI, "GL_GREMEDY_frame_terminator"); - extCaps.GL_GREMEDY_string_marker = hasExtension(version, exts, numExtsI, extsI, "GL_GREMEDY_string_marker"); - extCaps.GL_HP_convolution_border_modes = hasExtension(version, exts, numExtsI, extsI, "GL_HP_convolution_border_modes"); - extCaps.GL_HP_image_transform = hasExtension(version, exts, numExtsI, extsI, "GL_HP_image_transform"); - extCaps.GL_HP_occlusion_test = hasExtension(version, exts, numExtsI, extsI, "GL_HP_occlusion_test"); - extCaps.GL_HP_texture_lighting = hasExtension(version, exts, numExtsI, extsI, "GL_HP_texture_lighting"); - extCaps.GL_IBM_cull_vertex = hasExtension(version, exts, numExtsI, extsI, "GL_IBM_cull_vertex"); - extCaps.GL_IBM_multimode_draw_arrays = hasExtension(version, exts, numExtsI, extsI, "GL_IBM_multimode_draw_arrays"); - extCaps.GL_IBM_rasterpos_clip = hasExtension(version, exts, numExtsI, extsI, "GL_IBM_rasterpos_clip"); - extCaps.GL_IBM_static_data = hasExtension(version, exts, numExtsI, extsI, "GL_IBM_static_data"); - extCaps.GL_IBM_texture_mirrored_repeat = hasExtension(version, exts, numExtsI, extsI, "GL_IBM_texture_mirrored_repeat"); - extCaps.GL_IBM_vertex_array_lists = hasExtension(version, exts, numExtsI, extsI, "GL_IBM_vertex_array_lists"); - extCaps.GL_INGR_blend_func_separate = hasExtension(version, exts, numExtsI, extsI, "GL_INGR_blend_func_separate"); - extCaps.GL_INGR_color_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_INGR_color_clamp"); - extCaps.GL_INGR_interlace_read = hasExtension(version, exts, numExtsI, extsI, "GL_INGR_interlace_read"); - extCaps.GL_INTEL_blackhole_render = hasExtension(version, exts, numExtsI, extsI, "GL_INTEL_blackhole_render"); - extCaps.GL_INTEL_conservative_rasterization = hasExtension(version, exts, numExtsI, extsI, "GL_INTEL_conservative_rasterization"); - extCaps.GL_INTEL_fragment_shader_ordering = hasExtension(version, exts, numExtsI, extsI, "GL_INTEL_fragment_shader_ordering"); - extCaps.GL_INTEL_framebuffer_CMAA = hasExtension(version, exts, numExtsI, extsI, "GL_INTEL_framebuffer_CMAA"); - extCaps.GL_INTEL_map_texture = hasExtension(version, exts, numExtsI, extsI, "GL_INTEL_map_texture"); - extCaps.GL_INTEL_parallel_arrays = hasExtension(version, exts, numExtsI, extsI, "GL_INTEL_parallel_arrays"); - extCaps.GL_INTEL_performance_query = hasExtension(version, exts, numExtsI, extsI, "GL_INTEL_performance_query"); - extCaps.GL_KHR_blend_equation_advanced = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_blend_equation_advanced"); - extCaps.GL_KHR_blend_equation_advanced_coherent = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_blend_equation_advanced_coherent"); - extCaps.GL_KHR_context_flush_control = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_context_flush_control"); - extCaps.GL_KHR_debug = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_debug"); - extCaps.GL_KHR_no_error = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_no_error"); - extCaps.GL_KHR_parallel_shader_compile = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_parallel_shader_compile"); - extCaps.GL_KHR_robust_buffer_access_behavior = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_robust_buffer_access_behavior"); - extCaps.GL_KHR_robustness = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_robustness"); - extCaps.GL_KHR_shader_subgroup = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_shader_subgroup"); - extCaps.GL_KHR_texture_compression_astc_hdr = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_texture_compression_astc_hdr"); - extCaps.GL_KHR_texture_compression_astc_ldr = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_texture_compression_astc_ldr"); - extCaps.GL_KHR_texture_compression_astc_sliced_3d = hasExtension(version, exts, numExtsI, extsI, "GL_KHR_texture_compression_astc_sliced_3d"); - extCaps.GL_MESAX_texture_stack = hasExtension(version, exts, numExtsI, extsI, "GL_MESAX_texture_stack"); - extCaps.GL_MESA_framebuffer_flip_x = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_framebuffer_flip_x"); - extCaps.GL_MESA_framebuffer_flip_y = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_framebuffer_flip_y"); - extCaps.GL_MESA_framebuffer_swap_xy = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_framebuffer_swap_xy"); - extCaps.GL_MESA_pack_invert = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_pack_invert"); - extCaps.GL_MESA_program_binary_formats = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_program_binary_formats"); - extCaps.GL_MESA_resize_buffers = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_resize_buffers"); - extCaps.GL_MESA_shader_integer_functions = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_shader_integer_functions"); - extCaps.GL_MESA_tile_raster_order = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_tile_raster_order"); - extCaps.GL_MESA_window_pos = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_window_pos"); - extCaps.GL_MESA_ycbcr_texture = hasExtension(version, exts, numExtsI, extsI, "GL_MESA_ycbcr_texture"); - extCaps.GL_NVX_blend_equation_advanced_multi_draw_buffers = hasExtension(version, exts, numExtsI, extsI, "GL_NVX_blend_equation_advanced_multi_draw_buffers"); - extCaps.GL_NVX_conditional_render = hasExtension(version, exts, numExtsI, extsI, "GL_NVX_conditional_render"); - extCaps.GL_NVX_gpu_memory_info = hasExtension(version, exts, numExtsI, extsI, "GL_NVX_gpu_memory_info"); - extCaps.GL_NVX_gpu_multicast2 = hasExtension(version, exts, numExtsI, extsI, "GL_NVX_gpu_multicast2"); - extCaps.GL_NVX_linked_gpu_multicast = hasExtension(version, exts, numExtsI, extsI, "GL_NVX_linked_gpu_multicast"); - extCaps.GL_NVX_progress_fence = hasExtension(version, exts, numExtsI, extsI, "GL_NVX_progress_fence"); - extCaps.GL_NV_alpha_to_coverage_dither_control = hasExtension(version, exts, numExtsI, extsI, "GL_NV_alpha_to_coverage_dither_control"); - extCaps.GL_NV_bindless_multi_draw_indirect = hasExtension(version, exts, numExtsI, extsI, "GL_NV_bindless_multi_draw_indirect"); - extCaps.GL_NV_bindless_multi_draw_indirect_count = hasExtension(version, exts, numExtsI, extsI, "GL_NV_bindless_multi_draw_indirect_count"); - extCaps.GL_NV_bindless_texture = hasExtension(version, exts, numExtsI, extsI, "GL_NV_bindless_texture"); - extCaps.GL_NV_blend_equation_advanced = hasExtension(version, exts, numExtsI, extsI, "GL_NV_blend_equation_advanced"); - extCaps.GL_NV_blend_equation_advanced_coherent = hasExtension(version, exts, numExtsI, extsI, "GL_NV_blend_equation_advanced_coherent"); - extCaps.GL_NV_blend_minmax_factor = hasExtension(version, exts, numExtsI, extsI, "GL_NV_blend_minmax_factor"); - extCaps.GL_NV_blend_square = hasExtension(version, exts, numExtsI, extsI, "GL_NV_blend_square"); - extCaps.GL_NV_clip_space_w_scaling = hasExtension(version, exts, numExtsI, extsI, "GL_NV_clip_space_w_scaling"); - extCaps.GL_NV_command_list = hasExtension(version, exts, numExtsI, extsI, "GL_NV_command_list"); - extCaps.GL_NV_compute_program5 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_compute_program5"); - extCaps.GL_NV_compute_shader_derivatives = hasExtension(version, exts, numExtsI, extsI, "GL_NV_compute_shader_derivatives"); - extCaps.GL_NV_conditional_render = hasExtension(version, exts, numExtsI, extsI, "GL_NV_conditional_render"); - extCaps.GL_NV_conservative_raster = hasExtension(version, exts, numExtsI, extsI, "GL_NV_conservative_raster"); - extCaps.GL_NV_conservative_raster_dilate = hasExtension(version, exts, numExtsI, extsI, "GL_NV_conservative_raster_dilate"); - extCaps.GL_NV_conservative_raster_pre_snap = hasExtension(version, exts, numExtsI, extsI, "GL_NV_conservative_raster_pre_snap"); - extCaps.GL_NV_conservative_raster_pre_snap_triangles = hasExtension(version, exts, numExtsI, extsI, "GL_NV_conservative_raster_pre_snap_triangles"); - extCaps.GL_NV_conservative_raster_underestimation = hasExtension(version, exts, numExtsI, extsI, "GL_NV_conservative_raster_underestimation"); - extCaps.GL_NV_copy_depth_to_color = hasExtension(version, exts, numExtsI, extsI, "GL_NV_copy_depth_to_color"); - extCaps.GL_NV_copy_image = hasExtension(version, exts, numExtsI, extsI, "GL_NV_copy_image"); - extCaps.GL_NV_deep_texture3D = hasExtension(version, exts, numExtsI, extsI, "GL_NV_deep_texture3D"); - extCaps.GL_NV_depth_buffer_float = hasExtension(version, exts, numExtsI, extsI, "GL_NV_depth_buffer_float"); - extCaps.GL_NV_depth_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_NV_depth_clamp"); - extCaps.GL_NV_draw_texture = hasExtension(version, exts, numExtsI, extsI, "GL_NV_draw_texture"); - extCaps.GL_NV_draw_vulkan_image = hasExtension(version, exts, numExtsI, extsI, "GL_NV_draw_vulkan_image"); - extCaps.GL_NV_evaluators = hasExtension(version, exts, numExtsI, extsI, "GL_NV_evaluators"); - extCaps.GL_NV_explicit_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_NV_explicit_multisample"); - extCaps.GL_NV_fence = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fence"); - extCaps.GL_NV_fill_rectangle = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fill_rectangle"); - extCaps.GL_NV_float_buffer = hasExtension(version, exts, numExtsI, extsI, "GL_NV_float_buffer"); - extCaps.GL_NV_fog_distance = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fog_distance"); - extCaps.GL_NV_fragment_coverage_to_color = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fragment_coverage_to_color"); - extCaps.GL_NV_fragment_program = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fragment_program"); - extCaps.GL_NV_fragment_program2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fragment_program2"); - extCaps.GL_NV_fragment_program4 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fragment_program4"); - extCaps.GL_NV_fragment_program_option = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fragment_program_option"); - extCaps.GL_NV_fragment_shader_barycentric = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fragment_shader_barycentric"); - extCaps.GL_NV_fragment_shader_interlock = hasExtension(version, exts, numExtsI, extsI, "GL_NV_fragment_shader_interlock"); - extCaps.GL_NV_framebuffer_mixed_samples = hasExtension(version, exts, numExtsI, extsI, "GL_NV_framebuffer_mixed_samples"); - extCaps.GL_NV_framebuffer_multisample_coverage = hasExtension(version, exts, numExtsI, extsI, "GL_NV_framebuffer_multisample_coverage"); - extCaps.GL_NV_geometry_program4 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_geometry_program4"); - extCaps.GL_NV_geometry_shader4 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_geometry_shader4"); - extCaps.GL_NV_geometry_shader_passthrough = hasExtension(version, exts, numExtsI, extsI, "GL_NV_geometry_shader_passthrough"); - extCaps.GL_NV_gpu_multicast = hasExtension(version, exts, numExtsI, extsI, "GL_NV_gpu_multicast"); - extCaps.GL_NV_gpu_program4 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_gpu_program4"); - extCaps.GL_NV_gpu_program5 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_gpu_program5"); - extCaps.GL_NV_gpu_program5_mem_extended = hasExtension(version, exts, numExtsI, extsI, "GL_NV_gpu_program5_mem_extended"); - extCaps.GL_NV_gpu_shader5 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_gpu_shader5"); - extCaps.GL_NV_half_float = hasExtension(version, exts, numExtsI, extsI, "GL_NV_half_float"); - extCaps.GL_NV_internalformat_sample_query = hasExtension(version, exts, numExtsI, extsI, "GL_NV_internalformat_sample_query"); - extCaps.GL_NV_light_max_exponent = hasExtension(version, exts, numExtsI, extsI, "GL_NV_light_max_exponent"); - extCaps.GL_NV_memory_attachment = hasExtension(version, exts, numExtsI, extsI, "GL_NV_memory_attachment"); - extCaps.GL_NV_memory_object_sparse = hasExtension(version, exts, numExtsI, extsI, "GL_NV_memory_object_sparse"); - extCaps.GL_NV_mesh_shader = hasExtension(version, exts, numExtsI, extsI, "GL_NV_mesh_shader"); - extCaps.GL_NV_multisample_coverage = hasExtension(version, exts, numExtsI, extsI, "GL_NV_multisample_coverage"); - extCaps.GL_NV_multisample_filter_hint = hasExtension(version, exts, numExtsI, extsI, "GL_NV_multisample_filter_hint"); - extCaps.GL_NV_occlusion_query = hasExtension(version, exts, numExtsI, extsI, "GL_NV_occlusion_query"); - extCaps.GL_NV_packed_depth_stencil = hasExtension(version, exts, numExtsI, extsI, "GL_NV_packed_depth_stencil"); - extCaps.GL_NV_parameter_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_NV_parameter_buffer_object"); - extCaps.GL_NV_parameter_buffer_object2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_parameter_buffer_object2"); - extCaps.GL_NV_path_rendering = hasExtension(version, exts, numExtsI, extsI, "GL_NV_path_rendering"); - extCaps.GL_NV_path_rendering_shared_edge = hasExtension(version, exts, numExtsI, extsI, "GL_NV_path_rendering_shared_edge"); - extCaps.GL_NV_pixel_data_range = hasExtension(version, exts, numExtsI, extsI, "GL_NV_pixel_data_range"); - extCaps.GL_NV_point_sprite = hasExtension(version, exts, numExtsI, extsI, "GL_NV_point_sprite"); - extCaps.GL_NV_present_video = hasExtension(version, exts, numExtsI, extsI, "GL_NV_present_video"); - extCaps.GL_NV_primitive_restart = hasExtension(version, exts, numExtsI, extsI, "GL_NV_primitive_restart"); - extCaps.GL_NV_primitive_shading_rate = hasExtension(version, exts, numExtsI, extsI, "GL_NV_primitive_shading_rate"); - extCaps.GL_NV_query_resource = hasExtension(version, exts, numExtsI, extsI, "GL_NV_query_resource"); - extCaps.GL_NV_query_resource_tag = hasExtension(version, exts, numExtsI, extsI, "GL_NV_query_resource_tag"); - extCaps.GL_NV_register_combiners = hasExtension(version, exts, numExtsI, extsI, "GL_NV_register_combiners"); - extCaps.GL_NV_register_combiners2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_register_combiners2"); - extCaps.GL_NV_representative_fragment_test = hasExtension(version, exts, numExtsI, extsI, "GL_NV_representative_fragment_test"); - extCaps.GL_NV_robustness_video_memory_purge = hasExtension(version, exts, numExtsI, extsI, "GL_NV_robustness_video_memory_purge"); - extCaps.GL_NV_sample_locations = hasExtension(version, exts, numExtsI, extsI, "GL_NV_sample_locations"); - extCaps.GL_NV_sample_mask_override_coverage = hasExtension(version, exts, numExtsI, extsI, "GL_NV_sample_mask_override_coverage"); - extCaps.GL_NV_scissor_exclusive = hasExtension(version, exts, numExtsI, extsI, "GL_NV_scissor_exclusive"); - extCaps.GL_NV_shader_atomic_counters = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_atomic_counters"); - extCaps.GL_NV_shader_atomic_float = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_atomic_float"); - extCaps.GL_NV_shader_atomic_float64 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_atomic_float64"); - extCaps.GL_NV_shader_atomic_fp16_vector = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_atomic_fp16_vector"); - extCaps.GL_NV_shader_atomic_int64 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_atomic_int64"); - extCaps.GL_NV_shader_buffer_load = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_buffer_load"); - extCaps.GL_NV_shader_buffer_store = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_buffer_store"); - extCaps.GL_NV_shader_storage_buffer_object = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_storage_buffer_object"); - extCaps.GL_NV_shader_subgroup_partitioned = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_subgroup_partitioned"); - extCaps.GL_NV_shader_texture_footprint = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_texture_footprint"); - extCaps.GL_NV_shader_thread_group = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_thread_group"); - extCaps.GL_NV_shader_thread_shuffle = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shader_thread_shuffle"); - extCaps.GL_NV_shading_rate_image = hasExtension(version, exts, numExtsI, extsI, "GL_NV_shading_rate_image"); - extCaps.GL_NV_stereo_view_rendering = hasExtension(version, exts, numExtsI, extsI, "GL_NV_stereo_view_rendering"); - extCaps.GL_NV_tessellation_program5 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_tessellation_program5"); - extCaps.GL_NV_texgen_emboss = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texgen_emboss"); - extCaps.GL_NV_texgen_reflection = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texgen_reflection"); - extCaps.GL_NV_texture_barrier = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_barrier"); - extCaps.GL_NV_texture_compression_vtc = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_compression_vtc"); - extCaps.GL_NV_texture_env_combine4 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_env_combine4"); - extCaps.GL_NV_texture_expand_normal = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_expand_normal"); - extCaps.GL_NV_texture_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_multisample"); - extCaps.GL_NV_texture_rectangle = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_rectangle"); - extCaps.GL_NV_texture_rectangle_compressed = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_rectangle_compressed"); - extCaps.GL_NV_texture_shader = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_shader"); - extCaps.GL_NV_texture_shader2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_shader2"); - extCaps.GL_NV_texture_shader3 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_texture_shader3"); - extCaps.GL_NV_timeline_semaphore = hasExtension(version, exts, numExtsI, extsI, "GL_NV_timeline_semaphore"); - extCaps.GL_NV_transform_feedback = hasExtension(version, exts, numExtsI, extsI, "GL_NV_transform_feedback"); - extCaps.GL_NV_transform_feedback2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_transform_feedback2"); - extCaps.GL_NV_uniform_buffer_unified_memory = hasExtension(version, exts, numExtsI, extsI, "GL_NV_uniform_buffer_unified_memory"); - extCaps.GL_NV_vdpau_interop = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vdpau_interop"); - extCaps.GL_NV_vdpau_interop2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vdpau_interop2"); - extCaps.GL_NV_vertex_array_range = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_array_range"); - extCaps.GL_NV_vertex_array_range2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_array_range2"); - extCaps.GL_NV_vertex_attrib_integer_64bit = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_attrib_integer_64bit"); - extCaps.GL_NV_vertex_buffer_unified_memory = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_buffer_unified_memory"); - extCaps.GL_NV_vertex_program = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_program"); - extCaps.GL_NV_vertex_program1_1 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_program1_1"); - extCaps.GL_NV_vertex_program2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_program2"); - extCaps.GL_NV_vertex_program2_option = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_program2_option"); - extCaps.GL_NV_vertex_program3 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_program3"); - extCaps.GL_NV_vertex_program4 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vertex_program4"); - extCaps.GL_NV_video_capture = hasExtension(version, exts, numExtsI, extsI, "GL_NV_video_capture"); - extCaps.GL_NV_viewport_array2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_viewport_array2"); - extCaps.GL_NV_viewport_swizzle = hasExtension(version, exts, numExtsI, extsI, "GL_NV_viewport_swizzle"); - extCaps.GL_OES_byte_coordinates = hasExtension(version, exts, numExtsI, extsI, "GL_OES_byte_coordinates"); - extCaps.GL_OES_compressed_paletted_texture = hasExtension(version, exts, numExtsI, extsI, "GL_OES_compressed_paletted_texture"); - extCaps.GL_OES_fixed_point = hasExtension(version, exts, numExtsI, extsI, "GL_OES_fixed_point"); - extCaps.GL_OES_query_matrix = hasExtension(version, exts, numExtsI, extsI, "GL_OES_query_matrix"); - extCaps.GL_OES_read_format = hasExtension(version, exts, numExtsI, extsI, "GL_OES_read_format"); - extCaps.GL_OES_single_precision = hasExtension(version, exts, numExtsI, extsI, "GL_OES_single_precision"); - extCaps.GL_OML_interlace = hasExtension(version, exts, numExtsI, extsI, "GL_OML_interlace"); - extCaps.GL_OML_resample = hasExtension(version, exts, numExtsI, extsI, "GL_OML_resample"); - extCaps.GL_OML_subsample = hasExtension(version, exts, numExtsI, extsI, "GL_OML_subsample"); - extCaps.GL_OVR_multiview = hasExtension(version, exts, numExtsI, extsI, "GL_OVR_multiview"); - extCaps.GL_OVR_multiview2 = hasExtension(version, exts, numExtsI, extsI, "GL_OVR_multiview2"); - extCaps.GL_PGI_misc_hints = hasExtension(version, exts, numExtsI, extsI, "GL_PGI_misc_hints"); - extCaps.GL_PGI_vertex_hints = hasExtension(version, exts, numExtsI, extsI, "GL_PGI_vertex_hints"); - extCaps.GL_REND_screen_coordinates = hasExtension(version, exts, numExtsI, extsI, "GL_REND_screen_coordinates"); - extCaps.GL_S3_s3tc = hasExtension(version, exts, numExtsI, extsI, "GL_S3_s3tc"); - extCaps.GL_SGIS_detail_texture = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_detail_texture"); - extCaps.GL_SGIS_fog_function = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_fog_function"); - extCaps.GL_SGIS_generate_mipmap = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_generate_mipmap"); - extCaps.GL_SGIS_multisample = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_multisample"); - extCaps.GL_SGIS_pixel_texture = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_pixel_texture"); - extCaps.GL_SGIS_point_line_texgen = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_point_line_texgen"); - extCaps.GL_SGIS_point_parameters = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_point_parameters"); - extCaps.GL_SGIS_sharpen_texture = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_sharpen_texture"); - extCaps.GL_SGIS_texture4D = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_texture4D"); - extCaps.GL_SGIS_texture_border_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_texture_border_clamp"); - extCaps.GL_SGIS_texture_color_mask = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_texture_color_mask"); - extCaps.GL_SGIS_texture_edge_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_texture_edge_clamp"); - extCaps.GL_SGIS_texture_filter4 = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_texture_filter4"); - extCaps.GL_SGIS_texture_lod = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_texture_lod"); - extCaps.GL_SGIS_texture_select = hasExtension(version, exts, numExtsI, extsI, "GL_SGIS_texture_select"); - extCaps.GL_SGIX_async = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_async"); - extCaps.GL_SGIX_async_histogram = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_async_histogram"); - extCaps.GL_SGIX_async_pixel = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_async_pixel"); - extCaps.GL_SGIX_blend_alpha_minmax = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_blend_alpha_minmax"); - extCaps.GL_SGIX_calligraphic_fragment = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_calligraphic_fragment"); - extCaps.GL_SGIX_clipmap = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_clipmap"); - extCaps.GL_SGIX_convolution_accuracy = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_convolution_accuracy"); - extCaps.GL_SGIX_depth_pass_instrument = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_depth_pass_instrument"); - extCaps.GL_SGIX_depth_texture = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_depth_texture"); - extCaps.GL_SGIX_flush_raster = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_flush_raster"); - extCaps.GL_SGIX_fog_offset = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_fog_offset"); - extCaps.GL_SGIX_fragment_lighting = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_fragment_lighting"); - extCaps.GL_SGIX_framezoom = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_framezoom"); - extCaps.GL_SGIX_igloo_interface = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_igloo_interface"); - extCaps.GL_SGIX_instruments = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_instruments"); - extCaps.GL_SGIX_interlace = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_interlace"); - extCaps.GL_SGIX_ir_instrument1 = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_ir_instrument1"); - extCaps.GL_SGIX_list_priority = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_list_priority"); - extCaps.GL_SGIX_pixel_texture = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_pixel_texture"); - extCaps.GL_SGIX_pixel_tiles = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_pixel_tiles"); - extCaps.GL_SGIX_polynomial_ffd = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_polynomial_ffd"); - extCaps.GL_SGIX_reference_plane = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_reference_plane"); - extCaps.GL_SGIX_resample = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_resample"); - extCaps.GL_SGIX_scalebias_hint = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_scalebias_hint"); - extCaps.GL_SGIX_shadow = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_shadow"); - extCaps.GL_SGIX_shadow_ambient = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_shadow_ambient"); - extCaps.GL_SGIX_sprite = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_sprite"); - extCaps.GL_SGIX_subsample = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_subsample"); - extCaps.GL_SGIX_tag_sample_buffer = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_tag_sample_buffer"); - extCaps.GL_SGIX_texture_add_env = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_texture_add_env"); - extCaps.GL_SGIX_texture_coordinate_clamp = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_texture_coordinate_clamp"); - extCaps.GL_SGIX_texture_lod_bias = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_texture_lod_bias"); - extCaps.GL_SGIX_texture_multi_buffer = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_texture_multi_buffer"); - extCaps.GL_SGIX_texture_scale_bias = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_texture_scale_bias"); - extCaps.GL_SGIX_vertex_preclip = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_vertex_preclip"); - extCaps.GL_SGIX_ycrcb = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_ycrcb"); - extCaps.GL_SGIX_ycrcb_subsample = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_ycrcb_subsample"); - extCaps.GL_SGIX_ycrcba = hasExtension(version, exts, numExtsI, extsI, "GL_SGIX_ycrcba"); - extCaps.GL_SGI_color_matrix = hasExtension(version, exts, numExtsI, extsI, "GL_SGI_color_matrix"); - extCaps.GL_SGI_color_table = hasExtension(version, exts, numExtsI, extsI, "GL_SGI_color_table"); - extCaps.GL_SGI_texture_color_table = hasExtension(version, exts, numExtsI, extsI, "GL_SGI_texture_color_table"); - extCaps.GL_SUNX_constant_data = hasExtension(version, exts, numExtsI, extsI, "GL_SUNX_constant_data"); - extCaps.GL_SUN_convolution_border_modes = hasExtension(version, exts, numExtsI, extsI, "GL_SUN_convolution_border_modes"); - extCaps.GL_SUN_global_alpha = hasExtension(version, exts, numExtsI, extsI, "GL_SUN_global_alpha"); - extCaps.GL_SUN_mesh_array = hasExtension(version, exts, numExtsI, extsI, "GL_SUN_mesh_array"); - extCaps.GL_SUN_slice_accum = hasExtension(version, exts, numExtsI, extsI, "GL_SUN_slice_accum"); - extCaps.GL_SUN_triangle_list = hasExtension(version, exts, numExtsI, extsI, "GL_SUN_triangle_list"); - extCaps.GL_SUN_vertex = hasExtension(version, exts, numExtsI, extsI, "GL_SUN_vertex"); - extCaps.GL_WIN_phong_shading = hasExtension(version, exts, numExtsI, extsI, "GL_WIN_phong_shading"); - extCaps.GL_WIN_specular_fog = hasExtension(version, exts, numExtsI, extsI, "GL_WIN_specular_fog"); - - return true; - } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXMultisample.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXMultisample.java index 2c031de6..0bf02aea 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXMultisample.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXMultisample.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTbuffer.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTbuffer.java index 9f49a643..82a24bb4 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTbuffer.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTbuffer.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTextureCompressionFXT1.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTextureCompressionFXT1.java index 4af7fd0d..d5b93ba8 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTextureCompressionFXT1.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTextureCompressionFXT1.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYFrameTerminator.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYFrameTerminator.java index d3654e39..1b5a3aab 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYFrameTerminator.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYFrameTerminator.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYStringMarker.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYStringMarker.java index bd095284..fd556f57 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYStringMarker.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYStringMarker.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPConvolutionBorderModes.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPConvolutionBorderModes.java index ebc1c403..89919e62 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPConvolutionBorderModes.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPConvolutionBorderModes.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPImageTransform.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPImageTransform.java index d2143737..0fea5dd3 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPImageTransform.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPImageTransform.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPOcclusionTest.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPOcclusionTest.java index e8a982a0..4a8cf9ca 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPOcclusionTest.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPOcclusionTest.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPTextureLighting.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPTextureLighting.java index 6ab52e78..730067e4 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPTextureLighting.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPTextureLighting.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRBlendFuncSeparate.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRBlendFuncSeparate.java index 222c25ae..572b7f0c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRBlendFuncSeparate.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRBlendFuncSeparate.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRColorClamp.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRColorClamp.java index 0fbc4532..da602d63 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRColorClamp.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRColorClamp.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRInterlaceRead.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRInterlaceRead.java index 2b92b2da..158966ca 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRInterlaceRead.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRInterlaceRead.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLInterlace.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLInterlace.java new file mode 100644 index 00000000..e03f6e5c --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLInterlace.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_OML_interlace} + */ +public final class GLOMLInterlace { + public static final int GL_INTERLACE_OML = 0x8980; + public static final int GL_INTERLACE_READ_OML = 0x8981; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLResample.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLResample.java new file mode 100644 index 00000000..865fb884 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLResample.java @@ -0,0 +1,37 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_OML_resample} + */ +public final class GLOMLResample { + public static final int GL_PACK_RESAMPLE_OML = 0x8984; + public static final int GL_UNPACK_RESAMPLE_OML = 0x8985; + public static final int GL_RESAMPLE_REPLICATE_OML = 0x8986; + public static final int GL_RESAMPLE_ZERO_FILL_OML = 0x8987; + public static final int GL_RESAMPLE_AVERAGE_OML = 0x8988; + public static final int GL_RESAMPLE_DECIMATE_OML = 0x8989; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLSubsample.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLSubsample.java new file mode 100644 index 00000000..2c656ec3 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLSubsample.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_OML_subsample} + */ +public final class GLOMLSubsample { + public static final int GL_FORMAT_SUBSAMPLE_24_24_OML = 0x8982; + public static final int GL_FORMAT_SUBSAMPLE_244_244_OML = 0x8983; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOVRMultiview.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOVRMultiview.java index 7038938a..701339c2 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOVRMultiview.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOVRMultiview.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIMiscHints.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIMiscHints.java index ec40e58d..052269b9 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIMiscHints.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIMiscHints.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIVertexHints.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIVertexHints.java index 56357b45..950ba648 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIVertexHints.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIVertexHints.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLRENDScreenCoordinates.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLRENDScreenCoordinates.java new file mode 100644 index 00000000..ef109c55 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLRENDScreenCoordinates.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_REND_screen_coordinates} + */ +public final class GLRENDScreenCoordinates { + public static final int GL_SCREEN_COORDINATES_REND = 0x8490; + public static final int GL_INVERTED_SCREEN_W_REND = 0x8491; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLS3S3tc.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLS3S3tc.java new file mode 100644 index 00000000..c2a70d07 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLS3S3tc.java @@ -0,0 +1,37 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_S3_s3tc} + */ +public final class GLS3S3tc { + public static final int GL_RGB_S3TC = 0x83A0; + public static final int GL_RGB4_S3TC = 0x83A1; + public static final int GL_RGBA_S3TC = 0x83A2; + public static final int GL_RGBA4_S3TC = 0x83A3; + public static final int GL_RGBA_DXT5_S3TC = 0x83A4; + public static final int GL_RGBA4_DXT5_S3TC = 0x83A5; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINPhongShading.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINPhongShading.java index 69ba14a6..5b16fe97 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINPhongShading.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINPhongShading.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINSpecularFog.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINSpecularFog.java index 936e4105..573b7e81 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINSpecularFog.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINSpecularFog.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDBlendMinmaxFactor.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDBlendMinmaxFactor.java index 280f71bc..6c4a45a5 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDBlendMinmaxFactor.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDBlendMinmaxFactor.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDebugOutput.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDebugOutput.java index 8fecbb27..dd37bbdb 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDebugOutput.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDebugOutput.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDepthClampSeparate.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDepthClampSeparate.java index 695f6efc..f354fa5c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDepthClampSeparate.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDepthClampSeparate.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDrawBuffersBlend.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDrawBuffersBlend.java index 33a745b4..b6c09e0c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDrawBuffersBlend.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDrawBuffersBlend.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferMultisampleAdvanced.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferMultisampleAdvanced.java index 7192f84a..2f9980ef 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferMultisampleAdvanced.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferMultisampleAdvanced.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferSamplePositions.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferSamplePositions.java index 99b50325..469e674e 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferSamplePositions.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferSamplePositions.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderHalfFloat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderHalfFloat.java index 4c48a47a..d75d7a49 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderHalfFloat.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderHalfFloat.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderInt64.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderInt64.java index a00cebf3..beab01ec 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderInt64.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderInt64.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDInterleavedElements.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDInterleavedElements.java index 819e463e..be3e391b 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDInterleavedElements.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDInterleavedElements.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDMultiDrawIndirect.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDMultiDrawIndirect.java index 4b719c69..78da667a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDMultiDrawIndirect.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDMultiDrawIndirect.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDNameGenDelete.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDNameGenDelete.java index f0025953..67ed557b 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDNameGenDelete.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDNameGenDelete.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDOcclusionQueryEvent.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDOcclusionQueryEvent.java index 279cec60..5f7f9df0 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDOcclusionQueryEvent.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDOcclusionQueryEvent.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPerformanceMonitor.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPerformanceMonitor.java index 8f28a144..d4a4ebe4 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPerformanceMonitor.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPerformanceMonitor.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPinnedMemory.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPinnedMemory.java index afbd6535..d08374e6 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPinnedMemory.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPinnedMemory.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDQueryBufferObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDQueryBufferObject.java index e9da4c9f..4f596ba7 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDQueryBufferObject.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDQueryBufferObject.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSamplePositions.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSamplePositions.java index 941da07b..21d6bc19 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSamplePositions.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSamplePositions.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSparseTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSparseTexture.java index 79de1baf..41fd8b3b 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSparseTexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSparseTexture.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDStencilOperationExtended.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDStencilOperationExtended.java index 09e684db..c8ba3568 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDStencilOperationExtended.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDStencilOperationExtended.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDTransformFeedback4.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDTransformFeedback4.java index c598d223..5bf64bce 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDTransformFeedback4.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDTransformFeedback4.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDVertexShaderTessellator.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDVertexShaderTessellator.java index 45cd42e3..26829472 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDVertexShaderTessellator.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDVertexShaderTessellator.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEAuxDepthStencil.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEAuxDepthStencil.java index 522993a0..bab83f5d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEAuxDepthStencil.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEAuxDepthStencil.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEClientStorage.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEClientStorage.java index fa71e4de..21958211 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEClientStorage.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEClientStorage.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEElementArray.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEElementArray.java index dfe7cfa7..f61a0fdf 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEElementArray.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEElementArray.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFence.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFence.java index a82ea31a..73ce0074 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFence.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFence.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFloatPixels.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFloatPixels.java index 5a4f9f0e..66513662 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFloatPixels.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFloatPixels.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFlushBufferRange.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFlushBufferRange.java index 71a1d74c..7bdd3679 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFlushBufferRange.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFlushBufferRange.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEObjectPurgeable.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEObjectPurgeable.java index 6282a6c9..71be15b4 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEObjectPurgeable.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEObjectPurgeable.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERgb422.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERgb422.java index a2167d3a..c04a97bd 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERgb422.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERgb422.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERowBytes.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERowBytes.java index fcac4f7e..83c17106 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERowBytes.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERowBytes.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLESpecularVector.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLESpecularVector.java index 1c997292..7b16a322 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLESpecularVector.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLESpecularVector.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETextureRange.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETextureRange.java index 36c59aeb..f87ea810 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETextureRange.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETextureRange.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETransformHint.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETransformHint.java index f9322c74..f72247c6 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETransformHint.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETransformHint.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayObject.java index 1d0cddf3..091991e0 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayObject.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayObject.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayRange.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayRange.java index 7c6195f6..bb84a852 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayRange.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayRange.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexProgramEvaluators.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexProgramEvaluators.java index 8024ed45..de4feff0 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexProgramEvaluators.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexProgramEvaluators.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEYcbcr422.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEYcbcr422.java index b5b0013e..0e658f9f 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEYcbcr422.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEYcbcr422.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBRobustness.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBRobustness.java index 33880dda..7614613b 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBRobustness.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBRobustness.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleLocations.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleLocations.java index 8db4d3b6..ac7f0fe0 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleLocations.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleLocations.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleShading.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleShading.java index aef2adb9..448573dc 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleShading.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleShading.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShaderObjects.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShaderObjects.java index 71afda02..c13fe8a1 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShaderObjects.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShaderObjects.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadingLanguageInclude.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadingLanguageInclude.java index d622f775..efdd6b96 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadingLanguageInclude.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadingLanguageInclude.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadow.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadow.java index cdd891be..e59f4cfc 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadow.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadow.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadowAmbient.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadowAmbient.java index 364c5694..6e6094c6 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadowAmbient.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadowAmbient.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseBuffer.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseBuffer.java index 9b81b6e2..79b5e71a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseBuffer.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseBuffer.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseTexture.java index 74170b9e..f8aeedd9 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseTexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseTexture.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBorderClamp.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBorderClamp.java index e06c812e..db29443a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBorderClamp.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBorderClamp.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBufferObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBufferObject.java index 40a3c8e4..3c9b8b52 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBufferObject.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBufferObject.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompression.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompression.java index decd2138..ad4a5cd8 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompression.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompression.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompressionBptc.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompressionBptc.java index cbf1bf3c..44feb958 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompressionBptc.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompressionBptc.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMap.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMap.java index 8469ce5c..56b211b4 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMap.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMap.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMapArray.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMapArray.java index 13498226..4a403360 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMapArray.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMapArray.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvCombine.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvCombine.java index 665764b8..03719961 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvCombine.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvCombine.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvDot3.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvDot3.java index a7e3032a..98fa7a81 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvDot3.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvDot3.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFilterMinmax.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFilterMinmax.java index 022857b9..c727fa90 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFilterMinmax.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFilterMinmax.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFloat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFloat.java index cc6c9967..4072516f 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFloat.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFloat.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureGather.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureGather.java index 031e6a30..726c5b37 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureGather.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureGather.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureMirroredRepeat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureMirroredRepeat.java index 5e0f1ec8..4b2f644e 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureMirroredRepeat.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureMirroredRepeat.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureRectangle.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureRectangle.java index 28717aba..19b0cc93 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureRectangle.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureRectangle.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransformFeedbackOverflowQuery.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransformFeedbackOverflowQuery.java index d3fbd9cb..d0fb4de8 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransformFeedbackOverflowQuery.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransformFeedbackOverflowQuery.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransposeMatrix.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransposeMatrix.java index 2fc11aac..97d0327b 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransposeMatrix.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransposeMatrix.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBlend.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBlend.java index 1dc0565f..f0636ca9 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBlend.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBlend.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBufferObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBufferObject.java index 5434c49e..c9f8aaf6 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBufferObject.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBufferObject.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexProgram.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexProgram.java index b4f912e5..09bf3e2c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexProgram.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexProgram.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexShader.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexShader.java index 96df2a40..4373fc14 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexShader.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexShader.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBViewportArray.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBViewportArray.java index 21b4b585..209d677d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBViewportArray.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBViewportArray.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBWindowPos.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBWindowPos.java index 95eb6359..a4785a7e 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBWindowPos.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBWindowPos.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIDrawBuffers.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIDrawBuffers.java new file mode 100644 index 00000000..276c746e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIDrawBuffers.java @@ -0,0 +1,60 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ati; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ATI_draw_buffers} + */ +public final class GLATIDrawBuffers { + public static final int GL_MAX_DRAW_BUFFERS_ATI = 0x8824; + public static final int GL_DRAW_BUFFER0_ATI = 0x8825; + public static final int GL_DRAW_BUFFER1_ATI = 0x8826; + public static final int GL_DRAW_BUFFER2_ATI = 0x8827; + public static final int GL_DRAW_BUFFER3_ATI = 0x8828; + public static final int GL_DRAW_BUFFER4_ATI = 0x8829; + public static final int GL_DRAW_BUFFER5_ATI = 0x882A; + public static final int GL_DRAW_BUFFER6_ATI = 0x882B; + public static final int GL_DRAW_BUFFER7_ATI = 0x882C; + public static final int GL_DRAW_BUFFER8_ATI = 0x882D; + public static final int GL_DRAW_BUFFER9_ATI = 0x882E; + public static final int GL_DRAW_BUFFER10_ATI = 0x882F; + public static final int GL_DRAW_BUFFER11_ATI = 0x8830; + public static final int GL_DRAW_BUFFER12_ATI = 0x8831; + public static final int GL_DRAW_BUFFER13_ATI = 0x8832; + public static final int GL_DRAW_BUFFER14_ATI = 0x8833; + public static final int GL_DRAW_BUFFER15_ATI = 0x8834; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_ATI_draw_buffers) return; + ext.glDrawBuffersATI = load.invoke("glDrawBuffersATI", ofVoid(JAVA_INT, ADDRESS)); + } + + public static void glDrawBuffersATI(int n, @NativeType("const GLenum *") MemorySegment bufs) { + final var ext = getExtCapabilities(); + try { + check(ext.glDrawBuffersATI).invokeExact(n, bufs); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIElementArray.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIElementArray.java new file mode 100644 index 00000000..db779d68 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIElementArray.java @@ -0,0 +1,62 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ati; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ATI_element_array} + */ +public final class GLATIElementArray { + public static final int GL_ELEMENT_ARRAY_ATI = 0x8768; + public static final int GL_ELEMENT_ARRAY_TYPE_ATI = 0x8769; + public static final int GL_ELEMENT_ARRAY_POINTER_ATI = 0x876A; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_ATI_element_array) return; + ext.glElementPointerATI = load.invoke("glElementPointerATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glDrawElementArrayATI = load.invoke("glDrawElementArrayATI", ofVoid(JAVA_INT, JAVA_INT)); + ext.glDrawRangeElementArrayATI = load.invoke("glDrawRangeElementArrayATI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glElementPointerATI(int type, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glElementPointerATI).invokeExact(type, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDrawElementArrayATI(int mode, int count) { + final var ext = getExtCapabilities(); + try { + check(ext.glDrawElementArrayATI).invokeExact(mode, count); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDrawRangeElementArrayATI(int mode, int start, int end, int count) { + final var ext = getExtCapabilities(); + try { + check(ext.glDrawRangeElementArrayATI).invokeExact(mode, start, end, count); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIEnvmapBumpmap.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIEnvmapBumpmap.java new file mode 100644 index 00000000..a3324ba2 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIEnvmapBumpmap.java @@ -0,0 +1,75 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ati; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ATI_envmap_bumpmap} + */ +public final class GLATIEnvmapBumpmap { + public static final int GL_BUMP_ROT_MATRIX_ATI = 0x8775; + public static final int GL_BUMP_ROT_MATRIX_SIZE_ATI = 0x8776; + public static final int GL_BUMP_NUM_TEX_UNITS_ATI = 0x8777; + public static final int GL_BUMP_TEX_UNITS_ATI = 0x8778; + public static final int GL_DUDV_ATI = 0x8779; + public static final int GL_DU8DV8_ATI = 0x877A; + public static final int GL_BUMP_ENVMAP_ATI = 0x877B; + public static final int GL_BUMP_TARGET_ATI = 0x877C; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_ATI_envmap_bumpmap) return; + ext.glTexBumpParameterivATI = load.invoke("glTexBumpParameterivATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glTexBumpParameterfvATI = load.invoke("glTexBumpParameterfvATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetTexBumpParameterivATI = load.invoke("glGetTexBumpParameterivATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetTexBumpParameterfvATI = load.invoke("glGetTexBumpParameterfvATI", ofVoid(JAVA_INT, ADDRESS)); + } + + public static void glTexBumpParameterivATI(int pname, @NativeType("const GLint *") MemorySegment param) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexBumpParameterivATI).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexBumpParameterfvATI(int pname, @NativeType("const GLfloat *") MemorySegment param) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexBumpParameterfvATI).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetTexBumpParameterivATI(int pname, @NativeType("GLint *") MemorySegment param) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetTexBumpParameterivATI).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetTexBumpParameterfvATI(int pname, @NativeType("GLfloat *") MemorySegment param) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetTexBumpParameterfvATI).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIFragmentShader.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIFragmentShader.java new file mode 100644 index 00000000..8e4ad1ff --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIFragmentShader.java @@ -0,0 +1,252 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ati; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ATI_fragment_shader} + */ +public final class GLATIFragmentShader { + public static final int GL_FRAGMENT_SHADER_ATI = 0x8920; + public static final int GL_REG_0_ATI = 0x8921; + public static final int GL_REG_1_ATI = 0x8922; + public static final int GL_REG_2_ATI = 0x8923; + public static final int GL_REG_3_ATI = 0x8924; + public static final int GL_REG_4_ATI = 0x8925; + public static final int GL_REG_5_ATI = 0x8926; + public static final int GL_REG_6_ATI = 0x8927; + public static final int GL_REG_7_ATI = 0x8928; + public static final int GL_REG_8_ATI = 0x8929; + public static final int GL_REG_9_ATI = 0x892A; + public static final int GL_REG_10_ATI = 0x892B; + public static final int GL_REG_11_ATI = 0x892C; + public static final int GL_REG_12_ATI = 0x892D; + public static final int GL_REG_13_ATI = 0x892E; + public static final int GL_REG_14_ATI = 0x892F; + public static final int GL_REG_15_ATI = 0x8930; + public static final int GL_REG_16_ATI = 0x8931; + public static final int GL_REG_17_ATI = 0x8932; + public static final int GL_REG_18_ATI = 0x8933; + public static final int GL_REG_19_ATI = 0x8934; + public static final int GL_REG_20_ATI = 0x8935; + public static final int GL_REG_21_ATI = 0x8936; + public static final int GL_REG_22_ATI = 0x8937; + public static final int GL_REG_23_ATI = 0x8938; + public static final int GL_REG_24_ATI = 0x8939; + public static final int GL_REG_25_ATI = 0x893A; + public static final int GL_REG_26_ATI = 0x893B; + public static final int GL_REG_27_ATI = 0x893C; + public static final int GL_REG_28_ATI = 0x893D; + public static final int GL_REG_29_ATI = 0x893E; + public static final int GL_REG_30_ATI = 0x893F; + public static final int GL_REG_31_ATI = 0x8940; + public static final int GL_CON_0_ATI = 0x8941; + public static final int GL_CON_1_ATI = 0x8942; + public static final int GL_CON_2_ATI = 0x8943; + public static final int GL_CON_3_ATI = 0x8944; + public static final int GL_CON_4_ATI = 0x8945; + public static final int GL_CON_5_ATI = 0x8946; + public static final int GL_CON_6_ATI = 0x8947; + public static final int GL_CON_7_ATI = 0x8948; + public static final int GL_CON_8_ATI = 0x8949; + public static final int GL_CON_9_ATI = 0x894A; + public static final int GL_CON_10_ATI = 0x894B; + public static final int GL_CON_11_ATI = 0x894C; + public static final int GL_CON_12_ATI = 0x894D; + public static final int GL_CON_13_ATI = 0x894E; + public static final int GL_CON_14_ATI = 0x894F; + public static final int GL_CON_15_ATI = 0x8950; + public static final int GL_CON_16_ATI = 0x8951; + public static final int GL_CON_17_ATI = 0x8952; + public static final int GL_CON_18_ATI = 0x8953; + public static final int GL_CON_19_ATI = 0x8954; + public static final int GL_CON_20_ATI = 0x8955; + public static final int GL_CON_21_ATI = 0x8956; + public static final int GL_CON_22_ATI = 0x8957; + public static final int GL_CON_23_ATI = 0x8958; + public static final int GL_CON_24_ATI = 0x8959; + public static final int GL_CON_25_ATI = 0x895A; + public static final int GL_CON_26_ATI = 0x895B; + public static final int GL_CON_27_ATI = 0x895C; + public static final int GL_CON_28_ATI = 0x895D; + public static final int GL_CON_29_ATI = 0x895E; + public static final int GL_CON_30_ATI = 0x895F; + public static final int GL_CON_31_ATI = 0x8960; + public static final int GL_MOV_ATI = 0x8961; + public static final int GL_ADD_ATI = 0x8963; + public static final int GL_MUL_ATI = 0x8964; + public static final int GL_SUB_ATI = 0x8965; + public static final int GL_DOT3_ATI = 0x8966; + public static final int GL_DOT4_ATI = 0x8967; + public static final int GL_MAD_ATI = 0x8968; + public static final int GL_LERP_ATI = 0x8969; + public static final int GL_CND_ATI = 0x896A; + public static final int GL_CND0_ATI = 0x896B; + public static final int GL_DOT2_ADD_ATI = 0x896C; + public static final int GL_SECONDARY_INTERPOLATOR_ATI = 0x896D; + public static final int GL_NUM_FRAGMENT_REGISTERS_ATI = 0x896E; + public static final int GL_NUM_FRAGMENT_CONSTANTS_ATI = 0x896F; + public static final int GL_NUM_PASSES_ATI = 0x8970; + public static final int GL_NUM_INSTRUCTIONS_PER_PASS_ATI = 0x8971; + public static final int GL_NUM_INSTRUCTIONS_TOTAL_ATI = 0x8972; + public static final int GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI = 0x8973; + public static final int GL_NUM_LOOPBACK_COMPONENTS_ATI = 0x8974; + public static final int GL_COLOR_ALPHA_PAIRING_ATI = 0x8975; + public static final int GL_SWIZZLE_STR_ATI = 0x8976; + public static final int GL_SWIZZLE_STQ_ATI = 0x8977; + public static final int GL_SWIZZLE_STR_DR_ATI = 0x8978; + public static final int GL_SWIZZLE_STQ_DQ_ATI = 0x8979; + public static final int GL_SWIZZLE_STRQ_ATI = 0x897A; + public static final int GL_SWIZZLE_STRQ_DQ_ATI = 0x897B; + public static final int GL_RED_BIT_ATI = 0x00000001; + public static final int GL_GREEN_BIT_ATI = 0x00000002; + public static final int GL_BLUE_BIT_ATI = 0x00000004; + public static final int GL_2X_BIT_ATI = 0x00000001; + public static final int GL_4X_BIT_ATI = 0x00000002; + public static final int GL_8X_BIT_ATI = 0x00000004; + public static final int GL_HALF_BIT_ATI = 0x00000008; + public static final int GL_QUARTER_BIT_ATI = 0x00000010; + public static final int GL_EIGHTH_BIT_ATI = 0x00000020; + public static final int GL_SATURATE_BIT_ATI = 0x00000040; + public static final int GL_COMP_BIT_ATI = 0x00000002; + public static final int GL_NEGATE_BIT_ATI = 0x00000004; + public static final int GL_BIAS_BIT_ATI = 0x00000008; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_ATI_fragment_shader) return; + ext.glGenFragmentShadersATI = load.invoke("glGenFragmentShadersATI", of(JAVA_INT, JAVA_INT)); + ext.glBindFragmentShaderATI = load.invoke("glBindFragmentShaderATI", ofVoid(JAVA_INT)); + ext.glDeleteFragmentShaderATI = load.invoke("glDeleteFragmentShaderATI", ofVoid(JAVA_INT)); + ext.glBeginFragmentShaderATI = load.invoke("glBeginFragmentShaderATI", ofVoid()); + ext.glEndFragmentShaderATI = load.invoke("glEndFragmentShaderATI", ofVoid()); + ext.glPassTexCoordATI = load.invoke("glPassTexCoordATI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glSampleMapATI = load.invoke("glSampleMapATI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glColorFragmentOp1ATI = load.invoke("glColorFragmentOp1ATI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glColorFragmentOp2ATI = load.invoke("glColorFragmentOp2ATI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glColorFragmentOp3ATI = load.invoke("glColorFragmentOp3ATI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glAlphaFragmentOp1ATI = load.invoke("glAlphaFragmentOp1ATI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glAlphaFragmentOp2ATI = load.invoke("glAlphaFragmentOp2ATI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glAlphaFragmentOp3ATI = load.invoke("glAlphaFragmentOp3ATI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glSetFragmentShaderConstantATI = load.invoke("glSetFragmentShaderConstantATI", ofVoid(JAVA_INT, ADDRESS)); + } + + public static int glGenFragmentShadersATI(int range) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glGenFragmentShadersATI).invokeExact(range); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBindFragmentShaderATI(int id) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindFragmentShaderATI).invokeExact(id); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeleteFragmentShaderATI(int id) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeleteFragmentShaderATI).invokeExact(id); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBeginFragmentShaderATI() { + final var ext = getExtCapabilities(); + try { + check(ext.glBeginFragmentShaderATI).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEndFragmentShaderATI() { + final var ext = getExtCapabilities(); + try { + check(ext.glEndFragmentShaderATI).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPassTexCoordATI(int dst, int coord, int swizzle) { + final var ext = getExtCapabilities(); + try { + check(ext.glPassTexCoordATI).invokeExact(dst, coord, swizzle); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSampleMapATI(int dst, int interp, int swizzle) { + final var ext = getExtCapabilities(); + try { + check(ext.glSampleMapATI).invokeExact(dst, interp, swizzle); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColorFragmentOp1ATI(int op, int dst, int dstMask, int dstMod, int arg1, int arg1Rep, int arg1Mod) { + final var ext = getExtCapabilities(); + try { + check(ext.glColorFragmentOp1ATI).invokeExact(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColorFragmentOp2ATI(int op, int dst, int dstMask, int dstMod, int arg1, int arg1Rep, int arg1Mod, int arg2, int arg2Rep, int arg2Mod) { + final var ext = getExtCapabilities(); + try { + check(ext.glColorFragmentOp2ATI).invokeExact(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColorFragmentOp3ATI(int op, int dst, int dstMask, int dstMod, int arg1, int arg1Rep, int arg1Mod, int arg2, int arg2Rep, int arg2Mod, int arg3, int arg3Rep, int arg3Mod) { + final var ext = getExtCapabilities(); + try { + check(ext.glColorFragmentOp3ATI).invokeExact(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glAlphaFragmentOp1ATI(int op, int dst, int dstMod, int arg1, int arg1Rep, int arg1Mod) { + final var ext = getExtCapabilities(); + try { + check(ext.glAlphaFragmentOp1ATI).invokeExact(op, dst, dstMod, arg1, arg1Rep, arg1Mod); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glAlphaFragmentOp2ATI(int op, int dst, int dstMod, int arg1, int arg1Rep, int arg1Mod, int arg2, int arg2Rep, int arg2Mod) { + final var ext = getExtCapabilities(); + try { + check(ext.glAlphaFragmentOp2ATI).invokeExact(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glAlphaFragmentOp3ATI(int op, int dst, int dstMod, int arg1, int arg1Rep, int arg1Mod, int arg2, int arg2Rep, int arg2Mod, int arg3, int arg3Rep, int arg3Mod) { + final var ext = getExtCapabilities(); + try { + check(ext.glAlphaFragmentOp3ATI).invokeExact(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSetFragmentShaderConstantATI(int dst, @NativeType("const GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glSetFragmentShaderConstantATI).invokeExact(dst, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIMapObjectBuffer.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIMapObjectBuffer.java new file mode 100644 index 00000000..b661c3e9 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIMapObjectBuffer.java @@ -0,0 +1,52 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ati; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ATI_map_object_buffer} + */ +public final class GLATIMapObjectBuffer { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_ATI_map_object_buffer) return; + ext.glMapObjectBufferATI = load.invoke("glMapObjectBufferATI", of(ADDRESS, JAVA_INT)); + ext.glUnmapObjectBufferATI = load.invoke("glUnmapObjectBufferATI", ofVoid(JAVA_INT)); + } + + public static @NativeType("void*") MemorySegment glMapObjectBufferATI(int buffer) { + final var ext = getExtCapabilities(); + try { + return (MemorySegment) + check(ext.glMapObjectBufferATI).invokeExact(buffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUnmapObjectBufferATI(int buffer) { + final var ext = getExtCapabilities(); + try { + check(ext.glUnmapObjectBufferATI).invokeExact(buffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIMeminfo.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIMeminfo.java new file mode 100644 index 00000000..d4c9a647 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIMeminfo.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ati; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ATI_meminfo} + */ +public final class GLATIMeminfo { + public static final int GL_VBO_FREE_MEMORY_ATI = 0x87FB; + public static final int GL_TEXTURE_FREE_MEMORY_ATI = 0x87FC; + public static final int GL_RENDERBUFFER_FREE_MEMORY_ATI = 0x87FD; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIPixelFormatFloat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIPixelFormatFloat.java new file mode 100644 index 00000000..f10600e6 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIPixelFormatFloat.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ati; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ATI_pixel_format_float} + */ +public final class GLATIPixelFormatFloat { + public static final int GL_RGBA_FLOAT_MODE_ATI = 0x8820; + public static final int GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI = 0x8835; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIPnTriangles.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIPnTriangles.java new file mode 100644 index 00000000..5d157d64 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIPnTriangles.java @@ -0,0 +1,60 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ati; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ATI_pn_triangles} + */ +public final class GLATIPnTriangles { + public static final int GL_PN_TRIANGLES_ATI = 0x87F0; + public static final int GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI = 0x87F1; + public static final int GL_PN_TRIANGLES_POINT_MODE_ATI = 0x87F2; + public static final int GL_PN_TRIANGLES_NORMAL_MODE_ATI = 0x87F3; + public static final int GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI = 0x87F4; + public static final int GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI = 0x87F5; + public static final int GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI = 0x87F6; + public static final int GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI = 0x87F7; + public static final int GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI = 0x87F8; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_ATI_pn_triangles) return; + ext.glPNTrianglesiATI = load.invoke("glPNTrianglesiATI", ofVoid(JAVA_INT, JAVA_INT)); + ext.glPNTrianglesfATI = load.invoke("glPNTrianglesfATI", ofVoid(JAVA_INT, JAVA_FLOAT)); + } + + public static void glPNTrianglesiATI(int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glPNTrianglesiATI).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPNTrianglesfATI(int pname, float param) { + final var ext = getExtCapabilities(); + try { + check(ext.glPNTrianglesfATI).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATISeparateStencil.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATISeparateStencil.java new file mode 100644 index 00000000..24927533 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATISeparateStencil.java @@ -0,0 +1,55 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ati; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ATI_separate_stencil} + */ +public final class GLATISeparateStencil { + public static final int GL_STENCIL_BACK_FUNC_ATI = 0x8800; + public static final int GL_STENCIL_BACK_FAIL_ATI = 0x8801; + public static final int GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI = 0x8802; + public static final int GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI = 0x8803; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_ATI_separate_stencil) return; + ext.glStencilOpSeparateATI = load.invoke("glStencilOpSeparateATI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glStencilFuncSeparateATI = load.invoke("glStencilFuncSeparateATI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glStencilOpSeparateATI(int face, int sfail, int dpfail, int dppass) { + final var ext = getExtCapabilities(); + try { + check(ext.glStencilOpSeparateATI).invokeExact(face, sfail, dpfail, dppass); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStencilFuncSeparateATI(int frontfunc, int backfunc, int ref, int mask) { + final var ext = getExtCapabilities(); + try { + check(ext.glStencilFuncSeparateATI).invokeExact(frontfunc, backfunc, ref, mask); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextFragmentShader.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextFragmentShader.java new file mode 100644 index 00000000..94ef41ed --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextFragmentShader.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ati; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ATI_text_fragment_shader} + */ +public final class GLATITextFragmentShader { + public static final int GL_TEXT_FRAGMENT_SHADER_ATI = 0x8200; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureEnvCombine3.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureEnvCombine3.java new file mode 100644 index 00000000..58e1059e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureEnvCombine3.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ati; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ATI_texture_env_combine3} + */ +public final class GLATITextureEnvCombine3 { + public static final int GL_MODULATE_ADD_ATI = 0x8744; + public static final int GL_MODULATE_SIGNED_ADD_ATI = 0x8745; + public static final int GL_MODULATE_SUBTRACT_ATI = 0x8746; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureFloat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureFloat.java new file mode 100644 index 00000000..3352a01b --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureFloat.java @@ -0,0 +1,43 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ati; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ATI_texture_float} + */ +public final class GLATITextureFloat { + public static final int GL_RGBA_FLOAT32_ATI = 0x8814; + public static final int GL_RGB_FLOAT32_ATI = 0x8815; + public static final int GL_ALPHA_FLOAT32_ATI = 0x8816; + public static final int GL_INTENSITY_FLOAT32_ATI = 0x8817; + public static final int GL_LUMINANCE_FLOAT32_ATI = 0x8818; + public static final int GL_LUMINANCE_ALPHA_FLOAT32_ATI = 0x8819; + public static final int GL_RGBA_FLOAT16_ATI = 0x881A; + public static final int GL_RGB_FLOAT16_ATI = 0x881B; + public static final int GL_ALPHA_FLOAT16_ATI = 0x881C; + public static final int GL_INTENSITY_FLOAT16_ATI = 0x881D; + public static final int GL_LUMINANCE_FLOAT16_ATI = 0x881E; + public static final int GL_LUMINANCE_ALPHA_FLOAT16_ATI = 0x881F; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureMirrorOnce.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureMirrorOnce.java new file mode 100644 index 00000000..de8a4c1a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureMirrorOnce.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ati; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ATI_texture_mirror_once} + */ +public final class GLATITextureMirrorOnce { + public static final int GL_MIRROR_CLAMP_ATI = 0x8742; + public static final int GL_MIRROR_CLAMP_TO_EDGE_ATI = 0x8743; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexArrayObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexArrayObject.java new file mode 100644 index 00000000..d90221f4 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexArrayObject.java @@ -0,0 +1,141 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ati; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ATI_vertex_array_object} + */ +public final class GLATIVertexArrayObject { + public static final int GL_STATIC_ATI = 0x8760; + public static final int GL_DYNAMIC_ATI = 0x8761; + public static final int GL_PRESERVE_ATI = 0x8762; + public static final int GL_DISCARD_ATI = 0x8763; + public static final int GL_OBJECT_BUFFER_SIZE_ATI = 0x8764; + public static final int GL_OBJECT_BUFFER_USAGE_ATI = 0x8765; + public static final int GL_ARRAY_OBJECT_BUFFER_ATI = 0x8766; + public static final int GL_ARRAY_OBJECT_OFFSET_ATI = 0x8767; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_ATI_vertex_array_object) return; + ext.glNewObjectBufferATI = load.invoke("glNewObjectBufferATI", of(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT)); + ext.glIsObjectBufferATI = load.invoke("glIsObjectBufferATI", of(JAVA_BYTE, JAVA_INT)); + ext.glUpdateObjectBufferATI = load.invoke("glUpdateObjectBufferATI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT)); + ext.glGetObjectBufferfvATI = load.invoke("glGetObjectBufferfvATI", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetObjectBufferivATI = load.invoke("glGetObjectBufferivATI", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glFreeObjectBufferATI = load.invoke("glFreeObjectBufferATI", ofVoid(JAVA_INT)); + ext.glArrayObjectATI = load.invoke("glArrayObjectATI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetArrayObjectfvATI = load.invoke("glGetArrayObjectfvATI", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetArrayObjectivATI = load.invoke("glGetArrayObjectivATI", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVariantArrayObjectATI = load.invoke("glVariantArrayObjectATI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetVariantArrayObjectfvATI = load.invoke("glGetVariantArrayObjectfvATI", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVariantArrayObjectivATI = load.invoke("glGetVariantArrayObjectivATI", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static int glNewObjectBufferATI(int size, @NativeType("const void *") MemorySegment pointer, int usage) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glNewObjectBufferATI).invokeExact(size, pointer, usage); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsObjectBufferATI(int buffer) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsObjectBufferATI).invokeExact(buffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUpdateObjectBufferATI(int buffer, int offset, int size, @NativeType("const void *") MemorySegment pointer, int preserve) { + final var ext = getExtCapabilities(); + try { + check(ext.glUpdateObjectBufferATI).invokeExact(buffer, offset, size, pointer, preserve); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetObjectBufferfvATI(int buffer, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetObjectBufferfvATI).invokeExact(buffer, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetObjectBufferivATI(int buffer, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetObjectBufferivATI).invokeExact(buffer, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFreeObjectBufferATI(int buffer) { + final var ext = getExtCapabilities(); + try { + check(ext.glFreeObjectBufferATI).invokeExact(buffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glArrayObjectATI(int array, int size, int type, int stride, int buffer, int offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glArrayObjectATI).invokeExact(array, size, type, stride, buffer, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetArrayObjectfvATI(int array, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetArrayObjectfvATI).invokeExact(array, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetArrayObjectivATI(int array, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetArrayObjectivATI).invokeExact(array, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVariantArrayObjectATI(int id, int type, int stride, int buffer, int offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glVariantArrayObjectATI).invokeExact(id, type, stride, buffer, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVariantArrayObjectfvATI(int id, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVariantArrayObjectfvATI).invokeExact(id, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVariantArrayObjectivATI(int id, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVariantArrayObjectivATI).invokeExact(id, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexAttribArrayObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexAttribArrayObject.java new file mode 100644 index 00000000..b11ee488 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexAttribArrayObject.java @@ -0,0 +1,59 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ati; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ATI_vertex_attrib_array_object} + */ +public final class GLATIVertexAttribArrayObject { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_ATI_vertex_attrib_array_object) return; + ext.glVertexAttribArrayObjectATI = load.invoke("glVertexAttribArrayObjectATI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetVertexAttribArrayObjectfvATI = load.invoke("glGetVertexAttribArrayObjectfvATI", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVertexAttribArrayObjectivATI = load.invoke("glGetVertexAttribArrayObjectivATI", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glVertexAttribArrayObjectATI(int index, int size, int type, boolean normalized, int stride, int buffer, int offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribArrayObjectATI).invokeExact(index, size, type, normalized, stride, buffer, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVertexAttribArrayObjectfvATI(int index, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexAttribArrayObjectfvATI).invokeExact(index, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVertexAttribArrayObjectivATI(int index, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexAttribArrayObjectivATI).invokeExact(index, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexStreams.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexStreams.java new file mode 100644 index 00000000..cd25649d --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexStreams.java @@ -0,0 +1,405 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ati; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ATI_vertex_streams} + */ +public final class GLATIVertexStreams { + public static final int GL_MAX_VERTEX_STREAMS_ATI = 0x876B; + public static final int GL_VERTEX_STREAM0_ATI = 0x876C; + public static final int GL_VERTEX_STREAM1_ATI = 0x876D; + public static final int GL_VERTEX_STREAM2_ATI = 0x876E; + public static final int GL_VERTEX_STREAM3_ATI = 0x876F; + public static final int GL_VERTEX_STREAM4_ATI = 0x8770; + public static final int GL_VERTEX_STREAM5_ATI = 0x8771; + public static final int GL_VERTEX_STREAM6_ATI = 0x8772; + public static final int GL_VERTEX_STREAM7_ATI = 0x8773; + public static final int GL_VERTEX_SOURCE_ATI = 0x8774; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_ATI_vertex_streams) return; + ext.glVertexStream1sATI = load.invoke("glVertexStream1sATI", ofVoid(JAVA_INT, JAVA_SHORT)); + ext.glVertexStream1svATI = load.invoke("glVertexStream1svATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexStream1iATI = load.invoke("glVertexStream1iATI", ofVoid(JAVA_INT, JAVA_INT)); + ext.glVertexStream1ivATI = load.invoke("glVertexStream1ivATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexStream1fATI = load.invoke("glVertexStream1fATI", ofVoid(JAVA_INT, JAVA_FLOAT)); + ext.glVertexStream1fvATI = load.invoke("glVertexStream1fvATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexStream1dATI = load.invoke("glVertexStream1dATI", ofVoid(JAVA_INT, JAVA_DOUBLE)); + ext.glVertexStream1dvATI = load.invoke("glVertexStream1dvATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexStream2sATI = load.invoke("glVertexStream2sATI", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT)); + ext.glVertexStream2svATI = load.invoke("glVertexStream2svATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexStream2iATI = load.invoke("glVertexStream2iATI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glVertexStream2ivATI = load.invoke("glVertexStream2ivATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexStream2fATI = load.invoke("glVertexStream2fATI", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glVertexStream2fvATI = load.invoke("glVertexStream2fvATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexStream2dATI = load.invoke("glVertexStream2dATI", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glVertexStream2dvATI = load.invoke("glVertexStream2dvATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexStream3sATI = load.invoke("glVertexStream3sATI", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glVertexStream3svATI = load.invoke("glVertexStream3svATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexStream3iATI = load.invoke("glVertexStream3iATI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glVertexStream3ivATI = load.invoke("glVertexStream3ivATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexStream3fATI = load.invoke("glVertexStream3fATI", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glVertexStream3fvATI = load.invoke("glVertexStream3fvATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexStream3dATI = load.invoke("glVertexStream3dATI", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glVertexStream3dvATI = load.invoke("glVertexStream3dvATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexStream4sATI = load.invoke("glVertexStream4sATI", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glVertexStream4svATI = load.invoke("glVertexStream4svATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexStream4iATI = load.invoke("glVertexStream4iATI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glVertexStream4ivATI = load.invoke("glVertexStream4ivATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexStream4fATI = load.invoke("glVertexStream4fATI", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glVertexStream4fvATI = load.invoke("glVertexStream4fvATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexStream4dATI = load.invoke("glVertexStream4dATI", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glVertexStream4dvATI = load.invoke("glVertexStream4dvATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glNormalStream3bATI = load.invoke("glNormalStream3bATI", ofVoid(JAVA_INT, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE)); + ext.glNormalStream3bvATI = load.invoke("glNormalStream3bvATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glNormalStream3sATI = load.invoke("glNormalStream3sATI", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glNormalStream3svATI = load.invoke("glNormalStream3svATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glNormalStream3iATI = load.invoke("glNormalStream3iATI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glNormalStream3ivATI = load.invoke("glNormalStream3ivATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glNormalStream3fATI = load.invoke("glNormalStream3fATI", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glNormalStream3fvATI = load.invoke("glNormalStream3fvATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glNormalStream3dATI = load.invoke("glNormalStream3dATI", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glNormalStream3dvATI = load.invoke("glNormalStream3dvATI", ofVoid(JAVA_INT, ADDRESS)); + ext.glClientActiveVertexStreamATI = load.invoke("glClientActiveVertexStreamATI", ofVoid(JAVA_INT)); + ext.glVertexBlendEnviATI = load.invoke("glVertexBlendEnviATI", ofVoid(JAVA_INT, JAVA_INT)); + ext.glVertexBlendEnvfATI = load.invoke("glVertexBlendEnvfATI", ofVoid(JAVA_INT, JAVA_FLOAT)); + } + + public static void glVertexStream1sATI(int stream, short x) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream1sATI).invokeExact(stream, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream1svATI(int stream, @NativeType("const GLshort *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream1svATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream1iATI(int stream, int x) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream1iATI).invokeExact(stream, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream1ivATI(int stream, @NativeType("const GLint *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream1ivATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream1fATI(int stream, float x) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream1fATI).invokeExact(stream, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream1fvATI(int stream, @NativeType("const GLfloat *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream1fvATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream1dATI(int stream, double x) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream1dATI).invokeExact(stream, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream1dvATI(int stream, @NativeType("const GLdouble *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream1dvATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream2sATI(int stream, short x, short y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream2sATI).invokeExact(stream, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream2svATI(int stream, @NativeType("const GLshort *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream2svATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream2iATI(int stream, int x, int y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream2iATI).invokeExact(stream, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream2ivATI(int stream, @NativeType("const GLint *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream2ivATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream2fATI(int stream, float x, float y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream2fATI).invokeExact(stream, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream2fvATI(int stream, @NativeType("const GLfloat *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream2fvATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream2dATI(int stream, double x, double y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream2dATI).invokeExact(stream, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream2dvATI(int stream, @NativeType("const GLdouble *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream2dvATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream3sATI(int stream, short x, short y, short z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream3sATI).invokeExact(stream, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream3svATI(int stream, @NativeType("const GLshort *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream3svATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream3iATI(int stream, int x, int y, int z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream3iATI).invokeExact(stream, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream3ivATI(int stream, @NativeType("const GLint *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream3ivATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream3fATI(int stream, float x, float y, float z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream3fATI).invokeExact(stream, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream3fvATI(int stream, @NativeType("const GLfloat *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream3fvATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream3dATI(int stream, double x, double y, double z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream3dATI).invokeExact(stream, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream3dvATI(int stream, @NativeType("const GLdouble *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream3dvATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream4sATI(int stream, short x, short y, short z, short w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream4sATI).invokeExact(stream, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream4svATI(int stream, @NativeType("const GLshort *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream4svATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream4iATI(int stream, int x, int y, int z, int w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream4iATI).invokeExact(stream, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream4ivATI(int stream, @NativeType("const GLint *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream4ivATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream4fATI(int stream, float x, float y, float z, float w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream4fATI).invokeExact(stream, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream4fvATI(int stream, @NativeType("const GLfloat *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream4fvATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream4dATI(int stream, double x, double y, double z, double w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream4dATI).invokeExact(stream, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexStream4dvATI(int stream, @NativeType("const GLdouble *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexStream4dvATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormalStream3bATI(int stream, byte nx, byte ny, byte nz) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormalStream3bATI).invokeExact(stream, nx, ny, nz); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormalStream3bvATI(int stream, @NativeType("const GLbyte *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormalStream3bvATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormalStream3sATI(int stream, short nx, short ny, short nz) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormalStream3sATI).invokeExact(stream, nx, ny, nz); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormalStream3svATI(int stream, @NativeType("const GLshort *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormalStream3svATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormalStream3iATI(int stream, int nx, int ny, int nz) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormalStream3iATI).invokeExact(stream, nx, ny, nz); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormalStream3ivATI(int stream, @NativeType("const GLint *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormalStream3ivATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormalStream3fATI(int stream, float nx, float ny, float nz) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormalStream3fATI).invokeExact(stream, nx, ny, nz); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormalStream3fvATI(int stream, @NativeType("const GLfloat *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormalStream3fvATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormalStream3dATI(int stream, double nx, double ny, double nz) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormalStream3dATI).invokeExact(stream, nx, ny, nz); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormalStream3dvATI(int stream, @NativeType("const GLdouble *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormalStream3dvATI).invokeExact(stream, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glClientActiveVertexStreamATI(int stream) { + final var ext = getExtCapabilities(); + try { + check(ext.glClientActiveVertexStreamATI).invokeExact(stream); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexBlendEnviATI(int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexBlendEnviATI).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexBlendEnvfATI(int pname, float param) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexBlendEnvfATI).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMCullVertex.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMCullVertex.java index d46168fb..49e1b439 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMCullVertex.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMCullVertex.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMMultimodeDrawArrays.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMMultimodeDrawArrays.java index 69cea8ca..00664d0b 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMMultimodeDrawArrays.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMMultimodeDrawArrays.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMRasterposClip.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMRasterposClip.java index dd732824..c8dd22fc 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMRasterposClip.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMRasterposClip.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMStaticData.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMStaticData.java index 9411d6c8..01238982 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMStaticData.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMStaticData.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMTextureMirroredRepeat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMTextureMirroredRepeat.java index 18c271d2..0499f1af 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMTextureMirroredRepeat.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMTextureMirroredRepeat.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMVertexArrayLists.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMVertexArrayLists.java index 3ff66163..879bcdd1 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMVertexArrayLists.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMVertexArrayLists.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELBlackholeRender.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELBlackholeRender.java index 17015fe2..d60e393d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELBlackholeRender.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELBlackholeRender.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELConservativeRasterization.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELConservativeRasterization.java index ff28c6b5..08a1e670 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELConservativeRasterization.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELConservativeRasterization.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELFramebufferCMAA.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELFramebufferCMAA.java index 0966dbc1..a1462a64 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELFramebufferCMAA.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELFramebufferCMAA.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELMapTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELMapTexture.java index 0a8ef3b6..01239da6 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELMapTexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELMapTexture.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELParallelArrays.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELParallelArrays.java index fa68b6c1..19f6c393 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELParallelArrays.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELParallelArrays.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELPerformanceQuery.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELPerformanceQuery.java index 2af90c94..97c239a3 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELPerformanceQuery.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELPerformanceQuery.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvanced.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvanced.java index 23c95a69..ed014356 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvanced.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvanced.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvancedCoherent.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvancedCoherent.java index f05c9ef8..fdc44c01 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvancedCoherent.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvancedCoherent.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRNoError.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRNoError.java index 4102fdc3..65070acc 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRNoError.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRNoError.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRParallelShaderCompile.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRParallelShaderCompile.java index 6302108b..e620d88e 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRParallelShaderCompile.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRParallelShaderCompile.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRRobustness.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRRobustness.java index ef4c686c..e9b1bf1f 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRRobustness.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRRobustness.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRShaderSubgroup.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRShaderSubgroup.java index 4f21b428..adb08522 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRShaderSubgroup.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRShaderSubgroup.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRTextureCompressionAstcHdr.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRTextureCompressionAstcHdr.java index da263356..4de0f61e 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRTextureCompressionAstcHdr.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRTextureCompressionAstcHdr.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipX.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipX.java index 29050035..8161e5c8 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipX.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipX.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipY.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipY.java index bf33b39e..03114979 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipY.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipY.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferSwapXY.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferSwapXY.java index eb0b4b94..2a1b95a7 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferSwapXY.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferSwapXY.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAPackInvert.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAPackInvert.java index c31731ea..db5f0c58 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAPackInvert.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAPackInvert.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAProgramBinaryFormats.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAProgramBinaryFormats.java index 92cd8197..1f6f4ce0 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAProgramBinaryFormats.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAProgramBinaryFormats.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAResizeBuffers.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAResizeBuffers.java index b7384076..da823763 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAResizeBuffers.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAResizeBuffers.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESATileRasterOrder.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESATileRasterOrder.java index 93a3db15..9ad96ccc 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESATileRasterOrder.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESATileRasterOrder.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAWindowPos.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAWindowPos.java index e0fd4b35..9e56e844 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAWindowPos.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAWindowPos.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAXTextureStack.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAXTextureStack.java index 85c4565e..93a18362 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAXTextureStack.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAXTextureStack.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAYcbcrTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAYcbcrTexture.java index 1923d95a..7d85deca 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAYcbcrTexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAYcbcrTexture.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESByteCoordinates.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESByteCoordinates.java index 9911731c..984d0107 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESByteCoordinates.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESByteCoordinates.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESCompressedPalettedTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESCompressedPalettedTexture.java index 19893878..3b43b0a2 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESCompressedPalettedTexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESCompressedPalettedTexture.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESFixedPoint.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESFixedPoint.java index 8a64f6c0..3f1339c6 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESFixedPoint.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESFixedPoint.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESQueryMatrix.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESQueryMatrix.java index 686760da..067c74e0 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESQueryMatrix.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESQueryMatrix.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESReadFormat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESReadFormat.java index 56514999..32921bc1 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESReadFormat.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESReadFormat.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESSinglePrecision.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESSinglePrecision.java index 87763fdc..523b0b5b 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESSinglePrecision.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESSinglePrecision.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISDetailTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISDetailTexture.java new file mode 100644 index 00000000..b3cbb144 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISDetailTexture.java @@ -0,0 +1,59 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIS_detail_texture} + */ +public final class GLSGISDetailTexture { + public static final int GL_DETAIL_TEXTURE_2D_SGIS = 0x8095; + public static final int GL_DETAIL_TEXTURE_2D_BINDING_SGIS = 0x8096; + public static final int GL_LINEAR_DETAIL_SGIS = 0x8097; + public static final int GL_LINEAR_DETAIL_ALPHA_SGIS = 0x8098; + public static final int GL_LINEAR_DETAIL_COLOR_SGIS = 0x8099; + public static final int GL_DETAIL_TEXTURE_LEVEL_SGIS = 0x809A; + public static final int GL_DETAIL_TEXTURE_MODE_SGIS = 0x809B; + public static final int GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS = 0x809C; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIS_detail_texture) return; + ext.glDetailTexFuncSGIS = load.invoke("glDetailTexFuncSGIS", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetDetailTexFuncSGIS = load.invoke("glGetDetailTexFuncSGIS", ofVoid(JAVA_INT, ADDRESS)); + } + + public static void glDetailTexFuncSGIS(int target, int n, @NativeType("const GLfloat *") MemorySegment points) { + final var ext = getExtCapabilities(); + try { + check(ext.glDetailTexFuncSGIS).invokeExact(target, n, points); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetDetailTexFuncSGIS(int target, @NativeType("GLfloat *") MemorySegment points) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetDetailTexFuncSGIS).invokeExact(target, points); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISFogFunction.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISFogFunction.java new file mode 100644 index 00000000..7b0b3510 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISFogFunction.java @@ -0,0 +1,54 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIS_fog_function} + */ +public final class GLSGISFogFunction { + public static final int GL_FOG_FUNC_SGIS = 0x812A; + public static final int GL_FOG_FUNC_POINTS_SGIS = 0x812B; + public static final int GL_MAX_FOG_FUNC_POINTS_SGIS = 0x812C; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIS_fog_function) return; + ext.glFogFuncSGIS = load.invoke("glFogFuncSGIS", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetFogFuncSGIS = load.invoke("glGetFogFuncSGIS", ofVoid(ADDRESS)); + } + + public static void glFogFuncSGIS(int n, @NativeType("const GLfloat *") MemorySegment points) { + final var ext = getExtCapabilities(); + try { + check(ext.glFogFuncSGIS).invokeExact(n, points); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetFogFuncSGIS(@NativeType("GLfloat *") MemorySegment points) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetFogFuncSGIS).invokeExact(points); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISGenerateMipmap.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISGenerateMipmap.java new file mode 100644 index 00000000..4747cc24 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISGenerateMipmap.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIS_generate_mipmap} + */ +public final class GLSGISGenerateMipmap { + public static final int GL_GENERATE_MIPMAP_SGIS = 0x8191; + public static final int GL_GENERATE_MIPMAP_HINT_SGIS = 0x8192; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNConvolutionBorderModes.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNConvolutionBorderModes.java index a66d8358..02dab355 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNConvolutionBorderModes.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNConvolutionBorderModes.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNGlobalAlpha.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNGlobalAlpha.java index 5f6807ac..8060406d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNGlobalAlpha.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNGlobalAlpha.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNMeshArray.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNMeshArray.java index d795fb1a..071647a0 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNMeshArray.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNMeshArray.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNSliceAccum.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNSliceAccum.java index cab9ae9f..c7cbc10e 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNSliceAccum.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNSliceAccum.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNTriangleList.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNTriangleList.java index 5f5f2a01..cfc81598 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNTriangleList.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNTriangleList.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNVertex.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNVertex.java index f6ecbb9a..a65d860e 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNVertex.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNVertex.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNXConstantData.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNXConstantData.java index 3a908a38..3aed148d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNXConstantData.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNXConstantData.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal From b1a5da6164391a49b85542c77ca7ee5ebf4e6572 Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Sat, 28 Oct 2023 21:01:10 +0800 Subject: [PATCH 09/20] [OpenGL] Update extensions --- .../overrungl/opengl/OpenGLGenerator.kt | 61 ++++++++++++++++++- 1 file changed, 60 insertions(+), 1 deletion(-) diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt index 17cf0f23..2b6dd957 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt @@ -57,7 +57,7 @@ data class Type(val name: String, val layout: String?) { override fun toString(): String = name } -val fileHeader = """/* +const val fileHeader = """/* * MIT License * * Copyright (c) 2022-present Overrun Organization @@ -2861,6 +2861,65 @@ fun sgi() { "GL_GENERATE_MIPMAP_SGIS" to "0x8191", "GL_GENERATE_MIPMAP_HINT_SGIS" to "0x8192" ) + file("Multisample", SGIS, "GL_SGIS_multisample") { + "GL_MULTISAMPLE_SGIS"("0x809D") + "GL_SAMPLE_ALPHA_TO_MASK_SGIS"("0x809E") + "GL_SAMPLE_ALPHA_TO_ONE_SGIS"("0x809F") + "GL_SAMPLE_MASK_SGIS"("0x80A0") + "GL_1PASS_SGIS"("0x80A1") + "GL_2PASS_0_SGIS"("0x80A2") + "GL_2PASS_1_SGIS"("0x80A3") + "GL_4PASS_0_SGIS"("0x80A4") + "GL_4PASS_1_SGIS"("0x80A5") + "GL_4PASS_2_SGIS"("0x80A6") + "GL_4PASS_3_SGIS"("0x80A7") + "GL_SAMPLE_BUFFERS_SGIS"("0x80A8") + "GL_SAMPLES_SGIS"("0x80A9") + "GL_SAMPLE_MASK_VALUE_SGIS"("0x80AA") + "GL_SAMPLE_MASK_INVERT_SGIS"("0x80AB") + "GL_SAMPLE_PATTERN_SGIS"("0x80AC") + "glSampleMaskSGIS"(void, GLclampf("value"), GLboolean("invert")) + "glSamplePatternSGIS"(void, GLenum("pattern")) + } + file("PixelTexture", SGIS, "GL_SGIS_pixel_texture") { + "GL_PIXEL_TEXTURE_SGIS"("0x8353") + "GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS"("0x8354") + "GL_PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS"("0x8355") + "GL_PIXEL_GROUP_COLOR_SGIS"("0x8356") + "glPixelTexGenParameteriSGIS"(void, GLenum("pname"), GLint("param")) + "glPixelTexGenParameterivSGIS"(void, GLenum("pname"), address("params", "const GLint *")) + "glPixelTexGenParameterfSGIS"(void, GLenum("pname"), GLfloat("param")) + "glPixelTexGenParameterfvSGIS"(void, GLenum("pname"), address("params", "const GLfloat *")) + "glGetPixelTexGenParameterivSGIS"(void, GLenum("pname"), address("params", "GLint *")) + "glGetPixelTexGenParameterfvSGIS"(void, GLenum("pname"), address("params", "GLfloat *")) + } + file( + "PointLineTexgen", SGIS, "GL_SGIS_point_line_texgen", + "GL_EYE_DISTANCE_TO_POINT_SGIS" to "0x81F0", + "GL_OBJECT_DISTANCE_TO_POINT_SGIS" to "0x81F1", + "GL_EYE_DISTANCE_TO_LINE_SGIS" to "0x81F2", + "GL_OBJECT_DISTANCE_TO_LINE_SGIS" to "0x81F3", + "GL_EYE_POINT_SGIS" to "0x81F4", + "GL_OBJECT_POINT_SGIS" to "0x81F5", + "GL_EYE_LINE_SGIS" to "0x81F6", + "GL_OBJECT_LINE_SGIS" to "0x81F7" + ) + file("PointParameters", SGIS, "GL_SGIS_point_parameters") { + "GL_POINT_SIZE_MIN_SGIS"("0x8126") + "GL_POINT_SIZE_MAX_SGIS"("0x8127") + "GL_POINT_FADE_THRESHOLD_SIZE_SGIS"("0x8128") + "GL_DISTANCE_ATTENUATION_SGIS"("0x8129") + "glPointParameterfSGIS"(void, GLenum("pname"), GLfloat("param")) + "glPointParameterfvSGIS"(void, GLenum("pname"), address("params", "const GLfloat *")) + } + file("SharpenTexture", SGIS, "GL_SGIS_sharpen_texture") { + "GL_LINEAR_SHARPEN_SGIS"("0x80AD") + "GL_LINEAR_SHARPEN_ALPHA_SGIS"("0x80AE") + "GL_LINEAR_SHARPEN_COLOR_SGIS"("0x80AF") + "GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS"("0x80B0") + "glSharpenTexFuncSGIS"(void, GLenum("target"), GLsizei("n"), address("points", "const GLfloat *")) + "glGetSharpenTexFuncSGIS"(void, GLenum("target"), address("points", "GLfloat *")) + } } fun sun() { From 9a0856d31cb31589d4fbc0ea5a5c4227a5e1bb99 Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Sat, 4 Nov 2023 16:28:14 +0800 Subject: [PATCH 10/20] [OpenGL] Updated extensions and compability constants --- build.gradle.kts | 28 +- gradle.properties | 5 +- modules/overrungl.opengl/build.gradle.kts | 9 +- .../overrungl/opengl/OpenGLGenerator.kt | 449 +++++++++++++++++- .../src/main/java/overrungl/opengl/GL13.java | 38 ++ .../src/main/java/overrungl/opengl/GL15.java | 48 ++ .../src/main/java/overrungl/opengl/GL15C.java | 2 +- .../src/main/java/overrungl/opengl/GL20.java | 30 ++ .../src/main/java/overrungl/opengl/GL20C.java | 2 +- .../src/main/java/overrungl/opengl/GL21.java | 33 ++ .../src/main/java/overrungl/opengl/GL21C.java | 2 +- .../src/main/java/overrungl/opengl/GL30.java | 29 ++ .../src/main/java/overrungl/opengl/GL30C.java | 2 +- .../main/java/overrungl/opengl/GLExtCaps.java | 40 +- .../opengl/ext/ext/GLEXT422Pixels.java | 35 ++ .../opengl/ext/nv/GLNVXConditionalRender.java | 51 ++ .../opengl/ext/sgi/GLSGIColorMatrix.java | 42 ++ .../opengl/ext/sgi/GLSGIColorTable.java | 107 +++++ .../opengl/ext/sgi/GLSGISMultisample.java | 67 +++ .../opengl/ext/sgi/GLSGISPixelTexture.java | 87 ++++ .../opengl/ext/sgi/GLSGISPointLineTexgen.java | 39 ++ .../opengl/ext/sgi/GLSGISPointParameters.java | 55 +++ .../opengl/ext/sgi/GLSGISSharpenTexture.java | 55 +++ .../opengl/ext/sgi/GLSGISTexture4D.java | 61 +++ .../ext/sgi/GLSGISTextureBorderClamp.java | 32 ++ .../ext/sgi/GLSGISTextureColorMask.java | 44 ++ .../ext/sgi/GLSGISTextureEdgeClamp.java | 32 ++ .../opengl/ext/sgi/GLSGISTextureFilter4.java | 53 +++ .../opengl/ext/sgi/GLSGISTextureLod.java | 35 ++ .../opengl/ext/sgi/GLSGISTextureSelect.java | 53 +++ .../ext/sgi/GLSGITextureColorTable.java | 33 ++ .../overrungl/opengl/ext/sgi/GLSGIXAsync.java | 88 ++++ .../opengl/ext/sgi/GLSGIXAsyncHistogram.java | 33 ++ .../opengl/ext/sgi/GLSGIXAsyncPixel.java | 37 ++ .../ext/sgi/GLSGIXBlendAlphaMinmax.java | 33 ++ .../ext/sgi/GLSGIXCalligraphicFragment.java | 32 ++ .../opengl/ext/sgi/GLSGIXClipmap.java | 43 ++ .../ext/sgi/GLSGIXConvolutionAccuracy.java | 32 ++ .../opengl/ext/sgi/GLSGIXDepthTexture.java | 34 ++ .../opengl/ext/sgi/GLSGIXFlushRaster.java | 43 ++ .../opengl/ext/sgi/GLSGIXFogOffset.java | 33 ++ .../ext/sgi/GLSGIXFragmentLighting.java | 199 ++++++++ .../opengl/ext/sgi/GLSGIXFramezoom.java | 46 ++ .../opengl/ext/sgi/GLSGIXIglooInterface.java | 43 ++ .../opengl/ext/sgi/GLSGIXInstruments.java | 87 ++++ .../opengl/ext/sgi/GLSGIXInterlace.java | 32 ++ .../opengl/ext/sgi/GLSGIXIrInstrument1.java | 32 ++ .../opengl/ext/sgi/GLSGIXListPriority.java | 84 ++++ .../opengl/ext/sgi/GLSGIXPixelTexture.java | 45 ++ .../opengl/ext/sgi/GLSGIXPixelTiles.java | 39 ++ .../opengl/ext/sgi/GLSGIXPolynomialFFD.java | 73 +++ .../opengl/ext/sgi/GLSGIXReferencePlane.java | 45 ++ .../opengl/ext/sgi/GLSGIXResample.java | 36 ++ .../opengl/ext/sgi/GLSGIXScalebiasHint.java | 32 ++ .../opengl/ext/sgi/GLSGIXShadow.java | 35 ++ .../opengl/ext/sgi/GLSGIXShadowAmbient.java | 32 ++ .../opengl/ext/sgi/GLSGIXSprite.java | 74 +++ .../opengl/ext/sgi/GLSGIXSubsample.java | 36 ++ .../opengl/ext/sgi/GLSGIXTagSampleBuffer.java | 43 ++ .../opengl/ext/sgi/GLSGIXTextureAddEnv.java | 32 ++ .../ext/sgi/GLSGIXTextureCoordinateClamp.java | 34 ++ .../opengl/ext/sgi/GLSGIXTextureLodBias.java | 34 ++ .../ext/sgi/GLSGIXTextureMultiBuffer.java | 32 ++ .../ext/sgi/GLSGIXTextureScaleBias.java | 35 ++ .../opengl/ext/sgi/GLSGIXVertexPreclip.java | 33 ++ .../overrungl/opengl/ext/sgi/GLSGIXYcrcb.java | 33 ++ .../opengl/ext/sgi/GLSGIXYcrcba.java | 33 ++ 67 files changed, 3244 insertions(+), 41 deletions(-) create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/GL15.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/GL20.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/GL21.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/GL30.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXT422Pixels.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXConditionalRender.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIColorMatrix.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIColorTable.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISMultisample.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPixelTexture.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPointLineTexgen.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPointParameters.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISSharpenTexture.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTexture4D.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureBorderClamp.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureColorMask.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureEdgeClamp.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureFilter4.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureLod.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureSelect.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGITextureColorTable.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsync.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsyncHistogram.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsyncPixel.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXBlendAlphaMinmax.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXCalligraphicFragment.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXClipmap.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXConvolutionAccuracy.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXDepthTexture.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFlushRaster.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFogOffset.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFragmentLighting.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFramezoom.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXIglooInterface.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXInstruments.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXInterlace.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXIrInstrument1.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXListPriority.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPixelTexture.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPixelTiles.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPolynomialFFD.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXReferencePlane.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXResample.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXScalebiasHint.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXShadow.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXShadowAmbient.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXSprite.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXSubsample.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTagSampleBuffer.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureAddEnv.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureCoordinateClamp.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureLodBias.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureMultiBuffer.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureScaleBias.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXVertexPreclip.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXYcrcb.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXYcrcba.java diff --git a/build.gradle.kts b/build.gradle.kts index 65d1d14f..d399dae1 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -21,10 +21,11 @@ val orgName: String by project val orgUrl: String by project val developers: String by project -val jdkEABuildDoc: String? = null -val targetJavaVersion = 21 -val enablePreview = true -rootProject.ext["enablePreview"] = enablePreview +val jdkVersion: String by rootProject +val jdkEnablePreview: String by rootProject +val jdkEarlyAccessDoc: String? by rootProject + +val targetJavaVersion = jdkVersion.toInt() group = projGroupId version = projVersion @@ -149,12 +150,12 @@ subprojects { tasks.withType { options.encoding = "UTF-8" - if (enablePreview) options.compilerArgs.add("--enable-preview") + if (jdkEnablePreview.toBoolean()) options.compilerArgs.add("--enable-preview") options.release.set(targetJavaVersion) } tasks.withType { - if (enablePreview) jvmArgs("--enable-preview") + if (jdkEnablePreview.toBoolean()) jvmArgs("--enable-preview") } extensions.configure("java") { @@ -247,10 +248,10 @@ allprojects { charSet = "UTF-8" docEncoding = "UTF-8" isAuthor = true - if (jdkEABuildDoc == null) { + if (jdkEarlyAccessDoc == null) { links("https://docs.oracle.com/en/java/javase/$targetJavaVersion/docs/api/") } else { - links("https://download.java.net/java/early_access/$jdkEABuildDoc/docs/api/") + links("https://download.java.net/java/early_access/$jdkEarlyAccessDoc/docs/api/") } tags( @@ -294,17 +295,6 @@ publishing.publications { name.set(orgName) url.set(orgUrl) } - developers { - developers.split(',') - .map { it.split(':', limit = 3) } - .forEach { (id1, name1, email1) -> - developer { - id.set(id1) - name.set(name1) - email.set(email1) - } - } - } scm { connection.set("scm:git:https://github.com/${projVcs}.git") developerConnection.set("scm:git:https://github.com/${projVcs}.git") diff --git a/gradle.properties b/gradle.properties index 10e64037..9ff50500 100644 --- a/gradle.properties +++ b/gradle.properties @@ -12,7 +12,8 @@ projBranch=main orgName=Overrun Organization orgUrl=https://over-run.github.io/ -# Developers -developers=squid233:squid233:513508220@qq.com +jdkVersion=21 +jdkEnablePreview=true +#jdkEarlyAccessDoc=jdk22 projModules=core, glfw, nfd, joml, opengl, stb diff --git a/modules/overrungl.opengl/build.gradle.kts b/modules/overrungl.opengl/build.gradle.kts index e9b367f2..b65b0a4a 100644 --- a/modules/overrungl.opengl/build.gradle.kts +++ b/modules/overrungl.opengl/build.gradle.kts @@ -1,4 +1,5 @@ -val enablePreview: Boolean by rootProject.ext +val jdkVersion: String by rootProject +val jdkEnablePreview: String by rootProject sourceSets { create("generator") @@ -7,16 +8,16 @@ sourceSets { tasks.named("compileGeneratorJava") { javaCompiler.set(javaToolchains.compilerFor { targetCompatibility = "20" - languageVersion.set(JavaLanguageVersion.of(21)) + languageVersion.set(JavaLanguageVersion.of(jdkVersion)) }) } tasks.register("generate") { classpath(sourceSets["generator"].runtimeClasspath) javaLauncher.set(javaToolchains.launcherFor { - languageVersion.set(JavaLanguageVersion.of(21)) + languageVersion.set(JavaLanguageVersion.of(jdkVersion)) }) - if (enablePreview) jvmArgs("--enable-preview") + if (jdkEnablePreview.toBoolean()) jvmArgs("--enable-preview") mainClass.set("overrungl.opengl.OpenGLGeneratorKt") workingDir = File("src/main/java/overrungl/opengl") } diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt index 2b6dd957..cff2975f 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt @@ -14,6 +14,10 @@ * copies or substantial portions of the Software. */ +/* note: adding a new extension + * you need to add the extension in glExtCaps::caps + */ + package overrungl.opengl import overrungl.opengl.OpenGLExt.* @@ -2383,7 +2387,15 @@ fun ati() { } } -fun ext() {} +fun ext() { + file( + "422Pixels", EXT, "GL_EXT_422_pixels", + "GL_422_EXT" to "0x80CC", + "GL_422_REV_EXT" to "0x80CD", + "GL_422_AVERAGE_EXT" to "0x80CE", + "GL_422_REV_AVERAGE_EXT" to "0x80CF" + ) +} fun gremedy() { file("FrameTerminator", GREMEDY, "GL_GREMEDY_frame_terminator") { @@ -2723,7 +2735,12 @@ fun mesa() { ) } -fun nv() {} +fun nv() { + file("ConditionalRender", NVX, "GL_NVX_conditional_render") { + "glBeginConditionalRenderNVX"(void, GLuint("id")) + "glEndConditionalRenderNVX"(void) + } +} fun oml() { file( @@ -2920,6 +2937,428 @@ fun sgi() { "glSharpenTexFuncSGIS"(void, GLenum("target"), GLsizei("n"), address("points", "const GLfloat *")) "glGetSharpenTexFuncSGIS"(void, GLenum("target"), address("points", "GLfloat *")) } + file("Texture4D", SGIS, "GL_SGIS_texture4D") { + "GL_PACK_SKIP_VOLUMES_SGIS"("0x8130") + "GL_PACK_IMAGE_DEPTH_SGIS"("0x8131") + "GL_UNPACK_SKIP_VOLUMES_SGIS"("0x8132") + "GL_UNPACK_IMAGE_DEPTH_SGIS"("0x8133") + "GL_TEXTURE_4D_SGIS"("0x8134") + "GL_PROXY_TEXTURE_4D_SGIS"("0x8135") + "GL_TEXTURE_4DSIZE_SGIS"("0x8136") + "GL_TEXTURE_WRAP_Q_SGIS"("0x8137") + "GL_MAX_4D_TEXTURE_SIZE_SGIS"("0x8138") + "GL_TEXTURE_4D_BINDING_SGIS"("0x814F") + "glTexImage4DSGIS"( + void, + GLenum("target"), + GLint("level"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLsizei("size4d"), + GLint("border"), + GLenum("format"), + GLenum("type"), + address("pixels", "const void *") + ) + "glTexSubImage4DSGIS"( + void, + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLint("zoffset"), + GLint("woffset"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLsizei("size4d"), + GLenum("format"), + GLenum("type"), + address("pixels", "const void *") + ) + } + file("TextureBorderClamp", SGIS, "GL_SGIS_texture_border_clamp", "GL_CLAMP_TO_BORDER_SGIS" to "0x812D") + file("TextureColorMask", SGIS, "GL_SGIS_texture_color_mask") { + "GL_TEXTURE_COLOR_WRITEMASK_SGIS"("0x81EF") + "glTextureColorMaskSGIS"(void, GLboolean("red"), GLboolean("green"), GLboolean("blue"), GLboolean("alpha")) + } + file("TextureEdgeClamp", SGIS, "GL_SGIS_texture_edge_clamp", "GL_CLAMP_TO_EDGE_SGIS" to "0x812F") + file("TextureFilter4", SGIS, "GL_SGIS_texture_filter4") { + "GL_FILTER4_SGIS"("0x8146") + "GL_TEXTURE_FILTER4_SIZE_SGIS"("0x8147") + "glGetTexFilterFuncSGIS"(void, GLenum("target"), GLenum("filter"), address("weights", "GLfloat *")) + "glTexFilterFuncSGIS"( + void, + GLenum("target"), + GLenum("filter"), + GLsizei("n"), + address("weights", "const GLfloat *") + ) + } + file( + "TextureLod", SGIS, "GL_SGIS_texture_lod", + "GL_TEXTURE_MIN_LOD_SGIS" to "0x813A", + "GL_TEXTURE_MAX_LOD_SGIS" to "0x813B", + "GL_TEXTURE_BASE_LEVEL_SGIS" to "0x813C", + "GL_TEXTURE_MAX_LEVEL_SGIS" to "0x813D" + ) + file( + "TextureSelect", SGIS, "GL_SGIS_texture_select", + "GL_DUAL_ALPHA4_SGIS" to "0x8110", + "GL_DUAL_ALPHA8_SGIS" to "0x8111", + "GL_DUAL_ALPHA12_SGIS" to "0x8112", + "GL_DUAL_ALPHA16_SGIS" to "0x8113", + "GL_DUAL_LUMINANCE4_SGIS" to "0x8114", + "GL_DUAL_LUMINANCE8_SGIS" to "0x8115", + "GL_DUAL_LUMINANCE12_SGIS" to "0x8116", + "GL_DUAL_LUMINANCE16_SGIS" to "0x8117", + "GL_DUAL_INTENSITY4_SGIS" to "0x8118", + "GL_DUAL_INTENSITY8_SGIS" to "0x8119", + "GL_DUAL_INTENSITY12_SGIS" to "0x811A", + "GL_DUAL_INTENSITY16_SGIS" to "0x811B", + "GL_DUAL_LUMINANCE_ALPHA4_SGIS" to "0x811C", + "GL_DUAL_LUMINANCE_ALPHA8_SGIS" to "0x811D", + "GL_QUAD_ALPHA4_SGIS" to "0x811E", + "GL_QUAD_ALPHA8_SGIS" to "0x811F", + "GL_QUAD_LUMINANCE4_SGIS" to "0x8120", + "GL_QUAD_LUMINANCE8_SGIS" to "0x8121", + "GL_QUAD_INTENSITY4_SGIS" to "0x8122", + "GL_QUAD_INTENSITY8_SGIS" to "0x8123", + "GL_DUAL_TEXTURE_SELECT_SGIS" to "0x8124", + "GL_QUAD_TEXTURE_SELECT_SGIS" to "0x8125" + ) + file("Async", SGIX, "GL_SGIX_async") { + "GL_ASYNC_MARKER_SGIX"("0x8329") + "glAsyncMarkerSGIX"(void, GLuint("marker")) + "glFinishAsyncSGIX"(GLint, address("markerp", "GLuint *")) + "glPollAsyncSGIX"(GLint, address("markerp", "GLuint *")) + "glGenAsyncMarkersSGIX"(GLuint, GLsizei("range")) + "glDeleteAsyncMarkersSGIX"(void, GLuint("marker"), GLsizei("range")) + "glIsAsyncMarkerSGIX"(GLboolean, GLuint("marker")) + } + file( + "AsyncHistogram", SGIX, "GL_SGIX_async_histogram", + "GL_ASYNC_HISTOGRAM_SGIX" to "0x832C", + "GL_MAX_ASYNC_HISTOGRAM_SGIX" to "0x832D" + ) + file( + "AsyncPixel", SGIX, "GL_SGIX_async_pixel", + "GL_ASYNC_TEX_IMAGE_SGIX" to "0x835C", + "GL_ASYNC_DRAW_PIXELS_SGIX" to "0x835D", + "GL_ASYNC_READ_PIXELS_SGIX" to "0x835E", + "GL_MAX_ASYNC_TEX_IMAGE_SGIX" to "0x835F", + "GL_MAX_ASYNC_DRAW_PIXELS_SGIX" to "0x8360", + "GL_MAX_ASYNC_READ_PIXELS_SGIX" to "0x8361" + ) + file( + "BlendAlphaMinmax", SGIX, "GL_SGIX_blend_alpha_minmax", + "GL_ALPHA_MIN_SGIX" to "0x8320", + "GL_ALPHA_MAX_SGIX" to "0x8321" + ) + file("CalligraphicFragment", SGIX, "GL_SGIX_calligraphic_fragment", "GL_CALLIGRAPHIC_FRAGMENT_SGIX" to "0x8183") + file( + "Clipmap", SGIX, "GL_SGIX_clipmap", + "GL_LINEAR_CLIPMAP_LINEAR_SGIX" to "0x8170", + "GL_TEXTURE_CLIPMAP_CENTER_SGIX" to "0x8171", + "GL_TEXTURE_CLIPMAP_FRAME_SGIX" to "0x8172", + "GL_TEXTURE_CLIPMAP_OFFSET_SGIX" to "0x8173", + "GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX" to "0x8174", + "GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX" to "0x8175", + "GL_TEXTURE_CLIPMAP_DEPTH_SGIX" to "0x8176", + "GL_MAX_CLIPMAP_DEPTH_SGIX" to "0x8177", + "GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX" to "0x8178", + "GL_NEAREST_CLIPMAP_NEAREST_SGIX" to "0x844D", + "GL_NEAREST_CLIPMAP_LINEAR_SGIX" to "0x844E", + "GL_LINEAR_CLIPMAP_NEAREST_SGIX" to "0x844F" + ) + file("ConvolutionAccuracy", SGIX, "GL_SGIX_convolution_accuracy", "GL_CONVOLUTION_HINT_SGIX" to "0x8316") + file( + "DepthTexture", SGIX, "GL_SGIX_depth_texture", + "GL_DEPTH_COMPONENT16_SGIX" to "0x81A5", + "GL_DEPTH_COMPONENT24_SGIX" to "0x81A6", + "GL_DEPTH_COMPONENT32_SGIX" to "0x81A7" + ) + file("FlushRaster", SGIX, "GL_SGIX_flush_raster") { + "glFlushRasterSGIX"(void) + } + file( + "FogOffset", SGIX, "GL_SGIX_fog_offset", + "GL_FOG_OFFSET_SGIX" to "0x8198", + "GL_FOG_OFFSET_VALUE_SGIX" to "0x8199" + ) + file("FragmentLighting", SGIX, "GL_SGIX_fragment_lighting") { + "GL_FRAGMENT_LIGHTING_SGIX"("0x8400") + "GL_FRAGMENT_COLOR_MATERIAL_SGIX"("0x8401") + "GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX"("0x8402") + "GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX"("0x8403") + "GL_MAX_FRAGMENT_LIGHTS_SGIX"("0x8404") + "GL_MAX_ACTIVE_LIGHTS_SGIX"("0x8405") + "GL_CURRENT_RASTER_NORMAL_SGIX"("0x8406") + "GL_LIGHT_ENV_MODE_SGIX"("0x8407") + "GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX"("0x8408") + "GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX"("0x8409") + "GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX"("0x840A") + "GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX"("0x840B") + "GL_FRAGMENT_LIGHT0_SGIX"("0x840C") + "GL_FRAGMENT_LIGHT1_SGIX"("0x840D") + "GL_FRAGMENT_LIGHT2_SGIX"("0x840E") + "GL_FRAGMENT_LIGHT3_SGIX"("0x840F") + "GL_FRAGMENT_LIGHT4_SGIX"("0x8410") + "GL_FRAGMENT_LIGHT5_SGIX"("0x8411") + "GL_FRAGMENT_LIGHT6_SGIX"("0x8412") + "GL_FRAGMENT_LIGHT7_SGIX"("0x8413") + "glFragmentColorMaterialSGIX"(void, GLenum("face"), GLenum("mode")) + "glFragmentLightfSGIX"(void, GLenum("light"), GLenum("pname"), GLfloat("param")) + "glFragmentLightfvSGIX"(void, GLenum("light"), GLenum("pname"), address("params", "const GLfloat *")) + "glFragmentLightiSGIX"(void, GLenum("light"), GLenum("pname"), GLint("param")) + "glFragmentLightivSGIX"(void, GLenum("light"), GLenum("pname"), address("params", "const GLint *")) + "glFragmentLightModelfSGIX"(void, GLenum("pname"), GLfloat("param")) + "glFragmentLightModelfvSGIX"(void, GLenum("pname"), address("params", "const GLfloat *")) + "glFragmentLightModeliSGIX"(void, GLenum("pname"), GLint("param")) + "glFragmentLightModelivSGIX"(void, GLenum("pname"), address("params", "const GLint *")) + "glFragmentMaterialfSGIX"(void, GLenum("face"), GLenum("pname"), GLfloat("param")) + "glFragmentMaterialfvSGIX"(void, GLenum("face"), GLenum("pname"), address("params", "const GLfloat *")) + "glFragmentMaterialiSGIX"(void, GLenum("face"), GLenum("pname"), GLint("param")) + "glFragmentMaterialivSGIX"(void, GLenum("face"), GLenum("pname"), address("params", "const GLint *")) + "glGetFragmentLightfvSGIX"(void, GLenum("light"), GLenum("pname"), address("params", "GLfloat *")) + "glGetFragmentLightivSGIX"(void, GLenum("light"), GLenum("pname"), address("params", "GLint *")) + "glGetFragmentMaterialfvSGIX"(void, GLenum("face"), GLenum("pname"), address("params", "GLfloat *")) + "glGetFragmentMaterialivSGIX"(void, GLenum("face"), GLenum("pname"), address("params", "GLint *")) + "glLightEnviSGIX"(void, GLenum("pname"), GLint("param")) + } + file("Framezoom", SGIX, "GL_SGIX_framezoom") { + "GL_FRAMEZOOM_SGIX"("0x818B") + "GL_FRAMEZOOM_FACTOR_SGIX"("0x818C") + "GL_MAX_FRAMEZOOM_FACTOR_SGIX"("0x818D") + "glFrameZoomSGIX"(void, GLint("factor")) + } + file("IglooInterface", SGIX, "GL_SGIX_igloo_interface") { + "glIglooInterfaceSGIX"(void, GLenum("pname"), address("params", "const void *")) + } + file("Instruments", SGIX, "GL_SGIX_instruments") { + "GL_INSTRUMENT_BUFFER_POINTER_SGIX"("0x8180") + "GL_INSTRUMENT_MEASUREMENTS_SGIX"("0x8181") + "glGetInstrumentsSGIX"(GLint) + "glInstrumentsBufferSGIX"(void, GLsizei("size"), address("buffer", "GLint *")) + "glPollInstrumentsSGIX"(GLint, address("marker_p", "GLint *")) + "glReadInstrumentsSGIX"(void, GLint("marker")) + "glStartInstrumentsSGIX"(void) + "glStopInstrumentsSGIX"(void, GLint("marker")) + } + file("Interlace", SGIX, "GL_SGIX_interlace", "GL_INTERLACE_SGIX" to "0x8094") + file("IrInstrument1", SGIX, "GL_SGIX_ir_instrument1", "GL_IR_INSTRUMENT1_SGIX" to "0x817F") + file("ListPriority", SGIX, "GL_SGIX_list_priority") { + "GL_LIST_PRIORITY_SGIX"("0x8182") + "glGetListParameterfvSGIX"(void, GLuint("list"), GLenum("pname"), address("params", "GLfloat *")) + "glGetListParameterivSGIX"(void, GLuint("list"), GLenum("pname"), address("params", "GLint *")) + "glListParameterfSGIX"(void, GLuint("list"), GLenum("pname"), GLfloat("param")) + "glListParameterfvSGIX"(void, GLuint("list"), GLenum("pname"), address("params", "const GLfloat *")) + "glListParameteriSGIX"(void, GLuint("list"), GLenum("pname"), GLint("param")) + "glListParameterivSGIX"(void, GLuint("list"), GLenum("pname"), address("params", "const GLint *")) + } + file("PixelTexture", SGIX, "GL_SGIX_pixel_texture") { + "GL_PIXEL_TEX_GEN_SGIX"("0x8139") + "GL_PIXEL_TEX_GEN_MODE_SGIX"("0x832B") + "glPixelTexGenSGIX"(void, GLenum("mode")) + } + file( + "PixelTiles", SGIX, "GL_SGIX_pixel_tiles", + "GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX" to "0x813E", + "GL_PIXEL_TILE_CACHE_INCREMENT_SGIX" to "0x813F", + "GL_PIXEL_TILE_WIDTH_SGIX" to "0x8140", + "GL_PIXEL_TILE_HEIGHT_SGIX" to "0x8141", + "GL_PIXEL_TILE_GRID_WIDTH_SGIX" to "0x8142", + "GL_PIXEL_TILE_GRID_HEIGHT_SGIX" to "0x8143", + "GL_PIXEL_TILE_GRID_DEPTH_SGIX" to "0x8144", + "GL_PIXEL_TILE_CACHE_SIZE_SGIX" to "0x8145" + ) + file("PolynomialFFD", SGIX, "GL_SGIX_polynomial_ffd") { + "GL_TEXTURE_DEFORMATION_BIT_SGIX"("0x00000001") + "GL_GEOMETRY_DEFORMATION_BIT_SGIX"("0x00000002") + "GL_GEOMETRY_DEFORMATION_SGIX"("0x8194") + "GL_TEXTURE_DEFORMATION_SGIX"("0x8195") + "GL_DEFORMATIONS_MASK_SGIX"("0x8196") + "GL_MAX_DEFORMATION_ORDER_SGIX"("0x8197") + "glDeformationMap3dSGIX"( + void, + GLenum("target"), + GLdouble("u1"), + GLdouble("u2"), + GLint("ustride"), + GLint("uorder"), + GLdouble("v1"), + GLdouble("v2"), + GLint("vstride"), + GLint("vorder"), + GLdouble("w1"), + GLdouble("w2"), + GLint("wstride"), + GLint("worder"), + address("points", "const GLdouble *") + ) + "glDeformationMap3fSGIX"( + void, + GLenum("target"), + GLfloat("u1"), + GLfloat("u2"), + GLint("ustride"), + GLint("uorder"), + GLfloat("v1"), + GLfloat("v2"), + GLint("vstride"), + GLint("vorder"), + GLfloat("w1"), + GLfloat("w2"), + GLint("wstride"), + GLint("worder"), + address("points", "const GLfloat *") + ) + "glDeformSGIX"(void, GLbitfield("mask")) + "glLoadIdentityDeformationMapSGIX"(void, GLbitfield("mask")) + } + file("ReferencePlane", SGIX, "GL_SGIX_reference_plane") { + "GL_REFERENCE_PLANE_SGIX"("0x817D") + "GL_REFERENCE_PLANE_EQUATION_SGIX"("0x817E") + "glReferencePlaneSGIX"(void, address("equation", "const GLdouble *")) + } + file( + "Resample", SGIX, "GL_SGIX_resample", + "GL_PACK_RESAMPLE_SGIX" to "0x842E", + "GL_UNPACK_RESAMPLE_SGIX" to "0x842F", + "GL_RESAMPLE_REPLICATE_SGIX" to "0x8433", + "GL_RESAMPLE_ZERO_FILL_SGIX" to "0x8434", + "GL_RESAMPLE_DECIMATE_SGIX" to "0x8430" + ) + file("ScalebiasHint", SGIX, "GL_SGIX_scalebias_hint", "GL_SCALEBIAS_HINT_SGIX" to "0x8322") + file( + "Shadow", SGIX, "GL_SGIX_shadow", + "GL_TEXTURE_COMPARE_SGIX" to "0x819A", + "GL_TEXTURE_COMPARE_OPERATOR_SGIX" to "0x819B", + "GL_TEXTURE_LEQUAL_R_SGIX" to "0x819C", + "GL_TEXTURE_GEQUAL_R_SGIX" to "0x819D" + ) + file("ShadowAmbient", SGIX, "GL_SGIX_shadow_ambient", "GL_SHADOW_AMBIENT_SGIX" to "0x80BF") + file("Sprite", SGIX, "GL_SGIX_sprite") { + "GL_SPRITE_SGIX"("0x8148") + "GL_SPRITE_MODE_SGIX"("0x8149") + "GL_SPRITE_AXIS_SGIX"("0x814A") + "GL_SPRITE_TRANSLATION_SGIX"("0x814B") + "GL_SPRITE_AXIAL_SGIX"("0x814C") + "GL_SPRITE_OBJECT_ALIGNED_SGIX"("0x814D") + "GL_SPRITE_EYE_ALIGNED_SGIX"("0x814E") + "glSpriteParameterfSGIX"(void, GLenum("pname"), GLfloat("param")) + "glSpriteParameterfvSGIX"(void, GLenum("pname"), address("params", "const GLfloat *")) + "glSpriteParameteriSGIX"(void, GLenum("pname"), GLint("param")) + "glSpriteParameterivSGIX"(void, GLenum("pname"), address("params", "const GLint *")) + } + file( + "Subsample", SGIX, "GL_SGIX_subsample", + "GL_PACK_SUBSAMPLE_RATE_SGIX" to "0x85A0", + "GL_UNPACK_SUBSAMPLE_RATE_SGIX" to "0x85A1", + "GL_PIXEL_SUBSAMPLE_4444_SGIX" to "0x85A2", + "GL_PIXEL_SUBSAMPLE_2424_SGIX" to "0x85A3", + "GL_PIXEL_SUBSAMPLE_4242_SGIX" to "0x85A4" + ) + file("TagSampleBuffer", SGIX, "GL_SGIX_tag_sample_buffer") { + "glTagSampleBufferSGIX"(void) + } + file("TextureAddEnv", SGIX, "GL_SGIX_texture_add_env", "GL_TEXTURE_ENV_BIAS_SGIX" to "0x80BE") + file( + "TextureCoordinateClamp", SGIX, "GL_SGIX_texture_coordinate_clamp", + "GL_TEXTURE_MAX_CLAMP_S_SGIX" to "0x8369", + "GL_TEXTURE_MAX_CLAMP_T_SGIX" to "0x836A", + "GL_TEXTURE_MAX_CLAMP_R_SGIX" to "0x836B" + ) + file( + "TextureLodBias", SGIX, "GL_SGIX_texture_lod_bias", + "GL_TEXTURE_LOD_BIAS_S_SGIX" to "0x818E", + "GL_TEXTURE_LOD_BIAS_T_SGIX" to "0x818F", + "GL_TEXTURE_LOD_BIAS_R_SGIX" to "0x8190" + ) + file("TextureMultiBuffer", SGIX, "GL_SGIX_texture_multi_buffer", "GL_TEXTURE_MULTI_BUFFER_HINT_SGIX" to "0x812E") + file( + "TextureScaleBias", SGIX, "GL_SGIX_texture_scale_bias", + "GL_POST_TEXTURE_FILTER_BIAS_SGIX" to "0x8179", + "GL_POST_TEXTURE_FILTER_SCALE_SGIX" to "0x817A", + "GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX" to "0x817B", + "GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX" to "0x817C" + ) + file( + "VertexPreclip", SGIX, "GL_SGIX_vertex_preclip", + "GL_VERTEX_PRECLIP_SGIX" to "0x83EE", + "GL_VERTEX_PRECLIP_HINT_SGIX" to "0x83EF" + ) + file( + "Ycrcb", SGIX, "GL_SGIX_ycrcb", + "GL_YCRCB_422_SGIX" to "0x81BB", + "GL_YCRCB_444_SGIX" to "0x81BC" + ) + file( + "Ycrcba", SGIX, "GL_SGIX_ycrcba", + "GL_YCRCB_SGIX" to "0x8318", + "GL_YCRCBA_SGIX" to "0x8319" + ) + file( + "ColorMatrix", SGI, "GL_SGI_color_matrix", + "GL_COLOR_MATRIX_SGI" to "0x80B1", + "GL_COLOR_MATRIX_STACK_DEPTH_SGI" to "0x80B2", + "GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI" to "0x80B3", + "GL_POST_COLOR_MATRIX_RED_SCALE_SGI" to "0x80B4", + "GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI" to "0x80B5", + "GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI" to "0x80B6", + "GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI" to "0x80B7", + "GL_POST_COLOR_MATRIX_RED_BIAS_SGI" to "0x80B8", + "GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI" to "0x80B9", + "GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI" to "0x80BA", + "GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI" to "0x80BB" + ) + file("ColorTable", SGI, "GL_SGI_color_table") { + "GL_COLOR_TABLE_SGI"("0x80D0") + "GL_POST_CONVOLUTION_COLOR_TABLE_SGI"("0x80D1") + "GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI"("0x80D2") + "GL_PROXY_COLOR_TABLE_SGI"("0x80D3") + "GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI"("0x80D4") + "GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI"("0x80D5") + "GL_COLOR_TABLE_SCALE_SGI"("0x80D6") + "GL_COLOR_TABLE_BIAS_SGI"("0x80D7") + "GL_COLOR_TABLE_FORMAT_SGI"("0x80D8") + "GL_COLOR_TABLE_WIDTH_SGI"("0x80D9") + "GL_COLOR_TABLE_RED_SIZE_SGI"("0x80DA") + "GL_COLOR_TABLE_GREEN_SIZE_SGI"("0x80DB") + "GL_COLOR_TABLE_BLUE_SIZE_SGI"("0x80DC") + "GL_COLOR_TABLE_ALPHA_SIZE_SGI"("0x80DD") + "GL_COLOR_TABLE_LUMINANCE_SIZE_SGI"("0x80DE") + "GL_COLOR_TABLE_INTENSITY_SIZE_SGI"("0x80DF") + "glColorTableSGI"( + void, + GLenum("target"), + GLenum("internalformat"), + GLsizei("width"), + GLenum("format"), + GLenum("type"), + address("table", "const void *") + ) + "glColorTableParameterfvSGI"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfloat *")) + "glColorTableParameterivSGI"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) + "glCopyColorTableSGI"( + void, + GLenum("target"), + GLenum("internalformat"), + GLint("x"), + GLint("y"), + GLsizei("width") + ) + "glGetColorTableSGI"(void, GLenum("target"), GLenum("format"), GLenum("type"), address("table", "void *")) + "glGetColorTableParameterfvSGI"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + "glGetColorTableParameterivSGI"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + } + file( + "TextureColorTable", SGI, "GL_SGI_texture_color_table", + "GL_TEXTURE_COLOR_TABLE_SGI" to "0x80BC", + "GL_PROXY_TEXTURE_COLOR_TABLE_SGI" to "0x80BD" + ) } fun sun() { @@ -3924,11 +4363,11 @@ fun glExtCaps() { |import overrungl.opengl.ext.amd.*; |import overrungl.opengl.ext.apple.*; |import overrungl.opengl.ext.ati.*; - |//import overrungl.opengl.ext.ext.*; + |import overrungl.opengl.ext.ext.*; |import overrungl.opengl.ext.ibm.*; |import overrungl.opengl.ext.intel.*; |import overrungl.opengl.ext.mesa.*; - |//import overrungl.opengl.ext.nv.*; + |import overrungl.opengl.ext.nv.*; |import overrungl.opengl.ext.sgi.*; |import overrungl.opengl.ext.sun.*; | @@ -3988,7 +4427,7 @@ fun glExtCaps() { | int numExtsI = pNumExtsI.get(JAVA_INT, 0); | var extsI = pExtsI[0]; | - | ${caps.map { "this.$it = hasExtension(version, exts, numExtsI, extsI, \"$it\");" }.joinToString(separator = "\n| ")} + | ${caps.joinToString(separator = "\n| ") { "this.$it = hasExtension(version, exts, numExtsI, extsI, \"$it\");" }} | | return true; | } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL13.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL13.java index 32865139..6070c386 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL13.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL13.java @@ -38,6 +38,44 @@ * @since 0.1.0 */ public final class GL13 extends GL13C { + public static final int CLIENT_ACTIVE_TEXTURE = 0x84E1; + public static final int MAX_TEXTURE_UNITS = 0x84E2; + public static final int TRANSPOSE_MODELVIEW_MATRIX = 0x84E3; + public static final int TRANSPOSE_PROJECTION_MATRIX = 0x84E4; + public static final int TRANSPOSE_TEXTURE_MATRIX = 0x84E5; + public static final int TRANSPOSE_COLOR_MATRIX = 0x84E6; + public static final int MULTISAMPLE_BIT = 0x20000000; + public static final int NORMAL_MAP = 0x8511; + public static final int REFLECTION_MAP = 0x8512; + public static final int COMPRESSED_ALPHA = 0x84E9; + public static final int COMPRESSED_LUMINANCE = 0x84EA; + public static final int COMPRESSED_LUMINANCE_ALPHA = 0x84EB; + public static final int COMPRESSED_INTENSITY = 0x84EC; + public static final int COMBINE = 0x8570; + public static final int COMBINE_RGB = 0x8571; + public static final int COMBINE_ALPHA = 0x8572; + public static final int SOURCE0_RGB = 0x8580; + public static final int SOURCE1_RGB = 0x8581; + public static final int SOURCE2_RGB = 0x8582; + public static final int SOURCE0_ALPHA = 0x8588; + public static final int SOURCE1_ALPHA = 0x8589; + public static final int SOURCE2_ALPHA = 0x858A; + public static final int OPERAND0_RGB = 0x8590; + public static final int OPERAND1_RGB = 0x8591; + public static final int OPERAND2_RGB = 0x8592; + public static final int OPERAND0_ALPHA = 0x8598; + public static final int OPERAND1_ALPHA = 0x8599; + public static final int OPERAND2_ALPHA = 0x859A; + public static final int RGB_SCALE = 0x8573; + public static final int ADD_SIGNED = 0x8574; + public static final int INTERPOLATE = 0x8575; + public static final int SUBTRACT = 0x84E7; + public static final int CONSTANT = 0x8576; + public static final int PRIMARY_COLOR = 0x8577; + public static final int PREVIOUS = 0x8578; + public static final int DOT3_RGB = 0x86AE; + public static final int DOT3_RGBA = 0x86AF; + static void load(GLCapabilities caps, GLLoadFunc load) { if (!caps.Ver13) return; caps.glClientActiveTexture = load.invoke("glClientActiveTexture", IV); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL15.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL15.java new file mode 100644 index 00000000..f5838470 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL15.java @@ -0,0 +1,48 @@ +/* + * MIT License + * + * Copyright (c) 2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +package overrungl.opengl; + +/** + * The OpenGL 1.5 constants. + * + * @author squid233 + * @since 0.1.0 + */ +public final class GL15 extends GL15C { + public static final int VERTEX_ARRAY_BUFFER_BINDING = 0x8896; + public static final int NORMAL_ARRAY_BUFFER_BINDING = 0x8897; + public static final int COLOR_ARRAY_BUFFER_BINDING = 0x8898; + public static final int INDEX_ARRAY_BUFFER_BINDING = 0x8899; + public static final int TEXTURE_COORD_ARRAY_BUFFER_BINDING = 0x889A; + public static final int EDGE_FLAG_ARRAY_BUFFER_BINDING = 0x889B; + public static final int SECONDARY_COLOR_ARRAY_BUFFER_BINDING = 0x889C; + public static final int FOG_COORDINATE_ARRAY_BUFFER_BINDING = 0x889D; + public static final int WEIGHT_ARRAY_BUFFER_BINDING = 0x889E; + public static final int FOG_COORD_SRC = 0x8450; + public static final int FOG_COORD = 0x8451; + public static final int CURRENT_FOG_COORD = 0x8453; + public static final int FOG_COORD_ARRAY_TYPE = 0x8454; + public static final int FOG_COORD_ARRAY_STRIDE = 0x8455; + public static final int FOG_COORD_ARRAY_POINTER = 0x8456; + public static final int FOG_COORD_ARRAY = 0x8457; + public static final int FOG_COORD_ARRAY_BUFFER_BINDING = 0x889D; + public static final int SRC0_RGB = 0x8580; + public static final int SRC1_RGB = 0x8581; + public static final int SRC2_RGB = 0x8582; + public static final int SRC0_ALPHA = 0x8588; + public static final int SRC2_ALPHA = 0x858A; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL15C.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL15C.java index d335278b..a1aefc42 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL15C.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL15C.java @@ -39,7 +39,7 @@ * @author squid233 * @since 0.1.0 */ -public sealed class GL15C extends GL14C permits GL20C { +public sealed class GL15C extends GL14C permits GL15, GL20C { public static final int BUFFER_SIZE = 0x8764; public static final int BUFFER_USAGE = 0x8765; public static final int QUERY_COUNTER_BITS = 0x8864; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL20.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL20.java new file mode 100644 index 00000000..696ed4fa --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL20.java @@ -0,0 +1,30 @@ +/* + * MIT License + * + * Copyright (c) 2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +package overrungl.opengl; + +/** + * The OpenGL 2.0 constants. + * + * @author squid233 + * @since 0.1.0 + */ +public final class GL20 extends GL20C { + public static final int VERTEX_PROGRAM_TWO_SIDE = 0x8643; + public static final int POINT_SPRITE = 0x8861; + public static final int COORD_REPLACE = 0x8862; + public static final int MAX_TEXTURE_COORDS = 0x8871; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL20C.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL20C.java index 8f2c6a59..e7ea4684 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL20C.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL20C.java @@ -46,7 +46,7 @@ * @author squid233 * @since 0.1.0 */ -public sealed class GL20C extends GL15C permits GL21C { +public sealed class GL20C extends GL15C permits GL20, GL21C { public static final int BLEND_EQUATION_RGB = 0x8009; public static final int VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622; public static final int VERTEX_ATTRIB_ARRAY_SIZE = 0x8623; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL21.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL21.java new file mode 100644 index 00000000..551425bd --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL21.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +package overrungl.opengl; + +/** + * The OpenGL 2.1 constants. + * + * @author squid233 + * @since 0.1.0 + */ +public final class GL21 extends GL21C { + public static final int CURRENT_RASTER_SECONDARY_COLOR = 0x845F; + public static final int SLUMINANCE_ALPHA = 0x8C44; + public static final int SLUMINANCE8_ALPHA8 = 0x8C45; + public static final int SLUMINANCE = 0x8C46; + public static final int SLUMINANCE8 = 0x8C47; + public static final int COMPRESSED_SLUMINANCE = 0x8C4A; + public static final int COMPRESSED_SLUMINANCE_ALPHA = 0x8C4B; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL21C.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL21C.java index f80b2a1c..41a01416 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL21C.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL21C.java @@ -36,7 +36,7 @@ * @author squid233 * @since 0.1.0 */ -public sealed class GL21C extends GL20C permits GL30C { +public sealed class GL21C extends GL20C permits GL21, GL30C { public static final int PIXEL_PACK_BUFFER = 0x88EB; public static final int PIXEL_UNPACK_BUFFER = 0x88EC; public static final int PIXEL_PACK_BUFFER_BINDING = 0x88ED; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL30.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL30.java new file mode 100644 index 00000000..36e666af --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL30.java @@ -0,0 +1,29 @@ +/* + * MIT License + * + * Copyright (c) 2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +package overrungl.opengl; + +/** + * The OpenGL 3.0 constants. + * + * @author squid233 + * @since 0.1.0 + */ +public final class GL30 extends GL30C { + public static final int CLAMP_VERTEX_COLOR = 0x891A; + public static final int CLAMP_FRAGMENT_COLOR = 0x891B; + public static final int ALPHA_INTEGER = 0x8D97; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL30C.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL30C.java index c0232e0b..8b6d06c1 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL30C.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GL30C.java @@ -44,7 +44,7 @@ * @author squid233 * @since 0.1.0 */ -public sealed class GL30C extends GL21C permits GL31C { +public sealed class GL30C extends GL21C permits GL30, GL31C { public static final int COMPARE_REF_TO_TEXTURE = 0x884E; public static final int CLIP_DISTANCE0 = 0x3000; public static final int CLIP_DISTANCE1 = 0x3001; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java index acad7a76..3a66e746 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java @@ -24,11 +24,11 @@ import overrungl.opengl.ext.amd.*; import overrungl.opengl.ext.apple.*; import overrungl.opengl.ext.ati.*; -//import overrungl.opengl.ext.ext.*; +import overrungl.opengl.ext.ext.*; import overrungl.opengl.ext.ibm.*; import overrungl.opengl.ext.intel.*; import overrungl.opengl.ext.mesa.*; -//import overrungl.opengl.ext.nv.*; +import overrungl.opengl.ext.nv.*; import overrungl.opengl.ext.sgi.*; import overrungl.opengl.ext.sun.*; @@ -96,11 +96,16 @@ public GLExtCaps(GLCapabilities caps) { glMultiModeDrawElementsIBM, glFlushStaticDataIBM, glColorPointerListIBM, glSecondaryColorPointerListIBM, glEdgeFlagPointerListIBM, glFogCoordPointerListIBM, glIndexPointerListIBM, glNormalPointerListIBM, glTexCoordPointerListIBM, glVertexPointerListIBM, glBlendFuncSeparateINGR, glApplyFramebufferAttachmentCMAAINTEL, glSyncTextureINTEL, glUnmapTexture2DINTEL, glMapTexture2DINTEL, glVertexPointervINTEL, glNormalPointervINTEL, glColorPointervINTEL, glTexCoordPointervINTEL, glBeginPerfQueryINTEL, glCreatePerfQueryINTEL, glDeletePerfQueryINTEL, glEndPerfQueryINTEL, glGetFirstPerfQueryIdINTEL, glGetNextPerfQueryIdINTEL, glGetPerfCounterInfoINTEL, glGetPerfQueryDataINTEL, glGetPerfQueryIdByNameINTEL, glGetPerfQueryInfoINTEL, glFramebufferParameteriMESA, glGetFramebufferParameterivMESA, glResizeBuffersMESA, glWindowPos2dMESA, glWindowPos2dvMESA, glWindowPos2fMESA, glWindowPos2fvMESA, glWindowPos2iMESA, glWindowPos2ivMESA, glWindowPos2sMESA, glWindowPos2svMESA, glWindowPos3dMESA, glWindowPos3dvMESA, glWindowPos3fMESA, glWindowPos3fvMESA, glWindowPos3iMESA, glWindowPos3ivMESA, glWindowPos3sMESA, glWindowPos3svMESA, - glWindowPos4dMESA, glWindowPos4dvMESA, glWindowPos4fMESA, glWindowPos4fvMESA, glWindowPos4iMESA, glWindowPos4ivMESA, glWindowPos4sMESA, glWindowPos4svMESA, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, glFogFuncSGIS, glGetFogFuncSGIS, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, - glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, - glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, - glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, - glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; + glWindowPos4dMESA, glWindowPos4dvMESA, glWindowPos4fMESA, glWindowPos4fvMESA, glWindowPos4iMESA, glWindowPos4ivMESA, glWindowPos4sMESA, glWindowPos4svMESA, glBeginConditionalRenderNVX, glEndConditionalRenderNVX, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, glFogFuncSGIS, glGetFogFuncSGIS, + glSampleMaskSGIS, glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, glTexSubImage4DSGIS, glTextureColorMaskSGIS, glGetTexFilterFuncSGIS, + glTexFilterFuncSGIS, glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, glFlushRasterSGIX, glFragmentColorMaterialSGIX, glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, glFragmentLightModelfSGIX, glFragmentLightModelfvSGIX, glFragmentLightModeliSGIX, + glFragmentLightModelivSGIX, glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, glInstrumentsBufferSGIX, glPollInstrumentsSGIX, glReadInstrumentsSGIX, + glStartInstrumentsSGIX, glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, glListParameterivSGIX, glPixelTexGenSGIX, glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, glReferencePlaneSGIX, glSpriteParameterfSGIX, glSpriteParameterfvSGIX, + glSpriteParameteriSGIX, glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, glGetColorTableSGI, glGetColorTableParameterfvSGI, glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, + glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, + glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, + glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, + glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; void load(GLLoadFunc load) { GLARBRobustness.load(this, load); @@ -172,10 +177,31 @@ void load(GLLoadFunc load) { GLMESAFramebufferFlipY.load(this, load); GLMESAResizeBuffers.load(this, load); GLMESAWindowPos.load(this, load); + GLNVXConditionalRender.load(this, load); GLOVRMultiview.load(this, load); GLPGIMiscHints.load(this, load); GLSGISDetailTexture.load(this, load); GLSGISFogFunction.load(this, load); + GLSGISMultisample.load(this, load); + GLSGISPixelTexture.load(this, load); + GLSGISPointParameters.load(this, load); + GLSGISSharpenTexture.load(this, load); + GLSGISTexture4D.load(this, load); + GLSGISTextureColorMask.load(this, load); + GLSGISTextureFilter4.load(this, load); + GLSGIXAsync.load(this, load); + GLSGIXFlushRaster.load(this, load); + GLSGIXFragmentLighting.load(this, load); + GLSGIXFramezoom.load(this, load); + GLSGIXIglooInterface.load(this, load); + GLSGIXInstruments.load(this, load); + GLSGIXListPriority.load(this, load); + GLSGIXPixelTexture.load(this, load); + GLSGIXPolynomialFFD.load(this, load); + GLSGIXReferencePlane.load(this, load); + GLSGIXSprite.load(this, load); + GLSGIXTagSampleBuffer.load(this, load); + GLSGIColorTable.load(this, load); GLSUNXConstantData.load(this, load); GLSUNGlobalAlpha.load(this, load); GLSUNMeshArray.load(this, load); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXT422Pixels.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXT422Pixels.java new file mode 100644 index 00000000..bcf992bf --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXT422Pixels.java @@ -0,0 +1,35 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_422_pixels} + */ +public final class GLEXT422Pixels { + public static final int GL_422_EXT = 0x80CC; + public static final int GL_422_REV_EXT = 0x80CD; + public static final int GL_422_AVERAGE_EXT = 0x80CE; + public static final int GL_422_REV_AVERAGE_EXT = 0x80CF; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXConditionalRender.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXConditionalRender.java new file mode 100644 index 00000000..103e11c0 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXConditionalRender.java @@ -0,0 +1,51 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NVX_conditional_render} + */ +public final class GLNVXConditionalRender { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NVX_conditional_render) return; + ext.glBeginConditionalRenderNVX = load.invoke("glBeginConditionalRenderNVX", ofVoid(JAVA_INT)); + ext.glEndConditionalRenderNVX = load.invoke("glEndConditionalRenderNVX", ofVoid()); + } + + public static void glBeginConditionalRenderNVX(int id) { + final var ext = getExtCapabilities(); + try { + check(ext.glBeginConditionalRenderNVX).invokeExact(id); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEndConditionalRenderNVX() { + final var ext = getExtCapabilities(); + try { + check(ext.glEndConditionalRenderNVX).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIColorMatrix.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIColorMatrix.java new file mode 100644 index 00000000..f2b4159b --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIColorMatrix.java @@ -0,0 +1,42 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGI_color_matrix} + */ +public final class GLSGIColorMatrix { + public static final int GL_COLOR_MATRIX_SGI = 0x80B1; + public static final int GL_COLOR_MATRIX_STACK_DEPTH_SGI = 0x80B2; + public static final int GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI = 0x80B3; + public static final int GL_POST_COLOR_MATRIX_RED_SCALE_SGI = 0x80B4; + public static final int GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI = 0x80B5; + public static final int GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI = 0x80B6; + public static final int GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI = 0x80B7; + public static final int GL_POST_COLOR_MATRIX_RED_BIAS_SGI = 0x80B8; + public static final int GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI = 0x80B9; + public static final int GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI = 0x80BA; + public static final int GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI = 0x80BB; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIColorTable.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIColorTable.java new file mode 100644 index 00000000..a967358d --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIColorTable.java @@ -0,0 +1,107 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGI_color_table} + */ +public final class GLSGIColorTable { + public static final int GL_COLOR_TABLE_SGI = 0x80D0; + public static final int GL_POST_CONVOLUTION_COLOR_TABLE_SGI = 0x80D1; + public static final int GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI = 0x80D2; + public static final int GL_PROXY_COLOR_TABLE_SGI = 0x80D3; + public static final int GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI = 0x80D4; + public static final int GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI = 0x80D5; + public static final int GL_COLOR_TABLE_SCALE_SGI = 0x80D6; + public static final int GL_COLOR_TABLE_BIAS_SGI = 0x80D7; + public static final int GL_COLOR_TABLE_FORMAT_SGI = 0x80D8; + public static final int GL_COLOR_TABLE_WIDTH_SGI = 0x80D9; + public static final int GL_COLOR_TABLE_RED_SIZE_SGI = 0x80DA; + public static final int GL_COLOR_TABLE_GREEN_SIZE_SGI = 0x80DB; + public static final int GL_COLOR_TABLE_BLUE_SIZE_SGI = 0x80DC; + public static final int GL_COLOR_TABLE_ALPHA_SIZE_SGI = 0x80DD; + public static final int GL_COLOR_TABLE_LUMINANCE_SIZE_SGI = 0x80DE; + public static final int GL_COLOR_TABLE_INTENSITY_SIZE_SGI = 0x80DF; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGI_color_table) return; + ext.glColorTableSGI = load.invoke("glColorTableSGI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glColorTableParameterfvSGI = load.invoke("glColorTableParameterfvSGI", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glColorTableParameterivSGI = load.invoke("glColorTableParameterivSGI", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCopyColorTableSGI = load.invoke("glCopyColorTableSGI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetColorTableSGI = load.invoke("glGetColorTableSGI", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetColorTableParameterfvSGI = load.invoke("glGetColorTableParameterfvSGI", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetColorTableParameterivSGI = load.invoke("glGetColorTableParameterivSGI", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glColorTableSGI(int target, int internalformat, int width, int format, int type, @NativeType("const void *") MemorySegment table) { + final var ext = getExtCapabilities(); + try { + check(ext.glColorTableSGI).invokeExact(target, internalformat, width, format, type, table); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColorTableParameterfvSGI(int target, int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glColorTableParameterfvSGI).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColorTableParameterivSGI(int target, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glColorTableParameterivSGI).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyColorTableSGI(int target, int internalformat, int x, int y, int width) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyColorTableSGI).invokeExact(target, internalformat, x, y, width); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetColorTableSGI(int target, int format, int type, @NativeType("void *") MemorySegment table) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetColorTableSGI).invokeExact(target, format, type, table); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetColorTableParameterfvSGI(int target, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetColorTableParameterfvSGI).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetColorTableParameterivSGI(int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetColorTableParameterivSGI).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISMultisample.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISMultisample.java new file mode 100644 index 00000000..5ead8414 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISMultisample.java @@ -0,0 +1,67 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIS_multisample} + */ +public final class GLSGISMultisample { + public static final int GL_MULTISAMPLE_SGIS = 0x809D; + public static final int GL_SAMPLE_ALPHA_TO_MASK_SGIS = 0x809E; + public static final int GL_SAMPLE_ALPHA_TO_ONE_SGIS = 0x809F; + public static final int GL_SAMPLE_MASK_SGIS = 0x80A0; + public static final int GL_1PASS_SGIS = 0x80A1; + public static final int GL_2PASS_0_SGIS = 0x80A2; + public static final int GL_2PASS_1_SGIS = 0x80A3; + public static final int GL_4PASS_0_SGIS = 0x80A4; + public static final int GL_4PASS_1_SGIS = 0x80A5; + public static final int GL_4PASS_2_SGIS = 0x80A6; + public static final int GL_4PASS_3_SGIS = 0x80A7; + public static final int GL_SAMPLE_BUFFERS_SGIS = 0x80A8; + public static final int GL_SAMPLES_SGIS = 0x80A9; + public static final int GL_SAMPLE_MASK_VALUE_SGIS = 0x80AA; + public static final int GL_SAMPLE_MASK_INVERT_SGIS = 0x80AB; + public static final int GL_SAMPLE_PATTERN_SGIS = 0x80AC; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIS_multisample) return; + ext.glSampleMaskSGIS = load.invoke("glSampleMaskSGIS", ofVoid(JAVA_FLOAT, JAVA_BYTE)); + ext.glSamplePatternSGIS = load.invoke("glSamplePatternSGIS", ofVoid(JAVA_INT)); + } + + public static void glSampleMaskSGIS(float value, boolean invert) { + final var ext = getExtCapabilities(); + try { + check(ext.glSampleMaskSGIS).invokeExact(value, invert); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSamplePatternSGIS(int pattern) { + final var ext = getExtCapabilities(); + try { + check(ext.glSamplePatternSGIS).invokeExact(pattern); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPixelTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPixelTexture.java new file mode 100644 index 00000000..7f65f68a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPixelTexture.java @@ -0,0 +1,87 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIS_pixel_texture} + */ +public final class GLSGISPixelTexture { + public static final int GL_PIXEL_TEXTURE_SGIS = 0x8353; + public static final int GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS = 0x8354; + public static final int GL_PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS = 0x8355; + public static final int GL_PIXEL_GROUP_COLOR_SGIS = 0x8356; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIS_pixel_texture) return; + ext.glPixelTexGenParameteriSGIS = load.invoke("glPixelTexGenParameteriSGIS", ofVoid(JAVA_INT, JAVA_INT)); + ext.glPixelTexGenParameterivSGIS = load.invoke("glPixelTexGenParameterivSGIS", ofVoid(JAVA_INT, ADDRESS)); + ext.glPixelTexGenParameterfSGIS = load.invoke("glPixelTexGenParameterfSGIS", ofVoid(JAVA_INT, JAVA_FLOAT)); + ext.glPixelTexGenParameterfvSGIS = load.invoke("glPixelTexGenParameterfvSGIS", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetPixelTexGenParameterivSGIS = load.invoke("glGetPixelTexGenParameterivSGIS", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetPixelTexGenParameterfvSGIS = load.invoke("glGetPixelTexGenParameterfvSGIS", ofVoid(JAVA_INT, ADDRESS)); + } + + public static void glPixelTexGenParameteriSGIS(int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glPixelTexGenParameteriSGIS).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPixelTexGenParameterivSGIS(int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glPixelTexGenParameterivSGIS).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPixelTexGenParameterfSGIS(int pname, float param) { + final var ext = getExtCapabilities(); + try { + check(ext.glPixelTexGenParameterfSGIS).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPixelTexGenParameterfvSGIS(int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glPixelTexGenParameterfvSGIS).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPixelTexGenParameterivSGIS(int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPixelTexGenParameterivSGIS).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPixelTexGenParameterfvSGIS(int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPixelTexGenParameterfvSGIS).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPointLineTexgen.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPointLineTexgen.java new file mode 100644 index 00000000..16a3b351 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPointLineTexgen.java @@ -0,0 +1,39 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIS_point_line_texgen} + */ +public final class GLSGISPointLineTexgen { + public static final int GL_EYE_DISTANCE_TO_POINT_SGIS = 0x81F0; + public static final int GL_OBJECT_DISTANCE_TO_POINT_SGIS = 0x81F1; + public static final int GL_EYE_DISTANCE_TO_LINE_SGIS = 0x81F2; + public static final int GL_OBJECT_DISTANCE_TO_LINE_SGIS = 0x81F3; + public static final int GL_EYE_POINT_SGIS = 0x81F4; + public static final int GL_OBJECT_POINT_SGIS = 0x81F5; + public static final int GL_EYE_LINE_SGIS = 0x81F6; + public static final int GL_OBJECT_LINE_SGIS = 0x81F7; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPointParameters.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPointParameters.java new file mode 100644 index 00000000..8ba511e8 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPointParameters.java @@ -0,0 +1,55 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIS_point_parameters} + */ +public final class GLSGISPointParameters { + public static final int GL_POINT_SIZE_MIN_SGIS = 0x8126; + public static final int GL_POINT_SIZE_MAX_SGIS = 0x8127; + public static final int GL_POINT_FADE_THRESHOLD_SIZE_SGIS = 0x8128; + public static final int GL_DISTANCE_ATTENUATION_SGIS = 0x8129; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIS_point_parameters) return; + ext.glPointParameterfSGIS = load.invoke("glPointParameterfSGIS", ofVoid(JAVA_INT, JAVA_FLOAT)); + ext.glPointParameterfvSGIS = load.invoke("glPointParameterfvSGIS", ofVoid(JAVA_INT, ADDRESS)); + } + + public static void glPointParameterfSGIS(int pname, float param) { + final var ext = getExtCapabilities(); + try { + check(ext.glPointParameterfSGIS).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPointParameterfvSGIS(int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glPointParameterfvSGIS).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISSharpenTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISSharpenTexture.java new file mode 100644 index 00000000..8b2052ae --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISSharpenTexture.java @@ -0,0 +1,55 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIS_sharpen_texture} + */ +public final class GLSGISSharpenTexture { + public static final int GL_LINEAR_SHARPEN_SGIS = 0x80AD; + public static final int GL_LINEAR_SHARPEN_ALPHA_SGIS = 0x80AE; + public static final int GL_LINEAR_SHARPEN_COLOR_SGIS = 0x80AF; + public static final int GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS = 0x80B0; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIS_sharpen_texture) return; + ext.glSharpenTexFuncSGIS = load.invoke("glSharpenTexFuncSGIS", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetSharpenTexFuncSGIS = load.invoke("glGetSharpenTexFuncSGIS", ofVoid(JAVA_INT, ADDRESS)); + } + + public static void glSharpenTexFuncSGIS(int target, int n, @NativeType("const GLfloat *") MemorySegment points) { + final var ext = getExtCapabilities(); + try { + check(ext.glSharpenTexFuncSGIS).invokeExact(target, n, points); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetSharpenTexFuncSGIS(int target, @NativeType("GLfloat *") MemorySegment points) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetSharpenTexFuncSGIS).invokeExact(target, points); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTexture4D.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTexture4D.java new file mode 100644 index 00000000..9d496080 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTexture4D.java @@ -0,0 +1,61 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIS_texture4D} + */ +public final class GLSGISTexture4D { + public static final int GL_PACK_SKIP_VOLUMES_SGIS = 0x8130; + public static final int GL_PACK_IMAGE_DEPTH_SGIS = 0x8131; + public static final int GL_UNPACK_SKIP_VOLUMES_SGIS = 0x8132; + public static final int GL_UNPACK_IMAGE_DEPTH_SGIS = 0x8133; + public static final int GL_TEXTURE_4D_SGIS = 0x8134; + public static final int GL_PROXY_TEXTURE_4D_SGIS = 0x8135; + public static final int GL_TEXTURE_4DSIZE_SGIS = 0x8136; + public static final int GL_TEXTURE_WRAP_Q_SGIS = 0x8137; + public static final int GL_MAX_4D_TEXTURE_SIZE_SGIS = 0x8138; + public static final int GL_TEXTURE_4D_BINDING_SGIS = 0x814F; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIS_texture4D) return; + ext.glTexImage4DSGIS = load.invoke("glTexImage4DSGIS", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glTexSubImage4DSGIS = load.invoke("glTexSubImage4DSGIS", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glTexImage4DSGIS(int target, int level, int internalformat, int width, int height, int depth, int size4d, int border, int format, int type, @NativeType("const void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexImage4DSGIS).invokeExact(target, level, internalformat, width, height, depth, size4d, border, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexSubImage4DSGIS(int target, int level, int xoffset, int yoffset, int zoffset, int woffset, int width, int height, int depth, int size4d, int format, int type, @NativeType("const void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexSubImage4DSGIS).invokeExact(target, level, xoffset, yoffset, zoffset, woffset, width, height, depth, size4d, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureBorderClamp.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureBorderClamp.java new file mode 100644 index 00000000..2e387303 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureBorderClamp.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIS_texture_border_clamp} + */ +public final class GLSGISTextureBorderClamp { + public static final int GL_CLAMP_TO_BORDER_SGIS = 0x812D; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureColorMask.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureColorMask.java new file mode 100644 index 00000000..97589f39 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureColorMask.java @@ -0,0 +1,44 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIS_texture_color_mask} + */ +public final class GLSGISTextureColorMask { + public static final int GL_TEXTURE_COLOR_WRITEMASK_SGIS = 0x81EF; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIS_texture_color_mask) return; + ext.glTextureColorMaskSGIS = load.invoke("glTextureColorMaskSGIS", ofVoid(JAVA_BYTE, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE)); + } + + public static void glTextureColorMaskSGIS(boolean red, boolean green, boolean blue, boolean alpha) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureColorMaskSGIS).invokeExact(red, green, blue, alpha); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureEdgeClamp.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureEdgeClamp.java new file mode 100644 index 00000000..d3ab802e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureEdgeClamp.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIS_texture_edge_clamp} + */ +public final class GLSGISTextureEdgeClamp { + public static final int GL_CLAMP_TO_EDGE_SGIS = 0x812F; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureFilter4.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureFilter4.java new file mode 100644 index 00000000..d7ce18e7 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureFilter4.java @@ -0,0 +1,53 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIS_texture_filter4} + */ +public final class GLSGISTextureFilter4 { + public static final int GL_FILTER4_SGIS = 0x8146; + public static final int GL_TEXTURE_FILTER4_SIZE_SGIS = 0x8147; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIS_texture_filter4) return; + ext.glGetTexFilterFuncSGIS = load.invoke("glGetTexFilterFuncSGIS", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glTexFilterFuncSGIS = load.invoke("glTexFilterFuncSGIS", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glGetTexFilterFuncSGIS(int target, int filter, @NativeType("GLfloat *") MemorySegment weights) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetTexFilterFuncSGIS).invokeExact(target, filter, weights); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexFilterFuncSGIS(int target, int filter, int n, @NativeType("const GLfloat *") MemorySegment weights) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexFilterFuncSGIS).invokeExact(target, filter, n, weights); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureLod.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureLod.java new file mode 100644 index 00000000..03657043 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureLod.java @@ -0,0 +1,35 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIS_texture_lod} + */ +public final class GLSGISTextureLod { + public static final int GL_TEXTURE_MIN_LOD_SGIS = 0x813A; + public static final int GL_TEXTURE_MAX_LOD_SGIS = 0x813B; + public static final int GL_TEXTURE_BASE_LEVEL_SGIS = 0x813C; + public static final int GL_TEXTURE_MAX_LEVEL_SGIS = 0x813D; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureSelect.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureSelect.java new file mode 100644 index 00000000..e57bde47 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureSelect.java @@ -0,0 +1,53 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIS_texture_select} + */ +public final class GLSGISTextureSelect { + public static final int GL_DUAL_ALPHA4_SGIS = 0x8110; + public static final int GL_DUAL_ALPHA8_SGIS = 0x8111; + public static final int GL_DUAL_ALPHA12_SGIS = 0x8112; + public static final int GL_DUAL_ALPHA16_SGIS = 0x8113; + public static final int GL_DUAL_LUMINANCE4_SGIS = 0x8114; + public static final int GL_DUAL_LUMINANCE8_SGIS = 0x8115; + public static final int GL_DUAL_LUMINANCE12_SGIS = 0x8116; + public static final int GL_DUAL_LUMINANCE16_SGIS = 0x8117; + public static final int GL_DUAL_INTENSITY4_SGIS = 0x8118; + public static final int GL_DUAL_INTENSITY8_SGIS = 0x8119; + public static final int GL_DUAL_INTENSITY12_SGIS = 0x811A; + public static final int GL_DUAL_INTENSITY16_SGIS = 0x811B; + public static final int GL_DUAL_LUMINANCE_ALPHA4_SGIS = 0x811C; + public static final int GL_DUAL_LUMINANCE_ALPHA8_SGIS = 0x811D; + public static final int GL_QUAD_ALPHA4_SGIS = 0x811E; + public static final int GL_QUAD_ALPHA8_SGIS = 0x811F; + public static final int GL_QUAD_LUMINANCE4_SGIS = 0x8120; + public static final int GL_QUAD_LUMINANCE8_SGIS = 0x8121; + public static final int GL_QUAD_INTENSITY4_SGIS = 0x8122; + public static final int GL_QUAD_INTENSITY8_SGIS = 0x8123; + public static final int GL_DUAL_TEXTURE_SELECT_SGIS = 0x8124; + public static final int GL_QUAD_TEXTURE_SELECT_SGIS = 0x8125; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGITextureColorTable.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGITextureColorTable.java new file mode 100644 index 00000000..3e74c1e0 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGITextureColorTable.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGI_texture_color_table} + */ +public final class GLSGITextureColorTable { + public static final int GL_TEXTURE_COLOR_TABLE_SGI = 0x80BC; + public static final int GL_PROXY_TEXTURE_COLOR_TABLE_SGI = 0x80BD; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsync.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsync.java new file mode 100644 index 00000000..57514314 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsync.java @@ -0,0 +1,88 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_async} + */ +public final class GLSGIXAsync { + public static final int GL_ASYNC_MARKER_SGIX = 0x8329; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIX_async) return; + ext.glAsyncMarkerSGIX = load.invoke("glAsyncMarkerSGIX", ofVoid(JAVA_INT)); + ext.glFinishAsyncSGIX = load.invoke("glFinishAsyncSGIX", of(JAVA_INT, ADDRESS)); + ext.glPollAsyncSGIX = load.invoke("glPollAsyncSGIX", of(JAVA_INT, ADDRESS)); + ext.glGenAsyncMarkersSGIX = load.invoke("glGenAsyncMarkersSGIX", of(JAVA_INT, JAVA_INT)); + ext.glDeleteAsyncMarkersSGIX = load.invoke("glDeleteAsyncMarkersSGIX", ofVoid(JAVA_INT, JAVA_INT)); + ext.glIsAsyncMarkerSGIX = load.invoke("glIsAsyncMarkerSGIX", of(JAVA_BYTE, JAVA_INT)); + } + + public static void glAsyncMarkerSGIX(int marker) { + final var ext = getExtCapabilities(); + try { + check(ext.glAsyncMarkerSGIX).invokeExact(marker); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glFinishAsyncSGIX(@NativeType("GLuint *") MemorySegment markerp) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glFinishAsyncSGIX).invokeExact(markerp); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glPollAsyncSGIX(@NativeType("GLuint *") MemorySegment markerp) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glPollAsyncSGIX).invokeExact(markerp); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glGenAsyncMarkersSGIX(int range) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glGenAsyncMarkersSGIX).invokeExact(range); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeleteAsyncMarkersSGIX(int marker, int range) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeleteAsyncMarkersSGIX).invokeExact(marker, range); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsAsyncMarkerSGIX(int marker) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsAsyncMarkerSGIX).invokeExact(marker); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsyncHistogram.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsyncHistogram.java new file mode 100644 index 00000000..0eb808f7 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsyncHistogram.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_async_histogram} + */ +public final class GLSGIXAsyncHistogram { + public static final int GL_ASYNC_HISTOGRAM_SGIX = 0x832C; + public static final int GL_MAX_ASYNC_HISTOGRAM_SGIX = 0x832D; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsyncPixel.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsyncPixel.java new file mode 100644 index 00000000..27b8374e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsyncPixel.java @@ -0,0 +1,37 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_async_pixel} + */ +public final class GLSGIXAsyncPixel { + public static final int GL_ASYNC_TEX_IMAGE_SGIX = 0x835C; + public static final int GL_ASYNC_DRAW_PIXELS_SGIX = 0x835D; + public static final int GL_ASYNC_READ_PIXELS_SGIX = 0x835E; + public static final int GL_MAX_ASYNC_TEX_IMAGE_SGIX = 0x835F; + public static final int GL_MAX_ASYNC_DRAW_PIXELS_SGIX = 0x8360; + public static final int GL_MAX_ASYNC_READ_PIXELS_SGIX = 0x8361; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXBlendAlphaMinmax.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXBlendAlphaMinmax.java new file mode 100644 index 00000000..73125ffc --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXBlendAlphaMinmax.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_blend_alpha_minmax} + */ +public final class GLSGIXBlendAlphaMinmax { + public static final int GL_ALPHA_MIN_SGIX = 0x8320; + public static final int GL_ALPHA_MAX_SGIX = 0x8321; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXCalligraphicFragment.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXCalligraphicFragment.java new file mode 100644 index 00000000..61f0284a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXCalligraphicFragment.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_calligraphic_fragment} + */ +public final class GLSGIXCalligraphicFragment { + public static final int GL_CALLIGRAPHIC_FRAGMENT_SGIX = 0x8183; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXClipmap.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXClipmap.java new file mode 100644 index 00000000..2759d4f2 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXClipmap.java @@ -0,0 +1,43 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_clipmap} + */ +public final class GLSGIXClipmap { + public static final int GL_LINEAR_CLIPMAP_LINEAR_SGIX = 0x8170; + public static final int GL_TEXTURE_CLIPMAP_CENTER_SGIX = 0x8171; + public static final int GL_TEXTURE_CLIPMAP_FRAME_SGIX = 0x8172; + public static final int GL_TEXTURE_CLIPMAP_OFFSET_SGIX = 0x8173; + public static final int GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX = 0x8174; + public static final int GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX = 0x8175; + public static final int GL_TEXTURE_CLIPMAP_DEPTH_SGIX = 0x8176; + public static final int GL_MAX_CLIPMAP_DEPTH_SGIX = 0x8177; + public static final int GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX = 0x8178; + public static final int GL_NEAREST_CLIPMAP_NEAREST_SGIX = 0x844D; + public static final int GL_NEAREST_CLIPMAP_LINEAR_SGIX = 0x844E; + public static final int GL_LINEAR_CLIPMAP_NEAREST_SGIX = 0x844F; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXConvolutionAccuracy.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXConvolutionAccuracy.java new file mode 100644 index 00000000..6a084f89 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXConvolutionAccuracy.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_convolution_accuracy} + */ +public final class GLSGIXConvolutionAccuracy { + public static final int GL_CONVOLUTION_HINT_SGIX = 0x8316; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXDepthTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXDepthTexture.java new file mode 100644 index 00000000..20c9540d --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXDepthTexture.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_depth_texture} + */ +public final class GLSGIXDepthTexture { + public static final int GL_DEPTH_COMPONENT16_SGIX = 0x81A5; + public static final int GL_DEPTH_COMPONENT24_SGIX = 0x81A6; + public static final int GL_DEPTH_COMPONENT32_SGIX = 0x81A7; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFlushRaster.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFlushRaster.java new file mode 100644 index 00000000..fcbedbe8 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFlushRaster.java @@ -0,0 +1,43 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_flush_raster} + */ +public final class GLSGIXFlushRaster { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIX_flush_raster) return; + ext.glFlushRasterSGIX = load.invoke("glFlushRasterSGIX", ofVoid()); + } + + public static void glFlushRasterSGIX() { + final var ext = getExtCapabilities(); + try { + check(ext.glFlushRasterSGIX).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFogOffset.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFogOffset.java new file mode 100644 index 00000000..e3d8e54f --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFogOffset.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_fog_offset} + */ +public final class GLSGIXFogOffset { + public static final int GL_FOG_OFFSET_SGIX = 0x8198; + public static final int GL_FOG_OFFSET_VALUE_SGIX = 0x8199; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFragmentLighting.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFragmentLighting.java new file mode 100644 index 00000000..881dfc7b --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFragmentLighting.java @@ -0,0 +1,199 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_fragment_lighting} + */ +public final class GLSGIXFragmentLighting { + public static final int GL_FRAGMENT_LIGHTING_SGIX = 0x8400; + public static final int GL_FRAGMENT_COLOR_MATERIAL_SGIX = 0x8401; + public static final int GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX = 0x8402; + public static final int GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX = 0x8403; + public static final int GL_MAX_FRAGMENT_LIGHTS_SGIX = 0x8404; + public static final int GL_MAX_ACTIVE_LIGHTS_SGIX = 0x8405; + public static final int GL_CURRENT_RASTER_NORMAL_SGIX = 0x8406; + public static final int GL_LIGHT_ENV_MODE_SGIX = 0x8407; + public static final int GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX = 0x8408; + public static final int GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX = 0x8409; + public static final int GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX = 0x840A; + public static final int GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX = 0x840B; + public static final int GL_FRAGMENT_LIGHT0_SGIX = 0x840C; + public static final int GL_FRAGMENT_LIGHT1_SGIX = 0x840D; + public static final int GL_FRAGMENT_LIGHT2_SGIX = 0x840E; + public static final int GL_FRAGMENT_LIGHT3_SGIX = 0x840F; + public static final int GL_FRAGMENT_LIGHT4_SGIX = 0x8410; + public static final int GL_FRAGMENT_LIGHT5_SGIX = 0x8411; + public static final int GL_FRAGMENT_LIGHT6_SGIX = 0x8412; + public static final int GL_FRAGMENT_LIGHT7_SGIX = 0x8413; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIX_fragment_lighting) return; + ext.glFragmentColorMaterialSGIX = load.invoke("glFragmentColorMaterialSGIX", ofVoid(JAVA_INT, JAVA_INT)); + ext.glFragmentLightfSGIX = load.invoke("glFragmentLightfSGIX", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glFragmentLightfvSGIX = load.invoke("glFragmentLightfvSGIX", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glFragmentLightiSGIX = load.invoke("glFragmentLightiSGIX", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glFragmentLightivSGIX = load.invoke("glFragmentLightivSGIX", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glFragmentLightModelfSGIX = load.invoke("glFragmentLightModelfSGIX", ofVoid(JAVA_INT, JAVA_FLOAT)); + ext.glFragmentLightModelfvSGIX = load.invoke("glFragmentLightModelfvSGIX", ofVoid(JAVA_INT, ADDRESS)); + ext.glFragmentLightModeliSGIX = load.invoke("glFragmentLightModeliSGIX", ofVoid(JAVA_INT, JAVA_INT)); + ext.glFragmentLightModelivSGIX = load.invoke("glFragmentLightModelivSGIX", ofVoid(JAVA_INT, ADDRESS)); + ext.glFragmentMaterialfSGIX = load.invoke("glFragmentMaterialfSGIX", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glFragmentMaterialfvSGIX = load.invoke("glFragmentMaterialfvSGIX", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glFragmentMaterialiSGIX = load.invoke("glFragmentMaterialiSGIX", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glFragmentMaterialivSGIX = load.invoke("glFragmentMaterialivSGIX", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetFragmentLightfvSGIX = load.invoke("glGetFragmentLightfvSGIX", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetFragmentLightivSGIX = load.invoke("glGetFragmentLightivSGIX", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetFragmentMaterialfvSGIX = load.invoke("glGetFragmentMaterialfvSGIX", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetFragmentMaterialivSGIX = load.invoke("glGetFragmentMaterialivSGIX", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glLightEnviSGIX = load.invoke("glLightEnviSGIX", ofVoid(JAVA_INT, JAVA_INT)); + } + + public static void glFragmentColorMaterialSGIX(int face, int mode) { + final var ext = getExtCapabilities(); + try { + check(ext.glFragmentColorMaterialSGIX).invokeExact(face, mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFragmentLightfSGIX(int light, int pname, float param) { + final var ext = getExtCapabilities(); + try { + check(ext.glFragmentLightfSGIX).invokeExact(light, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFragmentLightfvSGIX(int light, int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glFragmentLightfvSGIX).invokeExact(light, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFragmentLightiSGIX(int light, int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glFragmentLightiSGIX).invokeExact(light, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFragmentLightivSGIX(int light, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glFragmentLightivSGIX).invokeExact(light, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFragmentLightModelfSGIX(int pname, float param) { + final var ext = getExtCapabilities(); + try { + check(ext.glFragmentLightModelfSGIX).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFragmentLightModelfvSGIX(int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glFragmentLightModelfvSGIX).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFragmentLightModeliSGIX(int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glFragmentLightModeliSGIX).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFragmentLightModelivSGIX(int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glFragmentLightModelivSGIX).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFragmentMaterialfSGIX(int face, int pname, float param) { + final var ext = getExtCapabilities(); + try { + check(ext.glFragmentMaterialfSGIX).invokeExact(face, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFragmentMaterialfvSGIX(int face, int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glFragmentMaterialfvSGIX).invokeExact(face, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFragmentMaterialiSGIX(int face, int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glFragmentMaterialiSGIX).invokeExact(face, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFragmentMaterialivSGIX(int face, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glFragmentMaterialivSGIX).invokeExact(face, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetFragmentLightfvSGIX(int light, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetFragmentLightfvSGIX).invokeExact(light, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetFragmentLightivSGIX(int light, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetFragmentLightivSGIX).invokeExact(light, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetFragmentMaterialfvSGIX(int face, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetFragmentMaterialfvSGIX).invokeExact(face, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetFragmentMaterialivSGIX(int face, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetFragmentMaterialivSGIX).invokeExact(face, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glLightEnviSGIX(int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glLightEnviSGIX).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFramezoom.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFramezoom.java new file mode 100644 index 00000000..7b825a53 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFramezoom.java @@ -0,0 +1,46 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_framezoom} + */ +public final class GLSGIXFramezoom { + public static final int GL_FRAMEZOOM_SGIX = 0x818B; + public static final int GL_FRAMEZOOM_FACTOR_SGIX = 0x818C; + public static final int GL_MAX_FRAMEZOOM_FACTOR_SGIX = 0x818D; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIX_framezoom) return; + ext.glFrameZoomSGIX = load.invoke("glFrameZoomSGIX", ofVoid(JAVA_INT)); + } + + public static void glFrameZoomSGIX(int factor) { + final var ext = getExtCapabilities(); + try { + check(ext.glFrameZoomSGIX).invokeExact(factor); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXIglooInterface.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXIglooInterface.java new file mode 100644 index 00000000..04171a06 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXIglooInterface.java @@ -0,0 +1,43 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_igloo_interface} + */ +public final class GLSGIXIglooInterface { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIX_igloo_interface) return; + ext.glIglooInterfaceSGIX = load.invoke("glIglooInterfaceSGIX", ofVoid(JAVA_INT, ADDRESS)); + } + + public static void glIglooInterfaceSGIX(int pname, @NativeType("const void *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glIglooInterfaceSGIX).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXInstruments.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXInstruments.java new file mode 100644 index 00000000..78e2eca4 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXInstruments.java @@ -0,0 +1,87 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_instruments} + */ +public final class GLSGIXInstruments { + public static final int GL_INSTRUMENT_BUFFER_POINTER_SGIX = 0x8180; + public static final int GL_INSTRUMENT_MEASUREMENTS_SGIX = 0x8181; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIX_instruments) return; + ext.glGetInstrumentsSGIX = load.invoke("glGetInstrumentsSGIX", of(JAVA_INT)); + ext.glInstrumentsBufferSGIX = load.invoke("glInstrumentsBufferSGIX", ofVoid(JAVA_INT, ADDRESS)); + ext.glPollInstrumentsSGIX = load.invoke("glPollInstrumentsSGIX", of(JAVA_INT, ADDRESS)); + ext.glReadInstrumentsSGIX = load.invoke("glReadInstrumentsSGIX", ofVoid(JAVA_INT)); + ext.glStartInstrumentsSGIX = load.invoke("glStartInstrumentsSGIX", ofVoid()); + ext.glStopInstrumentsSGIX = load.invoke("glStopInstrumentsSGIX", ofVoid(JAVA_INT)); + } + + public static int glGetInstrumentsSGIX() { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glGetInstrumentsSGIX).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glInstrumentsBufferSGIX(int size, @NativeType("GLint *") MemorySegment buffer) { + final var ext = getExtCapabilities(); + try { + check(ext.glInstrumentsBufferSGIX).invokeExact(size, buffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glPollInstrumentsSGIX(@NativeType("GLint *") MemorySegment marker_p) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glPollInstrumentsSGIX).invokeExact(marker_p); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glReadInstrumentsSGIX(int marker) { + final var ext = getExtCapabilities(); + try { + check(ext.glReadInstrumentsSGIX).invokeExact(marker); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStartInstrumentsSGIX() { + final var ext = getExtCapabilities(); + try { + check(ext.glStartInstrumentsSGIX).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStopInstrumentsSGIX(int marker) { + final var ext = getExtCapabilities(); + try { + check(ext.glStopInstrumentsSGIX).invokeExact(marker); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXInterlace.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXInterlace.java new file mode 100644 index 00000000..0bea7eb9 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXInterlace.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_interlace} + */ +public final class GLSGIXInterlace { + public static final int GL_INTERLACE_SGIX = 0x8094; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXIrInstrument1.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXIrInstrument1.java new file mode 100644 index 00000000..f8be52c0 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXIrInstrument1.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_ir_instrument1} + */ +public final class GLSGIXIrInstrument1 { + public static final int GL_IR_INSTRUMENT1_SGIX = 0x817F; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXListPriority.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXListPriority.java new file mode 100644 index 00000000..41201c2b --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXListPriority.java @@ -0,0 +1,84 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_list_priority} + */ +public final class GLSGIXListPriority { + public static final int GL_LIST_PRIORITY_SGIX = 0x8182; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIX_list_priority) return; + ext.glGetListParameterfvSGIX = load.invoke("glGetListParameterfvSGIX", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetListParameterivSGIX = load.invoke("glGetListParameterivSGIX", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glListParameterfSGIX = load.invoke("glListParameterfSGIX", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glListParameterfvSGIX = load.invoke("glListParameterfvSGIX", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glListParameteriSGIX = load.invoke("glListParameteriSGIX", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glListParameterivSGIX = load.invoke("glListParameterivSGIX", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glGetListParameterfvSGIX(int list, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetListParameterfvSGIX).invokeExact(list, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetListParameterivSGIX(int list, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetListParameterivSGIX).invokeExact(list, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glListParameterfSGIX(int list, int pname, float param) { + final var ext = getExtCapabilities(); + try { + check(ext.glListParameterfSGIX).invokeExact(list, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glListParameterfvSGIX(int list, int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glListParameterfvSGIX).invokeExact(list, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glListParameteriSGIX(int list, int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glListParameteriSGIX).invokeExact(list, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glListParameterivSGIX(int list, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glListParameterivSGIX).invokeExact(list, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPixelTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPixelTexture.java new file mode 100644 index 00000000..2a41b24a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPixelTexture.java @@ -0,0 +1,45 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_pixel_texture} + */ +public final class GLSGIXPixelTexture { + public static final int GL_PIXEL_TEX_GEN_SGIX = 0x8139; + public static final int GL_PIXEL_TEX_GEN_MODE_SGIX = 0x832B; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIX_pixel_texture) return; + ext.glPixelTexGenSGIX = load.invoke("glPixelTexGenSGIX", ofVoid(JAVA_INT)); + } + + public static void glPixelTexGenSGIX(int mode) { + final var ext = getExtCapabilities(); + try { + check(ext.glPixelTexGenSGIX).invokeExact(mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPixelTiles.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPixelTiles.java new file mode 100644 index 00000000..7bf0ae81 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPixelTiles.java @@ -0,0 +1,39 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_pixel_tiles} + */ +public final class GLSGIXPixelTiles { + public static final int GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX = 0x813E; + public static final int GL_PIXEL_TILE_CACHE_INCREMENT_SGIX = 0x813F; + public static final int GL_PIXEL_TILE_WIDTH_SGIX = 0x8140; + public static final int GL_PIXEL_TILE_HEIGHT_SGIX = 0x8141; + public static final int GL_PIXEL_TILE_GRID_WIDTH_SGIX = 0x8142; + public static final int GL_PIXEL_TILE_GRID_HEIGHT_SGIX = 0x8143; + public static final int GL_PIXEL_TILE_GRID_DEPTH_SGIX = 0x8144; + public static final int GL_PIXEL_TILE_CACHE_SIZE_SGIX = 0x8145; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPolynomialFFD.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPolynomialFFD.java new file mode 100644 index 00000000..676c3107 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPolynomialFFD.java @@ -0,0 +1,73 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_polynomial_ffd} + */ +public final class GLSGIXPolynomialFFD { + public static final int GL_TEXTURE_DEFORMATION_BIT_SGIX = 0x00000001; + public static final int GL_GEOMETRY_DEFORMATION_BIT_SGIX = 0x00000002; + public static final int GL_GEOMETRY_DEFORMATION_SGIX = 0x8194; + public static final int GL_TEXTURE_DEFORMATION_SGIX = 0x8195; + public static final int GL_DEFORMATIONS_MASK_SGIX = 0x8196; + public static final int GL_MAX_DEFORMATION_ORDER_SGIX = 0x8197; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIX_polynomial_ffd) return; + ext.glDeformationMap3dSGIX = load.invoke("glDeformationMap3dSGIX", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_INT, JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_INT, JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glDeformationMap3fSGIX = load.invoke("glDeformationMap3fSGIX", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_INT, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_INT, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glDeformSGIX = load.invoke("glDeformSGIX", ofVoid(JAVA_INT)); + ext.glLoadIdentityDeformationMapSGIX = load.invoke("glLoadIdentityDeformationMapSGIX", ofVoid(JAVA_INT)); + } + + public static void glDeformationMap3dSGIX(int target, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, double w1, double w2, int wstride, int worder, @NativeType("const GLdouble *") MemorySegment points) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeformationMap3dSGIX).invokeExact(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, w1, w2, wstride, worder, points); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeformationMap3fSGIX(int target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, float w1, float w2, int wstride, int worder, @NativeType("const GLfloat *") MemorySegment points) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeformationMap3fSGIX).invokeExact(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, w1, w2, wstride, worder, points); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeformSGIX(int mask) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeformSGIX).invokeExact(mask); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glLoadIdentityDeformationMapSGIX(int mask) { + final var ext = getExtCapabilities(); + try { + check(ext.glLoadIdentityDeformationMapSGIX).invokeExact(mask); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXReferencePlane.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXReferencePlane.java new file mode 100644 index 00000000..129b662f --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXReferencePlane.java @@ -0,0 +1,45 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_reference_plane} + */ +public final class GLSGIXReferencePlane { + public static final int GL_REFERENCE_PLANE_SGIX = 0x817D; + public static final int GL_REFERENCE_PLANE_EQUATION_SGIX = 0x817E; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIX_reference_plane) return; + ext.glReferencePlaneSGIX = load.invoke("glReferencePlaneSGIX", ofVoid(ADDRESS)); + } + + public static void glReferencePlaneSGIX(@NativeType("const GLdouble *") MemorySegment equation) { + final var ext = getExtCapabilities(); + try { + check(ext.glReferencePlaneSGIX).invokeExact(equation); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXResample.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXResample.java new file mode 100644 index 00000000..b6e2c894 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXResample.java @@ -0,0 +1,36 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_resample} + */ +public final class GLSGIXResample { + public static final int GL_PACK_RESAMPLE_SGIX = 0x842E; + public static final int GL_UNPACK_RESAMPLE_SGIX = 0x842F; + public static final int GL_RESAMPLE_REPLICATE_SGIX = 0x8433; + public static final int GL_RESAMPLE_ZERO_FILL_SGIX = 0x8434; + public static final int GL_RESAMPLE_DECIMATE_SGIX = 0x8430; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXScalebiasHint.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXScalebiasHint.java new file mode 100644 index 00000000..fdcdd9ff --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXScalebiasHint.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_scalebias_hint} + */ +public final class GLSGIXScalebiasHint { + public static final int GL_SCALEBIAS_HINT_SGIX = 0x8322; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXShadow.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXShadow.java new file mode 100644 index 00000000..2b0d3f9c --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXShadow.java @@ -0,0 +1,35 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_shadow} + */ +public final class GLSGIXShadow { + public static final int GL_TEXTURE_COMPARE_SGIX = 0x819A; + public static final int GL_TEXTURE_COMPARE_OPERATOR_SGIX = 0x819B; + public static final int GL_TEXTURE_LEQUAL_R_SGIX = 0x819C; + public static final int GL_TEXTURE_GEQUAL_R_SGIX = 0x819D; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXShadowAmbient.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXShadowAmbient.java new file mode 100644 index 00000000..04d032dc --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXShadowAmbient.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_shadow_ambient} + */ +public final class GLSGIXShadowAmbient { + public static final int GL_SHADOW_AMBIENT_SGIX = 0x80BF; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXSprite.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXSprite.java new file mode 100644 index 00000000..64054d27 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXSprite.java @@ -0,0 +1,74 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_sprite} + */ +public final class GLSGIXSprite { + public static final int GL_SPRITE_SGIX = 0x8148; + public static final int GL_SPRITE_MODE_SGIX = 0x8149; + public static final int GL_SPRITE_AXIS_SGIX = 0x814A; + public static final int GL_SPRITE_TRANSLATION_SGIX = 0x814B; + public static final int GL_SPRITE_AXIAL_SGIX = 0x814C; + public static final int GL_SPRITE_OBJECT_ALIGNED_SGIX = 0x814D; + public static final int GL_SPRITE_EYE_ALIGNED_SGIX = 0x814E; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIX_sprite) return; + ext.glSpriteParameterfSGIX = load.invoke("glSpriteParameterfSGIX", ofVoid(JAVA_INT, JAVA_FLOAT)); + ext.glSpriteParameterfvSGIX = load.invoke("glSpriteParameterfvSGIX", ofVoid(JAVA_INT, ADDRESS)); + ext.glSpriteParameteriSGIX = load.invoke("glSpriteParameteriSGIX", ofVoid(JAVA_INT, JAVA_INT)); + ext.glSpriteParameterivSGIX = load.invoke("glSpriteParameterivSGIX", ofVoid(JAVA_INT, ADDRESS)); + } + + public static void glSpriteParameterfSGIX(int pname, float param) { + final var ext = getExtCapabilities(); + try { + check(ext.glSpriteParameterfSGIX).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSpriteParameterfvSGIX(int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glSpriteParameterfvSGIX).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSpriteParameteriSGIX(int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glSpriteParameteriSGIX).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSpriteParameterivSGIX(int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glSpriteParameterivSGIX).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXSubsample.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXSubsample.java new file mode 100644 index 00000000..7015ca7e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXSubsample.java @@ -0,0 +1,36 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_subsample} + */ +public final class GLSGIXSubsample { + public static final int GL_PACK_SUBSAMPLE_RATE_SGIX = 0x85A0; + public static final int GL_UNPACK_SUBSAMPLE_RATE_SGIX = 0x85A1; + public static final int GL_PIXEL_SUBSAMPLE_4444_SGIX = 0x85A2; + public static final int GL_PIXEL_SUBSAMPLE_2424_SGIX = 0x85A3; + public static final int GL_PIXEL_SUBSAMPLE_4242_SGIX = 0x85A4; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTagSampleBuffer.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTagSampleBuffer.java new file mode 100644 index 00000000..69ed727d --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTagSampleBuffer.java @@ -0,0 +1,43 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_tag_sample_buffer} + */ +public final class GLSGIXTagSampleBuffer { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_SGIX_tag_sample_buffer) return; + ext.glTagSampleBufferSGIX = load.invoke("glTagSampleBufferSGIX", ofVoid()); + } + + public static void glTagSampleBufferSGIX() { + final var ext = getExtCapabilities(); + try { + check(ext.glTagSampleBufferSGIX).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureAddEnv.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureAddEnv.java new file mode 100644 index 00000000..4b74298c --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureAddEnv.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_texture_add_env} + */ +public final class GLSGIXTextureAddEnv { + public static final int GL_TEXTURE_ENV_BIAS_SGIX = 0x80BE; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureCoordinateClamp.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureCoordinateClamp.java new file mode 100644 index 00000000..93439b19 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureCoordinateClamp.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_texture_coordinate_clamp} + */ +public final class GLSGIXTextureCoordinateClamp { + public static final int GL_TEXTURE_MAX_CLAMP_S_SGIX = 0x8369; + public static final int GL_TEXTURE_MAX_CLAMP_T_SGIX = 0x836A; + public static final int GL_TEXTURE_MAX_CLAMP_R_SGIX = 0x836B; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureLodBias.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureLodBias.java new file mode 100644 index 00000000..9800540e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureLodBias.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_texture_lod_bias} + */ +public final class GLSGIXTextureLodBias { + public static final int GL_TEXTURE_LOD_BIAS_S_SGIX = 0x818E; + public static final int GL_TEXTURE_LOD_BIAS_T_SGIX = 0x818F; + public static final int GL_TEXTURE_LOD_BIAS_R_SGIX = 0x8190; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureMultiBuffer.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureMultiBuffer.java new file mode 100644 index 00000000..e0da6983 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureMultiBuffer.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_texture_multi_buffer} + */ +public final class GLSGIXTextureMultiBuffer { + public static final int GL_TEXTURE_MULTI_BUFFER_HINT_SGIX = 0x812E; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureScaleBias.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureScaleBias.java new file mode 100644 index 00000000..d41d4c67 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureScaleBias.java @@ -0,0 +1,35 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_texture_scale_bias} + */ +public final class GLSGIXTextureScaleBias { + public static final int GL_POST_TEXTURE_FILTER_BIAS_SGIX = 0x8179; + public static final int GL_POST_TEXTURE_FILTER_SCALE_SGIX = 0x817A; + public static final int GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX = 0x817B; + public static final int GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX = 0x817C; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXVertexPreclip.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXVertexPreclip.java new file mode 100644 index 00000000..8c0aa647 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXVertexPreclip.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_vertex_preclip} + */ +public final class GLSGIXVertexPreclip { + public static final int GL_VERTEX_PRECLIP_SGIX = 0x83EE; + public static final int GL_VERTEX_PRECLIP_HINT_SGIX = 0x83EF; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXYcrcb.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXYcrcb.java new file mode 100644 index 00000000..0d22cd96 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXYcrcb.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_ycrcb} + */ +public final class GLSGIXYcrcb { + public static final int GL_YCRCB_422_SGIX = 0x81BB; + public static final int GL_YCRCB_444_SGIX = 0x81BC; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXYcrcba.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXYcrcba.java new file mode 100644 index 00000000..1fe03e13 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXYcrcba.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.sgi; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_SGIX_ycrcba} + */ +public final class GLSGIXYcrcba { + public static final int GL_YCRCB_SGIX = 0x8318; + public static final int GL_YCRCBA_SGIX = 0x8319; +} From 597cf78321a4e090f1ce6e63794eebd504b91626 Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Sat, 4 Nov 2023 18:06:43 +0800 Subject: [PATCH 11/20] [OpenGL] Update extensions; fixed CI --- build.gradle.kts | 8 +- .../overrungl/opengl/OpenGLGenerator.kt | 903 +++++++++++++++++- .../main/java/overrungl/opengl/GLExtCaps.java | 121 ++- .../opengl/ext/GL3DFXMultisample.java | 4 +- .../overrungl/opengl/ext/GL3DFXTbuffer.java | 4 +- .../ext/GL3DFXTextureCompressionFXT1.java | 4 +- .../opengl/ext/GLGREMEDYFrameTerminator.java | 4 +- .../opengl/ext/GLGREMEDYStringMarker.java | 4 +- .../ext/GLHPConvolutionBorderModes.java | 4 +- .../opengl/ext/GLHPImageTransform.java | 4 +- .../opengl/ext/GLHPOcclusionTest.java | 4 +- .../opengl/ext/GLHPTextureLighting.java | 4 +- .../opengl/ext/GLINGRBlendFuncSeparate.java | 4 +- .../opengl/ext/GLINGRColorClamp.java | 4 +- .../opengl/ext/GLINGRInterlaceRead.java | 4 +- .../overrungl/opengl/ext/GLOMLInterlace.java | 4 +- .../overrungl/opengl/ext/GLOMLResample.java | 4 +- .../overrungl/opengl/ext/GLOMLSubsample.java | 4 +- .../overrungl/opengl/ext/GLOVRMultiview.java | 4 +- .../overrungl/opengl/ext/GLPGIMiscHints.java | 4 +- .../opengl/ext/GLPGIVertexHints.java | 4 +- .../opengl/ext/GLRENDScreenCoordinates.java | 4 +- .../java/overrungl/opengl/ext/GLS3S3tc.java | 4 +- .../opengl/ext/GLWINPhongShading.java | 4 +- .../opengl/ext/GLWINSpecularFog.java | 4 +- .../ext/amd/GLAMDBlendMinmaxFactor.java | 4 +- .../opengl/ext/amd/GLAMDDebugOutput.java | 4 +- .../ext/amd/GLAMDDepthClampSeparate.java | 4 +- .../opengl/ext/amd/GLAMDDrawBuffersBlend.java | 4 +- .../GLAMDFramebufferMultisampleAdvanced.java | 4 +- .../amd/GLAMDFramebufferSamplePositions.java | 4 +- .../ext/amd/GLAMDGpuShaderHalfFloat.java | 4 +- .../opengl/ext/amd/GLAMDGpuShaderInt64.java | 4 +- .../ext/amd/GLAMDInterleavedElements.java | 4 +- .../ext/amd/GLAMDMultiDrawIndirect.java | 4 +- .../opengl/ext/amd/GLAMDNameGenDelete.java | 4 +- .../ext/amd/GLAMDOcclusionQueryEvent.java | 4 +- .../ext/amd/GLAMDPerformanceMonitor.java | 4 +- .../opengl/ext/amd/GLAMDPinnedMemory.java | 4 +- .../ext/amd/GLAMDQueryBufferObject.java | 4 +- .../opengl/ext/amd/GLAMDSamplePositions.java | 4 +- .../opengl/ext/amd/GLAMDSparseTexture.java | 4 +- .../amd/GLAMDStencilOperationExtended.java | 4 +- .../ext/amd/GLAMDTransformFeedback4.java | 4 +- .../ext/amd/GLAMDVertexShaderTessellator.java | 4 +- .../ext/apple/GLAPPLEAuxDepthStencil.java | 4 +- .../ext/apple/GLAPPLEClientStorage.java | 4 +- .../opengl/ext/apple/GLAPPLEElementArray.java | 4 +- .../opengl/ext/apple/GLAPPLEFence.java | 4 +- .../opengl/ext/apple/GLAPPLEFloatPixels.java | 4 +- .../ext/apple/GLAPPLEFlushBufferRange.java | 4 +- .../ext/apple/GLAPPLEObjectPurgeable.java | 4 +- .../opengl/ext/apple/GLAPPLERgb422.java | 4 +- .../opengl/ext/apple/GLAPPLERowBytes.java | 4 +- .../ext/apple/GLAPPLESpecularVector.java | 4 +- .../opengl/ext/apple/GLAPPLETextureRange.java | 4 +- .../ext/apple/GLAPPLETransformHint.java | 4 +- .../ext/apple/GLAPPLEVertexArrayObject.java | 4 +- .../ext/apple/GLAPPLEVertexArrayRange.java | 4 +- .../apple/GLAPPLEVertexProgramEvaluators.java | 4 +- .../opengl/ext/apple/GLAPPLEYcbcr422.java | 4 +- .../opengl/ext/arb/GLARBBindlessTexture.java | 233 ++--- .../opengl/ext/arb/GLARBCLEvent.java | 33 +- .../opengl/ext/arb/GLARBColorBufferFloat.java | 32 +- .../arb/GLARBComputeVariableGroupSize.java | 30 +- .../opengl/ext/arb/GLARBDebugOutput.java | 107 +-- .../opengl/ext/arb/GLARBDepthTexture.java | 36 + .../opengl/ext/arb/GLARBDrawBuffers.java | 52 +- .../opengl/ext/arb/GLARBDrawBuffersBlend.java | 66 +- .../opengl/ext/arb/GLARBDrawInstanced.java | 54 +- .../ext/arb/GLARBES32Compatibility.java | 30 +- .../opengl/ext/arb/GLARBFragmentProgram.java | 396 ++++---- .../opengl/ext/arb/GLARBFragmentShader.java | 34 + .../opengl/ext/arb/GLARBGLSpirv.java | 32 +- .../opengl/ext/arb/GLARBGPUShaderInt64.java | 405 -------- .../opengl/ext/arb/GLARBGeometryShader4.java | 65 +- .../opengl/ext/arb/GLARBGpuShaderInt64.java | 330 +++++++ .../opengl/ext/arb/GLARBHalfFloatPixel.java | 32 + .../opengl/ext/arb/GLARBImaging.java | 343 +++++++ .../ext/arb/GLARBIndirectParameters.java | 44 +- .../opengl/ext/arb/GLARBInstancedArrays.java | 28 +- .../ext/arb/GLARBInternalformatQuery2.java | 13 +- .../opengl/ext/arb/GLARBMatrixPalette.java | 88 +- .../opengl/ext/arb/GLARBMultisample.java | 36 +- .../opengl/ext/arb/GLARBMultitexture.java | 396 ++++---- .../opengl/ext/arb/GLARBOcclusionQuery.java | 118 +-- .../ext/arb/GLARBParallelShaderCompile.java | 28 +- .../ext/arb/GLARBPipelineStatisticsQuery.java | 13 +- .../ext/arb/GLARBPixelBufferObject.java | 13 +- .../opengl/ext/arb/GLARBPointParameters.java | 42 +- .../opengl/ext/arb/GLARBPointSprite.java | 33 + .../opengl/ext/arb/GLARBRobustness.java | 4 +- .../opengl/ext/arb/GLARBSampleLocations.java | 4 +- .../opengl/ext/arb/GLARBSampleShading.java | 4 +- .../opengl/ext/arb/GLARBShaderObjects.java | 4 +- .../ext/arb/GLARBShadingLanguageInclude.java | 4 +- .../overrungl/opengl/ext/arb/GLARBShadow.java | 4 +- .../opengl/ext/arb/GLARBShadowAmbient.java | 4 +- .../opengl/ext/arb/GLARBSparseBuffer.java | 4 +- .../opengl/ext/arb/GLARBSparseTexture.java | 4 +- .../ext/arb/GLARBTextureBorderClamp.java | 4 +- .../ext/arb/GLARBTextureBufferObject.java | 4 +- .../ext/arb/GLARBTextureCompression.java | 4 +- .../ext/arb/GLARBTextureCompressionBptc.java | 4 +- .../opengl/ext/arb/GLARBTextureCubeMap.java | 4 +- .../ext/arb/GLARBTextureCubeMapArray.java | 4 +- .../ext/arb/GLARBTextureEnvCombine.java | 4 +- .../opengl/ext/arb/GLARBTextureEnvDot3.java | 4 +- .../ext/arb/GLARBTextureFilterMinmax.java | 4 +- .../opengl/ext/arb/GLARBTextureFloat.java | 4 +- .../opengl/ext/arb/GLARBTextureGather.java | 4 +- .../ext/arb/GLARBTextureMirroredRepeat.java | 4 +- .../opengl/ext/arb/GLARBTextureRectangle.java | 4 +- .../GLARBTransformFeedbackOverflowQuery.java | 4 +- .../opengl/ext/arb/GLARBTransposeMatrix.java | 4 +- .../opengl/ext/arb/GLARBVertexBlend.java | 4 +- .../ext/arb/GLARBVertexBufferObject.java | 4 +- .../opengl/ext/arb/GLARBVertexProgram.java | 4 +- .../opengl/ext/arb/GLARBVertexShader.java | 4 +- .../opengl/ext/arb/GLARBViewportArray.java | 4 +- .../opengl/ext/arb/GLARBWindowPos.java | 4 +- .../opengl/ext/ati/GLATIDrawBuffers.java | 4 +- .../opengl/ext/ati/GLATIElementArray.java | 4 +- .../opengl/ext/ati/GLATIEnvmapBumpmap.java | 4 +- .../opengl/ext/ati/GLATIFragmentShader.java | 4 +- .../opengl/ext/ati/GLATIMapObjectBuffer.java | 4 +- .../opengl/ext/ati/GLATIMeminfo.java | 4 +- .../opengl/ext/ati/GLATIPixelFormatFloat.java | 4 +- .../opengl/ext/ati/GLATIPnTriangles.java | 4 +- .../opengl/ext/ati/GLATISeparateStencil.java | 4 +- .../ext/ati/GLATITextFragmentShader.java | 4 +- .../ext/ati/GLATITextureEnvCombine3.java | 4 +- .../opengl/ext/ati/GLATITextureFloat.java | 4 +- .../ext/ati/GLATITextureMirrorOnce.java | 4 +- .../ext/ati/GLATIVertexArrayObject.java | 4 +- .../ext/ati/GLATIVertexAttribArrayObject.java | 4 +- .../opengl/ext/ati/GLATIVertexStreams.java | 4 +- .../opengl/ext/ext/GLEXT422Pixels.java | 4 +- .../opengl/ext/ibm/GLIBMCullVertex.java | 4 +- .../ext/ibm/GLIBMMultimodeDrawArrays.java | 4 +- .../opengl/ext/ibm/GLIBMRasterposClip.java | 4 +- .../opengl/ext/ibm/GLIBMStaticData.java | 4 +- .../ext/ibm/GLIBMTextureMirroredRepeat.java | 4 +- .../opengl/ext/ibm/GLIBMVertexArrayLists.java | 4 +- .../ext/intel/GLINTELBlackholeRender.java | 4 +- .../GLINTELConservativeRasterization.java | 4 +- .../ext/intel/GLINTELFramebufferCMAA.java | 4 +- .../opengl/ext/intel/GLINTELMapTexture.java | 4 +- .../ext/intel/GLINTELParallelArrays.java | 4 +- .../ext/intel/GLINTELPerformanceQuery.java | 4 +- .../ext/khr/GLKHRBlendEquationAdvanced.java | 4 +- .../GLKHRBlendEquationAdvancedCoherent.java | 4 +- .../opengl/ext/khr/GLKHRNoError.java | 4 +- .../ext/khr/GLKHRParallelShaderCompile.java | 4 +- .../opengl/ext/khr/GLKHRRobustness.java | 4 +- .../opengl/ext/khr/GLKHRShaderSubgroup.java | 4 +- .../khr/GLKHRTextureCompressionAstcHdr.java | 4 +- .../ext/mesa/GLMESAFramebufferFlipX.java | 4 +- .../ext/mesa/GLMESAFramebufferFlipY.java | 4 +- .../ext/mesa/GLMESAFramebufferSwapXY.java | 4 +- .../opengl/ext/mesa/GLMESAPackInvert.java | 4 +- .../ext/mesa/GLMESAProgramBinaryFormats.java | 4 +- .../opengl/ext/mesa/GLMESAResizeBuffers.java | 4 +- .../ext/mesa/GLMESATileRasterOrder.java | 4 +- .../opengl/ext/mesa/GLMESAWindowPos.java | 4 +- .../opengl/ext/mesa/GLMESAXTextureStack.java | 4 +- .../opengl/ext/mesa/GLMESAYcbcrTexture.java | 4 +- .../opengl/ext/nv/GLNVXConditionalRender.java | 4 +- .../opengl/ext/oes/GLOESByteCoordinates.java | 4 +- .../oes/GLOESCompressedPalettedTexture.java | 4 +- .../opengl/ext/oes/GLOESFixedPoint.java | 4 +- .../opengl/ext/oes/GLOESQueryMatrix.java | 4 +- .../opengl/ext/oes/GLOESReadFormat.java | 4 +- .../opengl/ext/oes/GLOESSinglePrecision.java | 4 +- .../opengl/ext/sgi/GLSGIColorMatrix.java | 4 +- .../opengl/ext/sgi/GLSGIColorTable.java | 4 +- .../opengl/ext/sgi/GLSGISDetailTexture.java | 4 +- .../opengl/ext/sgi/GLSGISFogFunction.java | 4 +- .../opengl/ext/sgi/GLSGISGenerateMipmap.java | 4 +- .../opengl/ext/sgi/GLSGISMultisample.java | 4 +- .../opengl/ext/sgi/GLSGISPixelTexture.java | 4 +- .../opengl/ext/sgi/GLSGISPointLineTexgen.java | 4 +- .../opengl/ext/sgi/GLSGISPointParameters.java | 4 +- .../opengl/ext/sgi/GLSGISSharpenTexture.java | 4 +- .../opengl/ext/sgi/GLSGISTexture4D.java | 4 +- .../ext/sgi/GLSGISTextureBorderClamp.java | 4 +- .../ext/sgi/GLSGISTextureColorMask.java | 4 +- .../ext/sgi/GLSGISTextureEdgeClamp.java | 4 +- .../opengl/ext/sgi/GLSGISTextureFilter4.java | 4 +- .../opengl/ext/sgi/GLSGISTextureLod.java | 4 +- .../opengl/ext/sgi/GLSGISTextureSelect.java | 4 +- .../ext/sgi/GLSGITextureColorTable.java | 4 +- .../overrungl/opengl/ext/sgi/GLSGIXAsync.java | 4 +- .../opengl/ext/sgi/GLSGIXAsyncHistogram.java | 4 +- .../opengl/ext/sgi/GLSGIXAsyncPixel.java | 4 +- .../ext/sgi/GLSGIXBlendAlphaMinmax.java | 4 +- .../ext/sgi/GLSGIXCalligraphicFragment.java | 4 +- .../opengl/ext/sgi/GLSGIXClipmap.java | 4 +- .../ext/sgi/GLSGIXConvolutionAccuracy.java | 4 +- .../opengl/ext/sgi/GLSGIXDepthTexture.java | 4 +- .../opengl/ext/sgi/GLSGIXFlushRaster.java | 4 +- .../opengl/ext/sgi/GLSGIXFogOffset.java | 4 +- .../ext/sgi/GLSGIXFragmentLighting.java | 4 +- .../opengl/ext/sgi/GLSGIXFramezoom.java | 4 +- .../opengl/ext/sgi/GLSGIXIglooInterface.java | 4 +- .../opengl/ext/sgi/GLSGIXInstruments.java | 4 +- .../opengl/ext/sgi/GLSGIXInterlace.java | 4 +- .../opengl/ext/sgi/GLSGIXIrInstrument1.java | 4 +- .../opengl/ext/sgi/GLSGIXListPriority.java | 4 +- .../opengl/ext/sgi/GLSGIXPixelTexture.java | 4 +- .../opengl/ext/sgi/GLSGIXPixelTiles.java | 4 +- .../opengl/ext/sgi/GLSGIXPolynomialFFD.java | 4 +- .../opengl/ext/sgi/GLSGIXReferencePlane.java | 4 +- .../opengl/ext/sgi/GLSGIXResample.java | 4 +- .../opengl/ext/sgi/GLSGIXScalebiasHint.java | 4 +- .../opengl/ext/sgi/GLSGIXShadow.java | 4 +- .../opengl/ext/sgi/GLSGIXShadowAmbient.java | 4 +- .../opengl/ext/sgi/GLSGIXSprite.java | 4 +- .../opengl/ext/sgi/GLSGIXSubsample.java | 4 +- .../opengl/ext/sgi/GLSGIXTagSampleBuffer.java | 4 +- .../opengl/ext/sgi/GLSGIXTextureAddEnv.java | 4 +- .../ext/sgi/GLSGIXTextureCoordinateClamp.java | 4 +- .../opengl/ext/sgi/GLSGIXTextureLodBias.java | 4 +- .../ext/sgi/GLSGIXTextureMultiBuffer.java | 4 +- .../ext/sgi/GLSGIXTextureScaleBias.java | 4 +- .../opengl/ext/sgi/GLSGIXVertexPreclip.java | 4 +- .../overrungl/opengl/ext/sgi/GLSGIXYcrcb.java | 4 +- .../opengl/ext/sgi/GLSGIXYcrcba.java | 4 +- .../ext/sun/GLSUNConvolutionBorderModes.java | 4 +- .../opengl/ext/sun/GLSUNGlobalAlpha.java | 4 +- .../opengl/ext/sun/GLSUNMeshArray.java | 4 +- .../opengl/ext/sun/GLSUNSliceAccum.java | 4 +- .../opengl/ext/sun/GLSUNTriangleList.java | 4 +- .../overrungl/opengl/ext/sun/GLSUNVertex.java | 4 +- .../opengl/ext/sun/GLSUNXConstantData.java | 4 +- 235 files changed, 3047 insertions(+), 1955 deletions(-) create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDepthTexture.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBFragmentShader.java delete mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBGPUShaderInt64.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBGpuShaderInt64.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBHalfFloatPixel.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBImaging.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBPointSprite.java diff --git a/build.gradle.kts b/build.gradle.kts index d399dae1..561f796c 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,5 +1,5 @@ import org.gradle.plugins.ide.idea.model.IdeaModel -import org.jetbrains.kotlin.gradle.dsl.KotlinJvmProjectExtension +import org.jetbrains.kotlin.gradle.tasks.KotlinCompile import java.nio.file.Files import kotlin.io.path.Path @@ -154,6 +154,10 @@ subprojects { options.release.set(targetJavaVersion) } + tasks.withType { + kotlinOptions { jvmTarget = "20" } + } + tasks.withType { if (jdkEnablePreview.toBoolean()) jvmArgs("--enable-preview") } @@ -203,8 +207,6 @@ subprojects { } the().module.inheritOutputDirs = true - - the().jvmToolchain(20) } tasks.register("assembleJavadocArgs") { diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt index cff2975f..5cc55da6 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt @@ -114,6 +114,8 @@ val GLclampf = float val GLdouble = double val GLclampd = double val GLchar = byte +val GLint64 = long +val GLuint64 = long val GLsizeiptrARB = long val GLintptrARB = long @@ -187,8 +189,8 @@ class OpenGLFile( |import static overrungl.opengl.GLLoader.*; |/** - | * {@code $extName} - | */ + | * {@code $extName} + | */ |public final class GL${ext.extName}$name { """.trimMargin() ) @@ -287,6 +289,901 @@ fun file( } fun arb() { + file("ES32Compatibility", ARB, "GL_ARB_ES3_2_compatibility") { + "GL_PRIMITIVE_BOUNDING_BOX_ARB"("0x92BE") + "GL_MULTISAMPLE_LINE_WIDTH_RANGE_ARB"("0x9381") + "GL_MULTISAMPLE_LINE_WIDTH_GRANULARITY_ARB"("0x9382") + "glPrimitiveBoundingBoxARB"( + void, + GLfloat("minX"), + GLfloat("minY"), + GLfloat("minZ"), + GLfloat("minW"), + GLfloat("maxX"), + GLfloat("maxY"), + GLfloat("maxZ"), + GLfloat("maxW") + ) + } + file("BindlessTexture", ARB, "GL_ARB_bindless_texture") { + "GL_UNSIGNED_INT64_ARB"("0x140F") + "glGetTextureHandleARB"(GLuint64, GLuint("texture")) + "glGetTextureSamplerHandleARB"(GLuint64, GLuint("texture"), GLuint("sampler")) + "glMakeTextureHandleResidentARB"(void, GLuint64("handle")) + "glMakeTextureHandleNonResidentARB"(void, GLuint64("handle")) + "glGetImageHandleARB"( + GLuint64, + GLuint("texture"), + GLint("level"), + GLboolean("layered"), + GLint("layer"), + GLenum("format") + ) + "glMakeImageHandleResidentARB"(void, GLuint64("handle"), GLenum("access")) + "glMakeImageHandleNonResidentARB"(void, GLuint64("handle")) + "glUniformHandleui64ARB"(void, GLint("location"), GLuint64("value")) + "glUniformHandleui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) + "glProgramUniformHandleui64ARB"(void, GLuint("program"), GLint("location"), GLuint64("value")) + "glProgramUniformHandleui64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("values", "const GLuint64 *") + ) + "glIsTextureHandleResidentARB"(GLboolean, GLuint64("handle")) + "glIsImageHandleResidentARB"(GLboolean, GLuint64("handle")) + "glVertexAttribL1ui64ARB"(void, GLuint("index"), GLuint64EXT("x")) + "glVertexAttribL1ui64vARB"(void, GLuint("index"), address("v", "const GLuint64EXT *")) + "glGetVertexAttribLui64vARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLuint64EXT *")) + } + file("CLEvent", ARB, "GL_ARB_cl_event") { + "GL_SYNC_CL_EVENT_ARB"("0x8240") + "GL_SYNC_CL_EVENT_COMPLETE_ARB"("0x8241") + "glCreateSyncFromCLeventARB"( + address, + address("context", "struct _cl_context *"), + address("event", "struct _cl_event *"), + GLbitfield("flags"), + nativeType = "GLsync" + ) + } + file("ColorBufferFloat", ARB, "GL_ARB_color_buffer_float") { + "GL_RGBA_FLOAT_MODE_ARB"("0x8820") + "GL_CLAMP_VERTEX_COLOR_ARB"("0x891A") + "GL_CLAMP_FRAGMENT_COLOR_ARB"("0x891B") + "GL_CLAMP_READ_COLOR_ARB"("0x891C") + "GL_FIXED_ONLY_ARB"("0x891D") + "glClampColorARB"(void, GLenum("target"), GLenum("clamp")) + } + file("ComputeVariableGroupSize", ARB, "GL_ARB_compute_variable_group_size") { + "GL_MAX_COMPUTE_VARIABLE_GROUP_INVOCATIONS_ARB"("0x9344") + "GL_MAX_COMPUTE_FIXED_GROUP_INVOCATIONS_ARB"("0x90EB") + "GL_MAX_COMPUTE_VARIABLE_GROUP_SIZE_ARB"("0x9345") + "GL_MAX_COMPUTE_FIXED_GROUP_SIZE_ARB"("0x91BF") + "glDispatchComputeGroupSizeARB"( + void, + GLuint("num_groups_x"), + GLuint("num_groups_y"), + GLuint("num_groups_z"), + GLuint("group_size_x"), + GLuint("group_size_y"), + GLuint("group_size_z") + ) + } + file("DebugOutput", ARB, "GL_ARB_debug_output") { + "GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB"("0x8242") + "GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB"("0x8243") + "GL_DEBUG_CALLBACK_FUNCTION_ARB"("0x8244") + "GL_DEBUG_CALLBACK_USER_PARAM_ARB"("0x8245") + "GL_DEBUG_SOURCE_API_ARB"("0x8246") + "GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB"("0x8247") + "GL_DEBUG_SOURCE_SHADER_COMPILER_ARB"("0x8248") + "GL_DEBUG_SOURCE_THIRD_PARTY_ARB"("0x8249") + "GL_DEBUG_SOURCE_APPLICATION_ARB"("0x824A") + "GL_DEBUG_SOURCE_OTHER_ARB"("0x824B") + "GL_DEBUG_TYPE_ERROR_ARB"("0x824C") + "GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB"("0x824D") + "GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB"("0x824E") + "GL_DEBUG_TYPE_PORTABILITY_ARB"("0x824F") + "GL_DEBUG_TYPE_PERFORMANCE_ARB"("0x8250") + "GL_DEBUG_TYPE_OTHER_ARB"("0x8251") + "GL_MAX_DEBUG_MESSAGE_LENGTH_ARB"("0x9143") + "GL_MAX_DEBUG_LOGGED_MESSAGES_ARB"("0x9144") + "GL_DEBUG_LOGGED_MESSAGES_ARB"("0x9145") + "GL_DEBUG_SEVERITY_HIGH_ARB"("0x9146") + "GL_DEBUG_SEVERITY_MEDIUM_ARB"("0x9147") + "GL_DEBUG_SEVERITY_LOW_ARB"("0x9148") + "glDebugMessageControlARB"( + void, + GLenum("source"), + GLenum("type"), + GLenum("severity"), + GLsizei("count"), + address("ids", "const GLuint *"), + GLboolean("enabled") + ) + "glDebugMessageInsertARB"( + void, + GLenum("source"), + GLenum("type"), + GLuint("id"), + GLenum("severity"), + GLsizei("length"), + address("buf", "const GLchar *") + ) + ("glDebugMessageCallbackARB"( + void, + address("callback", "GLDEBUGPROCARB"), + address("userParam", "const void *") + )) { + "glDebugMessageCallbackARB"( + void, + "glDebugMessageCallbackARB(callback.address(arena), userParam);", + arena("arena"), + Type("GLDebugProc", null)("callback"), + address("userParam", "const void *") + ) + } + "glGetDebugMessageLogARB"( + GLuint, + GLuint("count"), + GLsizei("bufSize"), + address("sources", "GLenum *"), + address("types", "GLenum *"), + address("ids", "GLuint *"), + address("severities", "GLenum *"), + address("lengths", "GLsizei *"), + address("messageLog", "GLchar *") + ) + } + file( + "DepthTexture", ARB, "GL_ARB_depth_texture", + "GL_DEPTH_COMPONENT16_ARB" to "0x81A5", + "GL_DEPTH_COMPONENT24_ARB" to "0x81A6", + "GL_DEPTH_COMPONENT32_ARB" to "0x81A7", + "GL_TEXTURE_DEPTH_SIZE_ARB" to "0x884A", + "GL_DEPTH_TEXTURE_MODE_ARB" to "0x884B" + ) + file("DrawBuffers", ARB, "GL_ARB_draw_buffers") { + "GL_MAX_DRAW_BUFFERS_ARB"("0x8824") + "GL_DRAW_BUFFER0_ARB"("0x8825") + "GL_DRAW_BUFFER1_ARB"("0x8826") + "GL_DRAW_BUFFER2_ARB"("0x8827") + "GL_DRAW_BUFFER3_ARB"("0x8828") + "GL_DRAW_BUFFER4_ARB"("0x8829") + "GL_DRAW_BUFFER5_ARB"("0x882A") + "GL_DRAW_BUFFER6_ARB"("0x882B") + "GL_DRAW_BUFFER7_ARB"("0x882C") + "GL_DRAW_BUFFER8_ARB"("0x882D") + "GL_DRAW_BUFFER9_ARB"("0x882E") + "GL_DRAW_BUFFER10_ARB"("0x882F") + "GL_DRAW_BUFFER11_ARB"("0x8830") + "GL_DRAW_BUFFER12_ARB"("0x8831") + "GL_DRAW_BUFFER13_ARB"("0x8832") + "GL_DRAW_BUFFER14_ARB"("0x8833") + "GL_DRAW_BUFFER15_ARB"("0x8834") + "glDrawBuffersARB"(void, GLsizei("n"), address("bufs", "const GLenum *")) + } + file("DrawBuffersBlend", ARB, "GL_ARB_draw_buffers_blend") { + "glBlendEquationiARB"(void, GLuint("buf"), GLenum("mode")) + "glBlendEquationSeparateiARB"(void, GLuint("buf"), GLenum("modeRGB"), GLenum("modeAlpha")) + "glBlendFunciARB"(void, GLuint("buf"), GLenum("src"), GLenum("dst")) + "glBlendFuncSeparateiARB"( + void, + GLuint("buf"), + GLenum("srcRGB"), + GLenum("dstRGB"), + GLenum("srcAlpha"), + GLenum("dstAlpha") + ) + } + file("DrawInstanced", ARB, "GL_ARB_draw_instanced") { + "glDrawArraysInstancedARB"(void, GLenum("mode"), GLint("first"), GLsizei("count"), GLsizei("primcount")) + "glDrawElementsInstancedARB"( + void, + GLenum("mode"), + GLsizei("count"), + GLenum("type"), + address("indices", "const void *"), + GLsizei("primcount") + ) + } + file("FragmentProgram", ARB, "GL_ARB_fragment_program") { + "GL_FRAGMENT_PROGRAM_ARB"("0x8804") + "GL_PROGRAM_FORMAT_ASCII_ARB"("0x8875") + "GL_PROGRAM_LENGTH_ARB"("0x8627") + "GL_PROGRAM_FORMAT_ARB"("0x8876") + "GL_PROGRAM_BINDING_ARB"("0x8677") + "GL_PROGRAM_INSTRUCTIONS_ARB"("0x88A0") + "GL_MAX_PROGRAM_INSTRUCTIONS_ARB"("0x88A1") + "GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB"("0x88A2") + "GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB"("0x88A3") + "GL_PROGRAM_TEMPORARIES_ARB"("0x88A4") + "GL_MAX_PROGRAM_TEMPORARIES_ARB"("0x88A5") + "GL_PROGRAM_NATIVE_TEMPORARIES_ARB"("0x88A6") + "GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB"("0x88A7") + "GL_PROGRAM_PARAMETERS_ARB"("0x88A8") + "GL_MAX_PROGRAM_PARAMETERS_ARB"("0x88A9") + "GL_PROGRAM_NATIVE_PARAMETERS_ARB"("0x88AA") + "GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB"("0x88AB") + "GL_PROGRAM_ATTRIBS_ARB"("0x88AC") + "GL_MAX_PROGRAM_ATTRIBS_ARB"("0x88AD") + "GL_PROGRAM_NATIVE_ATTRIBS_ARB"("0x88AE") + "GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB"("0x88AF") + "GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB"("0x88B4") + "GL_MAX_PROGRAM_ENV_PARAMETERS_ARB"("0x88B5") + "GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB"("0x88B6") + "GL_PROGRAM_ALU_INSTRUCTIONS_ARB"("0x8805") + "GL_PROGRAM_TEX_INSTRUCTIONS_ARB"("0x8806") + "GL_PROGRAM_TEX_INDIRECTIONS_ARB"("0x8807") + "GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB"("0x8808") + "GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB"("0x8809") + "GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB"("0x880A") + "GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB"("0x880B") + "GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB"("0x880C") + "GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB"("0x880D") + "GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB"("0x880E") + "GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB"("0x880F") + "GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB"("0x8810") + "GL_PROGRAM_STRING_ARB"("0x8628") + "GL_PROGRAM_ERROR_POSITION_ARB"("0x864B") + "GL_CURRENT_MATRIX_ARB"("0x8641") + "GL_TRANSPOSE_CURRENT_MATRIX_ARB"("0x88B7") + "GL_CURRENT_MATRIX_STACK_DEPTH_ARB"("0x8640") + "GL_MAX_PROGRAM_MATRICES_ARB"("0x862F") + "GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB"("0x862E") + "GL_MAX_TEXTURE_COORDS_ARB"("0x8871") + "GL_MAX_TEXTURE_IMAGE_UNITS_ARB"("0x8872") + "GL_PROGRAM_ERROR_STRING_ARB"("0x8874") + "GL_MATRIX0_ARB"("0x88C0") + "GL_MATRIX1_ARB"("0x88C1") + "GL_MATRIX2_ARB"("0x88C2") + "GL_MATRIX3_ARB"("0x88C3") + "GL_MATRIX4_ARB"("0x88C4") + "GL_MATRIX5_ARB"("0x88C5") + "GL_MATRIX6_ARB"("0x88C6") + "GL_MATRIX7_ARB"("0x88C7") + "GL_MATRIX8_ARB"("0x88C8") + "GL_MATRIX9_ARB"("0x88C9") + "GL_MATRIX10_ARB"("0x88CA") + "GL_MATRIX11_ARB"("0x88CB") + "GL_MATRIX12_ARB"("0x88CC") + "GL_MATRIX13_ARB"("0x88CD") + "GL_MATRIX14_ARB"("0x88CE") + "GL_MATRIX15_ARB"("0x88CF") + "GL_MATRIX16_ARB"("0x88D0") + "GL_MATRIX17_ARB"("0x88D1") + "GL_MATRIX18_ARB"("0x88D2") + "GL_MATRIX19_ARB"("0x88D3") + "GL_MATRIX20_ARB"("0x88D4") + "GL_MATRIX21_ARB"("0x88D5") + "GL_MATRIX22_ARB"("0x88D6") + "GL_MATRIX23_ARB"("0x88D7") + "GL_MATRIX24_ARB"("0x88D8") + "GL_MATRIX25_ARB"("0x88D9") + "GL_MATRIX26_ARB"("0x88DA") + "GL_MATRIX27_ARB"("0x88DB") + "GL_MATRIX28_ARB"("0x88DC") + "GL_MATRIX29_ARB"("0x88DD") + "GL_MATRIX30_ARB"("0x88DE") + "GL_MATRIX31_ARB"("0x88DF") + "glProgramStringARB"( + void, + GLenum("target"), + GLenum("format"), + GLsizei("len"), + address("string", "const void *") + ) + "glBindProgramARB"(void, GLenum("target"), GLuint("program")) + "glDeleteProgramsARB"(void, GLsizei("n"), address("programs", "const GLuint *")) + "glGenProgramsARB"(void, GLsizei("n"), address("programs", "GLuint *")) + "glProgramEnvParameter4dARB"( + void, + GLenum("target"), + GLuint("index"), + GLdouble("x"), + GLdouble("y"), + GLdouble("z"), + GLdouble("w") + ) + "glProgramEnvParameter4dvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLdouble *")) + "glProgramEnvParameter4fARB"( + void, + GLenum("target"), + GLuint("index"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z"), + GLfloat("w") + ) + "glProgramEnvParameter4fvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLfloat *")) + "glProgramLocalParameter4dARB"( + void, + GLenum("target"), + GLuint("index"), + GLdouble("x"), + GLdouble("y"), + GLdouble("z"), + GLdouble("w") + ) + "glProgramLocalParameter4dvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLdouble *")) + "glProgramLocalParameter4fARB"( + void, + GLenum("target"), + GLuint("index"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z"), + GLfloat("w") + ) + "glProgramLocalParameter4fvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLfloat *")) + "glGetProgramEnvParameterdvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLdouble *")) + "glGetProgramEnvParameterfvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLfloat *")) + "glGetProgramLocalParameterdvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLdouble *")) + "glGetProgramLocalParameterfvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLfloat *")) + "glGetProgramivARB"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetProgramStringARB"(void, GLenum("target"), GLenum("pname"), address("string", "void *")) + "glIsProgramARB"(GLboolean, GLuint("program")) + } + file( + "FragmentShader", ARB, "GL_ARB_fragment_shader", + "GL_FRAGMENT_SHADER_ARB" to "0x8B30", + "GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB" to "0x8B49", + "GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB" to "0x8B8B" + ) + file("GeometryShader4", ARB, "GL_ARB_geometry_shader4") { + "GL_LINES_ADJACENCY_ARB"("0x000A") + "GL_LINE_STRIP_ADJACENCY_ARB"("0x000B") + "GL_TRIANGLES_ADJACENCY_ARB"("0x000C") + "GL_TRIANGLE_STRIP_ADJACENCY_ARB"("0x000D") + "GL_PROGRAM_POINT_SIZE_ARB"("0x8642") + "GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB"("0x8C29") + "GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB"("0x8DA7") + "GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB"("0x8DA8") + "GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB"("0x8DA9") + "GL_GEOMETRY_SHADER_ARB"("0x8DD9") + "GL_GEOMETRY_VERTICES_OUT_ARB"("0x8DDA") + "GL_GEOMETRY_INPUT_TYPE_ARB"("0x8DDB") + "GL_GEOMETRY_OUTPUT_TYPE_ARB"("0x8DDC") + "GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB"("0x8DDD") + "GL_MAX_VERTEX_VARYING_COMPONENTS_ARB"("0x8DDE") + "GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB"("0x8DDF") + "GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB"("0x8DE0") + "GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB"("0x8DE1") + "glProgramParameteriARB"(void, GLuint("program"), GLenum("pname"), GLint("value")) + "glFramebufferTextureARB"(void, GLenum("target"), GLenum("attachment"), GLuint("texture"), GLint("level")) + "glFramebufferTextureLayerARB"( + void, + GLenum("target"), + GLenum("attachment"), + GLuint("texture"), + GLint("level"), + GLint("layer") + ) + "glFramebufferTextureFaceARB"( + void, + GLenum("target"), + GLenum("attachment"), + GLuint("texture"), + GLint("level"), + GLenum("face") + ) + } + file("GLSpirv", ARB, "GL_ARB_gl_spirv") { + "GL_SHADER_BINARY_FORMAT_SPIR_V_ARB"("0x9551") + "GL_SPIR_V_BINARY_ARB"("0x9552") + "glSpecializeShaderARB"( + void, + GLuint("shader"), + address("pEntryPoint", "const GLchar *"), + GLuint("numSpecializationConstants"), + address("pConstantIndex", "const GLuint *"), + address("pConstantValue", "const GLuint *") + ) + } + file("GpuShaderInt64", ARB, "GL_ARB_gpu_shader_int64") { + "GL_INT64_ARB"("0x140E") + "GL_INT64_VEC2_ARB"("0x8FE9") + "GL_INT64_VEC3_ARB"("0x8FEA") + "GL_INT64_VEC4_ARB"("0x8FEB") + "GL_UNSIGNED_INT64_VEC2_ARB"("0x8FF5") + "GL_UNSIGNED_INT64_VEC3_ARB"("0x8FF6") + "GL_UNSIGNED_INT64_VEC4_ARB"("0x8FF7") + "glUniform1i64ARB"(void, GLint("location"), GLint64("x")) + "glUniform2i64ARB"(void, GLint("location"), GLint64("x"), GLint64("y")) + "glUniform3i64ARB"(void, GLint("location"), GLint64("x"), GLint64("y"), GLint64("z")) + "glUniform4i64ARB"(void, GLint("location"), GLint64("x"), GLint64("y"), GLint64("z"), GLint64("w")) + "glUniform1i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) + "glUniform2i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) + "glUniform3i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) + "glUniform4i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) + "glUniform1ui64ARB"(void, GLint("location"), GLuint64("x")) + "glUniform2ui64ARB"(void, GLint("location"), GLuint64("x"), GLuint64("y")) + "glUniform3ui64ARB"(void, GLint("location"), GLuint64("x"), GLuint64("y"), GLuint64("z")) + "glUniform4ui64ARB"(void, GLint("location"), GLuint64("x"), GLuint64("y"), GLuint64("z"), GLuint64("w")) + "glUniform1ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) + "glUniform2ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) + "glUniform3ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) + "glUniform4ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) + "glGetUniformi64vARB"(void, GLuint("program"), GLint("location"), address("params", "GLint64 *")) + "glGetUniformui64vARB"(void, GLuint("program"), GLint("location"), address("params", "GLuint64 *")) + "glGetnUniformi64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("bufSize"), + address("params", "GLint64 *") + ) + "glGetnUniformui64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("bufSize"), + address("params", "GLuint64 *") + ) + "glProgramUniform1i64ARB"(void, GLuint("program"), GLint("location"), GLint64("x")) + "glProgramUniform2i64ARB"(void, GLuint("program"), GLint("location"), GLint64("x"), GLint64("y")) + "glProgramUniform3i64ARB"(void, GLuint("program"), GLint("location"), GLint64("x"), GLint64("y"), GLint64("z")) + "glProgramUniform4i64ARB"( + void, + GLuint("program"), + GLint("location"), + GLint64("x"), + GLint64("y"), + GLint64("z"), + GLint64("w") + ) + "glProgramUniform1i64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64 *") + ) + "glProgramUniform2i64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64 *") + ) + "glProgramUniform3i64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64 *") + ) + "glProgramUniform4i64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64 *") + ) + "glProgramUniform1ui64ARB"(void, GLuint("program"), GLint("location"), GLuint64("x")) + "glProgramUniform2ui64ARB"(void, GLuint("program"), GLint("location"), GLuint64("x"), GLuint64("y")) + "glProgramUniform3ui64ARB"( + void, + GLuint("program"), + GLint("location"), + GLuint64("x"), + GLuint64("y"), + GLuint64("z") + ) + "glProgramUniform4ui64ARB"( + void, + GLuint("program"), + GLint("location"), + GLuint64("x"), + GLuint64("y"), + GLuint64("z"), + GLuint64("w") + ) + "glProgramUniform1ui64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64 *") + ) + "glProgramUniform2ui64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64 *") + ) + "glProgramUniform3ui64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64 *") + ) + "glProgramUniform4ui64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64 *") + ) + } + file("HalfFloatPixel", ARB, "GL_ARB_half_float_pixel", "GL_HALF_FLOAT_ARB" to "0x140B") + file("Imaging", ARB, "GL_ARB_imaging") { + "GL_CONVOLUTION_BORDER_MODE"("0x8013") + "GL_CONVOLUTION_FILTER_SCALE"("0x8014") + "GL_CONVOLUTION_FILTER_BIAS"("0x8015") + "GL_REDUCE"("0x8016") + "GL_CONVOLUTION_FORMAT"("0x8017") + "GL_CONVOLUTION_WIDTH"("0x8018") + "GL_CONVOLUTION_HEIGHT"("0x8019") + "GL_MAX_CONVOLUTION_WIDTH"("0x801A") + "GL_MAX_CONVOLUTION_HEIGHT"("0x801B") + "GL_POST_CONVOLUTION_RED_SCALE"("0x801C") + "GL_POST_CONVOLUTION_GREEN_SCALE"("0x801D") + "GL_POST_CONVOLUTION_BLUE_SCALE"("0x801E") + "GL_POST_CONVOLUTION_ALPHA_SCALE"("0x801F") + "GL_POST_CONVOLUTION_RED_BIAS"("0x8020") + "GL_POST_CONVOLUTION_GREEN_BIAS"("0x8021") + "GL_POST_CONVOLUTION_BLUE_BIAS"("0x8022") + "GL_POST_CONVOLUTION_ALPHA_BIAS"("0x8023") + "GL_HISTOGRAM_WIDTH"("0x8026") + "GL_HISTOGRAM_FORMAT"("0x8027") + "GL_HISTOGRAM_RED_SIZE"("0x8028") + "GL_HISTOGRAM_GREEN_SIZE"("0x8029") + "GL_HISTOGRAM_BLUE_SIZE"("0x802A") + "GL_HISTOGRAM_ALPHA_SIZE"("0x802B") + "GL_HISTOGRAM_LUMINANCE_SIZE"("0x802C") + "GL_HISTOGRAM_SINK"("0x802D") + "GL_MINMAX_FORMAT"("0x802F") + "GL_MINMAX_SINK"("0x8030") + "GL_TABLE_TOO_LARGE"("0x8031") + "GL_COLOR_MATRIX"("0x80B1") + "GL_COLOR_MATRIX_STACK_DEPTH"("0x80B2") + "GL_MAX_COLOR_MATRIX_STACK_DEPTH"("0x80B3") + "GL_POST_COLOR_MATRIX_RED_SCALE"("0x80B4") + "GL_POST_COLOR_MATRIX_GREEN_SCALE"("0x80B5") + "GL_POST_COLOR_MATRIX_BLUE_SCALE"("0x80B6") + "GL_POST_COLOR_MATRIX_ALPHA_SCALE"("0x80B7") + "GL_POST_COLOR_MATRIX_RED_BIAS"("0x80B8") + "GL_POST_COLOR_MATRIX_GREEN_BIAS"("0x80B9") + "GL_POST_COLOR_MATRIX_BLUE_BIAS"("0x80BA") + "GL_POST_COLOR_MATRIX_ALPHA_BIAS"("0x80BB") + "GL_COLOR_TABLE_SCALE"("0x80D6") + "GL_COLOR_TABLE_BIAS"("0x80D7") + "GL_COLOR_TABLE_FORMAT"("0x80D8") + "GL_COLOR_TABLE_WIDTH"("0x80D9") + "GL_COLOR_TABLE_RED_SIZE"("0x80DA") + "GL_COLOR_TABLE_GREEN_SIZE"("0x80DB") + "GL_COLOR_TABLE_BLUE_SIZE"("0x80DC") + "GL_COLOR_TABLE_ALPHA_SIZE"("0x80DD") + "GL_COLOR_TABLE_LUMINANCE_SIZE"("0x80DE") + "GL_COLOR_TABLE_INTENSITY_SIZE"("0x80DF") + "GL_CONSTANT_BORDER"("0x8151") + "GL_REPLICATE_BORDER"("0x8153") + "GL_CONVOLUTION_BORDER_COLOR"("0x8154") + "glColorTable"( + void, + GLenum("target"), + GLenum("internalformat"), + GLsizei("width"), + GLenum("format"), + GLenum("type"), + address("table", "const void *") + ) + "glColorTableParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfloat *")) + "glColorTableParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) + "glCopyColorTable"(void, GLenum("target"), GLenum("internalformat"), GLint("x"), GLint("y"), GLsizei("width")) + "glGetColorTable"(void, GLenum("target"), GLenum("format"), GLenum("type"), address("table", "void *")) + "glGetColorTableParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + "glGetColorTableParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glColorSubTable"( + void, + GLenum("target"), + GLsizei("start"), + GLsizei("count"), + GLenum("format"), + GLenum("type"), + address("data", "const void *") + ) + "glCopyColorSubTable"(void, GLenum("target"), GLsizei("start"), GLint("x"), GLint("y"), GLsizei("width")) + "glConvolutionFilter1D"( + void, + GLenum("target"), + GLenum("internalformat"), + GLsizei("width"), + GLenum("format"), + GLenum("type"), + address("image", "const void *") + ) + "glConvolutionFilter2D"( + void, + GLenum("target"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLenum("format"), + GLenum("type"), + address("image", "const void *") + ) + "glConvolutionParameterf"(void, GLenum("target"), GLenum("pname"), GLfloat("params")) + "glConvolutionParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfloat *")) + "glConvolutionParameteri"(void, GLenum("target"), GLenum("pname"), GLint("params")) + "glConvolutionParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) + "glCopyConvolutionFilter1D"( + void, + GLenum("target"), + GLenum("internalformat"), + GLint("x"), + GLint("y"), + GLsizei("width") + ) + "glCopyConvolutionFilter2D"( + void, + GLenum("target"), + GLenum("internalformat"), + GLint("x"), + GLint("y"), + GLsizei("width"), + GLsizei("height") + ) + "glGetConvolutionFilter"(void, GLenum("target"), GLenum("format"), GLenum("type"), address("image", "void *")) + "glGetConvolutionParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + "glGetConvolutionParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetSeparableFilter"( + void, + GLenum("target"), + GLenum("format"), + GLenum("type"), + address("row", "void *"), + address("column", "void *"), + address("span", "void *") + ) + "glSeparableFilter2D"( + void, + GLenum("target"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLenum("format"), + GLenum("type"), + address("row", "const void *"), + address("column", "const void *") + ) + "glGetHistogram"( + void, + GLenum("target"), + GLboolean("reset"), + GLenum("format"), + GLenum("type"), + address("values", "void *") + ) + "glGetHistogramParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + "glGetHistogramParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetMinmax"( + void, + GLenum("target"), + GLboolean("reset"), + GLenum("format"), + GLenum("type"), + address("values", "void *") + ) + "glGetMinmaxParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + "glGetMinmaxParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glHistogram"(void, GLenum("target"), GLsizei("width"), GLenum("internalformat"), GLboolean("sink")) + "glMinmax"(void, GLenum("target"), GLenum("internalformat"), GLboolean("sink")) + "glResetHistogram"(void, GLenum("target")) + "glResetMinmax"(void, GLenum("target")) + } + file("IndirectParameters", ARB, "GL_ARB_indirect_parameters") { + "GL_PARAMETER_BUFFER_ARB"("0x80EE") + "GL_PARAMETER_BUFFER_BINDING_ARB"("0x80EF") + "glMultiDrawArraysIndirectCountARB"( + void, + GLenum("mode"), + address("indirect", "const void *"), + GLintptr("drawcount"), + GLsizei("maxdrawcount"), + GLsizei("stride") + ) + "glMultiDrawElementsIndirectCountARB"( + void, + GLenum("mode"), + GLenum("type"), + address("indirect", "const void *"), + GLintptr("drawcount"), + GLsizei("maxdrawcount"), + GLsizei("stride") + ) + } + file("InstancedArrays", ARB, "GL_ARB_instanced_arrays") { + "GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB"("0x88FE") + "glVertexAttribDivisorARB"(void, GLuint("index"), GLuint("divisor")) + } + file( + "InternalformatQuery2", ARB, "GL_ARB_internalformat_query2", + "GL_SRGB_DECODE_ARB" to "0x8299", + "GL_VIEW_CLASS_EAC_R11" to "0x9383", + "GL_VIEW_CLASS_EAC_RG11" to "0x9384", + "GL_VIEW_CLASS_ETC2_RGB" to "0x9385", + "GL_VIEW_CLASS_ETC2_RGBA" to "0x9386", + "GL_VIEW_CLASS_ETC2_EAC_RGBA" to "0x9387", + "GL_VIEW_CLASS_ASTC_4x4_RGBA" to "0x9388", + "GL_VIEW_CLASS_ASTC_5x4_RGBA" to "0x9389", + "GL_VIEW_CLASS_ASTC_5x5_RGBA" to "0x938A", + "GL_VIEW_CLASS_ASTC_6x5_RGBA" to "0x938B", + "GL_VIEW_CLASS_ASTC_6x6_RGBA" to "0x938C", + "GL_VIEW_CLASS_ASTC_8x5_RGBA" to "0x938D", + "GL_VIEW_CLASS_ASTC_8x6_RGBA" to "0x938E", + "GL_VIEW_CLASS_ASTC_8x8_RGBA" to "0x938F", + "GL_VIEW_CLASS_ASTC_10x5_RGBA" to "0x9390", + "GL_VIEW_CLASS_ASTC_10x6_RGBA" to "0x9391", + "GL_VIEW_CLASS_ASTC_10x8_RGBA" to "0x9392", + "GL_VIEW_CLASS_ASTC_10x10_RGBA" to "0x9393", + "GL_VIEW_CLASS_ASTC_12x10_RGBA" to "0x9394", + "GL_VIEW_CLASS_ASTC_12x12_RGBA" to "0x9395" + ) + file("MatrixPalette", ARB, "GL_ARB_matrix_palette") { + "GL_MATRIX_PALETTE_ARB"("0x8840") + "GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB"("0x8841") + "GL_MAX_PALETTE_MATRICES_ARB"("0x8842") + "GL_CURRENT_PALETTE_MATRIX_ARB"("0x8843") + "GL_MATRIX_INDEX_ARRAY_ARB"("0x8844") + "GL_CURRENT_MATRIX_INDEX_ARB"("0x8845") + "GL_MATRIX_INDEX_ARRAY_SIZE_ARB"("0x8846") + "GL_MATRIX_INDEX_ARRAY_TYPE_ARB"("0x8847") + "GL_MATRIX_INDEX_ARRAY_STRIDE_ARB"("0x8848") + "GL_MATRIX_INDEX_ARRAY_POINTER_ARB"("0x8849") + "glCurrentPaletteMatrixARB"(void, GLint("index")) + "glMatrixIndexubvARB"(void, GLint("size"), address("indices", "const GLubyte *")) + "glMatrixIndexusvARB"(void, GLint("size"), address("indices", "const GLushort *")) + "glMatrixIndexuivARB"(void, GLint("size"), address("indices", "const GLuint *")) + "glMatrixIndexPointerARB"( + void, + GLint("size"), + GLenum("type"), + GLsizei("stride"), + address("pointer", "const void *") + ) + } + file("Multisample", ARB, "GL_ARB_multisample") { + "GL_MULTISAMPLE_ARB"("0x809D") + "GL_SAMPLE_ALPHA_TO_COVERAGE_ARB"("0x809E") + "GL_SAMPLE_ALPHA_TO_ONE_ARB"("0x809F") + "GL_SAMPLE_COVERAGE_ARB"("0x80A0") + "GL_SAMPLE_BUFFERS_ARB"("0x80A8") + "GL_SAMPLES_ARB"("0x80A9") + "GL_SAMPLE_COVERAGE_VALUE_ARB"("0x80AA") + "GL_SAMPLE_COVERAGE_INVERT_ARB"("0x80AB") + "GL_MULTISAMPLE_BIT_ARB"("0x20000000") + "glSampleCoverageARB"(void, GLfloat("value"), GLboolean("invert")) + } + file("Multitexture", ARB, "GL_ARB_multitexture") { + "GL_TEXTURE0_ARB"("0x84C0") + "GL_TEXTURE1_ARB"("0x84C1") + "GL_TEXTURE2_ARB"("0x84C2") + "GL_TEXTURE3_ARB"("0x84C3") + "GL_TEXTURE4_ARB"("0x84C4") + "GL_TEXTURE5_ARB"("0x84C5") + "GL_TEXTURE6_ARB"("0x84C6") + "GL_TEXTURE7_ARB"("0x84C7") + "GL_TEXTURE8_ARB"("0x84C8") + "GL_TEXTURE9_ARB"("0x84C9") + "GL_TEXTURE10_ARB"("0x84CA") + "GL_TEXTURE11_ARB"("0x84CB") + "GL_TEXTURE12_ARB"("0x84CC") + "GL_TEXTURE13_ARB"("0x84CD") + "GL_TEXTURE14_ARB"("0x84CE") + "GL_TEXTURE15_ARB"("0x84CF") + "GL_TEXTURE16_ARB"("0x84D0") + "GL_TEXTURE17_ARB"("0x84D1") + "GL_TEXTURE18_ARB"("0x84D2") + "GL_TEXTURE19_ARB"("0x84D3") + "GL_TEXTURE20_ARB"("0x84D4") + "GL_TEXTURE21_ARB"("0x84D5") + "GL_TEXTURE22_ARB"("0x84D6") + "GL_TEXTURE23_ARB"("0x84D7") + "GL_TEXTURE24_ARB"("0x84D8") + "GL_TEXTURE25_ARB"("0x84D9") + "GL_TEXTURE26_ARB"("0x84DA") + "GL_TEXTURE27_ARB"("0x84DB") + "GL_TEXTURE28_ARB"("0x84DC") + "GL_TEXTURE29_ARB"("0x84DD") + "GL_TEXTURE30_ARB"("0x84DE") + "GL_TEXTURE31_ARB"("0x84DF") + "GL_ACTIVE_TEXTURE_ARB"("0x84E0") + "GL_CLIENT_ACTIVE_TEXTURE_ARB"("0x84E1") + "GL_MAX_TEXTURE_UNITS_ARB"("0x84E2") + "glActiveTextureARB"(void, GLenum("texture")) + "glClientActiveTextureARB"(void, GLenum("texture")) + "glMultiTexCoord1dARB"(void, GLenum("target"), GLdouble("s")) + "glMultiTexCoord1dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) + "glMultiTexCoord1fARB"(void, GLenum("target"), GLfloat("s")) + "glMultiTexCoord1fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) + "glMultiTexCoord1iARB"(void, GLenum("target"), GLint("s")) + "glMultiTexCoord1ivARB"(void, GLenum("target"), address("v", "const GLint *")) + "glMultiTexCoord1sARB"(void, GLenum("target"), GLshort("s")) + "glMultiTexCoord1svARB"(void, GLenum("target"), address("v", "const GLshort *")) + "glMultiTexCoord2dARB"(void, GLenum("target"), GLdouble("s"), GLdouble("t")) + "glMultiTexCoord2dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) + "glMultiTexCoord2fARB"(void, GLenum("target"), GLfloat("s"), GLfloat("t")) + "glMultiTexCoord2fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) + "glMultiTexCoord2iARB"(void, GLenum("target"), GLint("s"), GLint("t")) + "glMultiTexCoord2ivARB"(void, GLenum("target"), address("v", "const GLint *")) + "glMultiTexCoord2sARB"(void, GLenum("target"), GLshort("s"), GLshort("t")) + "glMultiTexCoord2svARB"(void, GLenum("target"), address("v", "const GLshort *")) + "glMultiTexCoord3dARB"(void, GLenum("target"), GLdouble("s"), GLdouble("t"), GLdouble("r")) + "glMultiTexCoord3dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) + "glMultiTexCoord3fARB"(void, GLenum("target"), GLfloat("s"), GLfloat("t"), GLfloat("r")) + "glMultiTexCoord3fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) + "glMultiTexCoord3iARB"(void, GLenum("target"), GLint("s"), GLint("t"), GLint("r")) + "glMultiTexCoord3ivARB"(void, GLenum("target"), address("v", "const GLint *")) + "glMultiTexCoord3sARB"(void, GLenum("target"), GLshort("s"), GLshort("t"), GLshort("r")) + "glMultiTexCoord3svARB"(void, GLenum("target"), address("v", "const GLshort *")) + "glMultiTexCoord4dARB"(void, GLenum("target"), GLdouble("s"), GLdouble("t"), GLdouble("r"), GLdouble("q")) + "glMultiTexCoord4dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) + "glMultiTexCoord4fARB"(void, GLenum("target"), GLfloat("s"), GLfloat("t"), GLfloat("r"), GLfloat("q")) + "glMultiTexCoord4fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) + "glMultiTexCoord4iARB"(void, GLenum("target"), GLint("s"), GLint("t"), GLint("r"), GLint("q")) + "glMultiTexCoord4ivARB"(void, GLenum("target"), address("v", "const GLint *")) + "glMultiTexCoord4sARB"(void, GLenum("target"), GLshort("s"), GLshort("t"), GLshort("r"), GLshort("q")) + "glMultiTexCoord4svARB"(void, GLenum("target"), address("v", "const GLshort *")) + } + file("OcclusionQuery", ARB, "GL_ARB_occlusion_query") { + "GL_QUERY_COUNTER_BITS_ARB"("0x8864") + "GL_CURRENT_QUERY_ARB"("0x8865") + "GL_QUERY_RESULT_ARB"("0x8866") + "GL_QUERY_RESULT_AVAILABLE_ARB"("0x8867") + "GL_SAMPLES_PASSED_ARB"("0x8914") + "glGenQueriesARB"(void, GLsizei("n"), address("ids", "GLuint *")) + "glDeleteQueriesARB"(void, GLsizei("n"), address("ids", "const GLuint *")) + "glIsQueryARB"(GLboolean, GLuint("id")) + "glBeginQueryARB"(void, GLenum("target"), GLuint("id")) + "glEndQueryARB"(void, GLenum("target")) + "glGetQueryivARB"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetQueryObjectivARB"(void, GLuint("id"), GLenum("pname"), address("params", "GLint *")) + "glGetQueryObjectuivARB"(void, GLuint("id"), GLenum("pname"), address("params", "GLuint *")) + } + file("ParallelShaderCompile", ARB, "GL_ARB_parallel_shader_compile") { + "GL_MAX_SHADER_COMPILER_THREADS_ARB"("0x91B0") + "GL_COMPLETION_STATUS_ARB"("0x91B1") + "glMaxShaderCompilerThreadsARB"(void, GLuint("count")) + } + file( + "PipelineStatisticsQuery", ARB, "GL_ARB_pipeline_statistics_query", + "GL_VERTICES_SUBMITTED_ARB" to "0x82EE", + "GL_PRIMITIVES_SUBMITTED_ARB" to "0x82EF", + "GL_VERTEX_SHADER_INVOCATIONS_ARB" to "0x82F0", + "GL_TESS_CONTROL_SHADER_PATCHES_ARB" to "0x82F1", + "GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB" to "0x82F2", + "GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED_ARB" to "0x82F3", + "GL_FRAGMENT_SHADER_INVOCATIONS_ARB" to "0x82F4", + "GL_COMPUTE_SHADER_INVOCATIONS_ARB" to "0x82F5", + "GL_CLIPPING_INPUT_PRIMITIVES_ARB" to "0x82F6", + "GL_CLIPPING_OUTPUT_PRIMITIVES_ARB" to "0x82F7" + ) + file( + "PixelBufferObject", ARB, "GL_ARB_pixel_buffer_object", + "GL_PIXEL_PACK_BUFFER_ARB" to "0x88EB", + "GL_PIXEL_UNPACK_BUFFER_ARB" to "0x88EC", + "GL_PIXEL_PACK_BUFFER_BINDING_ARB" to "0x88ED", + "GL_PIXEL_UNPACK_BUFFER_BINDING_ARB" to "0x88EF" + ) + file("PointParameters", ARB, "GL_ARB_point_parameters") { + "GL_POINT_SIZE_MIN_ARB"("0x8126") + "GL_POINT_SIZE_MAX_ARB"("0x8127") + "GL_POINT_FADE_THRESHOLD_SIZE_ARB"("0x8128") + "GL_POINT_DISTANCE_ATTENUATION_ARB"("0x8129") + "glPointParameterfARB"(void, GLenum("pname"), GLfloat("param")) + "glPointParameterfvARB"(void, GLenum("pname"), address("params", "const GLfloat *")) + } + file( + "PointSprite", ARB, "GL_ARB_point_sprite", + "GL_POINT_SPRITE_ARB" to "0x8861", + "GL_COORD_REPLACE_ARB" to "0x8862" + ) file("Robustness", ARB, "GL_ARB_robustness") { "GL_NO_RESET_NOTIFICATION_ARB"("0x8261") "GL_RESET_NOTIFICATION_STRATEGY_ARB"("0x8256") @@ -1319,7 +2216,7 @@ fun amd() { "GL_FACTOR_MIN_AMD" to "0x901C", "GL_FACTOR_MAX_AMD" to "0x901D" ) - file("DebugOutput",AMD,"GL_AMD_debug_output") { + file("DebugOutput", AMD, "GL_AMD_debug_output") { "GL_MAX_DEBUG_MESSAGE_LENGTH_AMD"("0x9143") "GL_MAX_DEBUG_LOGGED_MESSAGES_AMD"("0x9144") "GL_DEBUG_LOGGED_MESSAGES_AMD"("0x9145") diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java index 3a66e746..005f422c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java @@ -62,52 +62,85 @@ public GLExtCaps(GLCapabilities caps) { /** Method handles. */ public MethodHandle - glGetGraphicsResetStatusARB, glGetnCompressedTexImageARB, glGetnTexImageARB, glGetnUniformdvARB, glGetnUniformfvARB, glGetnUniformivARB, glGetnUniformuivARB, glReadnPixelsARB, glEvaluateDepthValuesARB, glFramebufferSampleLocationsfvARB, glNamedFramebufferSampleLocationsfvARB, glMinSampleShadingARB, glDeleteObjectARB, glGetHandleARB, glDetachObjectARB, glCreateShaderObjectARB, - glShaderSourceARB, glCompileShaderARB, glCreateProgramObjectARB, glAttachObjectARB, glLinkProgramARB, glUseProgramObjectARB, glValidateProgramARB, glUniform1fARB, glUniform2fARB, glUniform3fARB, glUniform4fARB, glUniform1iARB, glUniform2iARB, glUniform3iARB, glUniform4iARB, glUniform1fvARB, - glUniform2fvARB, glUniform3fvARB, glUniform4fvARB, glUniform1ivARB, glUniform2ivARB, glUniform3ivARB, glUniform4ivARB, glUniformMatrix2fvARB, glUniformMatrix3fvARB, glUniformMatrix4fvARB, glGetObjectParameterfvARB, glGetObjectParameterivARB, glGetInfoLogARB, glGetAttachedObjectsARB, glGetUniformLocationARB, glGetActiveUniformARB, - glGetUniformfvARB, glGetUniformivARB, glGetShaderSourceARB, glNamedStringARB, glDeleteNamedStringARB, glCompileShaderIncludeARB, glIsNamedStringARB, glGetNamedStringARB, glGetNamedStringivARB, glBufferPageCommitmentARB, glNamedBufferPageCommitmentEXT, glNamedBufferPageCommitmentARB, glTexPageCommitmentARB, glTexBufferARB, glCompressedTexImage3DARB, glCompressedTexImage2DARB, - glCompressedTexImage1DARB, glCompressedTexSubImage3DARB, glCompressedTexSubImage2DARB, glCompressedTexSubImage1DARB, glGetCompressedTexImageARB, glLoadTransposeMatrixfARB, glLoadTransposeMatrixdARB, glMultTransposeMatrixfARB, glMultTransposeMatrixdARB, glWeightbvARB, glWeightsvARB, glWeightivARB, glWeightfvARB, glWeightdvARB, glWeightubvARB, glWeightusvARB, - glWeightuivARB, glWeightPointerARB, glVertexBlendARB, glBindBufferARB, glDeleteBuffersARB, glGenBuffersARB, glIsBufferARB, glBufferDataARB, glBufferSubDataARB, glGetBufferSubDataARB, glMapBufferARB, glUnmapBufferARB, glGetBufferParameterivARB, glGetBufferPointervARB, glVertexAttrib1dARB, glVertexAttrib1dvARB, - glVertexAttrib1fARB, glVertexAttrib1fvARB, glVertexAttrib1sARB, glVertexAttrib1svARB, glVertexAttrib2dARB, glVertexAttrib2dvARB, glVertexAttrib2fARB, glVertexAttrib2fvARB, glVertexAttrib2sARB, glVertexAttrib2svARB, glVertexAttrib3dARB, glVertexAttrib3dvARB, glVertexAttrib3fARB, glVertexAttrib3fvARB, glVertexAttrib3sARB, glVertexAttrib3svARB, - glVertexAttrib4NbvARB, glVertexAttrib4NivARB, glVertexAttrib4NsvARB, glVertexAttrib4NubARB, glVertexAttrib4NubvARB, glVertexAttrib4NuivARB, glVertexAttrib4NusvARB, glVertexAttrib4bvARB, glVertexAttrib4dARB, glVertexAttrib4dvARB, glVertexAttrib4fARB, glVertexAttrib4fvARB, glVertexAttrib4ivARB, glVertexAttrib4sARB, glVertexAttrib4svARB, glVertexAttrib4ubvARB, - glVertexAttrib4uivARB, glVertexAttrib4usvARB, glVertexAttribPointerARB, glEnableVertexAttribArrayARB, glDisableVertexAttribArrayARB, glGetVertexAttribdvARB, glGetVertexAttribfvARB, glGetVertexAttribivARB, glGetVertexAttribPointervARB, glBindAttribLocationARB, glGetActiveAttribARB, glGetAttribLocationARB, glDepthRangeArraydvNV, glDepthRangeIndexeddNV, glWindowPos2dARB, glWindowPos2dvARB, - glWindowPos2fARB, glWindowPos2fvARB, glWindowPos2iARB, glWindowPos2ivARB, glWindowPos2sARB, glWindowPos2svARB, glWindowPos3dARB, glWindowPos3dvARB, glWindowPos3fARB, glWindowPos3fvARB, glWindowPos3iARB, glWindowPos3ivARB, glWindowPos3sARB, glWindowPos3svARB, glBlendBarrierKHR, glMaxShaderCompilerThreadsKHR, - glMultiTexCoord1bOES, glMultiTexCoord1bvOES, glMultiTexCoord2bOES, glMultiTexCoord2bvOES, glMultiTexCoord3bOES, glMultiTexCoord3bvOES, glMultiTexCoord4bOES, glMultiTexCoord4bvOES, glTexCoord1bOES, glTexCoord1bvOES, glTexCoord2bOES, glTexCoord2bvOES, glTexCoord3bOES, glTexCoord3bvOES, glTexCoord4bOES, glTexCoord4bvOES, - glVertex2bOES, glVertex2bvOES, glVertex3bOES, glVertex3bvOES, glVertex4bOES, glVertex4bvOES, glAlphaFuncxOES, glClearColorxOES, glClearDepthxOES, glClipPlanexOES, glColor4xOES, glDepthRangexOES, glFogxOES, glFogxvOES, glFrustumxOES, glGetClipPlanexOES, - glGetFixedvOES, glGetTexEnvxvOES, glGetTexParameterxvOES, glLightModelxOES, glLightModelxvOES, glLightxOES, glLightxvOES, glLineWidthxOES, glLoadMatrixxOES, glMaterialxOES, glMaterialxvOES, glMultMatrixxOES, glMultiTexCoord4xOES, glNormal3xOES, glOrthoxOES, glPointParameterxvOES, - glPointSizexOES, glPolygonOffsetxOES, glRotatexOES, glScalexOES, glTexEnvxOES, glTexEnvxvOES, glTexParameterxOES, glTexParameterxvOES, glTranslatexOES, glAccumxOES, glBitmapxOES, glBlendColorxOES, glClearAccumxOES, glColor3xOES, glColor3xvOES, glColor4xvOES, - glConvolutionParameterxOES, glConvolutionParameterxvOES, glEvalCoord1xOES, glEvalCoord1xvOES, glEvalCoord2xOES, glEvalCoord2xvOES, glFeedbackBufferxOES, glGetConvolutionParameterxvOES, glGetHistogramParameterxvOES, glGetLightxOES, glGetMapxvOES, glGetMaterialxOES, glGetPixelMapxv, glGetTexGenxvOES, glGetTexLevelParameterxvOES, glIndexxOES, - glIndexxvOES, glLoadTransposeMatrixxOES, glMap1xOES, glMap2xOES, glMapGrid1xOES, glMapGrid2xOES, glMultTransposeMatrixxOES, glMultiTexCoord1xOES, glMultiTexCoord1xvOES, glMultiTexCoord2xOES, glMultiTexCoord2xvOES, glMultiTexCoord3xOES, glMultiTexCoord3xvOES, glMultiTexCoord4xvOES, glNormal3xvOES, glPassThroughxOES, - glPixelMapx, glPixelStorex, glPixelTransferxOES, glPixelZoomxOES, glPrioritizeTexturesxOES, glRasterPos2xOES, glRasterPos2xvOES, glRasterPos3xOES, glRasterPos3xvOES, glRasterPos4xOES, glRasterPos4xvOES, glRectxOES, glRectxvOES, glTexCoord1xOES, glTexCoord1xvOES, glTexCoord2xOES, - glTexCoord2xvOES, glTexCoord3xOES, glTexCoord3xvOES, glTexCoord4xOES, glTexCoord4xvOES, glTexGenxOES, glTexGenxvOES, glVertex2xOES, glVertex2xvOES, glVertex3xOES, glVertex3xvOES, glVertex4xOES, glVertex4xvOES, glQueryMatrixxOES, glClearDepthfOES, glClipPlanefOES, - glDepthRangefOES, glFrustumfOES, glGetClipPlanefOES, glOrthofOES, glTbufferMask3DFX, glDebugMessageEnableAMD, glDebugMessageInsertAMD, glDebugMessageCallbackAMD, glGetDebugMessageLogAMD, glBlendFuncIndexedAMD, glBlendFuncSeparateIndexedAMD, glBlendEquationIndexedAMD, glBlendEquationSeparateIndexedAMD, glRenderbufferStorageMultisampleAdvancedAMD, glNamedRenderbufferStorageMultisampleAdvancedAMD, glFramebufferSamplePositionsfvAMD, - glNamedFramebufferSamplePositionsfvAMD, glGetFramebufferParameterfvAMD, glGetNamedFramebufferParameterfvAMD, glUniform1i64NV, glUniform2i64NV, glUniform3i64NV, glUniform4i64NV, glUniform1i64vNV, glUniform2i64vNV, glUniform3i64vNV, glUniform4i64vNV, glUniform1ui64NV, glUniform2ui64NV, glUniform3ui64NV, glUniform4ui64NV, glUniform1ui64vNV, - glUniform2ui64vNV, glUniform3ui64vNV, glUniform4ui64vNV, glGetUniformi64vNV, glGetUniformui64vNV, glProgramUniform1i64NV, glProgramUniform2i64NV, glProgramUniform3i64NV, glProgramUniform4i64NV, glProgramUniform1i64vNV, glProgramUniform2i64vNV, glProgramUniform3i64vNV, glProgramUniform4i64vNV, glProgramUniform1ui64NV, glProgramUniform2ui64NV, glProgramUniform3ui64NV, - glProgramUniform4ui64NV, glProgramUniform1ui64vNV, glProgramUniform2ui64vNV, glProgramUniform3ui64vNV, glProgramUniform4ui64vNV, glVertexAttribParameteriAMD, glMultiDrawArraysIndirectAMD, glMultiDrawElementsIndirectAMD, glGenNamesAMD, glDeleteNamesAMD, glIsNameAMD, glQueryObjectParameteruiAMD, glGetPerfMonitorGroupsAMD, glGetPerfMonitorCountersAMD, glGetPerfMonitorGroupStringAMD, glGetPerfMonitorCounterStringAMD, - glGetPerfMonitorCounterInfoAMD, glGenPerfMonitorsAMD, glDeletePerfMonitorsAMD, glSelectPerfMonitorCountersAMD, glBeginPerfMonitorAMD, glEndPerfMonitorAMD, glGetPerfMonitorCounterDataAMD, glSetMultisamplefvAMD, glTexStorageSparseAMD, glTextureStorageSparseAMD, glStencilOpValueAMD, glTessellationFactorAMD, glTessellationModeAMD, glElementPointerAPPLE, glDrawElementArrayAPPLE, glDrawRangeElementArrayAPPLE, - glMultiDrawElementArrayAPPLE, glMultiDrawRangeElementArrayAPPLE, glGenFencesAPPLE, glDeleteFencesAPPLE, glSetFenceAPPLE, glIsFenceAPPLE, glTestFenceAPPLE, glFinishFenceAPPLE, glTestObjectAPPLE, glFinishObjectAPPLE, glBufferParameteriAPPLE, glFlushMappedBufferRangeAPPLE, glObjectPurgeableAPPLE, glObjectUnpurgeableAPPLE, glGetObjectParameterivAPPLE, glTextureRangeAPPLE, - glGetTexParameterPointervAPPLE, glBindVertexArrayAPPLE, glDeleteVertexArraysAPPLE, glGenVertexArraysAPPLE, glIsVertexArrayAPPLE, glVertexArrayRangeAPPLE, glFlushVertexArrayRangeAPPLE, glVertexArrayParameteriAPPLE, glEnableVertexAttribAPPLE, glDisableVertexAttribAPPLE, glIsVertexAttribEnabledAPPLE, glMapVertexAttrib1dAPPLE, glMapVertexAttrib1fAPPLE, glMapVertexAttrib2dAPPLE, glMapVertexAttrib2fAPPLE, glDrawBuffersATI, - glElementPointerATI, glDrawElementArrayATI, glDrawRangeElementArrayATI, glTexBumpParameterivATI, glTexBumpParameterfvATI, glGetTexBumpParameterivATI, glGetTexBumpParameterfvATI, glGenFragmentShadersATI, glBindFragmentShaderATI, glDeleteFragmentShaderATI, glBeginFragmentShaderATI, glEndFragmentShaderATI, glPassTexCoordATI, glSampleMapATI, glColorFragmentOp1ATI, glColorFragmentOp2ATI, - glColorFragmentOp3ATI, glAlphaFragmentOp1ATI, glAlphaFragmentOp2ATI, glAlphaFragmentOp3ATI, glSetFragmentShaderConstantATI, glMapObjectBufferATI, glUnmapObjectBufferATI, glPNTrianglesiATI, glPNTrianglesfATI, glStencilOpSeparateATI, glStencilFuncSeparateATI, glNewObjectBufferATI, glIsObjectBufferATI, glUpdateObjectBufferATI, glGetObjectBufferfvATI, glGetObjectBufferivATI, - glFreeObjectBufferATI, glArrayObjectATI, glGetArrayObjectfvATI, glGetArrayObjectivATI, glVariantArrayObjectATI, glGetVariantArrayObjectfvATI, glGetVariantArrayObjectivATI, glVertexAttribArrayObjectATI, glGetVertexAttribArrayObjectfvATI, glGetVertexAttribArrayObjectivATI, glVertexStream1sATI, glVertexStream1svATI, glVertexStream1iATI, glVertexStream1ivATI, glVertexStream1fATI, glVertexStream1fvATI, - glVertexStream1dATI, glVertexStream1dvATI, glVertexStream2sATI, glVertexStream2svATI, glVertexStream2iATI, glVertexStream2ivATI, glVertexStream2fATI, glVertexStream2fvATI, glVertexStream2dATI, glVertexStream2dvATI, glVertexStream3sATI, glVertexStream3svATI, glVertexStream3iATI, glVertexStream3ivATI, glVertexStream3fATI, glVertexStream3fvATI, - glVertexStream3dATI, glVertexStream3dvATI, glVertexStream4sATI, glVertexStream4svATI, glVertexStream4iATI, glVertexStream4ivATI, glVertexStream4fATI, glVertexStream4fvATI, glVertexStream4dATI, glVertexStream4dvATI, glNormalStream3bATI, glNormalStream3bvATI, glNormalStream3sATI, glNormalStream3svATI, glNormalStream3iATI, glNormalStream3ivATI, - glNormalStream3fATI, glNormalStream3fvATI, glNormalStream3dATI, glNormalStream3dvATI, glClientActiveVertexStreamATI, glVertexBlendEnviATI, glVertexBlendEnvfATI, glFrameTerminatorGREMEDY, glStringMarkerGREMEDY, glImageTransformParameteriHP, glImageTransformParameterfHP, glImageTransformParameterivHP, glImageTransformParameterfvHP, glGetImageTransformParameterivHP, glGetImageTransformParameterfvHP, glMultiModeDrawArraysIBM, - glMultiModeDrawElementsIBM, glFlushStaticDataIBM, glColorPointerListIBM, glSecondaryColorPointerListIBM, glEdgeFlagPointerListIBM, glFogCoordPointerListIBM, glIndexPointerListIBM, glNormalPointerListIBM, glTexCoordPointerListIBM, glVertexPointerListIBM, glBlendFuncSeparateINGR, glApplyFramebufferAttachmentCMAAINTEL, glSyncTextureINTEL, glUnmapTexture2DINTEL, glMapTexture2DINTEL, glVertexPointervINTEL, - glNormalPointervINTEL, glColorPointervINTEL, glTexCoordPointervINTEL, glBeginPerfQueryINTEL, glCreatePerfQueryINTEL, glDeletePerfQueryINTEL, glEndPerfQueryINTEL, glGetFirstPerfQueryIdINTEL, glGetNextPerfQueryIdINTEL, glGetPerfCounterInfoINTEL, glGetPerfQueryDataINTEL, glGetPerfQueryIdByNameINTEL, glGetPerfQueryInfoINTEL, glFramebufferParameteriMESA, glGetFramebufferParameterivMESA, glResizeBuffersMESA, - glWindowPos2dMESA, glWindowPos2dvMESA, glWindowPos2fMESA, glWindowPos2fvMESA, glWindowPos2iMESA, glWindowPos2ivMESA, glWindowPos2sMESA, glWindowPos2svMESA, glWindowPos3dMESA, glWindowPos3dvMESA, glWindowPos3fMESA, glWindowPos3fvMESA, glWindowPos3iMESA, glWindowPos3ivMESA, glWindowPos3sMESA, glWindowPos3svMESA, - glWindowPos4dMESA, glWindowPos4dvMESA, glWindowPos4fMESA, glWindowPos4fvMESA, glWindowPos4iMESA, glWindowPos4ivMESA, glWindowPos4sMESA, glWindowPos4svMESA, glBeginConditionalRenderNVX, glEndConditionalRenderNVX, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, glFogFuncSGIS, glGetFogFuncSGIS, - glSampleMaskSGIS, glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, glTexSubImage4DSGIS, glTextureColorMaskSGIS, glGetTexFilterFuncSGIS, - glTexFilterFuncSGIS, glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, glFlushRasterSGIX, glFragmentColorMaterialSGIX, glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, glFragmentLightModelfSGIX, glFragmentLightModelfvSGIX, glFragmentLightModeliSGIX, - glFragmentLightModelivSGIX, glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, glInstrumentsBufferSGIX, glPollInstrumentsSGIX, glReadInstrumentsSGIX, - glStartInstrumentsSGIX, glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, glListParameterivSGIX, glPixelTexGenSGIX, glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, glReferencePlaneSGIX, glSpriteParameterfSGIX, glSpriteParameterfvSGIX, - glSpriteParameteriSGIX, glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, glGetColorTableSGI, glGetColorTableParameterfvSGI, glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, - glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, - glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, - glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, - glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; + glPrimitiveBoundingBoxARB, glGetTextureHandleARB, glGetTextureSamplerHandleARB, glMakeTextureHandleResidentARB, glMakeTextureHandleNonResidentARB, glGetImageHandleARB, glMakeImageHandleResidentARB, glMakeImageHandleNonResidentARB, glUniformHandleui64ARB, glUniformHandleui64vARB, glProgramUniformHandleui64ARB, glProgramUniformHandleui64vARB, glIsTextureHandleResidentARB, glIsImageHandleResidentARB, glVertexAttribL1ui64ARB, glVertexAttribL1ui64vARB, + glGetVertexAttribLui64vARB, glCreateSyncFromCLeventARB, glClampColorARB, glDispatchComputeGroupSizeARB, glDebugMessageControlARB, glDebugMessageInsertARB, glDebugMessageCallbackARB, glGetDebugMessageLogARB, glDrawBuffersARB, glBlendEquationiARB, glBlendEquationSeparateiARB, glBlendFunciARB, glBlendFuncSeparateiARB, glDrawArraysInstancedARB, glDrawElementsInstancedARB, glProgramStringARB, + glBindProgramARB, glDeleteProgramsARB, glGenProgramsARB, glProgramEnvParameter4dARB, glProgramEnvParameter4dvARB, glProgramEnvParameter4fARB, glProgramEnvParameter4fvARB, glProgramLocalParameter4dARB, glProgramLocalParameter4dvARB, glProgramLocalParameter4fARB, glProgramLocalParameter4fvARB, glGetProgramEnvParameterdvARB, glGetProgramEnvParameterfvARB, glGetProgramLocalParameterdvARB, glGetProgramLocalParameterfvARB, glGetProgramivARB, + glGetProgramStringARB, glIsProgramARB, glProgramParameteriARB, glFramebufferTextureARB, glFramebufferTextureLayerARB, glFramebufferTextureFaceARB, glSpecializeShaderARB, glUniform1i64ARB, glUniform2i64ARB, glUniform3i64ARB, glUniform4i64ARB, glUniform1i64vARB, glUniform2i64vARB, glUniform3i64vARB, glUniform4i64vARB, glUniform1ui64ARB, + glUniform2ui64ARB, glUniform3ui64ARB, glUniform4ui64ARB, glUniform1ui64vARB, glUniform2ui64vARB, glUniform3ui64vARB, glUniform4ui64vARB, glGetUniformi64vARB, glGetUniformui64vARB, glGetnUniformi64vARB, glGetnUniformui64vARB, glProgramUniform1i64ARB, glProgramUniform2i64ARB, glProgramUniform3i64ARB, glProgramUniform4i64ARB, glProgramUniform1i64vARB, + glProgramUniform2i64vARB, glProgramUniform3i64vARB, glProgramUniform4i64vARB, glProgramUniform1ui64ARB, glProgramUniform2ui64ARB, glProgramUniform3ui64ARB, glProgramUniform4ui64ARB, glProgramUniform1ui64vARB, glProgramUniform2ui64vARB, glProgramUniform3ui64vARB, glProgramUniform4ui64vARB, glColorTable, glColorTableParameterfv, glColorTableParameteriv, glCopyColorTable, glGetColorTable, + glGetColorTableParameterfv, glGetColorTableParameteriv, glColorSubTable, glCopyColorSubTable, glConvolutionFilter1D, glConvolutionFilter2D, glConvolutionParameterf, glConvolutionParameterfv, glConvolutionParameteri, glConvolutionParameteriv, glCopyConvolutionFilter1D, glCopyConvolutionFilter2D, glGetConvolutionFilter, glGetConvolutionParameterfv, glGetConvolutionParameteriv, glGetSeparableFilter, + glSeparableFilter2D, glGetHistogram, glGetHistogramParameterfv, glGetHistogramParameteriv, glGetMinmax, glGetMinmaxParameterfv, glGetMinmaxParameteriv, glHistogram, glMinmax, glResetHistogram, glResetMinmax, glMultiDrawArraysIndirectCountARB, glMultiDrawElementsIndirectCountARB, glVertexAttribDivisorARB, glCurrentPaletteMatrixARB, glMatrixIndexubvARB, + glMatrixIndexusvARB, glMatrixIndexuivARB, glMatrixIndexPointerARB, glSampleCoverageARB, glActiveTextureARB, glClientActiveTextureARB, glMultiTexCoord1dARB, glMultiTexCoord1dvARB, glMultiTexCoord1fARB, glMultiTexCoord1fvARB, glMultiTexCoord1iARB, glMultiTexCoord1ivARB, glMultiTexCoord1sARB, glMultiTexCoord1svARB, glMultiTexCoord2dARB, glMultiTexCoord2dvARB, + glMultiTexCoord2fARB, glMultiTexCoord2fvARB, glMultiTexCoord2iARB, glMultiTexCoord2ivARB, glMultiTexCoord2sARB, glMultiTexCoord2svARB, glMultiTexCoord3dARB, glMultiTexCoord3dvARB, glMultiTexCoord3fARB, glMultiTexCoord3fvARB, glMultiTexCoord3iARB, glMultiTexCoord3ivARB, glMultiTexCoord3sARB, glMultiTexCoord3svARB, glMultiTexCoord4dARB, glMultiTexCoord4dvARB, + glMultiTexCoord4fARB, glMultiTexCoord4fvARB, glMultiTexCoord4iARB, glMultiTexCoord4ivARB, glMultiTexCoord4sARB, glMultiTexCoord4svARB, glGenQueriesARB, glDeleteQueriesARB, glIsQueryARB, glBeginQueryARB, glEndQueryARB, glGetQueryivARB, glGetQueryObjectivARB, glGetQueryObjectuivARB, glMaxShaderCompilerThreadsARB, glPointParameterfARB, + glPointParameterfvARB, glGetGraphicsResetStatusARB, glGetnCompressedTexImageARB, glGetnTexImageARB, glGetnUniformdvARB, glGetnUniformfvARB, glGetnUniformivARB, glGetnUniformuivARB, glReadnPixelsARB, glEvaluateDepthValuesARB, glFramebufferSampleLocationsfvARB, glNamedFramebufferSampleLocationsfvARB, glMinSampleShadingARB, glDeleteObjectARB, glGetHandleARB, glDetachObjectARB, + glCreateShaderObjectARB, glShaderSourceARB, glCompileShaderARB, glCreateProgramObjectARB, glAttachObjectARB, glLinkProgramARB, glUseProgramObjectARB, glValidateProgramARB, glUniform1fARB, glUniform2fARB, glUniform3fARB, glUniform4fARB, glUniform1iARB, glUniform2iARB, glUniform3iARB, glUniform4iARB, + glUniform1fvARB, glUniform2fvARB, glUniform3fvARB, glUniform4fvARB, glUniform1ivARB, glUniform2ivARB, glUniform3ivARB, glUniform4ivARB, glUniformMatrix2fvARB, glUniformMatrix3fvARB, glUniformMatrix4fvARB, glGetObjectParameterfvARB, glGetObjectParameterivARB, glGetInfoLogARB, glGetAttachedObjectsARB, glGetUniformLocationARB, + glGetActiveUniformARB, glGetUniformfvARB, glGetUniformivARB, glGetShaderSourceARB, glNamedStringARB, glDeleteNamedStringARB, glCompileShaderIncludeARB, glIsNamedStringARB, glGetNamedStringARB, glGetNamedStringivARB, glBufferPageCommitmentARB, glNamedBufferPageCommitmentEXT, glNamedBufferPageCommitmentARB, glTexPageCommitmentARB, glTexBufferARB, glCompressedTexImage3DARB, + glCompressedTexImage2DARB, glCompressedTexImage1DARB, glCompressedTexSubImage3DARB, glCompressedTexSubImage2DARB, glCompressedTexSubImage1DARB, glGetCompressedTexImageARB, glLoadTransposeMatrixfARB, glLoadTransposeMatrixdARB, glMultTransposeMatrixfARB, glMultTransposeMatrixdARB, glWeightbvARB, glWeightsvARB, glWeightivARB, glWeightfvARB, glWeightdvARB, glWeightubvARB, + glWeightusvARB, glWeightuivARB, glWeightPointerARB, glVertexBlendARB, glBindBufferARB, glDeleteBuffersARB, glGenBuffersARB, glIsBufferARB, glBufferDataARB, glBufferSubDataARB, glGetBufferSubDataARB, glMapBufferARB, glUnmapBufferARB, glGetBufferParameterivARB, glGetBufferPointervARB, glVertexAttrib1dARB, + glVertexAttrib1dvARB, glVertexAttrib1fARB, glVertexAttrib1fvARB, glVertexAttrib1sARB, glVertexAttrib1svARB, glVertexAttrib2dARB, glVertexAttrib2dvARB, glVertexAttrib2fARB, glVertexAttrib2fvARB, glVertexAttrib2sARB, glVertexAttrib2svARB, glVertexAttrib3dARB, glVertexAttrib3dvARB, glVertexAttrib3fARB, glVertexAttrib3fvARB, glVertexAttrib3sARB, + glVertexAttrib3svARB, glVertexAttrib4NbvARB, glVertexAttrib4NivARB, glVertexAttrib4NsvARB, glVertexAttrib4NubARB, glVertexAttrib4NubvARB, glVertexAttrib4NuivARB, glVertexAttrib4NusvARB, glVertexAttrib4bvARB, glVertexAttrib4dARB, glVertexAttrib4dvARB, glVertexAttrib4fARB, glVertexAttrib4fvARB, glVertexAttrib4ivARB, glVertexAttrib4sARB, glVertexAttrib4svARB, + glVertexAttrib4ubvARB, glVertexAttrib4uivARB, glVertexAttrib4usvARB, glVertexAttribPointerARB, glEnableVertexAttribArrayARB, glDisableVertexAttribArrayARB, glGetVertexAttribdvARB, glGetVertexAttribfvARB, glGetVertexAttribivARB, glGetVertexAttribPointervARB, glBindAttribLocationARB, glGetActiveAttribARB, glGetAttribLocationARB, glDepthRangeArraydvNV, glDepthRangeIndexeddNV, glWindowPos2dARB, + glWindowPos2dvARB, glWindowPos2fARB, glWindowPos2fvARB, glWindowPos2iARB, glWindowPos2ivARB, glWindowPos2sARB, glWindowPos2svARB, glWindowPos3dARB, glWindowPos3dvARB, glWindowPos3fARB, glWindowPos3fvARB, glWindowPos3iARB, glWindowPos3ivARB, glWindowPos3sARB, glWindowPos3svARB, glBlendBarrierKHR, + glMaxShaderCompilerThreadsKHR, glMultiTexCoord1bOES, glMultiTexCoord1bvOES, glMultiTexCoord2bOES, glMultiTexCoord2bvOES, glMultiTexCoord3bOES, glMultiTexCoord3bvOES, glMultiTexCoord4bOES, glMultiTexCoord4bvOES, glTexCoord1bOES, glTexCoord1bvOES, glTexCoord2bOES, glTexCoord2bvOES, glTexCoord3bOES, glTexCoord3bvOES, glTexCoord4bOES, + glTexCoord4bvOES, glVertex2bOES, glVertex2bvOES, glVertex3bOES, glVertex3bvOES, glVertex4bOES, glVertex4bvOES, glAlphaFuncxOES, glClearColorxOES, glClearDepthxOES, glClipPlanexOES, glColor4xOES, glDepthRangexOES, glFogxOES, glFogxvOES, glFrustumxOES, + glGetClipPlanexOES, glGetFixedvOES, glGetTexEnvxvOES, glGetTexParameterxvOES, glLightModelxOES, glLightModelxvOES, glLightxOES, glLightxvOES, glLineWidthxOES, glLoadMatrixxOES, glMaterialxOES, glMaterialxvOES, glMultMatrixxOES, glMultiTexCoord4xOES, glNormal3xOES, glOrthoxOES, + glPointParameterxvOES, glPointSizexOES, glPolygonOffsetxOES, glRotatexOES, glScalexOES, glTexEnvxOES, glTexEnvxvOES, glTexParameterxOES, glTexParameterxvOES, glTranslatexOES, glAccumxOES, glBitmapxOES, glBlendColorxOES, glClearAccumxOES, glColor3xOES, glColor3xvOES, + glColor4xvOES, glConvolutionParameterxOES, glConvolutionParameterxvOES, glEvalCoord1xOES, glEvalCoord1xvOES, glEvalCoord2xOES, glEvalCoord2xvOES, glFeedbackBufferxOES, glGetConvolutionParameterxvOES, glGetHistogramParameterxvOES, glGetLightxOES, glGetMapxvOES, glGetMaterialxOES, glGetPixelMapxv, glGetTexGenxvOES, glGetTexLevelParameterxvOES, + glIndexxOES, glIndexxvOES, glLoadTransposeMatrixxOES, glMap1xOES, glMap2xOES, glMapGrid1xOES, glMapGrid2xOES, glMultTransposeMatrixxOES, glMultiTexCoord1xOES, glMultiTexCoord1xvOES, glMultiTexCoord2xOES, glMultiTexCoord2xvOES, glMultiTexCoord3xOES, glMultiTexCoord3xvOES, glMultiTexCoord4xvOES, glNormal3xvOES, + glPassThroughxOES, glPixelMapx, glPixelStorex, glPixelTransferxOES, glPixelZoomxOES, glPrioritizeTexturesxOES, glRasterPos2xOES, glRasterPos2xvOES, glRasterPos3xOES, glRasterPos3xvOES, glRasterPos4xOES, glRasterPos4xvOES, glRectxOES, glRectxvOES, glTexCoord1xOES, glTexCoord1xvOES, + glTexCoord2xOES, glTexCoord2xvOES, glTexCoord3xOES, glTexCoord3xvOES, glTexCoord4xOES, glTexCoord4xvOES, glTexGenxOES, glTexGenxvOES, glVertex2xOES, glVertex2xvOES, glVertex3xOES, glVertex3xvOES, glVertex4xOES, glVertex4xvOES, glQueryMatrixxOES, glClearDepthfOES, + glClipPlanefOES, glDepthRangefOES, glFrustumfOES, glGetClipPlanefOES, glOrthofOES, glTbufferMask3DFX, glDebugMessageEnableAMD, glDebugMessageInsertAMD, glDebugMessageCallbackAMD, glGetDebugMessageLogAMD, glBlendFuncIndexedAMD, glBlendFuncSeparateIndexedAMD, glBlendEquationIndexedAMD, glBlendEquationSeparateIndexedAMD, glRenderbufferStorageMultisampleAdvancedAMD, glNamedRenderbufferStorageMultisampleAdvancedAMD, + glFramebufferSamplePositionsfvAMD, glNamedFramebufferSamplePositionsfvAMD, glGetFramebufferParameterfvAMD, glGetNamedFramebufferParameterfvAMD, glUniform1i64NV, glUniform2i64NV, glUniform3i64NV, glUniform4i64NV, glUniform1i64vNV, glUniform2i64vNV, glUniform3i64vNV, glUniform4i64vNV, glUniform1ui64NV, glUniform2ui64NV, glUniform3ui64NV, glUniform4ui64NV, + glUniform1ui64vNV, glUniform2ui64vNV, glUniform3ui64vNV, glUniform4ui64vNV, glGetUniformi64vNV, glGetUniformui64vNV, glProgramUniform1i64NV, glProgramUniform2i64NV, glProgramUniform3i64NV, glProgramUniform4i64NV, glProgramUniform1i64vNV, glProgramUniform2i64vNV, glProgramUniform3i64vNV, glProgramUniform4i64vNV, glProgramUniform1ui64NV, glProgramUniform2ui64NV, + glProgramUniform3ui64NV, glProgramUniform4ui64NV, glProgramUniform1ui64vNV, glProgramUniform2ui64vNV, glProgramUniform3ui64vNV, glProgramUniform4ui64vNV, glVertexAttribParameteriAMD, glMultiDrawArraysIndirectAMD, glMultiDrawElementsIndirectAMD, glGenNamesAMD, glDeleteNamesAMD, glIsNameAMD, glQueryObjectParameteruiAMD, glGetPerfMonitorGroupsAMD, glGetPerfMonitorCountersAMD, glGetPerfMonitorGroupStringAMD, + glGetPerfMonitorCounterStringAMD, glGetPerfMonitorCounterInfoAMD, glGenPerfMonitorsAMD, glDeletePerfMonitorsAMD, glSelectPerfMonitorCountersAMD, glBeginPerfMonitorAMD, glEndPerfMonitorAMD, glGetPerfMonitorCounterDataAMD, glSetMultisamplefvAMD, glTexStorageSparseAMD, glTextureStorageSparseAMD, glStencilOpValueAMD, glTessellationFactorAMD, glTessellationModeAMD, glElementPointerAPPLE, glDrawElementArrayAPPLE, + glDrawRangeElementArrayAPPLE, glMultiDrawElementArrayAPPLE, glMultiDrawRangeElementArrayAPPLE, glGenFencesAPPLE, glDeleteFencesAPPLE, glSetFenceAPPLE, glIsFenceAPPLE, glTestFenceAPPLE, glFinishFenceAPPLE, glTestObjectAPPLE, glFinishObjectAPPLE, glBufferParameteriAPPLE, glFlushMappedBufferRangeAPPLE, glObjectPurgeableAPPLE, glObjectUnpurgeableAPPLE, glGetObjectParameterivAPPLE, + glTextureRangeAPPLE, glGetTexParameterPointervAPPLE, glBindVertexArrayAPPLE, glDeleteVertexArraysAPPLE, glGenVertexArraysAPPLE, glIsVertexArrayAPPLE, glVertexArrayRangeAPPLE, glFlushVertexArrayRangeAPPLE, glVertexArrayParameteriAPPLE, glEnableVertexAttribAPPLE, glDisableVertexAttribAPPLE, glIsVertexAttribEnabledAPPLE, glMapVertexAttrib1dAPPLE, glMapVertexAttrib1fAPPLE, glMapVertexAttrib2dAPPLE, glMapVertexAttrib2fAPPLE, + glDrawBuffersATI, glElementPointerATI, glDrawElementArrayATI, glDrawRangeElementArrayATI, glTexBumpParameterivATI, glTexBumpParameterfvATI, glGetTexBumpParameterivATI, glGetTexBumpParameterfvATI, glGenFragmentShadersATI, glBindFragmentShaderATI, glDeleteFragmentShaderATI, glBeginFragmentShaderATI, glEndFragmentShaderATI, glPassTexCoordATI, glSampleMapATI, glColorFragmentOp1ATI, + glColorFragmentOp2ATI, glColorFragmentOp3ATI, glAlphaFragmentOp1ATI, glAlphaFragmentOp2ATI, glAlphaFragmentOp3ATI, glSetFragmentShaderConstantATI, glMapObjectBufferATI, glUnmapObjectBufferATI, glPNTrianglesiATI, glPNTrianglesfATI, glStencilOpSeparateATI, glStencilFuncSeparateATI, glNewObjectBufferATI, glIsObjectBufferATI, glUpdateObjectBufferATI, glGetObjectBufferfvATI, + glGetObjectBufferivATI, glFreeObjectBufferATI, glArrayObjectATI, glGetArrayObjectfvATI, glGetArrayObjectivATI, glVariantArrayObjectATI, glGetVariantArrayObjectfvATI, glGetVariantArrayObjectivATI, glVertexAttribArrayObjectATI, glGetVertexAttribArrayObjectfvATI, glGetVertexAttribArrayObjectivATI, glVertexStream1sATI, glVertexStream1svATI, glVertexStream1iATI, glVertexStream1ivATI, glVertexStream1fATI, + glVertexStream1fvATI, glVertexStream1dATI, glVertexStream1dvATI, glVertexStream2sATI, glVertexStream2svATI, glVertexStream2iATI, glVertexStream2ivATI, glVertexStream2fATI, glVertexStream2fvATI, glVertexStream2dATI, glVertexStream2dvATI, glVertexStream3sATI, glVertexStream3svATI, glVertexStream3iATI, glVertexStream3ivATI, glVertexStream3fATI, + glVertexStream3fvATI, glVertexStream3dATI, glVertexStream3dvATI, glVertexStream4sATI, glVertexStream4svATI, glVertexStream4iATI, glVertexStream4ivATI, glVertexStream4fATI, glVertexStream4fvATI, glVertexStream4dATI, glVertexStream4dvATI, glNormalStream3bATI, glNormalStream3bvATI, glNormalStream3sATI, glNormalStream3svATI, glNormalStream3iATI, + glNormalStream3ivATI, glNormalStream3fATI, glNormalStream3fvATI, glNormalStream3dATI, glNormalStream3dvATI, glClientActiveVertexStreamATI, glVertexBlendEnviATI, glVertexBlendEnvfATI, glFrameTerminatorGREMEDY, glStringMarkerGREMEDY, glImageTransformParameteriHP, glImageTransformParameterfHP, glImageTransformParameterivHP, glImageTransformParameterfvHP, glGetImageTransformParameterivHP, glGetImageTransformParameterfvHP, + glMultiModeDrawArraysIBM, glMultiModeDrawElementsIBM, glFlushStaticDataIBM, glColorPointerListIBM, glSecondaryColorPointerListIBM, glEdgeFlagPointerListIBM, glFogCoordPointerListIBM, glIndexPointerListIBM, glNormalPointerListIBM, glTexCoordPointerListIBM, glVertexPointerListIBM, glBlendFuncSeparateINGR, glApplyFramebufferAttachmentCMAAINTEL, glSyncTextureINTEL, glUnmapTexture2DINTEL, glMapTexture2DINTEL, + glVertexPointervINTEL, glNormalPointervINTEL, glColorPointervINTEL, glTexCoordPointervINTEL, glBeginPerfQueryINTEL, glCreatePerfQueryINTEL, glDeletePerfQueryINTEL, glEndPerfQueryINTEL, glGetFirstPerfQueryIdINTEL, glGetNextPerfQueryIdINTEL, glGetPerfCounterInfoINTEL, glGetPerfQueryDataINTEL, glGetPerfQueryIdByNameINTEL, glGetPerfQueryInfoINTEL, glFramebufferParameteriMESA, glGetFramebufferParameterivMESA, + glResizeBuffersMESA, glWindowPos2dMESA, glWindowPos2dvMESA, glWindowPos2fMESA, glWindowPos2fvMESA, glWindowPos2iMESA, glWindowPos2ivMESA, glWindowPos2sMESA, glWindowPos2svMESA, glWindowPos3dMESA, glWindowPos3dvMESA, glWindowPos3fMESA, glWindowPos3fvMESA, glWindowPos3iMESA, glWindowPos3ivMESA, glWindowPos3sMESA, + glWindowPos3svMESA, glWindowPos4dMESA, glWindowPos4dvMESA, glWindowPos4fMESA, glWindowPos4fvMESA, glWindowPos4iMESA, glWindowPos4ivMESA, glWindowPos4sMESA, glWindowPos4svMESA, glBeginConditionalRenderNVX, glEndConditionalRenderNVX, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, glFogFuncSGIS, + glGetFogFuncSGIS, glSampleMaskSGIS, glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, glTexSubImage4DSGIS, glTextureColorMaskSGIS, + glGetTexFilterFuncSGIS, glTexFilterFuncSGIS, glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, glFlushRasterSGIX, glFragmentColorMaterialSGIX, glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, glFragmentLightModelfSGIX, glFragmentLightModelfvSGIX, + glFragmentLightModeliSGIX, glFragmentLightModelivSGIX, glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, glInstrumentsBufferSGIX, glPollInstrumentsSGIX, + glReadInstrumentsSGIX, glStartInstrumentsSGIX, glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, glListParameterivSGIX, glPixelTexGenSGIX, glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, glReferencePlaneSGIX, glSpriteParameterfSGIX, + glSpriteParameterfvSGIX, glSpriteParameteriSGIX, glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, glGetColorTableSGI, glGetColorTableParameterfvSGI, glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, + glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, + glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, + glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, + glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; void load(GLLoadFunc load) { + GLARBES32Compatibility.load(this, load); + GLARBBindlessTexture.load(this, load); + GLARBCLEvent.load(this, load); + GLARBColorBufferFloat.load(this, load); + GLARBComputeVariableGroupSize.load(this, load); + GLARBDebugOutput.load(this, load); + GLARBDrawBuffers.load(this, load); + GLARBDrawBuffersBlend.load(this, load); + GLARBDrawInstanced.load(this, load); + GLARBFragmentProgram.load(this, load); + GLARBGeometryShader4.load(this, load); + GLARBGLSpirv.load(this, load); + GLARBGpuShaderInt64.load(this, load); + GLARBImaging.load(this, load); + GLARBIndirectParameters.load(this, load); + GLARBInstancedArrays.load(this, load); + GLARBMatrixPalette.load(this, load); + GLARBMultisample.load(this, load); + GLARBMultitexture.load(this, load); + GLARBOcclusionQuery.load(this, load); + GLARBParallelShaderCompile.load(this, load); + GLARBPointParameters.load(this, load); GLARBRobustness.load(this, load); GLARBSampleLocations.load(this, load); GLARBSampleShading.load(this, load); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXMultisample.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXMultisample.java index 0bf02aea..ef813701 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXMultisample.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXMultisample.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_3DFX_multisample} - */ + * {@code GL_3DFX_multisample} + */ public final class GL3DFXMultisample { public static final int GL_MULTISAMPLE_3DFX = 0x86B2; public static final int GL_SAMPLE_BUFFERS_3DFX = 0x86B3; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTbuffer.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTbuffer.java index 82a24bb4..c3123958 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTbuffer.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTbuffer.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_3DFX_tbuffer} - */ + * {@code GL_3DFX_tbuffer} + */ public final class GL3DFXTbuffer { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_3DFX_tbuffer) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTextureCompressionFXT1.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTextureCompressionFXT1.java index d5b93ba8..2f62e9e7 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTextureCompressionFXT1.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GL3DFXTextureCompressionFXT1.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_3DFX_texture_compression_FXT1} - */ + * {@code GL_3DFX_texture_compression_FXT1} + */ public final class GL3DFXTextureCompressionFXT1 { public static final int GL_COMPRESSED_RGB_FXT1_3DFX = 0x86B0; public static final int GL_COMPRESSED_RGBA_FXT1_3DFX = 0x86B1; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYFrameTerminator.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYFrameTerminator.java index 1b5a3aab..6436ad60 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYFrameTerminator.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYFrameTerminator.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_GREMEDY_frame_terminator} - */ + * {@code GL_GREMEDY_frame_terminator} + */ public final class GLGREMEDYFrameTerminator { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_GREMEDY_frame_terminator) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYStringMarker.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYStringMarker.java index fd556f57..bfc93ef2 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYStringMarker.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLGREMEDYStringMarker.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_GREMEDY_string_marker} - */ + * {@code GL_GREMEDY_string_marker} + */ public final class GLGREMEDYStringMarker { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_GREMEDY_string_marker) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPConvolutionBorderModes.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPConvolutionBorderModes.java index 89919e62..0f526eff 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPConvolutionBorderModes.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPConvolutionBorderModes.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_HP_convolution_border_modes} - */ + * {@code GL_HP_convolution_border_modes} + */ public final class GLHPConvolutionBorderModes { public static final int GL_IGNORE_BORDER_HP = 0x8150; public static final int GL_CONSTANT_BORDER_HP = 0x8151; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPImageTransform.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPImageTransform.java index 0fea5dd3..14ba70c6 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPImageTransform.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPImageTransform.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_HP_image_transform} - */ + * {@code GL_HP_image_transform} + */ public final class GLHPImageTransform { public static final int GL_IMAGE_SCALE_X_HP = 0x8155; public static final int GL_IMAGE_SCALE_Y_HP = 0x8156; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPOcclusionTest.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPOcclusionTest.java index 4a8cf9ca..8d28586d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPOcclusionTest.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPOcclusionTest.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_HP_occlusion_test} - */ + * {@code GL_HP_occlusion_test} + */ public final class GLHPOcclusionTest { public static final int GL_OCCLUSION_TEST_HP = 0x8165; public static final int GL_OCCLUSION_TEST_RESULT_HP = 0x8166; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPTextureLighting.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPTextureLighting.java index 730067e4..66cab388 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPTextureLighting.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLHPTextureLighting.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_HP_texture_lighting} - */ + * {@code GL_HP_texture_lighting} + */ public final class GLHPTextureLighting { public static final int GL_TEXTURE_LIGHTING_MODE_HP = 0x8167; public static final int GL_TEXTURE_POST_SPECULAR_HP = 0x8168; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRBlendFuncSeparate.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRBlendFuncSeparate.java index 572b7f0c..16fc5f31 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRBlendFuncSeparate.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRBlendFuncSeparate.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_INGR_blend_func_separate} - */ + * {@code GL_INGR_blend_func_separate} + */ public final class GLINGRBlendFuncSeparate { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_INGR_blend_func_separate) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRColorClamp.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRColorClamp.java index da602d63..d78c29a7 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRColorClamp.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRColorClamp.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_INGR_color_clamp} - */ + * {@code GL_INGR_color_clamp} + */ public final class GLINGRColorClamp { public static final int GL_RED_MIN_CLAMP_INGR = 0x8560; public static final int GL_GREEN_MIN_CLAMP_INGR = 0x8561; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRInterlaceRead.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRInterlaceRead.java index 158966ca..60809496 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRInterlaceRead.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLINGRInterlaceRead.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_INGR_interlace_read} - */ + * {@code GL_INGR_interlace_read} + */ public final class GLINGRInterlaceRead { public static final int GL_INTERLACE_READ_INGR = 0x8568; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLInterlace.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLInterlace.java index e03f6e5c..4f3e93fb 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLInterlace.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLInterlace.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_OML_interlace} - */ + * {@code GL_OML_interlace} + */ public final class GLOMLInterlace { public static final int GL_INTERLACE_OML = 0x8980; public static final int GL_INTERLACE_READ_OML = 0x8981; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLResample.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLResample.java index 865fb884..3cd9ed74 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLResample.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLResample.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_OML_resample} - */ + * {@code GL_OML_resample} + */ public final class GLOMLResample { public static final int GL_PACK_RESAMPLE_OML = 0x8984; public static final int GL_UNPACK_RESAMPLE_OML = 0x8985; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLSubsample.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLSubsample.java index 2c656ec3..b2bc03fa 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLSubsample.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOMLSubsample.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_OML_subsample} - */ + * {@code GL_OML_subsample} + */ public final class GLOMLSubsample { public static final int GL_FORMAT_SUBSAMPLE_24_24_OML = 0x8982; public static final int GL_FORMAT_SUBSAMPLE_244_244_OML = 0x8983; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOVRMultiview.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOVRMultiview.java index 701339c2..fdd955da 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOVRMultiview.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLOVRMultiview.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_OVR_multiview} - */ + * {@code GL_OVR_multiview} + */ public final class GLOVRMultiview { public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR = 0x9630; public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR = 0x9632; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIMiscHints.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIMiscHints.java index 052269b9..a0a1e546 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIMiscHints.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIMiscHints.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_PGI_misc_hints} - */ + * {@code GL_PGI_misc_hints} + */ public final class GLPGIMiscHints { public static final int GL_PREFER_DOUBLEBUFFER_HINT_PGI = 0x1A1F8; public static final int GL_CONSERVE_MEMORY_HINT_PGI = 0x1A1FD; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIVertexHints.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIVertexHints.java index 950ba648..9c81af95 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIVertexHints.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLPGIVertexHints.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_PGI_vertex_hints} - */ + * {@code GL_PGI_vertex_hints} + */ public final class GLPGIVertexHints { public static final int GL_VERTEX_DATA_HINT_PGI = 0x1A22A; public static final int GL_VERTEX_CONSISTENT_HINT_PGI = 0x1A22B; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLRENDScreenCoordinates.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLRENDScreenCoordinates.java index ef109c55..44b57f5b 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLRENDScreenCoordinates.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLRENDScreenCoordinates.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_REND_screen_coordinates} - */ + * {@code GL_REND_screen_coordinates} + */ public final class GLRENDScreenCoordinates { public static final int GL_SCREEN_COORDINATES_REND = 0x8490; public static final int GL_INVERTED_SCREEN_W_REND = 0x8491; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLS3S3tc.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLS3S3tc.java index c2a70d07..97c17d24 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLS3S3tc.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLS3S3tc.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_S3_s3tc} - */ + * {@code GL_S3_s3tc} + */ public final class GLS3S3tc { public static final int GL_RGB_S3TC = 0x83A0; public static final int GL_RGB4_S3TC = 0x83A1; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINPhongShading.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINPhongShading.java index 5b16fe97..ab07d951 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINPhongShading.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINPhongShading.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_WIN_phong_shading} - */ + * {@code GL_WIN_phong_shading} + */ public final class GLWINPhongShading { public static final int GL_PHONG_WIN = 0x80EA; public static final int GL_PHONG_HINT_WIN = 0x80EB; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINSpecularFog.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINSpecularFog.java index 573b7e81..3bd09627 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINSpecularFog.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/GLWINSpecularFog.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_WIN_specular_fog} - */ + * {@code GL_WIN_specular_fog} + */ public final class GLWINSpecularFog { public static final int GL_FOG_SPECULAR_TEXTURE_WIN = 0x80EC; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDBlendMinmaxFactor.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDBlendMinmaxFactor.java index 6c4a45a5..d5377d2e 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDBlendMinmaxFactor.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDBlendMinmaxFactor.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_blend_minmax_factor} - */ + * {@code GL_AMD_blend_minmax_factor} + */ public final class GLAMDBlendMinmaxFactor { public static final int GL_FACTOR_MIN_AMD = 0x901C; public static final int GL_FACTOR_MAX_AMD = 0x901D; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDebugOutput.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDebugOutput.java index dd37bbdb..09043b58 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDebugOutput.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDebugOutput.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_debug_output} - */ + * {@code GL_AMD_debug_output} + */ public final class GLAMDDebugOutput { public static final int GL_MAX_DEBUG_MESSAGE_LENGTH_AMD = 0x9143; public static final int GL_MAX_DEBUG_LOGGED_MESSAGES_AMD = 0x9144; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDepthClampSeparate.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDepthClampSeparate.java index f354fa5c..fca5854b 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDepthClampSeparate.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDepthClampSeparate.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_depth_clamp_separate} - */ + * {@code GL_AMD_depth_clamp_separate} + */ public final class GLAMDDepthClampSeparate { public static final int GL_DEPTH_CLAMP_NEAR_AMD = 0x901E; public static final int GL_DEPTH_CLAMP_FAR_AMD = 0x901F; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDrawBuffersBlend.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDrawBuffersBlend.java index b6c09e0c..7718cea1 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDrawBuffersBlend.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDDrawBuffersBlend.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_draw_buffers_blend} - */ + * {@code GL_AMD_draw_buffers_blend} + */ public final class GLAMDDrawBuffersBlend { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_AMD_draw_buffers_blend) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferMultisampleAdvanced.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferMultisampleAdvanced.java index 2f9980ef..715f9287 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferMultisampleAdvanced.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferMultisampleAdvanced.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_framebuffer_multisample_advanced} - */ + * {@code GL_AMD_framebuffer_multisample_advanced} + */ public final class GLAMDFramebufferMultisampleAdvanced { public static final int GL_RENDERBUFFER_STORAGE_SAMPLES_AMD = 0x91B2; public static final int GL_MAX_COLOR_FRAMEBUFFER_SAMPLES_AMD = 0x91B3; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferSamplePositions.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferSamplePositions.java index 469e674e..a4ba41ac 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferSamplePositions.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDFramebufferSamplePositions.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_framebuffer_sample_positions} - */ + * {@code GL_AMD_framebuffer_sample_positions} + */ public final class GLAMDFramebufferSamplePositions { public static final int GL_SUBSAMPLE_DISTANCE_AMD = 0x883F; public static final int GL_PIXELS_PER_SAMPLE_PATTERN_X_AMD = 0x91AE; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderHalfFloat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderHalfFloat.java index d75d7a49..415aad7a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderHalfFloat.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderHalfFloat.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_gpu_shader_half_float} - */ + * {@code GL_AMD_gpu_shader_half_float} + */ public final class GLAMDGpuShaderHalfFloat { public static final int GL_FLOAT16_NV = 0x8FF8; public static final int GL_FLOAT16_VEC2_NV = 0x8FF9; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderInt64.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderInt64.java index beab01ec..44e17aba 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderInt64.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDGpuShaderInt64.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_gpu_shader_int64} - */ + * {@code GL_AMD_gpu_shader_int64} + */ public final class GLAMDGpuShaderInt64 { public static final int GL_INT64_NV = 0x140E; public static final int GL_UNSIGNED_INT64_NV = 0x140F; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDInterleavedElements.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDInterleavedElements.java index be3e391b..432669ee 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDInterleavedElements.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDInterleavedElements.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_interleaved_elements} - */ + * {@code GL_AMD_interleaved_elements} + */ public final class GLAMDInterleavedElements { public static final int GL_VERTEX_ELEMENT_SWIZZLE_AMD = 0x91A4; public static final int GL_VERTEX_ID_SWIZZLE_AMD = 0x91A5; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDMultiDrawIndirect.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDMultiDrawIndirect.java index 78da667a..5f15112d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDMultiDrawIndirect.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDMultiDrawIndirect.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_multi_draw_indirect} - */ + * {@code GL_AMD_multi_draw_indirect} + */ public final class GLAMDMultiDrawIndirect { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_AMD_multi_draw_indirect) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDNameGenDelete.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDNameGenDelete.java index 67ed557b..04dec874 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDNameGenDelete.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDNameGenDelete.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_name_gen_delete} - */ + * {@code GL_AMD_name_gen_delete} + */ public final class GLAMDNameGenDelete { public static final int GL_DATA_BUFFER_AMD = 0x9151; public static final int GL_PERFORMANCE_MONITOR_AMD = 0x9152; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDOcclusionQueryEvent.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDOcclusionQueryEvent.java index 5f7f9df0..8791bf02 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDOcclusionQueryEvent.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDOcclusionQueryEvent.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_occlusion_query_event} - */ + * {@code GL_AMD_occlusion_query_event} + */ public final class GLAMDOcclusionQueryEvent { public static final int GL_OCCLUSION_QUERY_EVENT_MASK_AMD = 0x874F; public static final int GL_QUERY_DEPTH_PASS_EVENT_BIT_AMD = 0x00000001; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPerformanceMonitor.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPerformanceMonitor.java index d4a4ebe4..ef493fc2 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPerformanceMonitor.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPerformanceMonitor.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_performance_monitor} - */ + * {@code GL_AMD_performance_monitor} + */ public final class GLAMDPerformanceMonitor { public static final int GL_COUNTER_TYPE_AMD = 0x8BC0; public static final int GL_COUNTER_RANGE_AMD = 0x8BC1; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPinnedMemory.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPinnedMemory.java index d08374e6..6eb5f498 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPinnedMemory.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDPinnedMemory.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_pinned_memory} - */ + * {@code GL_AMD_pinned_memory} + */ public final class GLAMDPinnedMemory { public static final int GL_EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD = 0x9160; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDQueryBufferObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDQueryBufferObject.java index 4f596ba7..46d8d1b6 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDQueryBufferObject.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDQueryBufferObject.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_query_buffer_object} - */ + * {@code GL_AMD_query_buffer_object} + */ public final class GLAMDQueryBufferObject { public static final int GL_QUERY_BUFFER_AMD = 0x9192; public static final int GL_QUERY_BUFFER_BINDING_AMD = 0x9193; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSamplePositions.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSamplePositions.java index 21d6bc19..62932539 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSamplePositions.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSamplePositions.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_sample_positions} - */ + * {@code GL_AMD_sample_positions} + */ public final class GLAMDSamplePositions { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_AMD_sample_positions) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSparseTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSparseTexture.java index 41fd8b3b..6d05244c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSparseTexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDSparseTexture.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_sparse_texture} - */ + * {@code GL_AMD_sparse_texture} + */ public final class GLAMDSparseTexture { public static final int GL_VIRTUAL_PAGE_SIZE_X_AMD = 0x9195; public static final int GL_VIRTUAL_PAGE_SIZE_Y_AMD = 0x9196; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDStencilOperationExtended.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDStencilOperationExtended.java index c8ba3568..e13807c1 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDStencilOperationExtended.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDStencilOperationExtended.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_stencil_operation_extended} - */ + * {@code GL_AMD_stencil_operation_extended} + */ public final class GLAMDStencilOperationExtended { public static final int GL_SET_AMD = 0x874A; public static final int GL_REPLACE_VALUE_AMD = 0x874B; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDTransformFeedback4.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDTransformFeedback4.java index 5bf64bce..8a1250a7 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDTransformFeedback4.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDTransformFeedback4.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_transform_feedback4} - */ + * {@code GL_AMD_transform_feedback4} + */ public final class GLAMDTransformFeedback4 { public static final int GL_STREAM_RASTERIZATION_AMD = 0x91A0; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDVertexShaderTessellator.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDVertexShaderTessellator.java index 26829472..a37f9d69 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDVertexShaderTessellator.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/amd/GLAMDVertexShaderTessellator.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_AMD_vertex_shader_tessellator} - */ + * {@code GL_AMD_vertex_shader_tessellator} + */ public final class GLAMDVertexShaderTessellator { public static final int GL_SAMPLER_BUFFER_AMD = 0x9001; public static final int GL_INT_SAMPLER_BUFFER_AMD = 0x9002; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEAuxDepthStencil.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEAuxDepthStencil.java index bab83f5d..512f4dde 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEAuxDepthStencil.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEAuxDepthStencil.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_aux_depth_stencil} - */ + * {@code GL_APPLE_aux_depth_stencil} + */ public final class GLAPPLEAuxDepthStencil { public static final int GL_AUX_DEPTH_STENCIL_APPLE = 0x8A14; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEClientStorage.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEClientStorage.java index 21958211..904c1674 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEClientStorage.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEClientStorage.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_client_storage} - */ + * {@code GL_APPLE_client_storage} + */ public final class GLAPPLEClientStorage { public static final int GL_UNPACK_CLIENT_STORAGE_APPLE = 0x85B2; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEElementArray.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEElementArray.java index f61a0fdf..ec27f40e 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEElementArray.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEElementArray.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_element_array} - */ + * {@code GL_APPLE_element_array} + */ public final class GLAPPLEElementArray { public static final int GL_ELEMENT_ARRAY_APPLE = 0x8A0C; public static final int GL_ELEMENT_ARRAY_TYPE_APPLE = 0x8A0D; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFence.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFence.java index 73ce0074..4b942e30 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFence.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFence.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_fence} - */ + * {@code GL_APPLE_fence} + */ public final class GLAPPLEFence { public static final int GL_DRAW_PIXELS_APPLE = 0x8A0A; public static final int GL_FENCE_APPLE = 0x8A0B; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFloatPixels.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFloatPixels.java index 66513662..ba6a44c5 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFloatPixels.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFloatPixels.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_float_pixels} - */ + * {@code GL_APPLE_float_pixels} + */ public final class GLAPPLEFloatPixels { public static final int GL_HALF_APPLE = 0x140B; public static final int GL_RGBA_FLOAT32_APPLE = 0x8814; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFlushBufferRange.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFlushBufferRange.java index 7bdd3679..268ee357 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFlushBufferRange.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEFlushBufferRange.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_flush_buffer_range} - */ + * {@code GL_APPLE_flush_buffer_range} + */ public final class GLAPPLEFlushBufferRange { public static final int GL_BUFFER_SERIALIZED_MODIFY_APPLE = 0x8A12; public static final int GL_BUFFER_FLUSHING_UNMAP_APPLE = 0x8A13; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEObjectPurgeable.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEObjectPurgeable.java index 71be15b4..3e684db4 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEObjectPurgeable.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEObjectPurgeable.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_object_purgeable} - */ + * {@code GL_APPLE_object_purgeable} + */ public final class GLAPPLEObjectPurgeable { public static final int GL_BUFFER_OBJECT_APPLE = 0x85B3; public static final int GL_RELEASED_APPLE = 0x8A19; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERgb422.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERgb422.java index c04a97bd..cfb42b2d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERgb422.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERgb422.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_rgb_422} - */ + * {@code GL_APPLE_rgb_422} + */ public final class GLAPPLERgb422 { public static final int GL_RGB_422_APPLE = 0x8A1F; public static final int GL_UNSIGNED_SHORT_8_8_APPLE = 0x85BA; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERowBytes.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERowBytes.java index 83c17106..9348ad53 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERowBytes.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLERowBytes.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_row_bytes} - */ + * {@code GL_APPLE_row_bytes} + */ public final class GLAPPLERowBytes { public static final int GL_PACK_ROW_BYTES_APPLE = 0x8A15; public static final int GL_UNPACK_ROW_BYTES_APPLE = 0x8A16; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLESpecularVector.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLESpecularVector.java index 7b16a322..9f78c2b3 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLESpecularVector.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLESpecularVector.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_specular_vector} - */ + * {@code GL_APPLE_specular_vector} + */ public final class GLAPPLESpecularVector { public static final int GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE = 0x85B0; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETextureRange.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETextureRange.java index f87ea810..efafb323 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETextureRange.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETextureRange.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_texture_range} - */ + * {@code GL_APPLE_texture_range} + */ public final class GLAPPLETextureRange { public static final int GL_TEXTURE_RANGE_LENGTH_APPLE = 0x85B7; public static final int GL_TEXTURE_RANGE_POINTER_APPLE = 0x85B8; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETransformHint.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETransformHint.java index f72247c6..c674c0c7 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETransformHint.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLETransformHint.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_transform_hint} - */ + * {@code GL_APPLE_transform_hint} + */ public final class GLAPPLETransformHint { public static final int GL_TRANSFORM_HINT_APPLE = 0x85B1; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayObject.java index 091991e0..232d0369 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayObject.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayObject.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_vertex_array_object} - */ + * {@code GL_APPLE_vertex_array_object} + */ public final class GLAPPLEVertexArrayObject { public static final int GL_VERTEX_ARRAY_BINDING_APPLE = 0x85B5; public static void load(GLExtCaps ext, GLLoadFunc load) { diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayRange.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayRange.java index bb84a852..9c6be3d1 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayRange.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexArrayRange.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_vertex_array_range} - */ + * {@code GL_APPLE_vertex_array_range} + */ public final class GLAPPLEVertexArrayRange { public static final int GL_VERTEX_ARRAY_RANGE_APPLE = 0x851D; public static final int GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE = 0x851E; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexProgramEvaluators.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexProgramEvaluators.java index de4feff0..4cb4bfa7 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexProgramEvaluators.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEVertexProgramEvaluators.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_vertex_program_evaluators} - */ + * {@code GL_APPLE_vertex_program_evaluators} + */ public final class GLAPPLEVertexProgramEvaluators { public static final int GL_VERTEX_ATTRIB_MAP1_APPLE = 0x8A00; public static final int GL_VERTEX_ATTRIB_MAP2_APPLE = 0x8A01; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEYcbcr422.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEYcbcr422.java index 0e658f9f..398a9489 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEYcbcr422.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/apple/GLAPPLEYcbcr422.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_APPLE_ycbcr_422} - */ + * {@code GL_APPLE_ycbcr_422} + */ public final class GLAPPLEYcbcr422 { public static final int GL_YCBCR_422_APPLE = 0x85B9; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBBindlessTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBBindlessTexture.java index 158d81fc..85a1ba78 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBBindlessTexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBBindlessTexture.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,207 +14,156 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.internal.RuntimeHelper; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; - -import static java.lang.foreign.ValueLayout.JAVA_LONG; -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** * {@code GL_ARB_bindless_texture} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBBindlessTexture { public static final int GL_UNSIGNED_INT64_ARB = 0x140F; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_bindless_texture) return; - ext.glGetImageHandleARB = load.invoke("glGetImageHandleARB", IIZIIJ); - ext.glGetTextureHandleARB = load.invoke("glGetTextureHandleARB", IJ); - ext.glGetTextureSamplerHandleARB = load.invoke("glGetTextureSamplerHandleARB", IIJ); - ext.glGetVertexAttribLui64vARB = load.invoke("glGetVertexAttribLui64vARB", IIPV); - ext.glIsImageHandleResidentARB = load.invoke("glIsImageHandleResidentARB", JZ); - ext.glIsTextureHandleResidentARB = load.invoke("glIsTextureHandleResidentARB", JZ); - ext.glMakeImageHandleNonResidentARB = load.invoke("glMakeImageHandleNonResidentARB", JV); - ext.glMakeImageHandleResidentARB = load.invoke("glMakeImageHandleResidentARB", JIV); - ext.glMakeTextureHandleNonResidentARB = load.invoke("glMakeTextureHandleNonResidentARB", JV); - ext.glMakeTextureHandleResidentARB = load.invoke("glMakeTextureHandleResidentARB", JV); - ext.glProgramUniformHandleui64ARB = load.invoke("glProgramUniformHandleui64ARB", IIJV); - ext.glProgramUniformHandleui64vARB = load.invoke("glProgramUniformHandleui64vARB", IIIPV); - ext.glUniformHandleui64ARB = load.invoke("glUniformHandleui64ARB", IJV); - ext.glUniformHandleui64vARB = load.invoke("glUniformHandleui64vARB", IIPV); - ext.glVertexAttribL1ui64ARB = load.invoke("glVertexAttribL1ui64ARB", IJV); - ext.glVertexAttribL1ui64vARB = load.invoke("glVertexAttribL1ui64vARB", IPV); - } - - public static long glGetImageHandleARB(int texture, int level, boolean layered, int layer, int format) { - var ext = GLLoader.getExtCapabilities(); - try { - return (long) GLLoader.check(ext.glGetImageHandleARB).invokeExact(texture, level, layered, layer, format); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + ext.glGetTextureHandleARB = load.invoke("glGetTextureHandleARB", of(JAVA_LONG, JAVA_INT)); + ext.glGetTextureSamplerHandleARB = load.invoke("glGetTextureSamplerHandleARB", of(JAVA_LONG, JAVA_INT, JAVA_INT)); + ext.glMakeTextureHandleResidentARB = load.invoke("glMakeTextureHandleResidentARB", ofVoid(JAVA_LONG)); + ext.glMakeTextureHandleNonResidentARB = load.invoke("glMakeTextureHandleNonResidentARB", ofVoid(JAVA_LONG)); + ext.glGetImageHandleARB = load.invoke("glGetImageHandleARB", of(JAVA_LONG, JAVA_INT, JAVA_INT, JAVA_BYTE, JAVA_INT, JAVA_INT)); + ext.glMakeImageHandleResidentARB = load.invoke("glMakeImageHandleResidentARB", ofVoid(JAVA_LONG, JAVA_INT)); + ext.glMakeImageHandleNonResidentARB = load.invoke("glMakeImageHandleNonResidentARB", ofVoid(JAVA_LONG)); + ext.glUniformHandleui64ARB = load.invoke("glUniformHandleui64ARB", ofVoid(JAVA_INT, JAVA_LONG)); + ext.glUniformHandleui64vARB = load.invoke("glUniformHandleui64vARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniformHandleui64ARB = load.invoke("glProgramUniformHandleui64ARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glProgramUniformHandleui64vARB = load.invoke("glProgramUniformHandleui64vARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glIsTextureHandleResidentARB = load.invoke("glIsTextureHandleResidentARB", of(JAVA_BYTE, JAVA_LONG)); + ext.glIsImageHandleResidentARB = load.invoke("glIsImageHandleResidentARB", of(JAVA_BYTE, JAVA_LONG)); + ext.glVertexAttribL1ui64ARB = load.invoke("glVertexAttribL1ui64ARB", ofVoid(JAVA_INT, JAVA_LONG)); + ext.glVertexAttribL1ui64vARB = load.invoke("glVertexAttribL1ui64vARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetVertexAttribLui64vARB = load.invoke("glGetVertexAttribLui64vARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); } public static long glGetTextureHandleARB(int texture) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - return (long) GLLoader.check(ext.glGetTextureHandleARB).invokeExact(texture); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + return (long) + check(ext.glGetTextureHandleARB).invokeExact(texture); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static long glGetTextureSamplerHandleARB(int texture, int sampler) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - return (long) GLLoader.check(ext.glGetTextureSamplerHandleARB).invokeExact(texture, sampler); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + return (long) + check(ext.glGetTextureSamplerHandleARB).invokeExact(texture, sampler); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetVertexAttribLui64vARB(int index, int pname, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); + public static void glMakeTextureHandleResidentARB(long handle) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetVertexAttribLui64vARB).invokeExact(index, pname, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGetVertexAttribLui64vARB(SegmentAllocator allocator, int index, int pname, long[] params) { - var seg = allocator.allocateArray(JAVA_LONG, params.length); - glGetVertexAttribLui64vARB(index, pname, seg); - RuntimeHelper.toArray(seg, params); + check(ext.glMakeTextureHandleResidentARB).invokeExact(handle); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static boolean glIsImageHandleResidentARB(long handle) { - var ext = GLLoader.getExtCapabilities(); + public static void glMakeTextureHandleNonResidentARB(long handle) { + final var ext = getExtCapabilities(); try { - return (boolean) GLLoader.check(ext.glIsImageHandleResidentARB).invokeExact(handle); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMakeTextureHandleNonResidentARB).invokeExact(handle); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static boolean glIsTextureHandleResidentARB(long handle) { - var ext = GLLoader.getExtCapabilities(); + public static long glGetImageHandleARB(int texture, int level, boolean layered, int layer, int format) { + final var ext = getExtCapabilities(); try { - return (boolean) GLLoader.check(ext.glIsTextureHandleResidentARB).invokeExact(handle); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + return (long) + check(ext.glGetImageHandleARB).invokeExact(texture, level, layered, layer, format); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMakeImageHandleNonResidentARB(long handle) { - var ext = GLLoader.getExtCapabilities(); + public static void glMakeImageHandleResidentARB(long handle, int access) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMakeImageHandleNonResidentARB).invokeExact(handle); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMakeImageHandleResidentARB).invokeExact(handle, access); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMakeImageHandleResidentARB(long handle, int access) { - var ext = GLLoader.getExtCapabilities(); + public static void glMakeImageHandleNonResidentARB(long handle) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMakeImageHandleResidentARB).invokeExact(handle, access); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMakeImageHandleNonResidentARB).invokeExact(handle); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMakeTextureHandleNonResidentARB(long handle) { - var ext = GLLoader.getExtCapabilities(); + public static void glUniformHandleui64ARB(int location, long value) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMakeTextureHandleNonResidentARB).invokeExact(handle); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniformHandleui64ARB).invokeExact(location, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMakeTextureHandleResidentARB(long handle) { - var ext = GLLoader.getExtCapabilities(); + public static void glUniformHandleui64vARB(int location, int count, @NativeType("const GLuint64 *") MemorySegment value) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMakeTextureHandleResidentARB).invokeExact(handle); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glUniformHandleui64vARB).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glProgramUniformHandleui64ARB(int program, int location, long value) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glProgramUniformHandleui64ARB).invokeExact(program, location, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glProgramUniformHandleui64ARB).invokeExact(program, location, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glProgramUniformHandleui64vARB(int program, int location, int count, MemorySegment values) { - var ext = GLLoader.getExtCapabilities(); + public static void glProgramUniformHandleui64vARB(int program, int location, int count, @NativeType("const GLuint64 *") MemorySegment values) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glProgramUniformHandleui64vARB).invokeExact(program, location, count, values); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glProgramUniformHandleui64vARB(SegmentAllocator allocator, int program, int location, long[] values) { - glProgramUniformHandleui64vARB(program, location, values.length, allocator.allocateArray(JAVA_LONG, values)); + check(ext.glProgramUniformHandleui64vARB).invokeExact(program, location, count, values); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glUniformHandleui64ARB(int location, long value) { - var ext = GLLoader.getExtCapabilities(); + public static boolean glIsTextureHandleResidentARB(long handle) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniformHandleui64ARB).invokeExact(location, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + return (boolean) + check(ext.glIsTextureHandleResidentARB).invokeExact(handle); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glUniformHandleui64vARB(int location, int count, MemorySegment value) { - var ext = GLLoader.getExtCapabilities(); + public static boolean glIsImageHandleResidentARB(long handle) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glUniformHandleui64vARB).invokeExact(location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glUniformHandleui64vARB(SegmentAllocator allocator, int location, long[] value) { - glUniformHandleui64vARB(location, value.length, allocator.allocateArray(JAVA_LONG, value)); + return (boolean) + check(ext.glIsImageHandleResidentARB).invokeExact(handle); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glVertexAttribL1ui64ARB(int index, long x) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glVertexAttribL1ui64ARB).invokeExact(index, x); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glVertexAttribL1ui64ARB).invokeExact(index, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glVertexAttribL1ui64vARB(int index, MemorySegment v) { - var ext = GLLoader.getExtCapabilities(); + public static void glVertexAttribL1ui64vARB(int index, @NativeType("const GLuint64EXT *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glVertexAttribL1ui64vARB).invokeExact(index, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glVertexAttribL1ui64vARB).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glVertexAttribL1ui64vARB(SegmentAllocator allocator, int index, long[] v) { - glVertexAttribL1ui64vARB(index, allocator.allocateArray(JAVA_LONG, v)); + public static void glGetVertexAttribLui64vARB(int index, int pname, @NativeType("GLuint64EXT *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexAttribLui64vARB).invokeExact(index, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBCLEvent.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBCLEvent.java index 4ccaa5f7..86a727a9 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBCLEvent.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBCLEvent.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,36 +14,33 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; - -import java.lang.foreign.MemorySegment; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** * {@code GL_ARB_cl_event} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBCLEvent { public static final int GL_SYNC_CL_EVENT_ARB = 0x8240; public static final int GL_SYNC_CL_EVENT_COMPLETE_ARB = 0x8241; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_cl_event) return; - ext.glCreateSyncFromCLeventARB = load.invoke("glCreateSyncFromCLeventARB", FunctionDescriptors.PPIP); + ext.glCreateSyncFromCLeventARB = load.invoke("glCreateSyncFromCLeventARB", of(ADDRESS, ADDRESS, ADDRESS, JAVA_INT)); } - public static MemorySegment glCreateSyncFromCLeventARB(MemorySegment context, MemorySegment event, int flags) { - var ext = GLLoader.getExtCapabilities(); + public static @NativeType("GLsync") MemorySegment glCreateSyncFromCLeventARB(@NativeType("struct _cl_context *") MemorySegment context, @NativeType("struct _cl_event *") MemorySegment event, int flags) { + final var ext = getExtCapabilities(); try { - return (MemorySegment) GLLoader.check(ext.glCreateSyncFromCLeventARB).invokeExact(context, event, flags); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + return (MemorySegment) + check(ext.glCreateSyncFromCLeventARB).invokeExact(context, event, flags); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBColorBufferFloat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBColorBufferFloat.java index 692246f2..1181ef5f 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBColorBufferFloat.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBColorBufferFloat.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,31 +14,35 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** * {@code GL_ARB_color_buffer_float} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBColorBufferFloat { + public static final int GL_RGBA_FLOAT_MODE_ARB = 0x8820; + public static final int GL_CLAMP_VERTEX_COLOR_ARB = 0x891A; + public static final int GL_CLAMP_FRAGMENT_COLOR_ARB = 0x891B; + public static final int GL_CLAMP_READ_COLOR_ARB = 0x891C; + public static final int GL_FIXED_ONLY_ARB = 0x891D; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_color_buffer_float) return; - ext.glClampColorARB = load.invoke("glClampColorARB", FunctionDescriptors.IIV); + ext.glClampColorARB = load.invoke("glClampColorARB", ofVoid(JAVA_INT, JAVA_INT)); } public static void glClampColorARB(int target, int clamp) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glClampColorARB).invokeExact(target, clamp); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glClampColorARB).invokeExact(target, clamp); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBComputeVariableGroupSize.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBComputeVariableGroupSize.java index f3222e98..c579e7b7 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBComputeVariableGroupSize.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBComputeVariableGroupSize.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,36 +14,34 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** * {@code GL_ARB_compute_variable_group_size} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBComputeVariableGroupSize { public static final int GL_MAX_COMPUTE_VARIABLE_GROUP_INVOCATIONS_ARB = 0x9344; public static final int GL_MAX_COMPUTE_FIXED_GROUP_INVOCATIONS_ARB = 0x90EB; public static final int GL_MAX_COMPUTE_VARIABLE_GROUP_SIZE_ARB = 0x9345; public static final int GL_MAX_COMPUTE_FIXED_GROUP_SIZE_ARB = 0x91BF; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_compute_variable_group_size) return; - ext.glDispatchComputeGroupSizeARB = load.invoke("glDispatchComputeGroupSizeARB", FunctionDescriptors.IIIIIIV); + ext.glDispatchComputeGroupSizeARB = load.invoke("glDispatchComputeGroupSizeARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); } - public static void glDispatchComputeGroupSizeARB(int numGroupsX, int numGroupsY, int numGroupsZ, int groupSizeX, int groupSizeY, int groupSizeZ) { - var ext = GLLoader.getExtCapabilities(); + public static void glDispatchComputeGroupSizeARB(int num_groups_x, int num_groups_y, int num_groups_z, int group_size_x, int group_size_y, int group_size_z) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDispatchComputeGroupSizeARB).invokeExact(numGroupsX, numGroupsY, numGroupsZ, groupSizeX, groupSizeY, groupSizeZ); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glDispatchComputeGroupSizeARB).invokeExact(num_groups_x, num_groups_y, num_groups_z, group_size_x, group_size_y, group_size_z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDebugOutput.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDebugOutput.java index b2cd1bad..0d1e3f6a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDebugOutput.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDebugOutput.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,27 +14,18 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLDebugProc; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.internal.RuntimeHelper; - -import java.lang.foreign.Arena; -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; - -import static java.lang.foreign.ValueLayout.JAVA_BYTE; -import static java.lang.foreign.ValueLayout.JAVA_INT; -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** * {@code GL_ARB_debug_output} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBDebugOutput { public static final int GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB = 0x8242; @@ -59,81 +50,45 @@ public final class GLARBDebugOutput { public static final int GL_DEBUG_SEVERITY_HIGH_ARB = 0x9146; public static final int GL_DEBUG_SEVERITY_MEDIUM_ARB = 0x9147; public static final int GL_DEBUG_SEVERITY_LOW_ARB = 0x9148; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_debug_output) return; - ext.glDebugMessageCallbackARB = load.invoke("glDebugMessageCallbackARB", PPV); - ext.glDebugMessageControlARB = load.invoke("glDebugMessageControlARB", IIIIPZV); - ext.glDebugMessageInsertARB = load.invoke("glDebugMessageInsertARB", IIIIIPV); - ext.glGetDebugMessageLogARB = load.invoke("glGetDebugMessageLogARB", IIPPPPPPI); + ext.glDebugMessageControlARB = load.invoke("glDebugMessageControlARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_BYTE)); + ext.glDebugMessageInsertARB = load.invoke("glDebugMessageInsertARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glDebugMessageCallbackARB = load.invoke("glDebugMessageCallbackARB", ofVoid(ADDRESS, ADDRESS)); + ext.glGetDebugMessageLogARB = load.invoke("glGetDebugMessageLogARB", of(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS, ADDRESS)); } - public static void glDebugMessageCallbackARB(MemorySegment callback, MemorySegment userParam) { - var ext = GLLoader.getExtCapabilities(); + public static void glDebugMessageControlARB(int source, int type, int severity, int count, @NativeType("const GLuint *") MemorySegment ids, boolean enabled) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDebugMessageCallbackARB).invokeExact(callback, userParam); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glDebugMessageCallbackARB(Arena arena, GLDebugProc callback, MemorySegment userParam) { - glDebugMessageCallbackARB(callback.address(arena), userParam); + check(ext.glDebugMessageControlARB).invokeExact(source, type, severity, count, ids, enabled); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glDebugMessageControlARB(int source, int type, int severity, int count, MemorySegment ids, boolean enabled) { - var ext = GLLoader.getExtCapabilities(); + public static void glDebugMessageInsertARB(int source, int type, int id, int severity, int length, @NativeType("const GLchar *") MemorySegment buf) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDebugMessageControlARB).invokeExact(source, type, severity, count, ids, enabled); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glDebugMessageInsertARB).invokeExact(source, type, id, severity, length, buf); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glDebugMessageControlARB(SegmentAllocator allocator, int source, int type, int severity, int count, int[] ids, boolean enabled) { - glDebugMessageControlARB(source, type, severity, count, allocator.allocateArray(JAVA_INT, ids), enabled); - } - - public static void glDebugMessageInsertARB(int source, int type, int id, int severity, int length, MemorySegment buf) { - var ext = GLLoader.getExtCapabilities(); + public static void glDebugMessageCallbackARB(@NativeType("GLDEBUGPROCARB") MemorySegment callback, @NativeType("const void *") MemorySegment userParam) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDebugMessageInsertARB).invokeExact(source, type, id, severity, length, buf); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glDebugMessageCallbackARB).invokeExact(callback, userParam); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glDebugMessageInsertARB(SegmentAllocator allocator, int source, int type, int id, int severity, String buf) { - glDebugMessageInsertARB(source, type, id, severity, -1, allocator.allocateUtf8String(buf)); + public static void glDebugMessageCallbackARB(Arena arena, GLDebugProc callback, @NativeType("const void *") MemorySegment userParam) { + glDebugMessageCallbackARB(callback.address(arena), userParam); } - public static int glGetDebugMessageLogARB(int count, int bufSize, MemorySegment sources, MemorySegment types, MemorySegment ids, MemorySegment severities, MemorySegment lengths, MemorySegment messageLog) { - var ext = GLLoader.getExtCapabilities(); + public static int glGetDebugMessageLogARB(int count, int bufSize, @NativeType("GLenum *") MemorySegment sources, @NativeType("GLenum *") MemorySegment types, @NativeType("GLuint *") MemorySegment ids, @NativeType("GLenum *") MemorySegment severities, @NativeType("GLsizei *") MemorySegment lengths, @NativeType("GLchar *") MemorySegment messageLog) { + final var ext = getExtCapabilities(); try { - return (int) GLLoader.check(ext.glGetDebugMessageLogARB).invokeExact(count, bufSize, sources, types, ids, severities, lengths, messageLog); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + return (int) + check(ext.glGetDebugMessageLogARB).invokeExact(count, bufSize, sources, types, ids, severities, lengths, messageLog); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static int glGetDebugMessageLogARB(int count, MemorySegment sources, MemorySegment types, MemorySegment ids, MemorySegment severities, MemorySegment lengths, MemorySegment messageLog) { - return glGetDebugMessageLogARB(count, (int) messageLog.byteSize(), sources, types, ids, severities, lengths, messageLog); - } - - public static int glGetDebugMessageLogARB(SegmentAllocator allocator, int count, int bufSize, int[] sources, int[] types, int[] ids, int[] severities, int[] lengths, String[] messageLog) { - var pSrc = allocator.allocateArray(JAVA_INT, sources.length); - var pTypes = allocator.allocateArray(JAVA_INT, types.length); - var pIds = allocator.allocateArray(JAVA_INT, ids.length); - var pSvr = allocator.allocateArray(JAVA_INT, severities.length); - var pLen = allocator.allocateArray(JAVA_INT, lengths.length); - var pLog = allocator.allocateArray(JAVA_BYTE, bufSize); - int num = glGetDebugMessageLogARB(count, bufSize, pSrc, pTypes, pIds, pSvr, pLen, pLog); - RuntimeHelper.toArray(pSrc, sources); - RuntimeHelper.toArray(pTypes, types); - RuntimeHelper.toArray(pIds, ids); - RuntimeHelper.toArray(pSvr, severities); - RuntimeHelper.toArray(pLen, lengths); - messageLog[0] = pLog.getUtf8String(0); - return num; - } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDepthTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDepthTexture.java new file mode 100644 index 00000000..4edddeeb --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDepthTexture.java @@ -0,0 +1,36 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.arb; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ARB_depth_texture} + */ +public final class GLARBDepthTexture { + public static final int GL_DEPTH_COMPONENT16_ARB = 0x81A5; + public static final int GL_DEPTH_COMPONENT24_ARB = 0x81A6; + public static final int GL_DEPTH_COMPONENT32_ARB = 0x81A7; + public static final int GL_TEXTURE_DEPTH_SIZE_ARB = 0x884A; + public static final int GL_DEPTH_TEXTURE_MODE_ARB = 0x884B; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDrawBuffers.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDrawBuffers.java index de21ea7b..e18300a2 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDrawBuffers.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDrawBuffers.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,39 +14,47 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; -import java.lang.foreign.ValueLayout; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** * {@code GL_ARB_draw_buffers} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBDrawBuffers { + public static final int GL_MAX_DRAW_BUFFERS_ARB = 0x8824; + public static final int GL_DRAW_BUFFER0_ARB = 0x8825; + public static final int GL_DRAW_BUFFER1_ARB = 0x8826; + public static final int GL_DRAW_BUFFER2_ARB = 0x8827; + public static final int GL_DRAW_BUFFER3_ARB = 0x8828; + public static final int GL_DRAW_BUFFER4_ARB = 0x8829; + public static final int GL_DRAW_BUFFER5_ARB = 0x882A; + public static final int GL_DRAW_BUFFER6_ARB = 0x882B; + public static final int GL_DRAW_BUFFER7_ARB = 0x882C; + public static final int GL_DRAW_BUFFER8_ARB = 0x882D; + public static final int GL_DRAW_BUFFER9_ARB = 0x882E; + public static final int GL_DRAW_BUFFER10_ARB = 0x882F; + public static final int GL_DRAW_BUFFER11_ARB = 0x8830; + public static final int GL_DRAW_BUFFER12_ARB = 0x8831; + public static final int GL_DRAW_BUFFER13_ARB = 0x8832; + public static final int GL_DRAW_BUFFER14_ARB = 0x8833; + public static final int GL_DRAW_BUFFER15_ARB = 0x8834; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_draw_buffers) return; - ext.glDrawBuffersARB = load.invoke("glDrawBuffersARB", FunctionDescriptors.IPV); + ext.glDrawBuffersARB = load.invoke("glDrawBuffersARB", ofVoid(JAVA_INT, ADDRESS)); } - public static void glDrawBuffersARB(int n, MemorySegment bufs) { - var ext = GLLoader.getExtCapabilities(); + public static void glDrawBuffersARB(int n, @NativeType("const GLenum *") MemorySegment bufs) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDrawBuffersARB).invokeExact(n, bufs); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glDrawBuffersARB).invokeExact(n, bufs); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glDrawBuffersARB(SegmentAllocator allocator, int[] bufs) { - glDrawBuffersARB(bufs.length, allocator.allocateArray(ValueLayout.JAVA_INT, bufs)); - } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDrawBuffersBlend.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDrawBuffersBlend.java index 34e08420..07362c9c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDrawBuffersBlend.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDrawBuffersBlend.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,62 +14,54 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** * {@code GL_ARB_draw_buffers_blend} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBDrawBuffersBlend { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_draw_buffers_blend) return; - ext.glBlendEquationSeparateiARB = load.invoke("glBlendEquationSeparateiARB", IIIV); - ext.glBlendEquationiARB = load.invoke("glBlendEquationiARB", IIV); - ext.glBlendFuncSeparateiARB = load.invoke("glBlendFuncSeparateiARB", IIIIIV); - ext.glBlendFunciARB = load.invoke("glBlendFunciARB", IIIV); + ext.glBlendEquationiARB = load.invoke("glBlendEquationiARB", ofVoid(JAVA_INT, JAVA_INT)); + ext.glBlendEquationSeparateiARB = load.invoke("glBlendEquationSeparateiARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glBlendFunciARB = load.invoke("glBlendFunciARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glBlendFuncSeparateiARB = load.invoke("glBlendFuncSeparateiARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); } - public static void glBlendEquationSeparateiARB(int buf, int modeRGB, int modeAlpha) { - var ext = GLLoader.getExtCapabilities(); + public static void glBlendEquationiARB(int buf, int mode) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glBlendEquationSeparateiARB).invokeExact(buf, modeRGB, modeAlpha); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glBlendEquationiARB).invokeExact(buf, mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glBlendEquationiARB(int buf, int mode) { - var ext = GLLoader.getExtCapabilities(); + public static void glBlendEquationSeparateiARB(int buf, int modeRGB, int modeAlpha) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glBlendEquationiARB).invokeExact(buf, mode); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glBlendEquationSeparateiARB).invokeExact(buf, modeRGB, modeAlpha); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glBlendFuncSeparateiARB(int buf, int srcRGB, int dstRGB, int srcAlpha, int dstAlpha) { - var ext = GLLoader.getExtCapabilities(); + public static void glBlendFunciARB(int buf, int src, int dst) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glBlendFuncSeparateiARB).invokeExact(buf, srcRGB, dstRGB, srcAlpha, dstAlpha); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glBlendFunciARB).invokeExact(buf, src, dst); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glBlendFunciARB(int buf, int src, int dst) { - var ext = GLLoader.getExtCapabilities(); + public static void glBlendFuncSeparateiARB(int buf, int srcRGB, int dstRGB, int srcAlpha, int dstAlpha) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glBlendFunciARB).invokeExact(buf, src, dst); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glBlendFuncSeparateiARB).invokeExact(buf, srcRGB, dstRGB, srcAlpha, dstAlpha); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDrawInstanced.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDrawInstanced.java index db04a620..b1db3fae 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDrawInstanced.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBDrawInstanced.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,58 +14,38 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; - +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** * {@code GL_ARB_draw_instanced} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBDrawInstanced { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_draw_instanced) return; - ext.glDrawArraysInstancedARB = load.invoke("glDrawArraysInstancedARB", FunctionDescriptors.IIIIV); - ext.glDrawElementsInstancedARB = load.invoke("glDrawElementsInstancedARB", FunctionDescriptors.IIIPIV); + ext.glDrawArraysInstancedARB = load.invoke("glDrawArraysInstancedARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glDrawElementsInstancedARB = load.invoke("glDrawElementsInstancedARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT)); } - public static void glDrawArraysInstancedARB(int mode, int first, int count, int primCount) { - var ext = GLLoader.getExtCapabilities(); + public static void glDrawArraysInstancedARB(int mode, int first, int count, int primcount) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDrawArraysInstancedARB).invokeExact(mode, first, count, primCount); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glDrawArraysInstancedARB).invokeExact(mode, first, count, primcount); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glDrawElementsInstancedARB(int mode, int count, int type, MemorySegment indices, int primCount) { - var ext = GLLoader.getExtCapabilities(); + public static void glDrawElementsInstancedARB(int mode, int count, int type, @NativeType("const void *") MemorySegment indices, int primcount) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDrawElementsInstancedARB).invokeExact(mode, count, type, indices, primCount); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glDrawElementsInstancedARB(SegmentAllocator allocator, int mode, int count, int type, byte[] indices, int primCount) { - glDrawElementsInstancedARB(mode, count, type, allocator.allocateArray(JAVA_BYTE, indices), primCount); - } - - public static void glDrawElementsInstancedARB(SegmentAllocator allocator, int mode, int count, int type, short[] indices, int primCount) { - glDrawElementsInstancedARB(mode, count, type, allocator.allocateArray(JAVA_SHORT, indices), primCount); + check(ext.glDrawElementsInstancedARB).invokeExact(mode, count, type, indices, primcount); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glDrawElementsInstancedARB(SegmentAllocator allocator, int mode, int count, int type, int[] indices, int primCount) { - glDrawElementsInstancedARB(mode, count, type, allocator.allocateArray(JAVA_INT, indices), primCount); - } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBES32Compatibility.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBES32Compatibility.java index fba123cc..dbe2f2a2 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBES32Compatibility.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBES32Compatibility.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2022-2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,35 +14,33 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_ES3_1_compatibility} - * - * @author squid233 - * @since 0.1.0 + * {@code GL_ARB_ES3_2_compatibility} */ public final class GLARBES32Compatibility { public static final int GL_PRIMITIVE_BOUNDING_BOX_ARB = 0x92BE; public static final int GL_MULTISAMPLE_LINE_WIDTH_RANGE_ARB = 0x9381; public static final int GL_MULTISAMPLE_LINE_WIDTH_GRANULARITY_ARB = 0x9382; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_ES3_2_compatibility) return; - ext.glPrimitiveBoundingBoxARB = load.invoke("glPrimitiveBoundingBoxARB", FunctionDescriptors.FFFFFFFFV); + ext.glPrimitiveBoundingBoxARB = load.invoke("glPrimitiveBoundingBoxARB", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); } public static void glPrimitiveBoundingBoxARB(float minX, float minY, float minZ, float minW, float maxX, float maxY, float maxZ, float maxW) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glPrimitiveBoundingBoxARB).invokeExact(minX, minY, minZ, minW, maxX, maxY, maxZ, maxW); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glPrimitiveBoundingBoxARB).invokeExact(minX, minY, minZ, minW, maxX, maxY, maxZ, maxW); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBFragmentProgram.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBFragmentProgram.java index b2bea9d9..61d07f40 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBFragmentProgram.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBFragmentProgram.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,283 +14,253 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.util.MemoryStack; - -import java.lang.foreign.MemorySegment; -import java.lang.foreign.SegmentAllocator; - +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; import static java.lang.foreign.ValueLayout.*; -import static overrungl.FunctionDescriptors.*; +import static overrungl.opengl.GLLoader.*; /** * {@code GL_ARB_fragment_program} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBFragmentProgram { + public static final int GL_FRAGMENT_PROGRAM_ARB = 0x8804; + public static final int GL_PROGRAM_FORMAT_ASCII_ARB = 0x8875; + public static final int GL_PROGRAM_LENGTH_ARB = 0x8627; + public static final int GL_PROGRAM_FORMAT_ARB = 0x8876; + public static final int GL_PROGRAM_BINDING_ARB = 0x8677; + public static final int GL_PROGRAM_INSTRUCTIONS_ARB = 0x88A0; + public static final int GL_MAX_PROGRAM_INSTRUCTIONS_ARB = 0x88A1; + public static final int GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A2; + public static final int GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A3; + public static final int GL_PROGRAM_TEMPORARIES_ARB = 0x88A4; + public static final int GL_MAX_PROGRAM_TEMPORARIES_ARB = 0x88A5; + public static final int GL_PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88A6; + public static final int GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88A7; + public static final int GL_PROGRAM_PARAMETERS_ARB = 0x88A8; + public static final int GL_MAX_PROGRAM_PARAMETERS_ARB = 0x88A9; + public static final int GL_PROGRAM_NATIVE_PARAMETERS_ARB = 0x88AA; + public static final int GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB = 0x88AB; + public static final int GL_PROGRAM_ATTRIBS_ARB = 0x88AC; + public static final int GL_MAX_PROGRAM_ATTRIBS_ARB = 0x88AD; + public static final int GL_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AE; + public static final int GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AF; + public static final int GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB = 0x88B4; + public static final int GL_MAX_PROGRAM_ENV_PARAMETERS_ARB = 0x88B5; + public static final int GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB = 0x88B6; + public static final int GL_PROGRAM_ALU_INSTRUCTIONS_ARB = 0x8805; + public static final int GL_PROGRAM_TEX_INSTRUCTIONS_ARB = 0x8806; + public static final int GL_PROGRAM_TEX_INDIRECTIONS_ARB = 0x8807; + public static final int GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = 0x8808; + public static final int GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = 0x8809; + public static final int GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = 0x880A; + public static final int GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB = 0x880B; + public static final int GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB = 0x880C; + public static final int GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB = 0x880D; + public static final int GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = 0x880E; + public static final int GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = 0x880F; + public static final int GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = 0x8810; + public static final int GL_PROGRAM_STRING_ARB = 0x8628; + public static final int GL_PROGRAM_ERROR_POSITION_ARB = 0x864B; + public static final int GL_CURRENT_MATRIX_ARB = 0x8641; + public static final int GL_TRANSPOSE_CURRENT_MATRIX_ARB = 0x88B7; + public static final int GL_CURRENT_MATRIX_STACK_DEPTH_ARB = 0x8640; + public static final int GL_MAX_PROGRAM_MATRICES_ARB = 0x862F; + public static final int GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB = 0x862E; + public static final int GL_MAX_TEXTURE_COORDS_ARB = 0x8871; + public static final int GL_MAX_TEXTURE_IMAGE_UNITS_ARB = 0x8872; + public static final int GL_PROGRAM_ERROR_STRING_ARB = 0x8874; + public static final int GL_MATRIX0_ARB = 0x88C0; + public static final int GL_MATRIX1_ARB = 0x88C1; + public static final int GL_MATRIX2_ARB = 0x88C2; + public static final int GL_MATRIX3_ARB = 0x88C3; + public static final int GL_MATRIX4_ARB = 0x88C4; + public static final int GL_MATRIX5_ARB = 0x88C5; + public static final int GL_MATRIX6_ARB = 0x88C6; + public static final int GL_MATRIX7_ARB = 0x88C7; + public static final int GL_MATRIX8_ARB = 0x88C8; + public static final int GL_MATRIX9_ARB = 0x88C9; + public static final int GL_MATRIX10_ARB = 0x88CA; + public static final int GL_MATRIX11_ARB = 0x88CB; + public static final int GL_MATRIX12_ARB = 0x88CC; + public static final int GL_MATRIX13_ARB = 0x88CD; + public static final int GL_MATRIX14_ARB = 0x88CE; + public static final int GL_MATRIX15_ARB = 0x88CF; + public static final int GL_MATRIX16_ARB = 0x88D0; + public static final int GL_MATRIX17_ARB = 0x88D1; + public static final int GL_MATRIX18_ARB = 0x88D2; + public static final int GL_MATRIX19_ARB = 0x88D3; + public static final int GL_MATRIX20_ARB = 0x88D4; + public static final int GL_MATRIX21_ARB = 0x88D5; + public static final int GL_MATRIX22_ARB = 0x88D6; + public static final int GL_MATRIX23_ARB = 0x88D7; + public static final int GL_MATRIX24_ARB = 0x88D8; + public static final int GL_MATRIX25_ARB = 0x88D9; + public static final int GL_MATRIX26_ARB = 0x88DA; + public static final int GL_MATRIX27_ARB = 0x88DB; + public static final int GL_MATRIX28_ARB = 0x88DC; + public static final int GL_MATRIX29_ARB = 0x88DD; + public static final int GL_MATRIX30_ARB = 0x88DE; + public static final int GL_MATRIX31_ARB = 0x88DF; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_fragment_program) return; - ext.glBindProgramARB = load.invoke("glBindProgramARB", IIV); - ext.glDeleteProgramsARB = load.invoke("glDeleteProgramsARB", IPV); - ext.glGenProgramsARB = load.invoke("glGenProgramsARB", IPV); - ext.glGetProgramEnvParameterdvARB = load.invoke("glGetProgramEnvParameterdvARB", IIPV); - ext.glGetProgramEnvParameterfvARB = load.invoke("glGetProgramEnvParameterfvARB", IIPV); - ext.glGetProgramLocalParameterdvARB = load.invoke("glGetProgramLocalParameterdvARB", IIPV); - ext.glGetProgramLocalParameterfvARB = load.invoke("glGetProgramLocalParameterfvARB", IIPV); - ext.glGetProgramStringARB = load.invoke("glGetProgramStringARB", IIPV); - ext.glGetProgramivARB = load.invoke("glGetProgramivARB", IIPV); - ext.glIsProgramARB = load.invoke("glIsProgramARB", IZ); - ext.glProgramEnvParameter4dARB = load.invoke("glProgramEnvParameter4dARB", IIDDDDV); - ext.glProgramEnvParameter4dvARB = load.invoke("glProgramEnvParameter4dvARB", IIPV); - ext.glProgramEnvParameter4fARB = load.invoke("glProgramEnvParameter4fARB", IIFFFFV); - ext.glProgramEnvParameter4fvARB = load.invoke("glProgramEnvParameter4fvARB", IIPV); - ext.glProgramLocalParameter4dARB = load.invoke("glProgramLocalParameter4dARB", IIDDDDV); - ext.glProgramLocalParameter4dvARB = load.invoke("glProgramLocalParameter4dvARB", IIPV); - ext.glProgramLocalParameter4fARB = load.invoke("glProgramLocalParameter4fARB", IIFFFFV); - ext.glProgramLocalParameter4fvARB = load.invoke("glProgramLocalParameter4fvARB", IIPV); - ext.glProgramStringARB = load.invoke("glProgramStringARB", IIIPV); - } - - public static void glBindProgramARB(int target, int program) { - var ext = GLLoader.getExtCapabilities(); + ext.glProgramStringARB = load.invoke("glProgramStringARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glBindProgramARB = load.invoke("glBindProgramARB", ofVoid(JAVA_INT, JAVA_INT)); + ext.glDeleteProgramsARB = load.invoke("glDeleteProgramsARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glGenProgramsARB = load.invoke("glGenProgramsARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glProgramEnvParameter4dARB = load.invoke("glProgramEnvParameter4dARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glProgramEnvParameter4dvARB = load.invoke("glProgramEnvParameter4dvARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramEnvParameter4fARB = load.invoke("glProgramEnvParameter4fARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glProgramEnvParameter4fvARB = load.invoke("glProgramEnvParameter4fvARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramLocalParameter4dARB = load.invoke("glProgramLocalParameter4dARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glProgramLocalParameter4dvARB = load.invoke("glProgramLocalParameter4dvARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramLocalParameter4fARB = load.invoke("glProgramLocalParameter4fARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glProgramLocalParameter4fvARB = load.invoke("glProgramLocalParameter4fvARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramEnvParameterdvARB = load.invoke("glGetProgramEnvParameterdvARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramEnvParameterfvARB = load.invoke("glGetProgramEnvParameterfvARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramLocalParameterdvARB = load.invoke("glGetProgramLocalParameterdvARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramLocalParameterfvARB = load.invoke("glGetProgramLocalParameterfvARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramivARB = load.invoke("glGetProgramivARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramStringARB = load.invoke("glGetProgramStringARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glIsProgramARB = load.invoke("glIsProgramARB", of(JAVA_BYTE, JAVA_INT)); + } + + public static void glProgramStringARB(int target, int format, int len, @NativeType("const void *") MemorySegment string) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glBindProgramARB).invokeExact(target, program); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glDeleteProgramsARB(int n, MemorySegment programs) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glDeleteProgramsARB).invokeExact(n, programs); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glDeleteProgramsARB(SegmentAllocator allocator, int[] programs) { - glDeleteProgramsARB(programs.length, allocator.allocateArray(JAVA_INT, programs)); + check(ext.glProgramStringARB).invokeExact(target, format, len, string); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glDeleteProgramARB(int program) { - MemoryStack stack = MemoryStack.stackGet(); - long stackPointer = stack.getPointer(); + public static void glBindProgramARB(int target, int program) { + final var ext = getExtCapabilities(); try { - glDeleteProgramsARB(1, stack.ints(program)); - } finally { - stack.setPointer(stackPointer); - } + check(ext.glBindProgramARB).invokeExact(target, program); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGenProgramsARB(int n, MemorySegment programs) { - var ext = GLLoader.getExtCapabilities(); + public static void glDeleteProgramsARB(int n, @NativeType("const GLuint *") MemorySegment programs) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGenProgramsARB).invokeExact(n, programs); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGenProgramsARB(SegmentAllocator allocator, int[] programs) { - glGenProgramsARB(programs.length, allocator.allocateArray(JAVA_INT, programs)); + check(ext.glDeleteProgramsARB).invokeExact(n, programs); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static int glGenProgramARB() { - MemoryStack stack = MemoryStack.stackGet(); - long stackPointer = stack.getPointer(); + public static void glGenProgramsARB(int n, @NativeType("GLuint *") MemorySegment programs) { + final var ext = getExtCapabilities(); try { - MemorySegment segment = stack.callocInt(); - glGenProgramsARB(1, segment); - return segment.get(JAVA_INT, 0); - } finally { - stack.setPointer(stackPointer); - } + check(ext.glGenProgramsARB).invokeExact(n, programs); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetProgramEnvParameterdvARB(int target, int index, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); + public static void glProgramEnvParameter4dARB(int target, int index, double x, double y, double z, double w) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetProgramEnvParameterdvARB).invokeExact(target, index, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGetProgramEnvParameterdvARB(SegmentAllocator allocator, int target, int index, double[] params) { - glGetProgramEnvParameterdvARB(target, index, allocator.allocateArray(JAVA_DOUBLE, params)); + check(ext.glProgramEnvParameter4dARB).invokeExact(target, index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetProgramEnvParameterfvARB(int target, int index, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); + public static void glProgramEnvParameter4dvARB(int target, int index, @NativeType("const GLdouble *") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetProgramEnvParameterfvARB).invokeExact(target, index, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glProgramEnvParameter4dvARB).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetProgramEnvParameterfvARB(SegmentAllocator allocator, int target, int index, float[] params) { - glGetProgramEnvParameterfvARB(target, index, allocator.allocateArray(JAVA_FLOAT, params)); - } - - public static void glGetProgramLocalParameterdvARB(int target, int index, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); + public static void glProgramEnvParameter4fARB(int target, int index, float x, float y, float z, float w) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetProgramLocalParameterdvARB).invokeExact(target, index, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGetProgramLocalParameterdvARB(SegmentAllocator allocator, int target, int index, double[] params) { - glGetProgramLocalParameterdvARB(target, index, allocator.allocateArray(JAVA_DOUBLE, params)); + check(ext.glProgramEnvParameter4fARB).invokeExact(target, index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetProgramLocalParameterfvARB(int target, int index, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); + public static void glProgramEnvParameter4fvARB(int target, int index, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetProgramLocalParameterfvARB).invokeExact(target, index, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glProgramEnvParameter4fvARB).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetProgramLocalParameterfvARB(SegmentAllocator allocator, int target, int index, float[] params) { - glGetProgramLocalParameterfvARB(target, index, allocator.allocateArray(JAVA_FLOAT, params)); - } - - public static void glGetProgramStringARB(int target, int pname, MemorySegment string) { - var ext = GLLoader.getExtCapabilities(); + public static void glProgramLocalParameter4dARB(int target, int index, double x, double y, double z, double w) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetProgramStringARB).invokeExact(target, pname, string); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glProgramLocalParameter4dARB).invokeExact(target, index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetProgramivARB(int target, int pname, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); + public static void glProgramLocalParameter4dvARB(int target, int index, @NativeType("const GLdouble *") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetProgramivARB).invokeExact(target, pname, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glProgramLocalParameter4dvARB).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetProgramivARB(SegmentAllocator allocator, int target, int pname, int[] params) { - glGetProgramivARB(target, pname, allocator.allocateArray(JAVA_INT, params)); - } - - public static boolean glIsProgramARB(int program) { - var ext = GLLoader.getExtCapabilities(); + public static void glProgramLocalParameter4fARB(int target, int index, float x, float y, float z, float w) { + final var ext = getExtCapabilities(); try { - return (boolean) GLLoader.check(ext.glIsProgramARB).invokeExact(program); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glProgramLocalParameter4fARB).invokeExact(target, index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glProgramEnvParameter4dARB(int target, int index, double x, double y, double z, double w) { - var ext = GLLoader.getExtCapabilities(); + public static void glProgramLocalParameter4fvARB(int target, int index, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glProgramEnvParameter4dARB).invokeExact(target, index, x, y, z, w); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glProgramLocalParameter4fvARB).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glProgramEnvParameter4dvARB(int target, int index, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); + public static void glGetProgramEnvParameterdvARB(int target, int index, @NativeType("GLdouble *") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glProgramEnvParameter4dvARB).invokeExact(target, index, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetProgramEnvParameterdvARB).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glProgramEnvParameter4dvARB(SegmentAllocator allocator, int target, int index, double[] params) { - glProgramEnvParameter4dvARB(target, index, allocator.allocateArray(JAVA_DOUBLE, params)); - } - - public static void glProgramEnvParameter4fARB(int target, int index, float x, float y, float z, float w) { - var ext = GLLoader.getExtCapabilities(); + public static void glGetProgramEnvParameterfvARB(int target, int index, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glProgramEnvParameter4fARB).invokeExact(target, index, x, y, z, w); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetProgramEnvParameterfvARB).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glProgramEnvParameter4fvARB(int target, int index, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); + public static void glGetProgramLocalParameterdvARB(int target, int index, @NativeType("GLdouble *") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glProgramEnvParameter4fvARB).invokeExact(target, index, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetProgramLocalParameterdvARB).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glProgramEnvParameter4fvARB(SegmentAllocator allocator, int target, int index, float[] params) { - glProgramEnvParameter4fvARB(target, index, allocator.allocateArray(JAVA_FLOAT, params)); - } - - public static void glProgramLocalParameter4dARB(int target, int index, double x, double y, double z, double w) { - var ext = GLLoader.getExtCapabilities(); + public static void glGetProgramLocalParameterfvARB(int target, int index, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glProgramLocalParameter4dARB).invokeExact(target, index, x, y, z, w); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetProgramLocalParameterfvARB).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glProgramLocalParameter4dvARB(int target, int index, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); + public static void glGetProgramivARB(int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glProgramLocalParameter4dvARB).invokeExact(target, index, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetProgramivARB).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glProgramLocalParameter4dvARB(SegmentAllocator allocator, int target, int index, double[] params) { - glProgramLocalParameter4dvARB(target, index, allocator.allocateArray(JAVA_DOUBLE, params)); - } - - public static void glProgramLocalParameter4fARB(int target, int index, float x, float y, float z, float w) { - var ext = GLLoader.getExtCapabilities(); + public static void glGetProgramStringARB(int target, int pname, @NativeType("void *") MemorySegment string) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glProgramLocalParameter4fARB).invokeExact(target, index, x, y, z, w); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetProgramStringARB).invokeExact(target, pname, string); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glProgramLocalParameter4fvARB(int target, int index, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); + public static boolean glIsProgramARB(int program) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glProgramLocalParameter4fvARB).invokeExact(target, index, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glProgramLocalParameter4fvARB(SegmentAllocator allocator, int target, int index, float[] params) { - glProgramLocalParameter4fvARB(target, index, allocator.allocateArray(JAVA_FLOAT, params)); + return (boolean) + check(ext.glIsProgramARB).invokeExact(program); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glProgramStringARB(int target, int format, int len, MemorySegment string) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glProgramStringARB).invokeExact(target, format, len, string); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBFragmentShader.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBFragmentShader.java new file mode 100644 index 00000000..9e414821 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBFragmentShader.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.arb; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ARB_fragment_shader} + */ +public final class GLARBFragmentShader { + public static final int GL_FRAGMENT_SHADER_ARB = 0x8B30; + public static final int GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB = 0x8B49; + public static final int GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB = 0x8B8B; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBGLSpirv.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBGLSpirv.java index c8d54706..c00670ef 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBGLSpirv.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBGLSpirv.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,36 +14,32 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; - -import java.lang.foreign.MemorySegment; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** * {@code GL_ARB_gl_spirv} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBGLSpirv { public static final int GL_SHADER_BINARY_FORMAT_SPIR_V_ARB = 0x9551; public static final int GL_SPIR_V_BINARY_ARB = 0x9552; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_gl_spirv) return; - ext.glSpecializeShaderARB = load.invoke("glSpecializeShaderARB", FunctionDescriptors.IPIPPV); + ext.glSpecializeShaderARB = load.invoke("glSpecializeShaderARB", ofVoid(JAVA_INT, ADDRESS, JAVA_INT, ADDRESS, ADDRESS)); } - public static void glSpecializeShaderARB(int shader, MemorySegment pEntryPoint, int numSpecializationConstants, MemorySegment pConstantIndex, MemorySegment pConstantValue) { - var ext = GLLoader.getExtCapabilities(); + public static void glSpecializeShaderARB(int shader, @NativeType("const GLchar *") MemorySegment pEntryPoint, int numSpecializationConstants, @NativeType("const GLuint *") MemorySegment pConstantIndex, @NativeType("const GLuint *") MemorySegment pConstantValue) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glSpecializeShaderARB).invokeExact(shader, pEntryPoint, numSpecializationConstants, pConstantIndex, pConstantValue); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glSpecializeShaderARB).invokeExact(shader, pEntryPoint, numSpecializationConstants, pConstantIndex, pConstantValue); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBGPUShaderInt64.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBGPUShaderInt64.java deleted file mode 100644 index cc604094..00000000 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBGPUShaderInt64.java +++ /dev/null @@ -1,405 +0,0 @@ -/* - * MIT License - * - * Copyright (c) 2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - -package overrungl.opengl.ext.arb; - -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import java.lang.foreign.MemorySegment; - -import static overrungl.FunctionDescriptors.*; - -/** - * {@code GL_ARB_gpu_shader_int64} - * - * @author squid233 - * @since 0.1.0 - */ -public final class GLARBGPUShaderInt64 { - public static final int GL_INT64_ARB = 0x140E; - public static final int GL_INT64_VEC2_ARB = 0x8FE9; - public static final int GL_INT64_VEC3_ARB = 0x8FEA; - public static final int GL_INT64_VEC4_ARB = 0x8FEB; - public static final int GL_UNSIGNED_INT64_VEC2_ARB = 0x8FF5; - public static final int GL_UNSIGNED_INT64_VEC3_ARB = 0x8FF6; - public static final int GL_UNSIGNED_INT64_VEC4_ARB = 0x8FF7; - - public static void load(GLExtCaps ext, GLLoadFunc load) { - if (!ext.GL_ARB_gpu_shader_int64) return; - ext.glGetUniformi64vARB = load.invoke("glGetUniformi64vARB", IIPV); - ext.glGetUniformui64vARB = load.invoke("glGetUniformui64vARB", IIPV); - ext.glGetnUniformi64vARB = load.invoke("glGetnUniformi64vARB", IIIPV); - ext.glGetnUniformui64vARB = load.invoke("glGetnUniformui64vARB", IIIPV); - ext.glProgramUniform1i64ARB = load.invoke("glProgramUniform1i64ARB", IIJV); - ext.glProgramUniform1i64vARB = load.invoke("glProgramUniform1i64vARB", IIIPV); - ext.glProgramUniform1ui64ARB = load.invoke("glProgramUniform1ui64ARB", IIJV); - ext.glProgramUniform1ui64vARB = load.invoke("glProgramUniform1ui64vARB", IIIPV); - ext.glProgramUniform2i64ARB = load.invoke("glProgramUniform2i64ARB", IIJJV); - ext.glProgramUniform2i64vARB = load.invoke("glProgramUniform2i64vARB", IIIPV); - ext.glProgramUniform2ui64ARB = load.invoke("glProgramUniform2ui64ARB", IIJJV); - ext.glProgramUniform2ui64vARB = load.invoke("glProgramUniform2ui64vARB", IIIPV); - ext.glProgramUniform3i64ARB = load.invoke("glProgramUniform3i64ARB", IIJJJV); - ext.glProgramUniform3i64vARB = load.invoke("glProgramUniform3i64vARB", IIIPV); - ext.glProgramUniform3ui64ARB = load.invoke("glProgramUniform3ui64ARB", IIJJJV); - ext.glProgramUniform3ui64vARB = load.invoke("glProgramUniform3ui64vARB", IIIPV); - ext.glProgramUniform4i64ARB = load.invoke("glProgramUniform4i64ARB", IIJJJJV); - ext.glProgramUniform4i64vARB = load.invoke("glProgramUniform4i64vARB", IIIPV); - ext.glProgramUniform4ui64ARB = load.invoke("glProgramUniform4ui64ARB", IIJJJJV); - ext.glProgramUniform4ui64vARB = load.invoke("glProgramUniform4ui64vARB", IIIPV); - ext.glUniform1i64ARB = load.invoke("glUniform1i64ARB", IJV); - ext.glUniform1i64vARB = load.invoke("glUniform1i64vARB", IIPV); - ext.glUniform1ui64ARB = load.invoke("glUniform1ui64ARB", IJV); - ext.glUniform1ui64vARB = load.invoke("glUniform1ui64vARB", IIPV); - ext.glUniform2i64ARB = load.invoke("glUniform2i64ARB", IJJV); - ext.glUniform2i64vARB = load.invoke("glUniform2i64vARB", IIPV); - ext.glUniform2ui64ARB = load.invoke("glUniform2ui64ARB", IJJV); - ext.glUniform2ui64vARB = load.invoke("glUniform2ui64vARB", IIPV); - ext.glUniform3i64ARB = load.invoke("glUniform3i64ARB", IJJJV); - ext.glUniform3i64vARB = load.invoke("glUniform3i64vARB", IIPV); - ext.glUniform3ui64ARB = load.invoke("glUniform3ui64ARB", IJJJV); - ext.glUniform3ui64vARB = load.invoke("glUniform3ui64vARB", IIPV); - ext.glUniform4i64ARB = load.invoke("glUniform4i64ARB", IJJJJV); - ext.glUniform4i64vARB = load.invoke("glUniform4i64vARB", IIPV); - ext.glUniform4ui64ARB = load.invoke("glUniform4ui64ARB", IJJJJV); - ext.glUniform4ui64vARB = load.invoke("glUniform4ui64vARB", IIPV); - } - - public static void glGetUniformi64vARB(int program, int location, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glGetUniformi64vARB).invokeExact(program, location, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGetUniformui64vARB(int program, int location, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glGetUniformui64vARB).invokeExact(program, location, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGetnUniformi64vARB(int program, int location, int bufSize, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glGetnUniformi64vARB).invokeExact(program, location, bufSize, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glGetnUniformui64vARB(int program, int location, int bufSize, MemorySegment params) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glGetnUniformui64vARB).invokeExact(program, location, bufSize, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glProgramUniform1i64ARB(int program, int location, long x) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glProgramUniform1i64ARB).invokeExact(program, location, x); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glProgramUniform1i64vARB(int program, int location, int count, MemorySegment value) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glProgramUniform1i64vARB).invokeExact(program, location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glProgramUniform1ui64ARB(int program, int location, long x) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glProgramUniform1ui64ARB).invokeExact(program, location, x); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glProgramUniform1ui64vARB(int program, int location, int count, MemorySegment value) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glProgramUniform1ui64vARB).invokeExact(program, location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glProgramUniform2i64ARB(int program, int location, long x, long y) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glProgramUniform2i64ARB).invokeExact(program, location, x, y); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glProgramUniform2i64vARB(int program, int location, int count, MemorySegment value) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glProgramUniform2i64vARB).invokeExact(program, location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glProgramUniform2ui64ARB(int program, int location, long x, long y) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glProgramUniform2ui64ARB).invokeExact(program, location, x, y); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glProgramUniform2ui64vARB(int program, int location, int count, MemorySegment value) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glProgramUniform2ui64vARB).invokeExact(program, location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glProgramUniform3i64ARB(int program, int location, long x, long y, long z) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glProgramUniform3i64ARB).invokeExact(program, location, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glProgramUniform3i64vARB(int program, int location, int count, MemorySegment value) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glProgramUniform3i64vARB).invokeExact(program, location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glProgramUniform3ui64ARB(int program, int location, long x, long y, long z) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glProgramUniform3ui64ARB).invokeExact(program, location, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glProgramUniform3ui64vARB(int program, int location, int count, MemorySegment value) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glProgramUniform3ui64vARB).invokeExact(program, location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glProgramUniform4i64ARB(int program, int location, long x, long y, long z, long w) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glProgramUniform4i64ARB).invokeExact(program, location, x, y, z, w); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glProgramUniform4i64vARB(int program, int location, int count, MemorySegment value) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glProgramUniform4i64vARB).invokeExact(program, location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glProgramUniform4ui64ARB(int program, int location, long x, long y, long z, long w) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glProgramUniform4ui64ARB).invokeExact(program, location, x, y, z, w); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glProgramUniform4ui64vARB(int program, int location, int count, MemorySegment value) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glProgramUniform4ui64vARB).invokeExact(program, location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glUniform1i64ARB(int location, long x) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glUniform1i64ARB).invokeExact(location, x); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glUniform1i64vARB(int location, int count, MemorySegment value) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glUniform1i64vARB).invokeExact(location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glUniform1ui64ARB(int location, long x) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glUniform1ui64ARB).invokeExact(location, x); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glUniform1ui64vARB(int location, int count, MemorySegment value) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glUniform1ui64vARB).invokeExact(location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glUniform2i64ARB(int location, long x, long y) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glUniform2i64ARB).invokeExact(location, x, y); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glUniform2i64vARB(int location, int count, MemorySegment value) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glUniform2i64vARB).invokeExact(location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glUniform2ui64ARB(int location, long x, long y) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glUniform2ui64ARB).invokeExact(location, x, y); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glUniform2ui64vARB(int location, int count, MemorySegment value) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glUniform2ui64vARB).invokeExact(location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glUniform3i64ARB(int location, long x, long y, long z) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glUniform3i64ARB).invokeExact(location, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glUniform3i64vARB(int location, int count, MemorySegment value) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glUniform3i64vARB).invokeExact(location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glUniform3ui64ARB(int location, long x, long y, long z) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glUniform3ui64ARB).invokeExact(location, x, y, z); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glUniform3ui64vARB(int location, int count, MemorySegment value) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glUniform3ui64vARB).invokeExact(location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glUniform4i64ARB(int location, long x, long y, long z, long w) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glUniform4i64ARB).invokeExact(location, x, y, z, w); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glUniform4i64vARB(int location, int count, MemorySegment value) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glUniform4i64vARB).invokeExact(location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glUniform4ui64ARB(int location, long x, long y, long z, long w) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glUniform4ui64ARB).invokeExact(location, x, y, z, w); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } - - public static void glUniform4ui64vARB(int location, int count, MemorySegment value) { - var ext = GLLoader.getExtCapabilities(); - try { - GLLoader.check(ext.glUniform4ui64vARB).invokeExact(location, count, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } - } -} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBGeometryShader4.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBGeometryShader4.java index 0fdf6b36..a2e61f4a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBGeometryShader4.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBGeometryShader4.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,19 +14,18 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** * {@code GL_ARB_geometry_shader4} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBGeometryShader4 { public static final int GL_LINES_ADJACENCY_ARB = 0x000A; @@ -47,48 +46,40 @@ public final class GLARBGeometryShader4 { public static final int GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB = 0x8DDF; public static final int GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB = 0x8DE0; public static final int GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB = 0x8DE1; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_geometry_shader4) return; - ext.glFramebufferTextureARB = load.invoke("glFramebufferTextureARB", IIIIV); - ext.glFramebufferTextureFaceARB = load.invoke("glFramebufferTextureFaceARB", IIIIIV); - ext.glFramebufferTextureLayerARB = load.invoke("glFramebufferTextureLayerARB", IIIIIV); - ext.glProgramParameteriARB = load.invoke("glProgramParameteriARB", IIIV); + ext.glProgramParameteriARB = load.invoke("glProgramParameteriARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glFramebufferTextureARB = load.invoke("glFramebufferTextureARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glFramebufferTextureLayerARB = load.invoke("glFramebufferTextureLayerARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glFramebufferTextureFaceARB = load.invoke("glFramebufferTextureFaceARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); } - public static void glFramebufferTextureARB(int target, int attachment, int texture, int level) { - var ext = GLLoader.getExtCapabilities(); + public static void glProgramParameteriARB(int program, int pname, int value) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glFramebufferTextureARB).invokeExact(target, attachment, texture, level); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glProgramParameteriARB).invokeExact(program, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glFramebufferTextureFaceARB(int target, int attachment, int texture, int level, int face) { - var ext = GLLoader.getExtCapabilities(); + public static void glFramebufferTextureARB(int target, int attachment, int texture, int level) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glFramebufferTextureFaceARB).invokeExact(target, attachment, texture, level, face); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glFramebufferTextureARB).invokeExact(target, attachment, texture, level); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glFramebufferTextureLayerARB(int target, int attachment, int texture, int level, int layer) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glFramebufferTextureLayerARB).invokeExact(target, attachment, texture, level, layer); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glFramebufferTextureLayerARB).invokeExact(target, attachment, texture, level, layer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glProgramParameteriARB(int program, int pname, int value) { - var ext = GLLoader.getExtCapabilities(); + public static void glFramebufferTextureFaceARB(int target, int attachment, int texture, int level, int face) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glProgramParameteriARB).invokeExact(program, pname, value); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glFramebufferTextureFaceARB).invokeExact(target, attachment, texture, level, face); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBGpuShaderInt64.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBGpuShaderInt64.java new file mode 100644 index 00000000..366af38e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBGpuShaderInt64.java @@ -0,0 +1,330 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.arb; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ARB_gpu_shader_int64} + */ +public final class GLARBGpuShaderInt64 { + public static final int GL_INT64_ARB = 0x140E; + public static final int GL_INT64_VEC2_ARB = 0x8FE9; + public static final int GL_INT64_VEC3_ARB = 0x8FEA; + public static final int GL_INT64_VEC4_ARB = 0x8FEB; + public static final int GL_UNSIGNED_INT64_VEC2_ARB = 0x8FF5; + public static final int GL_UNSIGNED_INT64_VEC3_ARB = 0x8FF6; + public static final int GL_UNSIGNED_INT64_VEC4_ARB = 0x8FF7; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_ARB_gpu_shader_int64) return; + ext.glUniform1i64ARB = load.invoke("glUniform1i64ARB", ofVoid(JAVA_INT, JAVA_LONG)); + ext.glUniform2i64ARB = load.invoke("glUniform2i64ARB", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG)); + ext.glUniform3i64ARB = load.invoke("glUniform3i64ARB", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glUniform4i64ARB = load.invoke("glUniform4i64ARB", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glUniform1i64vARB = load.invoke("glUniform1i64vARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform2i64vARB = load.invoke("glUniform2i64vARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform3i64vARB = load.invoke("glUniform3i64vARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform4i64vARB = load.invoke("glUniform4i64vARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform1ui64ARB = load.invoke("glUniform1ui64ARB", ofVoid(JAVA_INT, JAVA_LONG)); + ext.glUniform2ui64ARB = load.invoke("glUniform2ui64ARB", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG)); + ext.glUniform3ui64ARB = load.invoke("glUniform3ui64ARB", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glUniform4ui64ARB = load.invoke("glUniform4ui64ARB", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glUniform1ui64vARB = load.invoke("glUniform1ui64vARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform2ui64vARB = load.invoke("glUniform2ui64vARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform3ui64vARB = load.invoke("glUniform3ui64vARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform4ui64vARB = load.invoke("glUniform4ui64vARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetUniformi64vARB = load.invoke("glGetUniformi64vARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetUniformui64vARB = load.invoke("glGetUniformui64vARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetnUniformi64vARB = load.invoke("glGetnUniformi64vARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetnUniformui64vARB = load.invoke("glGetnUniformui64vARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform1i64ARB = load.invoke("glProgramUniform1i64ARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glProgramUniform2i64ARB = load.invoke("glProgramUniform2i64ARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG)); + ext.glProgramUniform3i64ARB = load.invoke("glProgramUniform3i64ARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glProgramUniform4i64ARB = load.invoke("glProgramUniform4i64ARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glProgramUniform1i64vARB = load.invoke("glProgramUniform1i64vARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform2i64vARB = load.invoke("glProgramUniform2i64vARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform3i64vARB = load.invoke("glProgramUniform3i64vARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform4i64vARB = load.invoke("glProgramUniform4i64vARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform1ui64ARB = load.invoke("glProgramUniform1ui64ARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glProgramUniform2ui64ARB = load.invoke("glProgramUniform2ui64ARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG)); + ext.glProgramUniform3ui64ARB = load.invoke("glProgramUniform3ui64ARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glProgramUniform4ui64ARB = load.invoke("glProgramUniform4ui64ARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glProgramUniform1ui64vARB = load.invoke("glProgramUniform1ui64vARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform2ui64vARB = load.invoke("glProgramUniform2ui64vARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform3ui64vARB = load.invoke("glProgramUniform3ui64vARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform4ui64vARB = load.invoke("glProgramUniform4ui64vARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glUniform1i64ARB(int location, long x) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform1i64ARB).invokeExact(location, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform2i64ARB(int location, long x, long y) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform2i64ARB).invokeExact(location, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform3i64ARB(int location, long x, long y, long z) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform3i64ARB).invokeExact(location, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform4i64ARB(int location, long x, long y, long z, long w) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform4i64ARB).invokeExact(location, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform1i64vARB(int location, int count, @NativeType("const GLint64 *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform1i64vARB).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform2i64vARB(int location, int count, @NativeType("const GLint64 *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform2i64vARB).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform3i64vARB(int location, int count, @NativeType("const GLint64 *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform3i64vARB).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform4i64vARB(int location, int count, @NativeType("const GLint64 *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform4i64vARB).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform1ui64ARB(int location, long x) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform1ui64ARB).invokeExact(location, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform2ui64ARB(int location, long x, long y) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform2ui64ARB).invokeExact(location, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform3ui64ARB(int location, long x, long y, long z) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform3ui64ARB).invokeExact(location, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform4ui64ARB(int location, long x, long y, long z, long w) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform4ui64ARB).invokeExact(location, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform1ui64vARB(int location, int count, @NativeType("const GLuint64 *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform1ui64vARB).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform2ui64vARB(int location, int count, @NativeType("const GLuint64 *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform2ui64vARB).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform3ui64vARB(int location, int count, @NativeType("const GLuint64 *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform3ui64vARB).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform4ui64vARB(int location, int count, @NativeType("const GLuint64 *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform4ui64vARB).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetUniformi64vARB(int program, int location, @NativeType("GLint64 *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetUniformi64vARB).invokeExact(program, location, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetUniformui64vARB(int program, int location, @NativeType("GLuint64 *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetUniformui64vARB).invokeExact(program, location, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetnUniformi64vARB(int program, int location, int bufSize, @NativeType("GLint64 *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetnUniformi64vARB).invokeExact(program, location, bufSize, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetnUniformui64vARB(int program, int location, int bufSize, @NativeType("GLuint64 *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetnUniformui64vARB).invokeExact(program, location, bufSize, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform1i64ARB(int program, int location, long x) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform1i64ARB).invokeExact(program, location, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform2i64ARB(int program, int location, long x, long y) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform2i64ARB).invokeExact(program, location, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform3i64ARB(int program, int location, long x, long y, long z) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform3i64ARB).invokeExact(program, location, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform4i64ARB(int program, int location, long x, long y, long z, long w) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform4i64ARB).invokeExact(program, location, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform1i64vARB(int program, int location, int count, @NativeType("const GLint64 *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform1i64vARB).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform2i64vARB(int program, int location, int count, @NativeType("const GLint64 *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform2i64vARB).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform3i64vARB(int program, int location, int count, @NativeType("const GLint64 *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform3i64vARB).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform4i64vARB(int program, int location, int count, @NativeType("const GLint64 *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform4i64vARB).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform1ui64ARB(int program, int location, long x) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform1ui64ARB).invokeExact(program, location, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform2ui64ARB(int program, int location, long x, long y) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform2ui64ARB).invokeExact(program, location, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform3ui64ARB(int program, int location, long x, long y, long z) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform3ui64ARB).invokeExact(program, location, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform4ui64ARB(int program, int location, long x, long y, long z, long w) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform4ui64ARB).invokeExact(program, location, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform1ui64vARB(int program, int location, int count, @NativeType("const GLuint64 *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform1ui64vARB).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform2ui64vARB(int program, int location, int count, @NativeType("const GLuint64 *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform2ui64vARB).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform3ui64vARB(int program, int location, int count, @NativeType("const GLuint64 *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform3ui64vARB).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform4ui64vARB(int program, int location, int count, @NativeType("const GLuint64 *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform4ui64vARB).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBHalfFloatPixel.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBHalfFloatPixel.java new file mode 100644 index 00000000..a7531247 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBHalfFloatPixel.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.arb; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ARB_half_float_pixel} + */ +public final class GLARBHalfFloatPixel { + public static final int GL_HALF_FLOAT_ARB = 0x140B; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBImaging.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBImaging.java new file mode 100644 index 00000000..67ca262a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBImaging.java @@ -0,0 +1,343 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.arb; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ARB_imaging} + */ +public final class GLARBImaging { + public static final int GL_CONVOLUTION_BORDER_MODE = 0x8013; + public static final int GL_CONVOLUTION_FILTER_SCALE = 0x8014; + public static final int GL_CONVOLUTION_FILTER_BIAS = 0x8015; + public static final int GL_REDUCE = 0x8016; + public static final int GL_CONVOLUTION_FORMAT = 0x8017; + public static final int GL_CONVOLUTION_WIDTH = 0x8018; + public static final int GL_CONVOLUTION_HEIGHT = 0x8019; + public static final int GL_MAX_CONVOLUTION_WIDTH = 0x801A; + public static final int GL_MAX_CONVOLUTION_HEIGHT = 0x801B; + public static final int GL_POST_CONVOLUTION_RED_SCALE = 0x801C; + public static final int GL_POST_CONVOLUTION_GREEN_SCALE = 0x801D; + public static final int GL_POST_CONVOLUTION_BLUE_SCALE = 0x801E; + public static final int GL_POST_CONVOLUTION_ALPHA_SCALE = 0x801F; + public static final int GL_POST_CONVOLUTION_RED_BIAS = 0x8020; + public static final int GL_POST_CONVOLUTION_GREEN_BIAS = 0x8021; + public static final int GL_POST_CONVOLUTION_BLUE_BIAS = 0x8022; + public static final int GL_POST_CONVOLUTION_ALPHA_BIAS = 0x8023; + public static final int GL_HISTOGRAM_WIDTH = 0x8026; + public static final int GL_HISTOGRAM_FORMAT = 0x8027; + public static final int GL_HISTOGRAM_RED_SIZE = 0x8028; + public static final int GL_HISTOGRAM_GREEN_SIZE = 0x8029; + public static final int GL_HISTOGRAM_BLUE_SIZE = 0x802A; + public static final int GL_HISTOGRAM_ALPHA_SIZE = 0x802B; + public static final int GL_HISTOGRAM_LUMINANCE_SIZE = 0x802C; + public static final int GL_HISTOGRAM_SINK = 0x802D; + public static final int GL_MINMAX_FORMAT = 0x802F; + public static final int GL_MINMAX_SINK = 0x8030; + public static final int GL_TABLE_TOO_LARGE = 0x8031; + public static final int GL_COLOR_MATRIX = 0x80B1; + public static final int GL_COLOR_MATRIX_STACK_DEPTH = 0x80B2; + public static final int GL_MAX_COLOR_MATRIX_STACK_DEPTH = 0x80B3; + public static final int GL_POST_COLOR_MATRIX_RED_SCALE = 0x80B4; + public static final int GL_POST_COLOR_MATRIX_GREEN_SCALE = 0x80B5; + public static final int GL_POST_COLOR_MATRIX_BLUE_SCALE = 0x80B6; + public static final int GL_POST_COLOR_MATRIX_ALPHA_SCALE = 0x80B7; + public static final int GL_POST_COLOR_MATRIX_RED_BIAS = 0x80B8; + public static final int GL_POST_COLOR_MATRIX_GREEN_BIAS = 0x80B9; + public static final int GL_POST_COLOR_MATRIX_BLUE_BIAS = 0x80BA; + public static final int GL_POST_COLOR_MATRIX_ALPHA_BIAS = 0x80BB; + public static final int GL_COLOR_TABLE_SCALE = 0x80D6; + public static final int GL_COLOR_TABLE_BIAS = 0x80D7; + public static final int GL_COLOR_TABLE_FORMAT = 0x80D8; + public static final int GL_COLOR_TABLE_WIDTH = 0x80D9; + public static final int GL_COLOR_TABLE_RED_SIZE = 0x80DA; + public static final int GL_COLOR_TABLE_GREEN_SIZE = 0x80DB; + public static final int GL_COLOR_TABLE_BLUE_SIZE = 0x80DC; + public static final int GL_COLOR_TABLE_ALPHA_SIZE = 0x80DD; + public static final int GL_COLOR_TABLE_LUMINANCE_SIZE = 0x80DE; + public static final int GL_COLOR_TABLE_INTENSITY_SIZE = 0x80DF; + public static final int GL_CONSTANT_BORDER = 0x8151; + public static final int GL_REPLICATE_BORDER = 0x8153; + public static final int GL_CONVOLUTION_BORDER_COLOR = 0x8154; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_ARB_imaging) return; + ext.glColorTable = load.invoke("glColorTable", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glColorTableParameterfv = load.invoke("glColorTableParameterfv", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glColorTableParameteriv = load.invoke("glColorTableParameteriv", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCopyColorTable = load.invoke("glCopyColorTable", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetColorTable = load.invoke("glGetColorTable", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetColorTableParameterfv = load.invoke("glGetColorTableParameterfv", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetColorTableParameteriv = load.invoke("glGetColorTableParameteriv", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glColorSubTable = load.invoke("glColorSubTable", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCopyColorSubTable = load.invoke("glCopyColorSubTable", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glConvolutionFilter1D = load.invoke("glConvolutionFilter1D", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glConvolutionFilter2D = load.invoke("glConvolutionFilter2D", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glConvolutionParameterf = load.invoke("glConvolutionParameterf", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glConvolutionParameterfv = load.invoke("glConvolutionParameterfv", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glConvolutionParameteri = load.invoke("glConvolutionParameteri", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glConvolutionParameteriv = load.invoke("glConvolutionParameteriv", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCopyConvolutionFilter1D = load.invoke("glCopyConvolutionFilter1D", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glCopyConvolutionFilter2D = load.invoke("glCopyConvolutionFilter2D", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetConvolutionFilter = load.invoke("glGetConvolutionFilter", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetConvolutionParameterfv = load.invoke("glGetConvolutionParameterfv", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetConvolutionParameteriv = load.invoke("glGetConvolutionParameteriv", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetSeparableFilter = load.invoke("glGetSeparableFilter", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, ADDRESS, ADDRESS)); + ext.glSeparableFilter2D = load.invoke("glSeparableFilter2D", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glGetHistogram = load.invoke("glGetHistogram", ofVoid(JAVA_INT, JAVA_BYTE, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetHistogramParameterfv = load.invoke("glGetHistogramParameterfv", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetHistogramParameteriv = load.invoke("glGetHistogramParameteriv", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMinmax = load.invoke("glGetMinmax", ofVoid(JAVA_INT, JAVA_BYTE, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMinmaxParameterfv = load.invoke("glGetMinmaxParameterfv", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMinmaxParameteriv = load.invoke("glGetMinmaxParameteriv", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glHistogram = load.invoke("glHistogram", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE)); + ext.glMinmax = load.invoke("glMinmax", ofVoid(JAVA_INT, JAVA_INT, JAVA_BYTE)); + ext.glResetHistogram = load.invoke("glResetHistogram", ofVoid(JAVA_INT)); + ext.glResetMinmax = load.invoke("glResetMinmax", ofVoid(JAVA_INT)); + } + + public static void glColorTable(int target, int internalformat, int width, int format, int type, @NativeType("const void *") MemorySegment table) { + final var ext = getExtCapabilities(); + try { + check(ext.glColorTable).invokeExact(target, internalformat, width, format, type, table); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColorTableParameterfv(int target, int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glColorTableParameterfv).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColorTableParameteriv(int target, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glColorTableParameteriv).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyColorTable(int target, int internalformat, int x, int y, int width) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyColorTable).invokeExact(target, internalformat, x, y, width); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetColorTable(int target, int format, int type, @NativeType("void *") MemorySegment table) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetColorTable).invokeExact(target, format, type, table); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetColorTableParameterfv(int target, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetColorTableParameterfv).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetColorTableParameteriv(int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetColorTableParameteriv).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColorSubTable(int target, int start, int count, int format, int type, @NativeType("const void *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glColorSubTable).invokeExact(target, start, count, format, type, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyColorSubTable(int target, int start, int x, int y, int width) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyColorSubTable).invokeExact(target, start, x, y, width); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glConvolutionFilter1D(int target, int internalformat, int width, int format, int type, @NativeType("const void *") MemorySegment image) { + final var ext = getExtCapabilities(); + try { + check(ext.glConvolutionFilter1D).invokeExact(target, internalformat, width, format, type, image); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glConvolutionFilter2D(int target, int internalformat, int width, int height, int format, int type, @NativeType("const void *") MemorySegment image) { + final var ext = getExtCapabilities(); + try { + check(ext.glConvolutionFilter2D).invokeExact(target, internalformat, width, height, format, type, image); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glConvolutionParameterf(int target, int pname, float params) { + final var ext = getExtCapabilities(); + try { + check(ext.glConvolutionParameterf).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glConvolutionParameterfv(int target, int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glConvolutionParameterfv).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glConvolutionParameteri(int target, int pname, int params) { + final var ext = getExtCapabilities(); + try { + check(ext.glConvolutionParameteri).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glConvolutionParameteriv(int target, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glConvolutionParameteriv).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyConvolutionFilter1D(int target, int internalformat, int x, int y, int width) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyConvolutionFilter1D).invokeExact(target, internalformat, x, y, width); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyConvolutionFilter2D(int target, int internalformat, int x, int y, int width, int height) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyConvolutionFilter2D).invokeExact(target, internalformat, x, y, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetConvolutionFilter(int target, int format, int type, @NativeType("void *") MemorySegment image) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetConvolutionFilter).invokeExact(target, format, type, image); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetConvolutionParameterfv(int target, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetConvolutionParameterfv).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetConvolutionParameteriv(int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetConvolutionParameteriv).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetSeparableFilter(int target, int format, int type, @NativeType("void *") MemorySegment row, @NativeType("void *") MemorySegment column, @NativeType("void *") MemorySegment span) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetSeparableFilter).invokeExact(target, format, type, row, column, span); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSeparableFilter2D(int target, int internalformat, int width, int height, int format, int type, @NativeType("const void *") MemorySegment row, @NativeType("const void *") MemorySegment column) { + final var ext = getExtCapabilities(); + try { + check(ext.glSeparableFilter2D).invokeExact(target, internalformat, width, height, format, type, row, column); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetHistogram(int target, boolean reset, int format, int type, @NativeType("void *") MemorySegment values) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetHistogram).invokeExact(target, reset, format, type, values); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetHistogramParameterfv(int target, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetHistogramParameterfv).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetHistogramParameteriv(int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetHistogramParameteriv).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMinmax(int target, boolean reset, int format, int type, @NativeType("void *") MemorySegment values) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMinmax).invokeExact(target, reset, format, type, values); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMinmaxParameterfv(int target, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMinmaxParameterfv).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMinmaxParameteriv(int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMinmaxParameteriv).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glHistogram(int target, int width, int internalformat, boolean sink) { + final var ext = getExtCapabilities(); + try { + check(ext.glHistogram).invokeExact(target, width, internalformat, sink); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMinmax(int target, int internalformat, boolean sink) { + final var ext = getExtCapabilities(); + try { + check(ext.glMinmax).invokeExact(target, internalformat, sink); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glResetHistogram(int target) { + final var ext = getExtCapabilities(); + try { + check(ext.glResetHistogram).invokeExact(target); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glResetMinmax(int target) { + final var ext = getExtCapabilities(); + try { + check(ext.glResetMinmax).invokeExact(target); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBIndirectParameters.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBIndirectParameters.java index b75f1431..366db1d4 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBIndirectParameters.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBIndirectParameters.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,46 +14,40 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; - -import java.lang.foreign.MemorySegment; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** * {@code GL_ARB_indirect_parameters} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBIndirectParameters { public static final int GL_PARAMETER_BUFFER_ARB = 0x80EE; public static final int GL_PARAMETER_BUFFER_BINDING_ARB = 0x80EF; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_indirect_parameters) return; - ext.glMultiDrawArraysIndirectCountARB = load.invoke("glMultiDrawArraysIndirectCountARB", FunctionDescriptors.IPJIIV); - ext.glMultiDrawElementsIndirectCountARB = load.invoke("glMultiDrawElementsIndirectCountARB", FunctionDescriptors.IIPJIIV); + ext.glMultiDrawArraysIndirectCountARB = load.invoke("glMultiDrawArraysIndirectCountARB", ofVoid(JAVA_INT, ADDRESS, JAVA_LONG, JAVA_INT, JAVA_INT)); + ext.glMultiDrawElementsIndirectCountARB = load.invoke("glMultiDrawElementsIndirectCountARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_LONG, JAVA_INT, JAVA_INT)); } - public static void glMultiDrawArraysIndirectCountARB(int mode, MemorySegment indirect, long drawCount, int maxDrawCount, int stride) { - var ext = GLLoader.getExtCapabilities(); + public static void glMultiDrawArraysIndirectCountARB(int mode, @NativeType("const void *") MemorySegment indirect, long drawcount, int maxdrawcount, int stride) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiDrawArraysIndirectCountARB).invokeExact(mode, indirect, drawCount, maxDrawCount, stride); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiDrawArraysIndirectCountARB).invokeExact(mode, indirect, drawcount, maxdrawcount, stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiDrawElementsIndirectCountARB(int mode, int type, MemorySegment indirect, long drawCount, int maxDrawCount, int stride) { - var ext = GLLoader.getExtCapabilities(); + public static void glMultiDrawElementsIndirectCountARB(int mode, int type, @NativeType("const void *") MemorySegment indirect, long drawcount, int maxdrawcount, int stride) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiDrawElementsIndirectCountARB).invokeExact(mode, type, indirect, drawCount, maxDrawCount, stride); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiDrawElementsIndirectCountARB).invokeExact(mode, type, indirect, drawcount, maxdrawcount, stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBInstancedArrays.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBInstancedArrays.java index aa8721f7..0fa02483 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBInstancedArrays.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBInstancedArrays.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,33 +14,31 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** * {@code GL_ARB_instanced_arrays} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBInstancedArrays { public static final int GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB = 0x88FE; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_instanced_arrays) return; - ext.glVertexAttribDivisorARB = load.invoke("glVertexAttribDivisorARB", FunctionDescriptors.IIV); + ext.glVertexAttribDivisorARB = load.invoke("glVertexAttribDivisorARB", ofVoid(JAVA_INT, JAVA_INT)); } public static void glVertexAttribDivisorARB(int index, int divisor) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glVertexAttribDivisorARB).invokeExact(index, divisor); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glVertexAttribDivisorARB).invokeExact(index, divisor); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBInternalformatQuery2.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBInternalformatQuery2.java index 6555a7eb..28a501bc 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBInternalformatQuery2.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBInternalformatQuery2.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,13 +14,18 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + /** * {@code GL_ARB_internalformat_query2} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBInternalformatQuery2 { public static final int GL_SRGB_DECODE_ARB = 0x8299; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBMatrixPalette.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBMatrixPalette.java index 5a18315c..4ec72c5d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBMatrixPalette.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBMatrixPalette.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,74 +14,72 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import java.lang.foreign.MemorySegment; - -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** * {@code GL_ARB_matrix_palette} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBMatrixPalette { + public static final int GL_MATRIX_PALETTE_ARB = 0x8840; + public static final int GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB = 0x8841; + public static final int GL_MAX_PALETTE_MATRICES_ARB = 0x8842; + public static final int GL_CURRENT_PALETTE_MATRIX_ARB = 0x8843; + public static final int GL_MATRIX_INDEX_ARRAY_ARB = 0x8844; + public static final int GL_CURRENT_MATRIX_INDEX_ARB = 0x8845; + public static final int GL_MATRIX_INDEX_ARRAY_SIZE_ARB = 0x8846; + public static final int GL_MATRIX_INDEX_ARRAY_TYPE_ARB = 0x8847; + public static final int GL_MATRIX_INDEX_ARRAY_STRIDE_ARB = 0x8848; + public static final int GL_MATRIX_INDEX_ARRAY_POINTER_ARB = 0x8849; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_matrix_palette) return; - ext.glCurrentPaletteMatrixARB = load.invoke("glCurrentPaletteMatrixARB", IV); - ext.glMatrixIndexPointerARB = load.invoke("glMatrixIndexPointerARB", IIIPV); - ext.glMatrixIndexubvARB = load.invoke("glMatrixIndexubvARB", IPV); - ext.glMatrixIndexuivARB = load.invoke("glMatrixIndexuivARB", IPV); - ext.glMatrixIndexusvARB = load.invoke("glMatrixIndexusvARB", IPV); + ext.glCurrentPaletteMatrixARB = load.invoke("glCurrentPaletteMatrixARB", ofVoid(JAVA_INT)); + ext.glMatrixIndexubvARB = load.invoke("glMatrixIndexubvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixIndexusvARB = load.invoke("glMatrixIndexusvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixIndexuivARB = load.invoke("glMatrixIndexuivARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixIndexPointerARB = load.invoke("glMatrixIndexPointerARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); } public static void glCurrentPaletteMatrixARB(int index) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glCurrentPaletteMatrixARB).invokeExact(index); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glCurrentPaletteMatrixARB).invokeExact(index); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMatrixIndexPointerARB(int size, int type, int stride, MemorySegment pointer) { - var ext = GLLoader.getExtCapabilities(); + public static void glMatrixIndexubvARB(int size, @NativeType("const GLubyte *") MemorySegment indices) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMatrixIndexPointerARB).invokeExact(size, type, stride, pointer); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMatrixIndexubvARB).invokeExact(size, indices); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMatrixIndexubvARB(int size, MemorySegment indices) { - var ext = GLLoader.getExtCapabilities(); + public static void glMatrixIndexusvARB(int size, @NativeType("const GLushort *") MemorySegment indices) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMatrixIndexubvARB).invokeExact(size, indices); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMatrixIndexusvARB).invokeExact(size, indices); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMatrixIndexuivARB(int size, MemorySegment indices) { - var ext = GLLoader.getExtCapabilities(); + public static void glMatrixIndexuivARB(int size, @NativeType("const GLuint *") MemorySegment indices) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMatrixIndexuivARB).invokeExact(size, indices); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMatrixIndexuivARB).invokeExact(size, indices); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMatrixIndexusvARB(int size, MemorySegment indices) { - var ext = GLLoader.getExtCapabilities(); + public static void glMatrixIndexPointerARB(int size, int type, int stride, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMatrixIndexusvARB).invokeExact(size, indices); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMatrixIndexPointerARB).invokeExact(size, type, stride, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBMultisample.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBMultisample.java index 67676ae3..7307e93e 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBMultisample.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBMultisample.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,31 +14,39 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** * {@code GL_ARB_multisample} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBMultisample { + public static final int GL_MULTISAMPLE_ARB = 0x809D; + public static final int GL_SAMPLE_ALPHA_TO_COVERAGE_ARB = 0x809E; + public static final int GL_SAMPLE_ALPHA_TO_ONE_ARB = 0x809F; + public static final int GL_SAMPLE_COVERAGE_ARB = 0x80A0; + public static final int GL_SAMPLE_BUFFERS_ARB = 0x80A8; + public static final int GL_SAMPLES_ARB = 0x80A9; + public static final int GL_SAMPLE_COVERAGE_VALUE_ARB = 0x80AA; + public static final int GL_SAMPLE_COVERAGE_INVERT_ARB = 0x80AB; + public static final int GL_MULTISAMPLE_BIT_ARB = 0x20000000; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_multisample) return; - ext.glSampleCoverageARB = load.invoke("glSampleCoverageARB", FunctionDescriptors.FZV); + ext.glSampleCoverageARB = load.invoke("glSampleCoverageARB", ofVoid(JAVA_FLOAT, JAVA_BYTE)); } public static void glSampleCoverageARB(float value, boolean invert) { - var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glSampleCoverageARB).invokeExact(value, invert); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glSampleCoverageARB).invokeExact(value, invert); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBMultitexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBMultitexture.java index 44f4de3f..95ddf7fb 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBMultitexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBMultitexture.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,21 +14,18 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import java.lang.foreign.MemorySegment; - -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** * {@code GL_ARB_multitexture} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBMultitexture { public static final int GL_TEXTURE0_ARB = 0x84C0; @@ -63,348 +60,283 @@ public final class GLARBMultitexture { public static final int GL_TEXTURE29_ARB = 0x84DD; public static final int GL_TEXTURE30_ARB = 0x84DE; public static final int GL_TEXTURE31_ARB = 0x84DF; - + public static final int GL_ACTIVE_TEXTURE_ARB = 0x84E0; + public static final int GL_CLIENT_ACTIVE_TEXTURE_ARB = 0x84E1; + public static final int GL_MAX_TEXTURE_UNITS_ARB = 0x84E2; public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_multitexture) return; - ext.glActiveTextureARB = load.invoke("glActiveTextureARB", IV); - ext.glClientActiveTextureARB = load.invoke("glClientActiveTextureARB", IV); - ext.glMultiTexCoord1dARB = load.invoke("glMultiTexCoord1dARB", IDV); - ext.glMultiTexCoord1dvARB = load.invoke("glMultiTexCoord1dvARB", IPV); - ext.glMultiTexCoord1fARB = load.invoke("glMultiTexCoord1fARB", IFV); - ext.glMultiTexCoord1fvARB = load.invoke("glMultiTexCoord1fvARB", IPV); - ext.glMultiTexCoord1iARB = load.invoke("glMultiTexCoord1iARB", IIV); - ext.glMultiTexCoord1ivARB = load.invoke("glMultiTexCoord1ivARB", IPV); - ext.glMultiTexCoord1sARB = load.invoke("glMultiTexCoord1sARB", ISV); - ext.glMultiTexCoord1svARB = load.invoke("glMultiTexCoord1svARB", IPV); - ext.glMultiTexCoord2dARB = load.invoke("glMultiTexCoord2dARB", IDDV); - ext.glMultiTexCoord2dvARB = load.invoke("glMultiTexCoord2dvARB", IPV); - ext.glMultiTexCoord2fARB = load.invoke("glMultiTexCoord2fARB", IFFV); - ext.glMultiTexCoord2fvARB = load.invoke("glMultiTexCoord2fvARB", IPV); - ext.glMultiTexCoord2iARB = load.invoke("glMultiTexCoord2iARB", IIIV); - ext.glMultiTexCoord2ivARB = load.invoke("glMultiTexCoord2ivARB", IPV); - ext.glMultiTexCoord2sARB = load.invoke("glMultiTexCoord2sARB", ISSV); - ext.glMultiTexCoord2svARB = load.invoke("glMultiTexCoord2svARB", IPV); - ext.glMultiTexCoord3dARB = load.invoke("glMultiTexCoord3dARB", IDDDV); - ext.glMultiTexCoord3dvARB = load.invoke("glMultiTexCoord3dvARB", IPV); - ext.glMultiTexCoord3fARB = load.invoke("glMultiTexCoord3fARB", IFFFV); - ext.glMultiTexCoord3fvARB = load.invoke("glMultiTexCoord3fvARB", IPV); - ext.glMultiTexCoord3iARB = load.invoke("glMultiTexCoord3iARB", IIIIV); - ext.glMultiTexCoord3ivARB = load.invoke("glMultiTexCoord3ivARB", IPV); - ext.glMultiTexCoord3sARB = load.invoke("glMultiTexCoord3sARB", ISSSV); - ext.glMultiTexCoord3svARB = load.invoke("glMultiTexCoord3svARB", IPV); - ext.glMultiTexCoord4dARB = load.invoke("glMultiTexCoord4dARB", IDDDDV); - ext.glMultiTexCoord4dvARB = load.invoke("glMultiTexCoord4dvARB", IPV); - ext.glMultiTexCoord4fARB = load.invoke("glMultiTexCoord4fARB", IFFFFV); - ext.glMultiTexCoord4fvARB = load.invoke("glMultiTexCoord4fvARB", IPV); - ext.glMultiTexCoord4iARB = load.invoke("glMultiTexCoord4iARB", IIIIIV); - ext.glMultiTexCoord4ivARB = load.invoke("glMultiTexCoord4ivARB", IPV); - ext.glMultiTexCoord4sARB = load.invoke("glMultiTexCoord4sARB", ISSSSV); - ext.glMultiTexCoord4svARB = load.invoke("glMultiTexCoord4svARB", IPV); + ext.glActiveTextureARB = load.invoke("glActiveTextureARB", ofVoid(JAVA_INT)); + ext.glClientActiveTextureARB = load.invoke("glClientActiveTextureARB", ofVoid(JAVA_INT)); + ext.glMultiTexCoord1dARB = load.invoke("glMultiTexCoord1dARB", ofVoid(JAVA_INT, JAVA_DOUBLE)); + ext.glMultiTexCoord1dvARB = load.invoke("glMultiTexCoord1dvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord1fARB = load.invoke("glMultiTexCoord1fARB", ofVoid(JAVA_INT, JAVA_FLOAT)); + ext.glMultiTexCoord1fvARB = load.invoke("glMultiTexCoord1fvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord1iARB = load.invoke("glMultiTexCoord1iARB", ofVoid(JAVA_INT, JAVA_INT)); + ext.glMultiTexCoord1ivARB = load.invoke("glMultiTexCoord1ivARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord1sARB = load.invoke("glMultiTexCoord1sARB", ofVoid(JAVA_INT, JAVA_SHORT)); + ext.glMultiTexCoord1svARB = load.invoke("glMultiTexCoord1svARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord2dARB = load.invoke("glMultiTexCoord2dARB", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glMultiTexCoord2dvARB = load.invoke("glMultiTexCoord2dvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord2fARB = load.invoke("glMultiTexCoord2fARB", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glMultiTexCoord2fvARB = load.invoke("glMultiTexCoord2fvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord2iARB = load.invoke("glMultiTexCoord2iARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMultiTexCoord2ivARB = load.invoke("glMultiTexCoord2ivARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord2sARB = load.invoke("glMultiTexCoord2sARB", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT)); + ext.glMultiTexCoord2svARB = load.invoke("glMultiTexCoord2svARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord3dARB = load.invoke("glMultiTexCoord3dARB", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glMultiTexCoord3dvARB = load.invoke("glMultiTexCoord3dvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord3fARB = load.invoke("glMultiTexCoord3fARB", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glMultiTexCoord3fvARB = load.invoke("glMultiTexCoord3fvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord3iARB = load.invoke("glMultiTexCoord3iARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMultiTexCoord3ivARB = load.invoke("glMultiTexCoord3ivARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord3sARB = load.invoke("glMultiTexCoord3sARB", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glMultiTexCoord3svARB = load.invoke("glMultiTexCoord3svARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord4dARB = load.invoke("glMultiTexCoord4dARB", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glMultiTexCoord4dvARB = load.invoke("glMultiTexCoord4dvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord4fARB = load.invoke("glMultiTexCoord4fARB", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glMultiTexCoord4fvARB = load.invoke("glMultiTexCoord4fvARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord4iARB = load.invoke("glMultiTexCoord4iARB", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMultiTexCoord4ivARB = load.invoke("glMultiTexCoord4ivARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord4sARB = load.invoke("glMultiTexCoord4sARB", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glMultiTexCoord4svARB = load.invoke("glMultiTexCoord4svARB", ofVoid(JAVA_INT, ADDRESS)); } public static void glActiveTextureARB(int texture) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glActiveTextureARB).invokeExact(texture); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glActiveTextureARB).invokeExact(texture); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glClientActiveTextureARB(int texture) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glClientActiveTextureARB).invokeExact(texture); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glClientActiveTextureARB).invokeExact(texture); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glMultiTexCoord1dARB(int target, double s) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord1dARB).invokeExact(target, s); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord1dARB).invokeExact(target, s); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiTexCoord1dvARB(int target, MemorySegment v) { - final var ext = GLLoader.getExtCapabilities(); + public static void glMultiTexCoord1dvARB(int target, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord1dvARB).invokeExact(target, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord1dvARB).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glMultiTexCoord1fARB(int target, float s) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord1fARB).invokeExact(target, s); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord1fARB).invokeExact(target, s); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiTexCoord1fvARB(int target, MemorySegment v) { - final var ext = GLLoader.getExtCapabilities(); + public static void glMultiTexCoord1fvARB(int target, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord1fvARB).invokeExact(target, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord1fvARB).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glMultiTexCoord1iARB(int target, int s) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord1iARB).invokeExact(target, s); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord1iARB).invokeExact(target, s); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiTexCoord1ivARB(int target, MemorySegment v) { - final var ext = GLLoader.getExtCapabilities(); + public static void glMultiTexCoord1ivARB(int target, @NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord1ivARB).invokeExact(target, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord1ivARB).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glMultiTexCoord1sARB(int target, short s) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord1sARB).invokeExact(target, s); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord1sARB).invokeExact(target, s); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiTexCoord1svARB(int target, MemorySegment v) { - final var ext = GLLoader.getExtCapabilities(); + public static void glMultiTexCoord1svARB(int target, @NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord1svARB).invokeExact(target, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord1svARB).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glMultiTexCoord2dARB(int target, double s, double t) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord2dARB).invokeExact(target, s, t); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord2dARB).invokeExact(target, s, t); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiTexCoord2dvARB(int target, MemorySegment v) { - final var ext = GLLoader.getExtCapabilities(); + public static void glMultiTexCoord2dvARB(int target, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord2dvARB).invokeExact(target, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord2dvARB).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glMultiTexCoord2fARB(int target, float s, float t) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord2fARB).invokeExact(target, s, t); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord2fARB).invokeExact(target, s, t); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiTexCoord2fvARB(int target, MemorySegment v) { - final var ext = GLLoader.getExtCapabilities(); + public static void glMultiTexCoord2fvARB(int target, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord2fvARB).invokeExact(target, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord2fvARB).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glMultiTexCoord2iARB(int target, int s, int t) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord2iARB).invokeExact(target, s, t); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord2iARB).invokeExact(target, s, t); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiTexCoord2ivARB(int target, MemorySegment v) { - final var ext = GLLoader.getExtCapabilities(); + public static void glMultiTexCoord2ivARB(int target, @NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord2ivARB).invokeExact(target, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord2ivARB).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glMultiTexCoord2sARB(int target, short s, short t) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord2sARB).invokeExact(target, s, t); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord2sARB).invokeExact(target, s, t); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiTexCoord2svARB(int target, MemorySegment v) { - final var ext = GLLoader.getExtCapabilities(); + public static void glMultiTexCoord2svARB(int target, @NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord2svARB).invokeExact(target, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord2svARB).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glMultiTexCoord3dARB(int target, double s, double t, double r) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord3dARB).invokeExact(target, s, t, r); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord3dARB).invokeExact(target, s, t, r); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiTexCoord3dvARB(int target, MemorySegment v) { - final var ext = GLLoader.getExtCapabilities(); + public static void glMultiTexCoord3dvARB(int target, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord3dvARB).invokeExact(target, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord3dvARB).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glMultiTexCoord3fARB(int target, float s, float t, float r) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord3fARB).invokeExact(target, s, t, r); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord3fARB).invokeExact(target, s, t, r); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiTexCoord3fvARB(int target, MemorySegment v) { - final var ext = GLLoader.getExtCapabilities(); + public static void glMultiTexCoord3fvARB(int target, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord3fvARB).invokeExact(target, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord3fvARB).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glMultiTexCoord3iARB(int target, int s, int t, int r) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord3iARB).invokeExact(target, s, t, r); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord3iARB).invokeExact(target, s, t, r); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiTexCoord3ivARB(int target, MemorySegment v) { - final var ext = GLLoader.getExtCapabilities(); + public static void glMultiTexCoord3ivARB(int target, @NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord3ivARB).invokeExact(target, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord3ivARB).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glMultiTexCoord3sARB(int target, short s, short t, short r) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord3sARB).invokeExact(target, s, t, r); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord3sARB).invokeExact(target, s, t, r); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiTexCoord3svARB(int target, MemorySegment v) { - final var ext = GLLoader.getExtCapabilities(); + public static void glMultiTexCoord3svARB(int target, @NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord3svARB).invokeExact(target, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord3svARB).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glMultiTexCoord4dARB(int target, double s, double t, double r, double q) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord4dARB).invokeExact(target, s, t, r, q); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord4dARB).invokeExact(target, s, t, r, q); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiTexCoord4dvARB(int target, MemorySegment v) { - final var ext = GLLoader.getExtCapabilities(); + public static void glMultiTexCoord4dvARB(int target, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord4dvARB).invokeExact(target, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord4dvARB).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glMultiTexCoord4fARB(int target, float s, float t, float r, float q) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord4fARB).invokeExact(target, s, t, r, q); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord4fARB).invokeExact(target, s, t, r, q); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiTexCoord4fvARB(int target, MemorySegment v) { - final var ext = GLLoader.getExtCapabilities(); + public static void glMultiTexCoord4fvARB(int target, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord4fvARB).invokeExact(target, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord4fvARB).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glMultiTexCoord4iARB(int target, int s, int t, int r, int q) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord4iARB).invokeExact(target, s, t, r, q); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord4iARB).invokeExact(target, s, t, r, q); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiTexCoord4ivARB(int target, MemorySegment v) { - final var ext = GLLoader.getExtCapabilities(); + public static void glMultiTexCoord4ivARB(int target, @NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord4ivARB).invokeExact(target, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord4ivARB).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } public static void glMultiTexCoord4sARB(int target, short s, short t, short r, short q) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord4sARB).invokeExact(target, s, t, r, q); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord4sARB).invokeExact(target, s, t, r, q); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glMultiTexCoord4svARB(int target, MemorySegment v) { - final var ext = GLLoader.getExtCapabilities(); + public static void glMultiTexCoord4svARB(int target, @NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMultiTexCoord4svARB).invokeExact(target, v); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMultiTexCoord4svARB).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBOcclusionQuery.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBOcclusionQuery.java index 677f2b30..1d388905 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBOcclusionQuery.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBOcclusionQuery.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,21 +14,18 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; - -import java.lang.foreign.MemorySegment; - -import static overrungl.FunctionDescriptors.*; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** * {@code GL_ARB_occlusion_query} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBOcclusionQuery { public static final int GL_QUERY_COUNTER_BITS_ARB = 0x8864; @@ -36,88 +33,73 @@ public final class GLARBOcclusionQuery { public static final int GL_QUERY_RESULT_ARB = 0x8866; public static final int GL_QUERY_RESULT_AVAILABLE_ARB = 0x8867; public static final int GL_SAMPLES_PASSED_ARB = 0x8914; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_occlusion_query) return; - ext.glBeginQueryARB = load.invoke("glBeginQueryARB", IIV); - ext.glDeleteQueriesARB = load.invoke("glDeleteQueriesARB", IPV); - ext.glEndQueryARB = load.invoke("glEndQueryARB", IV); - ext.glGenQueriesARB = load.invoke("glGenQueriesARB", IPV); - ext.glGetQueryObjectivARB = load.invoke("glGetQueryObjectivARB", IIPV); - ext.glGetQueryObjectuivARB = load.invoke("glGetQueryObjectuivARB", IIPV); - ext.glGetQueryivARB = load.invoke("glGetQueryivARB", IIPV); - ext.glIsQueryARB = load.invoke("glIsQueryARB", IZ); + ext.glGenQueriesARB = load.invoke("glGenQueriesARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glDeleteQueriesARB = load.invoke("glDeleteQueriesARB", ofVoid(JAVA_INT, ADDRESS)); + ext.glIsQueryARB = load.invoke("glIsQueryARB", of(JAVA_BYTE, JAVA_INT)); + ext.glBeginQueryARB = load.invoke("glBeginQueryARB", ofVoid(JAVA_INT, JAVA_INT)); + ext.glEndQueryARB = load.invoke("glEndQueryARB", ofVoid(JAVA_INT)); + ext.glGetQueryivARB = load.invoke("glGetQueryivARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetQueryObjectivARB = load.invoke("glGetQueryObjectivARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetQueryObjectuivARB = load.invoke("glGetQueryObjectuivARB", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); } - public static void glBeginQueryARB(int target, int id) { - final var ext = GLLoader.getExtCapabilities(); + public static void glGenQueriesARB(int n, @NativeType("GLuint *") MemorySegment ids) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glBeginQueryARB).invokeExact(target, id); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGenQueriesARB).invokeExact(n, ids); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glDeleteQueriesARB(int n, MemorySegment ids) { - final var ext = GLLoader.getExtCapabilities(); + public static void glDeleteQueriesARB(int n, @NativeType("const GLuint *") MemorySegment ids) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glDeleteQueriesARB).invokeExact(n, ids); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glDeleteQueriesARB).invokeExact(n, ids); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glEndQueryARB(int target) { - final var ext = GLLoader.getExtCapabilities(); + public static boolean glIsQueryARB(int id) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glEndQueryARB).invokeExact(target); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + return (boolean) + check(ext.glIsQueryARB).invokeExact(id); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGenQueriesARB(int n, MemorySegment ids) { - final var ext = GLLoader.getExtCapabilities(); + public static void glBeginQueryARB(int target, int id) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGenQueriesARB).invokeExact(n, ids); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glBeginQueryARB).invokeExact(target, id); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetQueryObjectivARB(int id, int pname, MemorySegment params) { - final var ext = GLLoader.getExtCapabilities(); + public static void glEndQueryARB(int target) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetQueryObjectivARB).invokeExact(id, pname, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glEndQueryARB).invokeExact(target); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetQueryObjectuivARB(int id, int pname, MemorySegment params) { - final var ext = GLLoader.getExtCapabilities(); + public static void glGetQueryivARB(int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetQueryObjectuivARB).invokeExact(id, pname, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetQueryivARB).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glGetQueryivARB(int target, int pname, MemorySegment params) { - final var ext = GLLoader.getExtCapabilities(); + public static void glGetQueryObjectivARB(int id, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glGetQueryivARB).invokeExact(target, pname, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetQueryObjectivARB).invokeExact(id, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static boolean glIsQueryARB(int id) { - final var ext = GLLoader.getExtCapabilities(); + public static void glGetQueryObjectuivARB(int id, int pname, @NativeType("GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); try { - return (boolean) GLLoader.check(ext.glIsQueryARB).invokeExact(id); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glGetQueryObjectuivARB).invokeExact(id, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBParallelShaderCompile.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBParallelShaderCompile.java index a70a6b2d..e244de40 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBParallelShaderCompile.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBParallelShaderCompile.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,34 +14,32 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** * {@code GL_ARB_parallel_shader_compile} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBParallelShaderCompile { public static final int GL_MAX_SHADER_COMPILER_THREADS_ARB = 0x91B0; public static final int GL_COMPLETION_STATUS_ARB = 0x91B1; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_parallel_shader_compile) return; - ext.glMaxShaderCompilerThreadsARB = load.invoke("glMaxShaderCompilerThreadsARB", FunctionDescriptors.IV); + ext.glMaxShaderCompilerThreadsARB = load.invoke("glMaxShaderCompilerThreadsARB", ofVoid(JAVA_INT)); } public static void glMaxShaderCompilerThreadsARB(int count) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glMaxShaderCompilerThreadsARB).invokeExact(count); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glMaxShaderCompilerThreadsARB).invokeExact(count); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBPipelineStatisticsQuery.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBPipelineStatisticsQuery.java index fc3ac59a..90f8d82b 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBPipelineStatisticsQuery.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBPipelineStatisticsQuery.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,13 +14,18 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + /** * {@code GL_ARB_pipeline_statistics_query} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBPipelineStatisticsQuery { public static final int GL_VERTICES_SUBMITTED_ARB = 0x82EE; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBPixelBufferObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBPixelBufferObject.java index f3a18532..3a9331ec 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBPixelBufferObject.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBPixelBufferObject.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,13 +14,18 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + /** * {@code GL_ARB_pixel_buffer_object} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBPixelBufferObject { public static final int GL_PIXEL_PACK_BUFFER_ARB = 0x88EB; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBPointParameters.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBPointParameters.java index 48007b7e..e4ca8279 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBPointParameters.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBPointParameters.java @@ -1,7 +1,7 @@ /* * MIT License * - * Copyright (c) 2023 Overrun Organization + * Copyright (c) 2022-present Overrun Organization * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -14,48 +14,42 @@ * copies or substantial portions of the Software. */ +// This file is auto-generated. DO NOT EDIT! package overrungl.opengl.ext.arb; -import overrungl.opengl.GLExtCaps; -import overrungl.opengl.GLLoadFunc; -import overrungl.opengl.GLLoader; -import overrungl.FunctionDescriptors; - -import java.lang.foreign.MemorySegment; +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; /** * {@code GL_ARB_point_parameters} - * - * @author squid233 - * @since 0.1.0 */ public final class GLARBPointParameters { public static final int GL_POINT_SIZE_MIN_ARB = 0x8126; public static final int GL_POINT_SIZE_MAX_ARB = 0x8127; public static final int GL_POINT_FADE_THRESHOLD_SIZE_ARB = 0x8128; public static final int GL_POINT_DISTANCE_ATTENUATION_ARB = 0x8129; - public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_point_parameters) return; - ext.glPointParameterfARB = load.invoke("glPointParameterfARB", FunctionDescriptors.IFV); - ext.glPointParameterfvARB = load.invoke("glPointParameterfvARB", FunctionDescriptors.IPV); + ext.glPointParameterfARB = load.invoke("glPointParameterfARB", ofVoid(JAVA_INT, JAVA_FLOAT)); + ext.glPointParameterfvARB = load.invoke("glPointParameterfvARB", ofVoid(JAVA_INT, ADDRESS)); } public static void glPointParameterfARB(int pname, float param) { - final var ext = GLLoader.getExtCapabilities(); + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glPointParameterfARB).invokeExact(pname, param); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glPointParameterfARB).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } - public static void glPointParameterfvARB(int pname, MemorySegment params) { - final var ext = GLLoader.getExtCapabilities(); + public static void glPointParameterfvARB(int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); try { - GLLoader.check(ext.glPointParameterfvARB).invokeExact(pname, params); - } catch (Throwable e) { - throw new AssertionError("should not reach here", e); - } + check(ext.glPointParameterfvARB).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } } + } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBPointSprite.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBPointSprite.java new file mode 100644 index 00000000..3b6bbf3d --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBPointSprite.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.arb; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_ARB_point_sprite} + */ +public final class GLARBPointSprite { + public static final int GL_POINT_SPRITE_ARB = 0x8861; + public static final int GL_COORD_REPLACE_ARB = 0x8862; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBRobustness.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBRobustness.java index 7614613b..47efb739 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBRobustness.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBRobustness.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_robustness} - */ + * {@code GL_ARB_robustness} + */ public final class GLARBRobustness { public static final int GL_NO_RESET_NOTIFICATION_ARB = 0x8261; public static final int GL_RESET_NOTIFICATION_STRATEGY_ARB = 0x8256; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleLocations.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleLocations.java index ac7f0fe0..f1059e61 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleLocations.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleLocations.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_sample_locations} - */ + * {@code GL_ARB_sample_locations} + */ public final class GLARBSampleLocations { public static final int GL_SAMPLE_LOCATION_SUBPIXEL_BITS_ARB = 0x933D; public static final int GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_ARB = 0x933E; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleShading.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleShading.java index 448573dc..2ce7f94a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleShading.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSampleShading.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_sample_shading} - */ + * {@code GL_ARB_sample_shading} + */ public final class GLARBSampleShading { public static final int GL_SAMPLE_SHADING_ARB = 0x8C36; public static final int GL_MIN_SAMPLE_SHADING_VALUE_ARB = 0x8C37; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShaderObjects.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShaderObjects.java index c13fe8a1..4f0c6ebd 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShaderObjects.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShaderObjects.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_shader_objects} - */ + * {@code GL_ARB_shader_objects} + */ public final class GLARBShaderObjects { public static final int GL_PROGRAM_OBJECT_ARB = 0x8B40; public static final int GL_SHADER_OBJECT_ARB = 0x8B48; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadingLanguageInclude.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadingLanguageInclude.java index efdd6b96..5dfc355f 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadingLanguageInclude.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadingLanguageInclude.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_shading_language_include} - */ + * {@code GL_ARB_shading_language_include} + */ public final class GLARBShadingLanguageInclude { public static final int GL_SHADER_INCLUDE_ARB = 0x8DAE; public static final int GL_NAMED_STRING_LENGTH_ARB = 0x8DE9; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadow.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadow.java index e59f4cfc..e410d045 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadow.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadow.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_shadow} - */ + * {@code GL_ARB_shadow} + */ public final class GLARBShadow { public static final int GL_TEXTURE_COMPARE_MODE_ARB = 0x884C; public static final int GL_TEXTURE_COMPARE_FUNC_ARB = 0x884D; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadowAmbient.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadowAmbient.java index 6e6094c6..d922b49e 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadowAmbient.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBShadowAmbient.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_shadow_ambient} - */ + * {@code GL_ARB_shadow_ambient} + */ public final class GLARBShadowAmbient { public static final int GL_TEXTURE_COMPARE_FAIL_VALUE_ARB = 0x80BF; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseBuffer.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseBuffer.java index 79b5e71a..fa16c390 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseBuffer.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseBuffer.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_sparse_buffer} - */ + * {@code GL_ARB_sparse_buffer} + */ public final class GLARBSparseBuffer { public static final int GL_SPARSE_STORAGE_BIT_ARB = 0x0400; public static final int GL_SPARSE_BUFFER_PAGE_SIZE_ARB = 0x82F8; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseTexture.java index f8aeedd9..61da4460 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseTexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBSparseTexture.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_sparse_texture} - */ + * {@code GL_ARB_sparse_texture} + */ public final class GLARBSparseTexture { public static final int GL_TEXTURE_SPARSE_ARB = 0x91A6; public static final int GL_VIRTUAL_PAGE_SIZE_INDEX_ARB = 0x91A7; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBorderClamp.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBorderClamp.java index db29443a..fc68f058 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBorderClamp.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBorderClamp.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_texture_border_clamp} - */ + * {@code GL_ARB_texture_border_clamp} + */ public final class GLARBTextureBorderClamp { public static final int GL_CLAMP_TO_BORDER_ARB = 0x812D; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBufferObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBufferObject.java index 3c9b8b52..8b3ec23c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBufferObject.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureBufferObject.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_texture_buffer_object} - */ + * {@code GL_ARB_texture_buffer_object} + */ public final class GLARBTextureBufferObject { public static final int GL_TEXTURE_BUFFER_ARB = 0x8C2A; public static final int GL_MAX_TEXTURE_BUFFER_SIZE_ARB = 0x8C2B; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompression.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompression.java index ad4a5cd8..d6e1ff9a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompression.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompression.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_texture_compression} - */ + * {@code GL_ARB_texture_compression} + */ public final class GLARBTextureCompression { public static final int GL_COMPRESSED_ALPHA_ARB = 0x84E9; public static final int GL_COMPRESSED_LUMINANCE_ARB = 0x84EA; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompressionBptc.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompressionBptc.java index 44feb958..70b3bb71 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompressionBptc.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCompressionBptc.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_texture_compression_bptc} - */ + * {@code GL_ARB_texture_compression_bptc} + */ public final class GLARBTextureCompressionBptc { public static final int GL_COMPRESSED_RGBA_BPTC_UNORM_ARB = 0x8E8C; public static final int GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB = 0x8E8D; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMap.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMap.java index 56b211b4..39341c22 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMap.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMap.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_texture_cube_map} - */ + * {@code GL_ARB_texture_cube_map} + */ public final class GLARBTextureCubeMap { public static final int GL_NORMAL_MAP_ARB = 0x8511; public static final int GL_REFLECTION_MAP_ARB = 0x8512; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMapArray.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMapArray.java index 4a403360..1226fb4e 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMapArray.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureCubeMapArray.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_texture_cube_map_array} - */ + * {@code GL_ARB_texture_cube_map_array} + */ public final class GLARBTextureCubeMapArray { public static final int GL_TEXTURE_CUBE_MAP_ARRAY_ARB = 0x9009; public static final int GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB = 0x900A; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvCombine.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvCombine.java index 03719961..b57c6400 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvCombine.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvCombine.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_texture_env_combine} - */ + * {@code GL_ARB_texture_env_combine} + */ public final class GLARBTextureEnvCombine { public static final int GL_COMBINE_ARB = 0x8570; public static final int GL_COMBINE_RGB_ARB = 0x8571; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvDot3.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvDot3.java index 98fa7a81..d52bff2d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvDot3.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureEnvDot3.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_texture_env_dot3} - */ + * {@code GL_ARB_texture_env_dot3} + */ public final class GLARBTextureEnvDot3 { public static final int GL_DOT3_RGB_ARB = 0x86AE; public static final int GL_DOT3_RGBA_ARB = 0x86AF; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFilterMinmax.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFilterMinmax.java index c727fa90..d8ecf803 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFilterMinmax.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFilterMinmax.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_texture_filter_minmax} - */ + * {@code GL_ARB_texture_filter_minmax} + */ public final class GLARBTextureFilterMinmax { public static final int GL_TEXTURE_REDUCTION_MODE_ARB = 0x9366; public static final int GL_WEIGHTED_AVERAGE_ARB = 0x9367; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFloat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFloat.java index 4072516f..421125e3 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFloat.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureFloat.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_texture_float} - */ + * {@code GL_ARB_texture_float} + */ public final class GLARBTextureFloat { public static final int GL_TEXTURE_RED_TYPE_ARB = 0x8C10; public static final int GL_TEXTURE_GREEN_TYPE_ARB = 0x8C11; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureGather.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureGather.java index 726c5b37..b25a38c3 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureGather.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureGather.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_texture_gather} - */ + * {@code GL_ARB_texture_gather} + */ public final class GLARBTextureGather { public static final int GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB = 0x8E5E; public static final int GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB = 0x8E5F; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureMirroredRepeat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureMirroredRepeat.java index 4b2f644e..6349ccab 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureMirroredRepeat.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureMirroredRepeat.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_texture_mirrored_repeat} - */ + * {@code GL_ARB_texture_mirrored_repeat} + */ public final class GLARBTextureMirroredRepeat { public static final int GL_MIRRORED_REPEAT_ARB = 0x8370; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureRectangle.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureRectangle.java index 19b0cc93..7b30e5c3 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureRectangle.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTextureRectangle.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_texture_rectangle} - */ + * {@code GL_ARB_texture_rectangle} + */ public final class GLARBTextureRectangle { public static final int GL_TEXTURE_RECTANGLE_ARB = 0x84F5; public static final int GL_TEXTURE_BINDING_RECTANGLE_ARB = 0x84F6; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransformFeedbackOverflowQuery.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransformFeedbackOverflowQuery.java index d0fb4de8..46c310eb 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransformFeedbackOverflowQuery.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransformFeedbackOverflowQuery.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_transform_feedback_overflow_query} - */ + * {@code GL_ARB_transform_feedback_overflow_query} + */ public final class GLARBTransformFeedbackOverflowQuery { public static final int GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB = 0x82EC; public static final int GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB = 0x82ED; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransposeMatrix.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransposeMatrix.java index 97d0327b..8e848adc 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransposeMatrix.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBTransposeMatrix.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_transpose_matrix} - */ + * {@code GL_ARB_transpose_matrix} + */ public final class GLARBTransposeMatrix { public static final int GL_TRANSPOSE_MODELVIEW_MATRIX_ARB = 0x84E3; public static final int GL_TRANSPOSE_PROJECTION_MATRIX_ARB = 0x84E4; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBlend.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBlend.java index f0636ca9..b8c90f24 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBlend.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBlend.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_vertex_blend} - */ + * {@code GL_ARB_vertex_blend} + */ public final class GLARBVertexBlend { public static final int GL_MAX_VERTEX_UNITS_ARB = 0x86A4; public static final int GL_ACTIVE_VERTEX_UNITS_ARB = 0x86A5; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBufferObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBufferObject.java index c9f8aaf6..b88324d2 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBufferObject.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexBufferObject.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_vertex_buffer_object} - */ + * {@code GL_ARB_vertex_buffer_object} + */ public final class GLARBVertexBufferObject { public static final int GL_BUFFER_SIZE_ARB = 0x8764; public static final int GL_BUFFER_USAGE_ARB = 0x8765; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexProgram.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexProgram.java index 09bf3e2c..dd1f839f 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexProgram.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexProgram.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_vertex_program} - */ + * {@code GL_ARB_vertex_program} + */ public final class GLARBVertexProgram { public static final int GL_COLOR_SUM_ARB = 0x8458; public static final int GL_VERTEX_PROGRAM_ARB = 0x8620; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexShader.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexShader.java index 4373fc14..e8b4db31 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexShader.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBVertexShader.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_vertex_shader} - */ + * {@code GL_ARB_vertex_shader} + */ public final class GLARBVertexShader { public static final int GL_VERTEX_SHADER_ARB = 0x8B31; public static final int GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB = 0x8B4A; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBViewportArray.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBViewportArray.java index 209d677d..6a7a402c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBViewportArray.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBViewportArray.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_viewport_array} - */ + * {@code GL_ARB_viewport_array} + */ public final class GLARBViewportArray { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_viewport_array) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBWindowPos.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBWindowPos.java index a4785a7e..6a52a5da 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBWindowPos.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/arb/GLARBWindowPos.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ARB_window_pos} - */ + * {@code GL_ARB_window_pos} + */ public final class GLARBWindowPos { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ARB_window_pos) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIDrawBuffers.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIDrawBuffers.java index 276c746e..d1aae866 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIDrawBuffers.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIDrawBuffers.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ATI_draw_buffers} - */ + * {@code GL_ATI_draw_buffers} + */ public final class GLATIDrawBuffers { public static final int GL_MAX_DRAW_BUFFERS_ATI = 0x8824; public static final int GL_DRAW_BUFFER0_ATI = 0x8825; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIElementArray.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIElementArray.java index db779d68..9c142156 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIElementArray.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIElementArray.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ATI_element_array} - */ + * {@code GL_ATI_element_array} + */ public final class GLATIElementArray { public static final int GL_ELEMENT_ARRAY_ATI = 0x8768; public static final int GL_ELEMENT_ARRAY_TYPE_ATI = 0x8769; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIEnvmapBumpmap.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIEnvmapBumpmap.java index a3324ba2..a528be6d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIEnvmapBumpmap.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIEnvmapBumpmap.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ATI_envmap_bumpmap} - */ + * {@code GL_ATI_envmap_bumpmap} + */ public final class GLATIEnvmapBumpmap { public static final int GL_BUMP_ROT_MATRIX_ATI = 0x8775; public static final int GL_BUMP_ROT_MATRIX_SIZE_ATI = 0x8776; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIFragmentShader.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIFragmentShader.java index 8e4ad1ff..14118cae 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIFragmentShader.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIFragmentShader.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ATI_fragment_shader} - */ + * {@code GL_ATI_fragment_shader} + */ public final class GLATIFragmentShader { public static final int GL_FRAGMENT_SHADER_ATI = 0x8920; public static final int GL_REG_0_ATI = 0x8921; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIMapObjectBuffer.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIMapObjectBuffer.java index b661c3e9..4812b584 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIMapObjectBuffer.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIMapObjectBuffer.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ATI_map_object_buffer} - */ + * {@code GL_ATI_map_object_buffer} + */ public final class GLATIMapObjectBuffer { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ATI_map_object_buffer) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIMeminfo.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIMeminfo.java index d4c9a647..20d3dce6 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIMeminfo.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIMeminfo.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ATI_meminfo} - */ + * {@code GL_ATI_meminfo} + */ public final class GLATIMeminfo { public static final int GL_VBO_FREE_MEMORY_ATI = 0x87FB; public static final int GL_TEXTURE_FREE_MEMORY_ATI = 0x87FC; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIPixelFormatFloat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIPixelFormatFloat.java index f10600e6..2a125224 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIPixelFormatFloat.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIPixelFormatFloat.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ATI_pixel_format_float} - */ + * {@code GL_ATI_pixel_format_float} + */ public final class GLATIPixelFormatFloat { public static final int GL_RGBA_FLOAT_MODE_ATI = 0x8820; public static final int GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI = 0x8835; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIPnTriangles.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIPnTriangles.java index 5d157d64..a15809c1 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIPnTriangles.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIPnTriangles.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ATI_pn_triangles} - */ + * {@code GL_ATI_pn_triangles} + */ public final class GLATIPnTriangles { public static final int GL_PN_TRIANGLES_ATI = 0x87F0; public static final int GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI = 0x87F1; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATISeparateStencil.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATISeparateStencil.java index 24927533..e5ab8f74 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATISeparateStencil.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATISeparateStencil.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ATI_separate_stencil} - */ + * {@code GL_ATI_separate_stencil} + */ public final class GLATISeparateStencil { public static final int GL_STENCIL_BACK_FUNC_ATI = 0x8800; public static final int GL_STENCIL_BACK_FAIL_ATI = 0x8801; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextFragmentShader.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextFragmentShader.java index 94ef41ed..3e7f8a1a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextFragmentShader.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextFragmentShader.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ATI_text_fragment_shader} - */ + * {@code GL_ATI_text_fragment_shader} + */ public final class GLATITextFragmentShader { public static final int GL_TEXT_FRAGMENT_SHADER_ATI = 0x8200; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureEnvCombine3.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureEnvCombine3.java index 58e1059e..f63ccd70 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureEnvCombine3.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureEnvCombine3.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ATI_texture_env_combine3} - */ + * {@code GL_ATI_texture_env_combine3} + */ public final class GLATITextureEnvCombine3 { public static final int GL_MODULATE_ADD_ATI = 0x8744; public static final int GL_MODULATE_SIGNED_ADD_ATI = 0x8745; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureFloat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureFloat.java index 3352a01b..5c86a1ad 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureFloat.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureFloat.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ATI_texture_float} - */ + * {@code GL_ATI_texture_float} + */ public final class GLATITextureFloat { public static final int GL_RGBA_FLOAT32_ATI = 0x8814; public static final int GL_RGB_FLOAT32_ATI = 0x8815; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureMirrorOnce.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureMirrorOnce.java index de8a4c1a..edb6d808 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureMirrorOnce.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATITextureMirrorOnce.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ATI_texture_mirror_once} - */ + * {@code GL_ATI_texture_mirror_once} + */ public final class GLATITextureMirrorOnce { public static final int GL_MIRROR_CLAMP_ATI = 0x8742; public static final int GL_MIRROR_CLAMP_TO_EDGE_ATI = 0x8743; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexArrayObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexArrayObject.java index d90221f4..a4cac56a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexArrayObject.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexArrayObject.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ATI_vertex_array_object} - */ + * {@code GL_ATI_vertex_array_object} + */ public final class GLATIVertexArrayObject { public static final int GL_STATIC_ATI = 0x8760; public static final int GL_DYNAMIC_ATI = 0x8761; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexAttribArrayObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexAttribArrayObject.java index b11ee488..0806c8b3 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexAttribArrayObject.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexAttribArrayObject.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ATI_vertex_attrib_array_object} - */ + * {@code GL_ATI_vertex_attrib_array_object} + */ public final class GLATIVertexAttribArrayObject { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_ATI_vertex_attrib_array_object) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexStreams.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexStreams.java index cd25649d..170a5911 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexStreams.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ati/GLATIVertexStreams.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_ATI_vertex_streams} - */ + * {@code GL_ATI_vertex_streams} + */ public final class GLATIVertexStreams { public static final int GL_MAX_VERTEX_STREAMS_ATI = 0x876B; public static final int GL_VERTEX_STREAM0_ATI = 0x876C; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXT422Pixels.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXT422Pixels.java index bcf992bf..5fc033ac 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXT422Pixels.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXT422Pixels.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_EXT_422_pixels} - */ + * {@code GL_EXT_422_pixels} + */ public final class GLEXT422Pixels { public static final int GL_422_EXT = 0x80CC; public static final int GL_422_REV_EXT = 0x80CD; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMCullVertex.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMCullVertex.java index 49e1b439..88f82176 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMCullVertex.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMCullVertex.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_IBM_cull_vertex} - */ + * {@code GL_IBM_cull_vertex} + */ public final class GLIBMCullVertex { public static final int GL_CULL_VERTEX_IBM = 103050; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMMultimodeDrawArrays.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMMultimodeDrawArrays.java index 00664d0b..ceb448c4 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMMultimodeDrawArrays.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMMultimodeDrawArrays.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_IBM_multimode_draw_arrays} - */ + * {@code GL_IBM_multimode_draw_arrays} + */ public final class GLIBMMultimodeDrawArrays { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_IBM_multimode_draw_arrays) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMRasterposClip.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMRasterposClip.java index c8dd22fc..b9b66632 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMRasterposClip.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMRasterposClip.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_IBM_rasterpos_clip} - */ + * {@code GL_IBM_rasterpos_clip} + */ public final class GLIBMRasterposClip { public static final int GL_RASTER_POSITION_UNCLIPPED_IBM = 0x19262; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMStaticData.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMStaticData.java index 01238982..6a72f818 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMStaticData.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMStaticData.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_IBM_static_data} - */ + * {@code GL_IBM_static_data} + */ public final class GLIBMStaticData { public static final int GL_ALL_STATIC_DATA_IBM = 103060; public static final int GL_STATIC_VERTEX_ARRAY_IBM = 103061; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMTextureMirroredRepeat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMTextureMirroredRepeat.java index 0499f1af..7453cc46 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMTextureMirroredRepeat.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMTextureMirroredRepeat.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_IBM_texture_mirrored_repeat} - */ + * {@code GL_IBM_texture_mirrored_repeat} + */ public final class GLIBMTextureMirroredRepeat { public static final int GL_MIRRORED_REPEAT_IBM = 0x8370; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMVertexArrayLists.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMVertexArrayLists.java index 879bcdd1..9c25f714 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMVertexArrayLists.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ibm/GLIBMVertexArrayLists.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_IBM_vertex_array_lists} - */ + * {@code GL_IBM_vertex_array_lists} + */ public final class GLIBMVertexArrayLists { public static final int GL_VERTEX_ARRAY_LIST_IBM = 103070; public static final int GL_NORMAL_ARRAY_LIST_IBM = 103071; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELBlackholeRender.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELBlackholeRender.java index d60e393d..af961380 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELBlackholeRender.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELBlackholeRender.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_INTEL_blackhole_render} - */ + * {@code GL_INTEL_blackhole_render} + */ public final class GLINTELBlackholeRender { public static final int GL_BLACKHOLE_RENDER_INTEL = 0x83FC; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELConservativeRasterization.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELConservativeRasterization.java index 08a1e670..b020fa7d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELConservativeRasterization.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELConservativeRasterization.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_INTEL_conservative_rasterization} - */ + * {@code GL_INTEL_conservative_rasterization} + */ public final class GLINTELConservativeRasterization { public static final int GL_CONSERVATIVE_RASTERIZATION_INTEL = 0x83FE; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELFramebufferCMAA.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELFramebufferCMAA.java index a1462a64..aaf88e98 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELFramebufferCMAA.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELFramebufferCMAA.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_INTEL_framebuffer_CMAA} - */ + * {@code GL_INTEL_framebuffer_CMAA} + */ public final class GLINTELFramebufferCMAA { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_INTEL_framebuffer_CMAA) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELMapTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELMapTexture.java index 01239da6..f5aab922 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELMapTexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELMapTexture.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_INTEL_map_texture} - */ + * {@code GL_INTEL_map_texture} + */ public final class GLINTELMapTexture { public static final int GL_TEXTURE_MEMORY_LAYOUT_INTEL = 0x83FF; public static final int GL_LAYOUT_DEFAULT_INTEL = 0; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELParallelArrays.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELParallelArrays.java index 19f6c393..bc0965b6 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELParallelArrays.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELParallelArrays.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_INTEL_parallel_arrays} - */ + * {@code GL_INTEL_parallel_arrays} + */ public final class GLINTELParallelArrays { public static final int GL_PARALLEL_ARRAYS_INTEL = 0x83F4; public static final int GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F5; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELPerformanceQuery.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELPerformanceQuery.java index 97c239a3..2c68714f 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELPerformanceQuery.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/intel/GLINTELPerformanceQuery.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_INTEL_performance_query} - */ + * {@code GL_INTEL_performance_query} + */ public final class GLINTELPerformanceQuery { public static final int GL_PERFQUERY_SINGLE_CONTEXT_INTEL = 0x00000000; public static final int GL_PERFQUERY_GLOBAL_CONTEXT_INTEL = 0x00000001; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvanced.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvanced.java index ed014356..3bf60770 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvanced.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvanced.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_KHR_blend_equation_advanced} - */ + * {@code GL_KHR_blend_equation_advanced} + */ public final class GLKHRBlendEquationAdvanced { public static final int GL_MULTIPLY_KHR = 0x9294; public static final int GL_SCREEN_KHR = 0x9295; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvancedCoherent.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvancedCoherent.java index fdc44c01..538c6a6d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvancedCoherent.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRBlendEquationAdvancedCoherent.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_KHR_blend_equation_advanced_coherent} - */ + * {@code GL_KHR_blend_equation_advanced_coherent} + */ public final class GLKHRBlendEquationAdvancedCoherent { public static final int GL_BLEND_ADVANCED_COHERENT_KHR = 0x9285; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRNoError.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRNoError.java index 65070acc..a5fcb12d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRNoError.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRNoError.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_KHR_no_error} - */ + * {@code GL_KHR_no_error} + */ public final class GLKHRNoError { public static final int GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR = 0x00000008; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRParallelShaderCompile.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRParallelShaderCompile.java index e620d88e..bbe7b1fa 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRParallelShaderCompile.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRParallelShaderCompile.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_KHR_parallel_shader_compile} - */ + * {@code GL_KHR_parallel_shader_compile} + */ public final class GLKHRParallelShaderCompile { public static final int GL_MAX_SHADER_COMPILER_THREADS_KHR = 0x91B0; public static final int GL_COMPLETION_STATUS_KHR = 0x91B1; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRRobustness.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRRobustness.java index e9b1bf1f..40713187 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRRobustness.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRRobustness.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_KHR_robustness} - */ + * {@code GL_KHR_robustness} + */ public final class GLKHRRobustness { public static final int GL_CONTEXT_ROBUST_ACCESS = 0x90F3; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRShaderSubgroup.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRShaderSubgroup.java index adb08522..14c62d3e 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRShaderSubgroup.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRShaderSubgroup.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_KHR_shader_subgroup} - */ + * {@code GL_KHR_shader_subgroup} + */ public final class GLKHRShaderSubgroup { public static final int GL_SUBGROUP_SIZE_KHR = 0x9532; public static final int GL_SUBGROUP_SUPPORTED_STAGES_KHR = 0x9533; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRTextureCompressionAstcHdr.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRTextureCompressionAstcHdr.java index 4de0f61e..f5b77d63 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRTextureCompressionAstcHdr.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/khr/GLKHRTextureCompressionAstcHdr.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_KHR_texture_compression_astc_hdr} - */ + * {@code GL_KHR_texture_compression_astc_hdr} + */ public final class GLKHRTextureCompressionAstcHdr { public static final int GL_COMPRESSED_RGBA_ASTC_4x4_KHR = 0x93B0; public static final int GL_COMPRESSED_RGBA_ASTC_5x4_KHR = 0x93B1; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipX.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipX.java index 8161e5c8..90f63a3c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipX.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipX.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_MESA_framebuffer_flip_x} - */ + * {@code GL_MESA_framebuffer_flip_x} + */ public final class GLMESAFramebufferFlipX { public static final int GL_FRAMEBUFFER_FLIP_X_MESA = 0x8BBC; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipY.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipY.java index 03114979..d8508292 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipY.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferFlipY.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_MESA_framebuffer_flip_y} - */ + * {@code GL_MESA_framebuffer_flip_y} + */ public final class GLMESAFramebufferFlipY { public static final int GL_FRAMEBUFFER_FLIP_Y_MESA = 0x8BBB; public static void load(GLExtCaps ext, GLLoadFunc load) { diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferSwapXY.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferSwapXY.java index 2a1b95a7..d28d6cee 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferSwapXY.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAFramebufferSwapXY.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_MESA_framebuffer_swap_xy} - */ + * {@code GL_MESA_framebuffer_swap_xy} + */ public final class GLMESAFramebufferSwapXY { public static final int GL_FRAMEBUFFER_SWAP_XY_MESA = 0x8BBD; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAPackInvert.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAPackInvert.java index db5f0c58..c3681b87 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAPackInvert.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAPackInvert.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_MESA_pack_invert} - */ + * {@code GL_MESA_pack_invert} + */ public final class GLMESAPackInvert { public static final int GL_PACK_INVERT_MESA = 0x8758; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAProgramBinaryFormats.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAProgramBinaryFormats.java index 1f6f4ce0..f4174332 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAProgramBinaryFormats.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAProgramBinaryFormats.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_MESA_program_binary_formats} - */ + * {@code GL_MESA_program_binary_formats} + */ public final class GLMESAProgramBinaryFormats { public static final int GL_PROGRAM_BINARY_FORMAT_MESA = 0x875F; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAResizeBuffers.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAResizeBuffers.java index da823763..f036b4da 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAResizeBuffers.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAResizeBuffers.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_MESA_resize_buffers} - */ + * {@code GL_MESA_resize_buffers} + */ public final class GLMESAResizeBuffers { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_MESA_resize_buffers) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESATileRasterOrder.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESATileRasterOrder.java index 9ad96ccc..1b0308fc 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESATileRasterOrder.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESATileRasterOrder.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_MESA_tile_raster_order} - */ + * {@code GL_MESA_tile_raster_order} + */ public final class GLMESATileRasterOrder { public static final int GL_TILE_RASTER_ORDER_FIXED_MESA = 0x8BB8; public static final int GL_TILE_RASTER_ORDER_INCREASING_X_MESA = 0x8BB9; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAWindowPos.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAWindowPos.java index 9e56e844..aa1e4b21 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAWindowPos.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAWindowPos.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_MESA_window_pos} - */ + * {@code GL_MESA_window_pos} + */ public final class GLMESAWindowPos { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_MESA_window_pos) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAXTextureStack.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAXTextureStack.java index 93a18362..c42d2b31 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAXTextureStack.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAXTextureStack.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_MESAX_texture_stack} - */ + * {@code GL_MESAX_texture_stack} + */ public final class GLMESAXTextureStack { public static final int GL_TEXTURE_1D_STACK_MESAX = 0x8759; public static final int GL_TEXTURE_2D_STACK_MESAX = 0x875A; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAYcbcrTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAYcbcrTexture.java index 7d85deca..8ea9bfad 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAYcbcrTexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/mesa/GLMESAYcbcrTexture.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_MESA_ycbcr_texture} - */ + * {@code GL_MESA_ycbcr_texture} + */ public final class GLMESAYcbcrTexture { public static final int GL_UNSIGNED_SHORT_8_8_MESA = 0x85BA; public static final int GL_UNSIGNED_SHORT_8_8_REV_MESA = 0x85BB; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXConditionalRender.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXConditionalRender.java index 103e11c0..147dbdd9 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXConditionalRender.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXConditionalRender.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_NVX_conditional_render} - */ + * {@code GL_NVX_conditional_render} + */ public final class GLNVXConditionalRender { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_NVX_conditional_render) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESByteCoordinates.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESByteCoordinates.java index 984d0107..c7ec56b6 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESByteCoordinates.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESByteCoordinates.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_OES_byte_coordinates} - */ + * {@code GL_OES_byte_coordinates} + */ public final class GLOESByteCoordinates { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_OES_byte_coordinates) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESCompressedPalettedTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESCompressedPalettedTexture.java index 3b43b0a2..90e7859c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESCompressedPalettedTexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESCompressedPalettedTexture.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_OES_compressed_paletted_texture} - */ + * {@code GL_OES_compressed_paletted_texture} + */ public final class GLOESCompressedPalettedTexture { public static final int GL_PALETTE4_RGB8_OES = 0x8B90; public static final int GL_PALETTE4_RGBA8_OES = 0x8B91; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESFixedPoint.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESFixedPoint.java index 3f1339c6..722b74ab 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESFixedPoint.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESFixedPoint.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_OES_fixed_point} - */ + * {@code GL_OES_fixed_point} + */ public final class GLOESFixedPoint { public static final int GL_FIXED_OES = 0x140C; public static void load(GLExtCaps ext, GLLoadFunc load) { diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESQueryMatrix.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESQueryMatrix.java index 067c74e0..9c0096f2 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESQueryMatrix.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESQueryMatrix.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_OES_query_matrix} - */ + * {@code GL_OES_query_matrix} + */ public final class GLOESQueryMatrix { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_OES_query_matrix) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESReadFormat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESReadFormat.java index 32921bc1..1a7e33c1 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESReadFormat.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESReadFormat.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_OES_read_format} - */ + * {@code GL_OES_read_format} + */ public final class GLOESReadFormat { public static final int GL_IMPLEMENTATION_COLOR_READ_TYPE_OES = 0x8B9A; public static final int GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES = 0x8B9B; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESSinglePrecision.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESSinglePrecision.java index 523b0b5b..11bc85ae 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESSinglePrecision.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/oes/GLOESSinglePrecision.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_OES_single_precision} - */ + * {@code GL_OES_single_precision} + */ public final class GLOESSinglePrecision { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_OES_single_precision) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIColorMatrix.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIColorMatrix.java index f2b4159b..95cc319a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIColorMatrix.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIColorMatrix.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGI_color_matrix} - */ + * {@code GL_SGI_color_matrix} + */ public final class GLSGIColorMatrix { public static final int GL_COLOR_MATRIX_SGI = 0x80B1; public static final int GL_COLOR_MATRIX_STACK_DEPTH_SGI = 0x80B2; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIColorTable.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIColorTable.java index a967358d..a8e87741 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIColorTable.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIColorTable.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGI_color_table} - */ + * {@code GL_SGI_color_table} + */ public final class GLSGIColorTable { public static final int GL_COLOR_TABLE_SGI = 0x80D0; public static final int GL_POST_CONVOLUTION_COLOR_TABLE_SGI = 0x80D1; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISDetailTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISDetailTexture.java index b3cbb144..7498c940 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISDetailTexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISDetailTexture.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIS_detail_texture} - */ + * {@code GL_SGIS_detail_texture} + */ public final class GLSGISDetailTexture { public static final int GL_DETAIL_TEXTURE_2D_SGIS = 0x8095; public static final int GL_DETAIL_TEXTURE_2D_BINDING_SGIS = 0x8096; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISFogFunction.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISFogFunction.java index 7b0b3510..5e6e0d83 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISFogFunction.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISFogFunction.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIS_fog_function} - */ + * {@code GL_SGIS_fog_function} + */ public final class GLSGISFogFunction { public static final int GL_FOG_FUNC_SGIS = 0x812A; public static final int GL_FOG_FUNC_POINTS_SGIS = 0x812B; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISGenerateMipmap.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISGenerateMipmap.java index 4747cc24..404e5a91 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISGenerateMipmap.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISGenerateMipmap.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIS_generate_mipmap} - */ + * {@code GL_SGIS_generate_mipmap} + */ public final class GLSGISGenerateMipmap { public static final int GL_GENERATE_MIPMAP_SGIS = 0x8191; public static final int GL_GENERATE_MIPMAP_HINT_SGIS = 0x8192; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISMultisample.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISMultisample.java index 5ead8414..9da9e512 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISMultisample.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISMultisample.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIS_multisample} - */ + * {@code GL_SGIS_multisample} + */ public final class GLSGISMultisample { public static final int GL_MULTISAMPLE_SGIS = 0x809D; public static final int GL_SAMPLE_ALPHA_TO_MASK_SGIS = 0x809E; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPixelTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPixelTexture.java index 7f65f68a..563763b8 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPixelTexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPixelTexture.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIS_pixel_texture} - */ + * {@code GL_SGIS_pixel_texture} + */ public final class GLSGISPixelTexture { public static final int GL_PIXEL_TEXTURE_SGIS = 0x8353; public static final int GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS = 0x8354; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPointLineTexgen.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPointLineTexgen.java index 16a3b351..72095425 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPointLineTexgen.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPointLineTexgen.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIS_point_line_texgen} - */ + * {@code GL_SGIS_point_line_texgen} + */ public final class GLSGISPointLineTexgen { public static final int GL_EYE_DISTANCE_TO_POINT_SGIS = 0x81F0; public static final int GL_OBJECT_DISTANCE_TO_POINT_SGIS = 0x81F1; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPointParameters.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPointParameters.java index 8ba511e8..e1d31315 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPointParameters.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISPointParameters.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIS_point_parameters} - */ + * {@code GL_SGIS_point_parameters} + */ public final class GLSGISPointParameters { public static final int GL_POINT_SIZE_MIN_SGIS = 0x8126; public static final int GL_POINT_SIZE_MAX_SGIS = 0x8127; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISSharpenTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISSharpenTexture.java index 8b2052ae..bb747805 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISSharpenTexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISSharpenTexture.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIS_sharpen_texture} - */ + * {@code GL_SGIS_sharpen_texture} + */ public final class GLSGISSharpenTexture { public static final int GL_LINEAR_SHARPEN_SGIS = 0x80AD; public static final int GL_LINEAR_SHARPEN_ALPHA_SGIS = 0x80AE; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTexture4D.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTexture4D.java index 9d496080..f235cf5d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTexture4D.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTexture4D.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIS_texture4D} - */ + * {@code GL_SGIS_texture4D} + */ public final class GLSGISTexture4D { public static final int GL_PACK_SKIP_VOLUMES_SGIS = 0x8130; public static final int GL_PACK_IMAGE_DEPTH_SGIS = 0x8131; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureBorderClamp.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureBorderClamp.java index 2e387303..cff30b7f 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureBorderClamp.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureBorderClamp.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIS_texture_border_clamp} - */ + * {@code GL_SGIS_texture_border_clamp} + */ public final class GLSGISTextureBorderClamp { public static final int GL_CLAMP_TO_BORDER_SGIS = 0x812D; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureColorMask.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureColorMask.java index 97589f39..6e2b103d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureColorMask.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureColorMask.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIS_texture_color_mask} - */ + * {@code GL_SGIS_texture_color_mask} + */ public final class GLSGISTextureColorMask { public static final int GL_TEXTURE_COLOR_WRITEMASK_SGIS = 0x81EF; public static void load(GLExtCaps ext, GLLoadFunc load) { diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureEdgeClamp.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureEdgeClamp.java index d3ab802e..824d582a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureEdgeClamp.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureEdgeClamp.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIS_texture_edge_clamp} - */ + * {@code GL_SGIS_texture_edge_clamp} + */ public final class GLSGISTextureEdgeClamp { public static final int GL_CLAMP_TO_EDGE_SGIS = 0x812F; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureFilter4.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureFilter4.java index d7ce18e7..c92f06e2 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureFilter4.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureFilter4.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIS_texture_filter4} - */ + * {@code GL_SGIS_texture_filter4} + */ public final class GLSGISTextureFilter4 { public static final int GL_FILTER4_SGIS = 0x8146; public static final int GL_TEXTURE_FILTER4_SIZE_SGIS = 0x8147; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureLod.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureLod.java index 03657043..310987e1 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureLod.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureLod.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIS_texture_lod} - */ + * {@code GL_SGIS_texture_lod} + */ public final class GLSGISTextureLod { public static final int GL_TEXTURE_MIN_LOD_SGIS = 0x813A; public static final int GL_TEXTURE_MAX_LOD_SGIS = 0x813B; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureSelect.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureSelect.java index e57bde47..e77c06b4 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureSelect.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGISTextureSelect.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIS_texture_select} - */ + * {@code GL_SGIS_texture_select} + */ public final class GLSGISTextureSelect { public static final int GL_DUAL_ALPHA4_SGIS = 0x8110; public static final int GL_DUAL_ALPHA8_SGIS = 0x8111; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGITextureColorTable.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGITextureColorTable.java index 3e74c1e0..d57f7017 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGITextureColorTable.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGITextureColorTable.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGI_texture_color_table} - */ + * {@code GL_SGI_texture_color_table} + */ public final class GLSGITextureColorTable { public static final int GL_TEXTURE_COLOR_TABLE_SGI = 0x80BC; public static final int GL_PROXY_TEXTURE_COLOR_TABLE_SGI = 0x80BD; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsync.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsync.java index 57514314..4800da97 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsync.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsync.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_async} - */ + * {@code GL_SGIX_async} + */ public final class GLSGIXAsync { public static final int GL_ASYNC_MARKER_SGIX = 0x8329; public static void load(GLExtCaps ext, GLLoadFunc load) { diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsyncHistogram.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsyncHistogram.java index 0eb808f7..472ac076 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsyncHistogram.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsyncHistogram.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_async_histogram} - */ + * {@code GL_SGIX_async_histogram} + */ public final class GLSGIXAsyncHistogram { public static final int GL_ASYNC_HISTOGRAM_SGIX = 0x832C; public static final int GL_MAX_ASYNC_HISTOGRAM_SGIX = 0x832D; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsyncPixel.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsyncPixel.java index 27b8374e..37f06947 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsyncPixel.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXAsyncPixel.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_async_pixel} - */ + * {@code GL_SGIX_async_pixel} + */ public final class GLSGIXAsyncPixel { public static final int GL_ASYNC_TEX_IMAGE_SGIX = 0x835C; public static final int GL_ASYNC_DRAW_PIXELS_SGIX = 0x835D; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXBlendAlphaMinmax.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXBlendAlphaMinmax.java index 73125ffc..7b68ac9d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXBlendAlphaMinmax.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXBlendAlphaMinmax.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_blend_alpha_minmax} - */ + * {@code GL_SGIX_blend_alpha_minmax} + */ public final class GLSGIXBlendAlphaMinmax { public static final int GL_ALPHA_MIN_SGIX = 0x8320; public static final int GL_ALPHA_MAX_SGIX = 0x8321; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXCalligraphicFragment.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXCalligraphicFragment.java index 61f0284a..1ab23c28 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXCalligraphicFragment.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXCalligraphicFragment.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_calligraphic_fragment} - */ + * {@code GL_SGIX_calligraphic_fragment} + */ public final class GLSGIXCalligraphicFragment { public static final int GL_CALLIGRAPHIC_FRAGMENT_SGIX = 0x8183; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXClipmap.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXClipmap.java index 2759d4f2..4fa16086 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXClipmap.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXClipmap.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_clipmap} - */ + * {@code GL_SGIX_clipmap} + */ public final class GLSGIXClipmap { public static final int GL_LINEAR_CLIPMAP_LINEAR_SGIX = 0x8170; public static final int GL_TEXTURE_CLIPMAP_CENTER_SGIX = 0x8171; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXConvolutionAccuracy.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXConvolutionAccuracy.java index 6a084f89..903f7e2d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXConvolutionAccuracy.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXConvolutionAccuracy.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_convolution_accuracy} - */ + * {@code GL_SGIX_convolution_accuracy} + */ public final class GLSGIXConvolutionAccuracy { public static final int GL_CONVOLUTION_HINT_SGIX = 0x8316; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXDepthTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXDepthTexture.java index 20c9540d..6c28a1ba 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXDepthTexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXDepthTexture.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_depth_texture} - */ + * {@code GL_SGIX_depth_texture} + */ public final class GLSGIXDepthTexture { public static final int GL_DEPTH_COMPONENT16_SGIX = 0x81A5; public static final int GL_DEPTH_COMPONENT24_SGIX = 0x81A6; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFlushRaster.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFlushRaster.java index fcbedbe8..3f1ccd5a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFlushRaster.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFlushRaster.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_flush_raster} - */ + * {@code GL_SGIX_flush_raster} + */ public final class GLSGIXFlushRaster { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_SGIX_flush_raster) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFogOffset.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFogOffset.java index e3d8e54f..6080755c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFogOffset.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFogOffset.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_fog_offset} - */ + * {@code GL_SGIX_fog_offset} + */ public final class GLSGIXFogOffset { public static final int GL_FOG_OFFSET_SGIX = 0x8198; public static final int GL_FOG_OFFSET_VALUE_SGIX = 0x8199; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFragmentLighting.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFragmentLighting.java index 881dfc7b..f5056c24 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFragmentLighting.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFragmentLighting.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_fragment_lighting} - */ + * {@code GL_SGIX_fragment_lighting} + */ public final class GLSGIXFragmentLighting { public static final int GL_FRAGMENT_LIGHTING_SGIX = 0x8400; public static final int GL_FRAGMENT_COLOR_MATERIAL_SGIX = 0x8401; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFramezoom.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFramezoom.java index 7b825a53..7a426efe 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFramezoom.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXFramezoom.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_framezoom} - */ + * {@code GL_SGIX_framezoom} + */ public final class GLSGIXFramezoom { public static final int GL_FRAMEZOOM_SGIX = 0x818B; public static final int GL_FRAMEZOOM_FACTOR_SGIX = 0x818C; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXIglooInterface.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXIglooInterface.java index 04171a06..60f018e1 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXIglooInterface.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXIglooInterface.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_igloo_interface} - */ + * {@code GL_SGIX_igloo_interface} + */ public final class GLSGIXIglooInterface { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_SGIX_igloo_interface) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXInstruments.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXInstruments.java index 78e2eca4..a9915749 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXInstruments.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXInstruments.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_instruments} - */ + * {@code GL_SGIX_instruments} + */ public final class GLSGIXInstruments { public static final int GL_INSTRUMENT_BUFFER_POINTER_SGIX = 0x8180; public static final int GL_INSTRUMENT_MEASUREMENTS_SGIX = 0x8181; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXInterlace.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXInterlace.java index 0bea7eb9..2e2c7ceb 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXInterlace.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXInterlace.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_interlace} - */ + * {@code GL_SGIX_interlace} + */ public final class GLSGIXInterlace { public static final int GL_INTERLACE_SGIX = 0x8094; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXIrInstrument1.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXIrInstrument1.java index f8be52c0..e8a83df1 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXIrInstrument1.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXIrInstrument1.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_ir_instrument1} - */ + * {@code GL_SGIX_ir_instrument1} + */ public final class GLSGIXIrInstrument1 { public static final int GL_IR_INSTRUMENT1_SGIX = 0x817F; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXListPriority.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXListPriority.java index 41201c2b..94a8d12d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXListPriority.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXListPriority.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_list_priority} - */ + * {@code GL_SGIX_list_priority} + */ public final class GLSGIXListPriority { public static final int GL_LIST_PRIORITY_SGIX = 0x8182; public static void load(GLExtCaps ext, GLLoadFunc load) { diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPixelTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPixelTexture.java index 2a41b24a..3e91ca30 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPixelTexture.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPixelTexture.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_pixel_texture} - */ + * {@code GL_SGIX_pixel_texture} + */ public final class GLSGIXPixelTexture { public static final int GL_PIXEL_TEX_GEN_SGIX = 0x8139; public static final int GL_PIXEL_TEX_GEN_MODE_SGIX = 0x832B; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPixelTiles.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPixelTiles.java index 7bf0ae81..e49f8eb3 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPixelTiles.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPixelTiles.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_pixel_tiles} - */ + * {@code GL_SGIX_pixel_tiles} + */ public final class GLSGIXPixelTiles { public static final int GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX = 0x813E; public static final int GL_PIXEL_TILE_CACHE_INCREMENT_SGIX = 0x813F; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPolynomialFFD.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPolynomialFFD.java index 676c3107..04486bd7 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPolynomialFFD.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXPolynomialFFD.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_polynomial_ffd} - */ + * {@code GL_SGIX_polynomial_ffd} + */ public final class GLSGIXPolynomialFFD { public static final int GL_TEXTURE_DEFORMATION_BIT_SGIX = 0x00000001; public static final int GL_GEOMETRY_DEFORMATION_BIT_SGIX = 0x00000002; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXReferencePlane.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXReferencePlane.java index 129b662f..7ee332d8 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXReferencePlane.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXReferencePlane.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_reference_plane} - */ + * {@code GL_SGIX_reference_plane} + */ public final class GLSGIXReferencePlane { public static final int GL_REFERENCE_PLANE_SGIX = 0x817D; public static final int GL_REFERENCE_PLANE_EQUATION_SGIX = 0x817E; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXResample.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXResample.java index b6e2c894..8c18028f 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXResample.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXResample.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_resample} - */ + * {@code GL_SGIX_resample} + */ public final class GLSGIXResample { public static final int GL_PACK_RESAMPLE_SGIX = 0x842E; public static final int GL_UNPACK_RESAMPLE_SGIX = 0x842F; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXScalebiasHint.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXScalebiasHint.java index fdcdd9ff..a3ea2b9b 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXScalebiasHint.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXScalebiasHint.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_scalebias_hint} - */ + * {@code GL_SGIX_scalebias_hint} + */ public final class GLSGIXScalebiasHint { public static final int GL_SCALEBIAS_HINT_SGIX = 0x8322; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXShadow.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXShadow.java index 2b0d3f9c..1c3ac066 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXShadow.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXShadow.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_shadow} - */ + * {@code GL_SGIX_shadow} + */ public final class GLSGIXShadow { public static final int GL_TEXTURE_COMPARE_SGIX = 0x819A; public static final int GL_TEXTURE_COMPARE_OPERATOR_SGIX = 0x819B; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXShadowAmbient.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXShadowAmbient.java index 04d032dc..7c567206 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXShadowAmbient.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXShadowAmbient.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_shadow_ambient} - */ + * {@code GL_SGIX_shadow_ambient} + */ public final class GLSGIXShadowAmbient { public static final int GL_SHADOW_AMBIENT_SGIX = 0x80BF; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXSprite.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXSprite.java index 64054d27..21e8553b 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXSprite.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXSprite.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_sprite} - */ + * {@code GL_SGIX_sprite} + */ public final class GLSGIXSprite { public static final int GL_SPRITE_SGIX = 0x8148; public static final int GL_SPRITE_MODE_SGIX = 0x8149; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXSubsample.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXSubsample.java index 7015ca7e..608b0f6e 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXSubsample.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXSubsample.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_subsample} - */ + * {@code GL_SGIX_subsample} + */ public final class GLSGIXSubsample { public static final int GL_PACK_SUBSAMPLE_RATE_SGIX = 0x85A0; public static final int GL_UNPACK_SUBSAMPLE_RATE_SGIX = 0x85A1; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTagSampleBuffer.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTagSampleBuffer.java index 69ed727d..2ee333a3 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTagSampleBuffer.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTagSampleBuffer.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_tag_sample_buffer} - */ + * {@code GL_SGIX_tag_sample_buffer} + */ public final class GLSGIXTagSampleBuffer { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_SGIX_tag_sample_buffer) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureAddEnv.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureAddEnv.java index 4b74298c..caf3ba8a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureAddEnv.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureAddEnv.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_texture_add_env} - */ + * {@code GL_SGIX_texture_add_env} + */ public final class GLSGIXTextureAddEnv { public static final int GL_TEXTURE_ENV_BIAS_SGIX = 0x80BE; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureCoordinateClamp.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureCoordinateClamp.java index 93439b19..eb6b07af 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureCoordinateClamp.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureCoordinateClamp.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_texture_coordinate_clamp} - */ + * {@code GL_SGIX_texture_coordinate_clamp} + */ public final class GLSGIXTextureCoordinateClamp { public static final int GL_TEXTURE_MAX_CLAMP_S_SGIX = 0x8369; public static final int GL_TEXTURE_MAX_CLAMP_T_SGIX = 0x836A; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureLodBias.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureLodBias.java index 9800540e..db96e5d2 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureLodBias.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureLodBias.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_texture_lod_bias} - */ + * {@code GL_SGIX_texture_lod_bias} + */ public final class GLSGIXTextureLodBias { public static final int GL_TEXTURE_LOD_BIAS_S_SGIX = 0x818E; public static final int GL_TEXTURE_LOD_BIAS_T_SGIX = 0x818F; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureMultiBuffer.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureMultiBuffer.java index e0da6983..fd606896 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureMultiBuffer.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureMultiBuffer.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_texture_multi_buffer} - */ + * {@code GL_SGIX_texture_multi_buffer} + */ public final class GLSGIXTextureMultiBuffer { public static final int GL_TEXTURE_MULTI_BUFFER_HINT_SGIX = 0x812E; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureScaleBias.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureScaleBias.java index d41d4c67..ebd00787 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureScaleBias.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXTextureScaleBias.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_texture_scale_bias} - */ + * {@code GL_SGIX_texture_scale_bias} + */ public final class GLSGIXTextureScaleBias { public static final int GL_POST_TEXTURE_FILTER_BIAS_SGIX = 0x8179; public static final int GL_POST_TEXTURE_FILTER_SCALE_SGIX = 0x817A; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXVertexPreclip.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXVertexPreclip.java index 8c0aa647..9db4a81d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXVertexPreclip.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXVertexPreclip.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_vertex_preclip} - */ + * {@code GL_SGIX_vertex_preclip} + */ public final class GLSGIXVertexPreclip { public static final int GL_VERTEX_PRECLIP_SGIX = 0x83EE; public static final int GL_VERTEX_PRECLIP_HINT_SGIX = 0x83EF; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXYcrcb.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXYcrcb.java index 0d22cd96..5bf0fca2 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXYcrcb.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXYcrcb.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_ycrcb} - */ + * {@code GL_SGIX_ycrcb} + */ public final class GLSGIXYcrcb { public static final int GL_YCRCB_422_SGIX = 0x81BB; public static final int GL_YCRCB_444_SGIX = 0x81BC; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXYcrcba.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXYcrcba.java index 1fe03e13..4fb14d7a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXYcrcba.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sgi/GLSGIXYcrcba.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SGIX_ycrcba} - */ + * {@code GL_SGIX_ycrcba} + */ public final class GLSGIXYcrcba { public static final int GL_YCRCB_SGIX = 0x8318; public static final int GL_YCRCBA_SGIX = 0x8319; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNConvolutionBorderModes.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNConvolutionBorderModes.java index 02dab355..91fe640c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNConvolutionBorderModes.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNConvolutionBorderModes.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SUN_convolution_border_modes} - */ + * {@code GL_SUN_convolution_border_modes} + */ public final class GLSUNConvolutionBorderModes { public static final int GL_WRAP_BORDER_SUN = 0x81D4; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNGlobalAlpha.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNGlobalAlpha.java index 8060406d..a77e8314 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNGlobalAlpha.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNGlobalAlpha.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SUN_global_alpha} - */ + * {@code GL_SUN_global_alpha} + */ public final class GLSUNGlobalAlpha { public static final int GL_GLOBAL_ALPHA_SUN = 0x81D9; public static final int GL_GLOBAL_ALPHA_FACTOR_SUN = 0x81DA; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNMeshArray.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNMeshArray.java index 071647a0..72ac6d17 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNMeshArray.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNMeshArray.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SUN_mesh_array} - */ + * {@code GL_SUN_mesh_array} + */ public final class GLSUNMeshArray { public static final int GL_QUAD_MESH_SUN = 0x8614; public static final int GL_TRIANGLE_MESH_SUN = 0x8615; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNSliceAccum.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNSliceAccum.java index c7cbc10e..9e4b7539 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNSliceAccum.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNSliceAccum.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SUN_slice_accum} - */ + * {@code GL_SUN_slice_accum} + */ public final class GLSUNSliceAccum { public static final int GL_SLICE_ACCUM_SUN = 0x85CC; } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNTriangleList.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNTriangleList.java index cfc81598..b12bcd9c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNTriangleList.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNTriangleList.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SUN_triangle_list} - */ + * {@code GL_SUN_triangle_list} + */ public final class GLSUNTriangleList { public static final int GL_RESTART_SUN = 0x0001; public static final int GL_REPLACE_MIDDLE_SUN = 0x0002; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNVertex.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNVertex.java index a65d860e..2522774b 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNVertex.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNVertex.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SUN_vertex} - */ + * {@code GL_SUN_vertex} + */ public final class GLSUNVertex { public static void load(GLExtCaps ext, GLLoadFunc load) { if (!ext.GL_SUN_vertex) return; diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNXConstantData.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNXConstantData.java index 3aed148d..d8078f39 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNXConstantData.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/sun/GLSUNXConstantData.java @@ -25,8 +25,8 @@ import static overrungl.opengl.GLLoader.*; /** - * {@code GL_SUNX_constant_data} - */ + * {@code GL_SUNX_constant_data} + */ public final class GLSUNXConstantData { public static final int GL_UNPACK_CONSTANT_DATA_SUNX = 0x81D5; public static final int GL_TEXTURE_CONSTANT_DATA_SUNX = 0x81D6; From 201ea6a961af6d57d10b031cc2e32dd1a16ee4cb Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Sat, 11 Nov 2023 12:58:13 +0800 Subject: [PATCH 12/20] [OpenGL] Update extensions --- .../src/main/java/overrungl/Callback.java | 20 + .../overrungl/opengl/OpenGLGenerator.kt | 532 ++++++++++++++++++ .../main/java/overrungl/opengl/GLExtCaps.java | 45 +- .../nv/GLNVAlphaToCoverageDitherControl.java | 47 ++ .../ext/nv/GLNVBindlessMultiDrawIndirect.java | 51 ++ .../GLNVBindlessMultiDrawIndirectCount.java | 51 ++ .../opengl/ext/nv/GLNVBindlessTexture.java | 144 +++++ .../ext/nv/GLNVBlendEquationAdvanced.java | 100 ++++ .../nv/GLNVBlendEquationAdvancedCoherent.java | 32 ++ .../opengl/ext/nv/GLNVClipSpaceWScaling.java | 46 ++ .../opengl/ext/nv/GLNVCommandList.java | 194 +++++++ .../opengl/ext/nv/GLNVComputeProgram5.java | 33 ++ .../opengl/ext/nv/GLNVConditionalRender.java | 55 ++ .../opengl/ext/nv/GLNVConservativeRaster.java | 47 ++ .../ext/nv/GLNVConservativeRasterDilate.java | 46 ++ .../ext/nv/GLNVConservativeRasterPreSnap.java | 32 ++ ...LNVConservativeRasterPreSnapTriangles.java | 46 ++ .../opengl/ext/nv/GLNVCopyDepthToColor.java | 33 ++ .../opengl/ext/nv/GLNVCopyImage.java | 43 ++ .../opengl/ext/nv/GLNVDeepTexture3D.java | 33 ++ .../opengl/ext/nv/GLNVDepthBufferFloat.java | 63 +++ .../opengl/ext/nv/GLNVDepthClamp.java | 32 ++ .../opengl/ext/nv/GLNVDrawTexture.java | 43 ++ .../opengl/ext/nv/GLNVDrawVulkanImage.java | 76 +++ .../opengl/ext/nv/GLNVEvaluators.java | 131 +++++ .../ext/nv/GLNVExplicitMultisample.java | 69 +++ .../opengl/ext/nv/GLNVXGpuMemoryInfo.java | 36 ++ .../opengl/ext/nv/GLNVXGpuMulticast2.java | 86 +++ .../ext/nv/GLNVXLinkedGpuMulticast.java | 61 ++ .../opengl/ext/nv/GLNVXProgressFence.java | 67 +++ .../opengl/ext/nv/GLVulkanProcNV.java | 58 ++ 31 files changed, 2342 insertions(+), 10 deletions(-) create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVAlphaToCoverageDitherControl.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBindlessMultiDrawIndirect.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBindlessMultiDrawIndirectCount.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBindlessTexture.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBlendEquationAdvanced.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBlendEquationAdvancedCoherent.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVClipSpaceWScaling.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVCommandList.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVComputeProgram5.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConditionalRender.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConservativeRaster.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConservativeRasterDilate.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConservativeRasterPreSnap.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConservativeRasterPreSnapTriangles.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVCopyDepthToColor.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVCopyImage.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDeepTexture3D.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDepthBufferFloat.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDepthClamp.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDrawTexture.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDrawVulkanImage.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVEvaluators.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVExplicitMultisample.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXGpuMemoryInfo.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXGpuMulticast2.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXLinkedGpuMulticast.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXProgressFence.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLVulkanProcNV.java diff --git a/modules/overrungl.core/src/main/java/overrungl/Callback.java b/modules/overrungl.core/src/main/java/overrungl/Callback.java index a2edae5e..f2083fd1 100644 --- a/modules/overrungl.core/src/main/java/overrungl/Callback.java +++ b/modules/overrungl.core/src/main/java/overrungl/Callback.java @@ -23,6 +23,7 @@ import java.lang.foreign.MemorySegment; import java.lang.invoke.MethodHandle; import java.lang.invoke.MethodHandles; +import java.util.function.Function; /** * The upcall stub which can be passed to other foreign functions as a function pointer, @@ -58,6 +59,16 @@ default MemorySegment address(Arena arena) { */ MethodHandle handle(MethodHandles.Lookup lookup) throws NoSuchMethodException, IllegalAccessException; + /** + * Creates a method handle that invokes a native function callback. + * + * @param segment the segment of the native function. + * @return the method handle + */ + default MethodHandle nativeHandle(MemorySegment segment) { + return RuntimeHelper.LINKER.downcallHandle(segment, descriptor()); + } + /** * Gets the memory segment of the upcall stub with the given arena. * @@ -72,4 +83,13 @@ default MemorySegment segment(Arena arena, FunctionDescriptor function) { throw new RuntimeException(e); } } + + /** + * Method handle getter. + * + * @author squid233 + * @since 0.1.0 + */ + interface Native extends Function { + } } diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt index 5cc55da6..ffcefd2b 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt @@ -3637,6 +3637,538 @@ fun nv() { "glBeginConditionalRenderNVX"(void, GLuint("id")) "glEndConditionalRenderNVX"(void) } + file( + "GpuMemoryInfo", NVX, "GL_NVX_gpu_memory_info", + "GL_GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX" to "0x9047", + "GL_GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX" to "0x9048", + "GL_GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX" to "0x9049", + "GL_GPU_MEMORY_INFO_EVICTION_COUNT_NVX" to "0x904A", + "GL_GPU_MEMORY_INFO_EVICTED_MEMORY_NVX" to "0x904B" + ) + file("GpuMulticast2", NVX, "GL_NVX_gpu_multicast2") { + "GL_UPLOAD_GPU_MASK_NVX"("0x954A") + "glUploadGpuMaskNVX"(void, GLbitfield("mask")) + "glMulticastViewportArrayvNVX"( + void, + GLuint("gpu"), + GLuint("first"), + GLsizei("count"), + address("v", "const GLfloat *") + ) + "glMulticastViewportPositionWScaleNVX"( + void, + GLuint("gpu"), + GLuint("index"), + GLfloat("xcoeff"), + GLfloat("ycoeff") + ) + "glMulticastScissorArrayvNVX"( + void, + GLuint("gpu"), + GLuint("first"), + GLsizei("count"), + address("v", "const GLint *") + ) + "glAsyncCopyBufferSubDataNVX"( + GLuint, + GLsizei("waitSemaphoreCount"), + address("waitSemaphoreArray", "const GLuint *"), + address("fenceValueArray", "const GLuint64 *"), + GLuint("readGpu"), + GLbitfield("writeGpuMask"), + GLuint("readBuffer"), + GLuint("writeBuffer"), + GLintptr("readOffset"), + GLintptr("writeOffset"), + GLsizeiptr("size"), + GLsizei("signalSemaphoreCount"), + address("signalSemaphoreArray", "const GLuint *"), + address("signalValueArray", "const GLuint64 *") + ) + "glAsyncCopyImageSubDataNVX"( + GLuint, + GLsizei("waitSemaphoreCount"), + address("waitSemaphoreArray", "const GLuint *"), + address("waitValueArray", "const GLuint64 *"), + GLuint("srcGpu"), + GLbitfield("dstGpuMask"), + GLuint("srcName"), + GLenum("srcTarget"), + GLint("srcLevel"), + GLint("srcX"), + GLint("srcY"), + GLint("srcZ"), + GLuint("dstName"), + GLenum("dstTarget"), + GLint("dstLevel"), + GLint("dstX"), + GLint("dstY"), + GLint("dstZ"), + GLsizei("srcWidth"), + GLsizei("srcHeight"), + GLsizei("srcDepth"), + GLsizei("signalSemaphoreCount"), + address("signalSemaphoreArray", "const GLuint *"), + address("signalValueArray", "const GLuint64 *") + ) + } + file("LinkedGpuMulticast", NVX, "GL_NVX_linked_gpu_multicast") { + "GL_LGPU_SEPARATE_STORAGE_BIT_NVX"("0x0800") + "GL_MAX_LGPU_GPUS_NVX"("0x92BA") + "glLGPUNamedBufferSubDataNVX"( + void, + GLbitfield("gpuMask"), + GLuint("buffer"), + GLintptr("offset"), + GLsizeiptr("size"), + address("data", "const void *") + ) + "glLGPUCopyImageSubDataNVX"( + void, + GLuint("sourceGpu"), + GLbitfield("destinationGpuMask"), + GLuint("srcName"), + GLenum("srcTarget"), + GLint("srcLevel"), + GLint("srcX"), + GLint("srxY"), + GLint("srcZ"), + GLuint("dstName"), + GLenum("dstTarget"), + GLint("dstLevel"), + GLint("dstX"), + GLint("dstY"), + GLint("dstZ"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth") + ) + "glLGPUInterlockNVX"(void) + } + file("ProgressFence", NVX, "GL_NVX_progress_fence") { + "glCreateProgressFenceNVX"(void) + "glSignalSemaphoreui64NVX"( + void, + GLuint("signalGpu"), + GLsizei("fenceObjectCount"), + address("semaphoreArray", "const GLuint *"), + address("fenceValueArray", "const GLuint64 *") + ) + "glWaitSemaphoreui64NVX"( + void, + GLuint("waitGpu"), + GLsizei("fenceObjectCount"), + address("semaphoreArray", "const GLuint *"), + address("fenceValueArray", "const GLuint64 *") + ) + "glClientWaitSemaphoreui64NVX"( + void, + GLsizei("fenceObjectCount"), + address("semaphoreArray", "const GLuint *"), + address("fenceValueArray", "const GLuint64 *") + ) + } + file("AlphaToCoverageDitherControl", NV, "GL_NV_alpha_to_coverage_dither_control") { + "GL_ALPHA_TO_COVERAGE_DITHER_DEFAULT_NV"("0x934D") + "GL_ALPHA_TO_COVERAGE_DITHER_ENABLE_NV"("0x934E") + "GL_ALPHA_TO_COVERAGE_DITHER_DISABLE_NV"("0x934F") + "GL_ALPHA_TO_COVERAGE_DITHER_MODE_NV"("0x92BF") + "glAlphaToCoverageDitherControlNV"(void, GLenum("mode")) + } + file("BindlessMultiDrawIndirect", NV, "GL_NV_bindless_multi_draw_indirect") { + "glMultiDrawArraysIndirectBindlessNV"( + void, + GLenum("mode"), + address("indirect", "const void *"), + GLsizei("drawCount"), + GLsizei("stride"), + GLint("vertexBufferCount") + ) + "glMultiDrawElementsIndirectBindlessNV"( + void, + GLenum("mode"), + GLenum("type"), + address("indirect", "const void *"), + GLsizei("drawCount"), + GLsizei("stride"), + GLint("vertexBufferCount") + ) + } + file("BindlessMultiDrawIndirectCount", NV, "GL_NV_bindless_multi_draw_indirect_count") { + "glMultiDrawArraysIndirectBindlessCountNV"( + void, + GLenum("mode"), + address("indirect", "const void *"), + GLsizei("drawCount"), + GLsizei("maxDrawCount"), + GLsizei("stride"), + GLint("vertexBufferCount") + ) + "glMultiDrawElementsIndirectBindlessCountNV"( + void, + GLenum("mode"), + GLenum("type"), + address("indirect", "const void *"), + GLsizei("drawCount"), + GLsizei("maxDrawCount"), + GLsizei("stride"), + GLint("vertexBufferCount") + ) + } + file("BindlessTexture", NV, "GL_NV_bindless_texture") { + "glGetTextureHandleNV"(GLuint64, GLuint("texture")) + "glGetTextureSamplerHandleNV"(GLuint64, GLuint("texture"), GLuint("sampler")) + "glMakeTextureHandleResidentNV"(void, GLuint64("handle")) + "glMakeTextureHandleNonResidentNV"(void, GLuint64("handle")) + "glGetImageHandleNV"( + GLuint64, + GLuint("texture"), + GLint("level"), + GLboolean("layered"), + GLint("layer"), + GLenum("format") + ) + "glMakeImageHandleResidentNV"(void, GLuint64("handle"), GLenum("access")) + "glMakeImageHandleNonResidentNV"(void, GLuint64("handle")) + "glUniformHandleui64NV"(void, GLint("location"), GLuint64("value")) + "glUniformHandleui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) + "glProgramUniformHandleui64NV"(void, GLuint("program"), GLint("location"), GLuint64("value")) + "glProgramUniformHandleui64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("values", "const GLuint64 *") + ) + "glIsTextureHandleResidentNV"(GLboolean, GLuint64("handle")) + "glIsImageHandleResidentNV"(GLboolean, GLuint64("handle")) + } + file("BlendEquationAdvanced", NV, "GL_NV_blend_equation_advanced") { + "GL_BLEND_OVERLAP_NV"("0x9281") + "GL_BLEND_PREMULTIPLIED_SRC_NV"("0x9280") + "GL_BLUE_NV"("0x1905") + "GL_COLORBURN_NV"("0x929A") + "GL_COLORDODGE_NV"("0x9299") + "GL_CONJOINT_NV"("0x9284") + "GL_CONTRAST_NV"("0x92A1") + "GL_DARKEN_NV"("0x9297") + "GL_DIFFERENCE_NV"("0x929E") + "GL_DISJOINT_NV"("0x9283") + "GL_DST_ATOP_NV"("0x928F") + "GL_DST_IN_NV"("0x928B") + "GL_DST_NV"("0x9287") + "GL_DST_OUT_NV"("0x928D") + "GL_DST_OVER_NV"("0x9289") + "GL_EXCLUSION_NV"("0x92A0") + "GL_GREEN_NV"("0x1904") + "GL_HARDLIGHT_NV"("0x929B") + "GL_HARDMIX_NV"("0x92A9") + "GL_HSL_COLOR_NV"("0x92AF") + "GL_HSL_HUE_NV"("0x92AD") + "GL_HSL_LUMINOSITY_NV"("0x92B0") + "GL_HSL_SATURATION_NV"("0x92AE") + "GL_INVERT_OVG_NV"("0x92B4") + "GL_INVERT_RGB_NV"("0x92A3") + "GL_LIGHTEN_NV"("0x9298") + "GL_LINEARBURN_NV"("0x92A5") + "GL_LINEARDODGE_NV"("0x92A4") + "GL_LINEARLIGHT_NV"("0x92A7") + "GL_MINUS_CLAMPED_NV"("0x92B3") + "GL_MINUS_NV"("0x929F") + "GL_MULTIPLY_NV"("0x9294") + "GL_OVERLAY_NV"("0x9296") + "GL_PINLIGHT_NV"("0x92A8") + "GL_PLUS_CLAMPED_ALPHA_NV"("0x92B2") + "GL_PLUS_CLAMPED_NV"("0x92B1") + "GL_PLUS_DARKER_NV"("0x9292") + "GL_PLUS_NV"("0x9291") + "GL_RED_NV"("0x1903") + "GL_SCREEN_NV"("0x9295") + "GL_SOFTLIGHT_NV"("0x929C") + "GL_SRC_ATOP_NV"("0x928E") + "GL_SRC_IN_NV"("0x928A") + "GL_SRC_NV"("0x9286") + "GL_SRC_OUT_NV"("0x928C") + "GL_SRC_OVER_NV"("0x9288") + "GL_UNCORRELATED_NV"("0x9282") + "GL_VIVIDLIGHT_NV"("0x92A6") + "GL_XOR_NV"("0x1506") + "glBlendParameteriNV"(void, GLenum("pname"), GLint("value")) + "glBlendBarrierNV"(void) + } + file("BlendEquationAdvancedCoherent", NV, "GL_NV_blend_equation_advanced_coherent", "GL_BLEND_ADVANCED_COHERENT_NV" to "0x9285") + file("ClipSpaceWScaling", NV, "GL_NV_clip_space_w_scaling") { + "GL_VIEWPORT_POSITION_W_SCALE_NV"("0x937C") + "GL_VIEWPORT_POSITION_W_SCALE_X_COEFF_NV"("0x937D") + "GL_VIEWPORT_POSITION_W_SCALE_Y_COEFF_NV"("0x937E") + "glViewportPositionWScaleNV"(void, GLuint("index"), GLfloat("xcoeff"), GLfloat("ycoeff")) + } + file("CommandList", NV, "GL_NV_command_list") { + "GL_TERMINATE_SEQUENCE_COMMAND_NV"("0x0000") + "GL_NOP_COMMAND_NV"("0x0001") + "GL_DRAW_ELEMENTS_COMMAND_NV"("0x0002") + "GL_DRAW_ARRAYS_COMMAND_NV"("0x0003") + "GL_DRAW_ELEMENTS_STRIP_COMMAND_NV"("0x0004") + "GL_DRAW_ARRAYS_STRIP_COMMAND_NV"("0x0005") + "GL_DRAW_ELEMENTS_INSTANCED_COMMAND_NV"("0x0006") + "GL_DRAW_ARRAYS_INSTANCED_COMMAND_NV"("0x0007") + "GL_ELEMENT_ADDRESS_COMMAND_NV"("0x0008") + "GL_ATTRIBUTE_ADDRESS_COMMAND_NV"("0x0009") + "GL_UNIFORM_ADDRESS_COMMAND_NV"("0x000A") + "GL_BLEND_COLOR_COMMAND_NV"("0x000B") + "GL_STENCIL_REF_COMMAND_NV"("0x000C") + "GL_LINE_WIDTH_COMMAND_NV"("0x000D") + "GL_POLYGON_OFFSET_COMMAND_NV"("0x000E") + "GL_ALPHA_REF_COMMAND_NV"("0x000F") + "GL_VIEWPORT_COMMAND_NV"("0x0010") + "GL_SCISSOR_COMMAND_NV"("0x0011") + "GL_FRONT_FACE_COMMAND_NV"("0x0012") + "glCreateStatesNV"(void, GLsizei("n"), address("states", "GLuint *")) + "glDeleteStatesNV"(void, GLsizei("n"), address("states", "const GLuint *")) + "glIsStateNV"(GLboolean, GLuint("state")) + "glStateCaptureNV"(void, GLuint("state"), GLenum("mode")) + "glGetCommandHeaderNV"(GLuint, GLenum("tokenID"), GLuint("size")) + "glGetStageIndexNV"(GLushort, GLenum("shadertype")) + "glDrawCommandsNV"( + void, + GLenum("primitiveMode"), + GLuint("buffer"), + address("indirects", "const GLintptr *"), + address("sizes", "const GLsizei *"), + GLuint("count") + ) + "glDrawCommandsAddressNV"( + void, + GLenum("primitiveMode"), + address("indirects", "const GLuint64 *"), + address("sizes", "const GLsizei *"), + GLuint("count") + ) + "glDrawCommandsStatesNV"( + void, + GLuint("buffer"), + address("indirects", "const GLintptr *"), + address("sizes", "const GLsizei *"), + address("states", "const GLuint *"), + address("fbos", "const GLuint *"), + GLuint("count") + ) + "glDrawCommandsStatesAddressNV"( + void, + address("indirects", "const GLuint64 *"), + address("sizes", "const GLsizei *"), + address("states", "const GLuint *"), + address("fbos", "const GLuint *"), + GLuint("count") + ) + "glCreateCommandListsNV"(void, GLsizei("n"), address("lists", "GLuint *")) + "glDeleteCommandListsNV"(void, GLsizei("n"), address("lists", "const GLuint *")) + "glIsCommandListNV"(GLboolean, GLuint("list")) + "glListDrawCommandsStatesClientNV"( + void, + GLuint("list"), + GLuint("segment"), + address("indirects", "const void **"), + address("sizes", "const GLsizei *"), + address("states", "const GLuint *"), + address("fbos", "const GLuint *"), + GLuint("count") + ) + "glCommandListSegmentsNV"(void, GLuint("list"), GLuint("segments")) + "glCompileCommandListNV"(void, GLuint("list")) + "glCallCommandListNV"(void, GLuint("list")) + } + file( + "ComputeProgram5", NV, "GL_NV_compute_program5", + "GL_COMPUTE_PROGRAM_NV" to "0x90FB", + "GL_COMPUTE_PROGRAM_PARAMETER_BUFFER_NV" to "0x90FC" + ) + file("ConditionalRender", NV, "GL_NV_conditional_render") { + "GL_QUERY_WAIT_NV"("0x8E13") + "GL_QUERY_NO_WAIT_NV"("0x8E14") + "GL_QUERY_BY_REGION_WAIT_NV"("0x8E15") + "GL_QUERY_BY_REGION_NO_WAIT_NV"("0x8E16") + "glBeginConditionalRenderNV"(void, GLuint("id"), GLenum("mode")) + "glEndConditionalRenderNV"(void) + } + file("ConservativeRaster", NV, "GL_NV_conservative_raster") { + "GL_CONSERVATIVE_RASTERIZATION_NV"("0x9346") + "GL_SUBPIXEL_PRECISION_BIAS_X_BITS_NV"("0x9347") + "GL_SUBPIXEL_PRECISION_BIAS_Y_BITS_NV"("0x9348") + "GL_MAX_SUBPIXEL_PRECISION_BIAS_BITS_NV"("0x9349") + "glSubpixelPrecisionBiasNV"(void, GLuint("xbits"), GLuint("ybits")) + } + file("ConservativeRasterDilate", NV, "GL_NV_conservative_raster_dilate") { + "GL_CONSERVATIVE_RASTER_DILATE_NV" ("0x9379") + "GL_CONSERVATIVE_RASTER_DILATE_RANGE_NV" ("0x937A") + "GL_CONSERVATIVE_RASTER_DILATE_GRANULARITY_NV" ("0x937B") + "glConservativeRasterParameterfNV" (void, GLenum ("pname"), GLfloat ("value")) + } + file("ConservativeRasterPreSnap", NV, "GL_NV_conservative_raster_pre_snap", "GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_NV" to "0x9550") + file("ConservativeRasterPreSnapTriangles", NV, "GL_NV_conservative_raster_pre_snap_triangles") { + "GL_CONSERVATIVE_RASTER_MODE_NV"("0x954D") + "GL_CONSERVATIVE_RASTER_MODE_POST_SNAP_NV"("0x954E") + "GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_TRIANGLES_NV"("0x954F") + "glConservativeRasterParameteriNV"(void, GLenum("pname"), GLint("param")) + } + file( + "CopyDepthToColor", NV, "GL_NV_copy_depth_to_color", + "GL_DEPTH_STENCIL_TO_RGBA_NV" to "0x886E", + "GL_DEPTH_STENCIL_TO_BGRA_NV" to "0x886F" + ) + file("CopyImage", NV, "GL_NV_copy_image") { + "glCopyImageSubDataNV"( + void, + GLuint("srcName"), + GLenum("srcTarget"), + GLint("srcLevel"), + GLint("srcX"), + GLint("srcY"), + GLint("srcZ"), + GLuint("dstName"), + GLenum("dstTarget"), + GLint("dstLevel"), + GLint("dstX"), + GLint("dstY"), + GLint("dstZ"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth") + ) + } + file( + "DeepTexture3D", NV, "GL_NV_deep_texture3D", + "GL_MAX_DEEP_3D_TEXTURE_WIDTH_HEIGHT_NV" to "0x90D0", + "GL_MAX_DEEP_3D_TEXTURE_DEPTH_NV" to "0x90D1" + ) + file("DepthBufferFloat", NV, "GL_NV_depth_buffer_float") { + "GL_DEPTH_COMPONENT32F_NV"("0x8DAB") + "GL_DEPTH32F_STENCIL8_NV"("0x8DAC") + "GL_FLOAT_32_UNSIGNED_INT_24_8_REV_NV"("0x8DAD") + "GL_DEPTH_BUFFER_FLOAT_MODE_NV"("0x8DAF") + "glDepthRangedNV"(void, GLdouble("zNear"), GLdouble("zFar")) + "glClearDepthdNV"(void, GLdouble("depth")) + "glDepthBoundsdNV"(void, GLdouble("zmin"), GLdouble("zmax")) + } + file("DepthClamp", NV, "GL_NV_depth_clamp", "GL_DEPTH_CLAMP_NV" to "0x864F") + file("DrawTexture", NV, "GL_NV_draw_texture") { + "glDrawTextureNV"( + void, + GLuint("texture"), + GLuint("sampler"), + GLfloat("x0"), + GLfloat("y0"), + GLfloat("x1"), + GLfloat("y1"), + GLfloat("z"), + GLfloat("s0"), + GLfloat("t0"), + GLfloat("s1"), + GLfloat("t1") + ) + } + file("DrawVulkanImage", NV, "GL_NV_draw_vulkan_image") { + "glDrawVkImageNV"( + void, + GLuint64("vkImage"), + GLuint("sampler"), + GLfloat("x0"), + GLfloat("y0"), + GLfloat("x1"), + GLfloat("y1"), + GLfloat("z"), + GLfloat("s0"), + GLfloat("t0"), + GLfloat("s1"), + GLfloat("t1") + ) + "glGetVkProcAddrNV"(address, address("name", "const GLchar *"), nativeType = "GLVULKANPROCNV") + "glWaitVkSemaphoreNV"(void, GLuint64("vkSemaphore")) + "glSignalVkSemaphoreNV"(void, GLuint64("vkSemaphore")) + "glSignalVkFenceNV"(void, GLuint64("vkFence")) + } + file("Evaluators", NV, "GL_NV_evaluators") { + "GL_EVAL_2D_NV"("0x86C0") + "GL_EVAL_TRIANGULAR_2D_NV"("0x86C1") + "GL_MAP_TESSELLATION_NV"("0x86C2") + "GL_MAP_ATTRIB_U_ORDER_NV"("0x86C3") + "GL_MAP_ATTRIB_V_ORDER_NV"("0x86C4") + "GL_EVAL_FRACTIONAL_TESSELLATION_NV"("0x86C5") + "GL_EVAL_VERTEX_ATTRIB0_NV"("0x86C6") + "GL_EVAL_VERTEX_ATTRIB1_NV"("0x86C7") + "GL_EVAL_VERTEX_ATTRIB2_NV"("0x86C8") + "GL_EVAL_VERTEX_ATTRIB3_NV"("0x86C9") + "GL_EVAL_VERTEX_ATTRIB4_NV"("0x86CA") + "GL_EVAL_VERTEX_ATTRIB5_NV"("0x86CB") + "GL_EVAL_VERTEX_ATTRIB6_NV"("0x86CC") + "GL_EVAL_VERTEX_ATTRIB7_NV"("0x86CD") + "GL_EVAL_VERTEX_ATTRIB8_NV"("0x86CE") + "GL_EVAL_VERTEX_ATTRIB9_NV"("0x86CF") + "GL_EVAL_VERTEX_ATTRIB10_NV"("0x86D0") + "GL_EVAL_VERTEX_ATTRIB11_NV"("0x86D1") + "GL_EVAL_VERTEX_ATTRIB12_NV"("0x86D2") + "GL_EVAL_VERTEX_ATTRIB13_NV"("0x86D3") + "GL_EVAL_VERTEX_ATTRIB14_NV"("0x86D4") + "GL_EVAL_VERTEX_ATTRIB15_NV"("0x86D5") + "GL_MAX_MAP_TESSELLATION_NV"("0x86D6") + "GL_MAX_RATIONAL_EVAL_ORDER_NV"("0x86D7") + "glMapControlPointsNV"( + void, + GLenum("target"), + GLuint("index"), + GLenum("type"), + GLsizei("ustride"), + GLsizei("vstride"), + GLint("uorder"), + GLint("vorder"), + GLboolean("packed"), + address("points", "const void *") + ) + "glMapParameterivNV"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) + "glMapParameterfvNV"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfloat *")) + "glGetMapControlPointsNV"( + void, + GLenum("target"), + GLuint("index"), + GLenum("type"), + GLsizei("ustride"), + GLsizei("vstride"), + GLboolean("packed"), + address("points", "void *") + ) + "glGetMapParameterivNV"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetMapParameterfvNV"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + "glGetMapAttribParameterivNV"( + void, + GLenum("target"), + GLuint("index"), + GLenum("pname"), + address("params", "GLint *") + ) + "glGetMapAttribParameterfvNV"( + void, + GLenum("target"), + GLuint("index"), + GLenum("pname"), + address("params", "GLfloat *") + ) + "glEvalMapsNV"(void, GLenum("target"), GLenum("mode")) + } + file("ExplicitMultisample", NV, "GL_NV_explicit_multisample") { + "GL_SAMPLE_POSITION_NV"("0x8E50") + "GL_SAMPLE_MASK_NV"("0x8E51") + "GL_SAMPLE_MASK_VALUE_NV"("0x8E52") + "GL_TEXTURE_BINDING_RENDERBUFFER_NV"("0x8E53") + "GL_TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV"("0x8E54") + "GL_TEXTURE_RENDERBUFFER_NV"("0x8E55") + "GL_SAMPLER_RENDERBUFFER_NV"("0x8E56") + "GL_INT_SAMPLER_RENDERBUFFER_NV"("0x8E57") + "GL_UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV"("0x8E58") + "GL_MAX_SAMPLE_MASK_WORDS_NV"("0x8E59") + "glGetMultisamplefvNV"(void, GLenum("pname"), GLuint("index"), address("val", "GLfloat *")) + "glSampleMaskIndexedNV"(void, GLuint("index"), GLbitfield("mask")) + "glTexRenderbufferNV"(void, GLenum("target"), GLuint("renderbuffer")) + } } fun oml() { diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java index 005f422c..1cb105f1 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java @@ -107,16 +107,21 @@ public GLExtCaps(GLCapabilities caps) { glMultiModeDrawArraysIBM, glMultiModeDrawElementsIBM, glFlushStaticDataIBM, glColorPointerListIBM, glSecondaryColorPointerListIBM, glEdgeFlagPointerListIBM, glFogCoordPointerListIBM, glIndexPointerListIBM, glNormalPointerListIBM, glTexCoordPointerListIBM, glVertexPointerListIBM, glBlendFuncSeparateINGR, glApplyFramebufferAttachmentCMAAINTEL, glSyncTextureINTEL, glUnmapTexture2DINTEL, glMapTexture2DINTEL, glVertexPointervINTEL, glNormalPointervINTEL, glColorPointervINTEL, glTexCoordPointervINTEL, glBeginPerfQueryINTEL, glCreatePerfQueryINTEL, glDeletePerfQueryINTEL, glEndPerfQueryINTEL, glGetFirstPerfQueryIdINTEL, glGetNextPerfQueryIdINTEL, glGetPerfCounterInfoINTEL, glGetPerfQueryDataINTEL, glGetPerfQueryIdByNameINTEL, glGetPerfQueryInfoINTEL, glFramebufferParameteriMESA, glGetFramebufferParameterivMESA, glResizeBuffersMESA, glWindowPos2dMESA, glWindowPos2dvMESA, glWindowPos2fMESA, glWindowPos2fvMESA, glWindowPos2iMESA, glWindowPos2ivMESA, glWindowPos2sMESA, glWindowPos2svMESA, glWindowPos3dMESA, glWindowPos3dvMESA, glWindowPos3fMESA, glWindowPos3fvMESA, glWindowPos3iMESA, glWindowPos3ivMESA, glWindowPos3sMESA, - glWindowPos3svMESA, glWindowPos4dMESA, glWindowPos4dvMESA, glWindowPos4fMESA, glWindowPos4fvMESA, glWindowPos4iMESA, glWindowPos4ivMESA, glWindowPos4sMESA, glWindowPos4svMESA, glBeginConditionalRenderNVX, glEndConditionalRenderNVX, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, glFogFuncSGIS, - glGetFogFuncSGIS, glSampleMaskSGIS, glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, glTexSubImage4DSGIS, glTextureColorMaskSGIS, - glGetTexFilterFuncSGIS, glTexFilterFuncSGIS, glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, glFlushRasterSGIX, glFragmentColorMaterialSGIX, glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, glFragmentLightModelfSGIX, glFragmentLightModelfvSGIX, - glFragmentLightModeliSGIX, glFragmentLightModelivSGIX, glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, glInstrumentsBufferSGIX, glPollInstrumentsSGIX, - glReadInstrumentsSGIX, glStartInstrumentsSGIX, glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, glListParameterivSGIX, glPixelTexGenSGIX, glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, glReferencePlaneSGIX, glSpriteParameterfSGIX, - glSpriteParameterfvSGIX, glSpriteParameteriSGIX, glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, glGetColorTableSGI, glGetColorTableParameterfvSGI, glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, - glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, - glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, - glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, - glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; + glWindowPos3svMESA, glWindowPos4dMESA, glWindowPos4dvMESA, glWindowPos4fMESA, glWindowPos4fvMESA, glWindowPos4iMESA, glWindowPos4ivMESA, glWindowPos4sMESA, glWindowPos4svMESA, glBeginConditionalRenderNVX, glEndConditionalRenderNVX, glUploadGpuMaskNVX, glMulticastViewportArrayvNVX, glMulticastViewportPositionWScaleNVX, glMulticastScissorArrayvNVX, glAsyncCopyBufferSubDataNVX, + glAsyncCopyImageSubDataNVX, glLGPUNamedBufferSubDataNVX, glLGPUCopyImageSubDataNVX, glLGPUInterlockNVX, glCreateProgressFenceNVX, glSignalSemaphoreui64NVX, glWaitSemaphoreui64NVX, glClientWaitSemaphoreui64NVX, glAlphaToCoverageDitherControlNV, glMultiDrawArraysIndirectBindlessNV, glMultiDrawElementsIndirectBindlessNV, glMultiDrawArraysIndirectBindlessCountNV, glMultiDrawElementsIndirectBindlessCountNV, glGetTextureHandleNV, glGetTextureSamplerHandleNV, glMakeTextureHandleResidentNV, + glMakeTextureHandleNonResidentNV, glGetImageHandleNV, glMakeImageHandleResidentNV, glMakeImageHandleNonResidentNV, glUniformHandleui64NV, glUniformHandleui64vNV, glProgramUniformHandleui64NV, glProgramUniformHandleui64vNV, glIsTextureHandleResidentNV, glIsImageHandleResidentNV, glBlendParameteriNV, glBlendBarrierNV, glViewportPositionWScaleNV, glCreateStatesNV, glDeleteStatesNV, glIsStateNV, + glStateCaptureNV, glGetCommandHeaderNV, glGetStageIndexNV, glDrawCommandsNV, glDrawCommandsAddressNV, glDrawCommandsStatesNV, glDrawCommandsStatesAddressNV, glCreateCommandListsNV, glDeleteCommandListsNV, glIsCommandListNV, glListDrawCommandsStatesClientNV, glCommandListSegmentsNV, glCompileCommandListNV, glCallCommandListNV, glBeginConditionalRenderNV, glEndConditionalRenderNV, + glSubpixelPrecisionBiasNV, glConservativeRasterParameterfNV, glConservativeRasterParameteriNV, glCopyImageSubDataNV, glDepthRangedNV, glClearDepthdNV, glDepthBoundsdNV, glDrawTextureNV, glDrawVkImageNV, glGetVkProcAddrNV, glWaitVkSemaphoreNV, glSignalVkSemaphoreNV, glSignalVkFenceNV, glMapControlPointsNV, glMapParameterivNV, glMapParameterfvNV, + glGetMapControlPointsNV, glGetMapParameterivNV, glGetMapParameterfvNV, glGetMapAttribParameterivNV, glGetMapAttribParameterfvNV, glEvalMapsNV, glGetMultisamplefvNV, glSampleMaskIndexedNV, glTexRenderbufferNV, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, glFogFuncSGIS, glGetFogFuncSGIS, glSampleMaskSGIS, + glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, glTexSubImage4DSGIS, glTextureColorMaskSGIS, glGetTexFilterFuncSGIS, glTexFilterFuncSGIS, + glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, glFlushRasterSGIX, glFragmentColorMaterialSGIX, glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, glFragmentLightModelfSGIX, glFragmentLightModelfvSGIX, glFragmentLightModeliSGIX, glFragmentLightModelivSGIX, + glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, glInstrumentsBufferSGIX, glPollInstrumentsSGIX, glReadInstrumentsSGIX, glStartInstrumentsSGIX, + glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, glListParameterivSGIX, glPixelTexGenSGIX, glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, glReferencePlaneSGIX, glSpriteParameterfSGIX, glSpriteParameterfvSGIX, glSpriteParameteriSGIX, + glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, glGetColorTableSGI, glGetColorTableParameterfvSGI, glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, + glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, glColor3fVertex3fvSUN, + glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, + glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, + glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; void load(GLLoadFunc load) { GLARBES32Compatibility.load(this, load); @@ -211,6 +216,26 @@ void load(GLLoadFunc load) { GLMESAResizeBuffers.load(this, load); GLMESAWindowPos.load(this, load); GLNVXConditionalRender.load(this, load); + GLNVXGpuMulticast2.load(this, load); + GLNVXLinkedGpuMulticast.load(this, load); + GLNVXProgressFence.load(this, load); + GLNVAlphaToCoverageDitherControl.load(this, load); + GLNVBindlessMultiDrawIndirect.load(this, load); + GLNVBindlessMultiDrawIndirectCount.load(this, load); + GLNVBindlessTexture.load(this, load); + GLNVBlendEquationAdvanced.load(this, load); + GLNVClipSpaceWScaling.load(this, load); + GLNVCommandList.load(this, load); + GLNVConditionalRender.load(this, load); + GLNVConservativeRaster.load(this, load); + GLNVConservativeRasterDilate.load(this, load); + GLNVConservativeRasterPreSnapTriangles.load(this, load); + GLNVCopyImage.load(this, load); + GLNVDepthBufferFloat.load(this, load); + GLNVDrawTexture.load(this, load); + GLNVDrawVulkanImage.load(this, load); + GLNVEvaluators.load(this, load); + GLNVExplicitMultisample.load(this, load); GLOVRMultiview.load(this, load); GLPGIMiscHints.load(this, load); GLSGISDetailTexture.load(this, load); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVAlphaToCoverageDitherControl.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVAlphaToCoverageDitherControl.java new file mode 100644 index 00000000..02b9e996 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVAlphaToCoverageDitherControl.java @@ -0,0 +1,47 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_alpha_to_coverage_dither_control} + */ +public final class GLNVAlphaToCoverageDitherControl { + public static final int GL_ALPHA_TO_COVERAGE_DITHER_DEFAULT_NV = 0x934D; + public static final int GL_ALPHA_TO_COVERAGE_DITHER_ENABLE_NV = 0x934E; + public static final int GL_ALPHA_TO_COVERAGE_DITHER_DISABLE_NV = 0x934F; + public static final int GL_ALPHA_TO_COVERAGE_DITHER_MODE_NV = 0x92BF; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_alpha_to_coverage_dither_control) return; + ext.glAlphaToCoverageDitherControlNV = load.invoke("glAlphaToCoverageDitherControlNV", ofVoid(JAVA_INT)); + } + + public static void glAlphaToCoverageDitherControlNV(int mode) { + final var ext = getExtCapabilities(); + try { + check(ext.glAlphaToCoverageDitherControlNV).invokeExact(mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBindlessMultiDrawIndirect.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBindlessMultiDrawIndirect.java new file mode 100644 index 00000000..22530da7 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBindlessMultiDrawIndirect.java @@ -0,0 +1,51 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_bindless_multi_draw_indirect} + */ +public final class GLNVBindlessMultiDrawIndirect { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_bindless_multi_draw_indirect) return; + ext.glMultiDrawArraysIndirectBindlessNV = load.invoke("glMultiDrawArraysIndirectBindlessNV", ofVoid(JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMultiDrawElementsIndirectBindlessNV = load.invoke("glMultiDrawElementsIndirectBindlessNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glMultiDrawArraysIndirectBindlessNV(int mode, @NativeType("const void *") MemorySegment indirect, int drawCount, int stride, int vertexBufferCount) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiDrawArraysIndirectBindlessNV).invokeExact(mode, indirect, drawCount, stride, vertexBufferCount); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiDrawElementsIndirectBindlessNV(int mode, int type, @NativeType("const void *") MemorySegment indirect, int drawCount, int stride, int vertexBufferCount) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiDrawElementsIndirectBindlessNV).invokeExact(mode, type, indirect, drawCount, stride, vertexBufferCount); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBindlessMultiDrawIndirectCount.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBindlessMultiDrawIndirectCount.java new file mode 100644 index 00000000..9dd1a783 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBindlessMultiDrawIndirectCount.java @@ -0,0 +1,51 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_bindless_multi_draw_indirect_count} + */ +public final class GLNVBindlessMultiDrawIndirectCount { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_bindless_multi_draw_indirect_count) return; + ext.glMultiDrawArraysIndirectBindlessCountNV = load.invoke("glMultiDrawArraysIndirectBindlessCountNV", ofVoid(JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMultiDrawElementsIndirectBindlessCountNV = load.invoke("glMultiDrawElementsIndirectBindlessCountNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glMultiDrawArraysIndirectBindlessCountNV(int mode, @NativeType("const void *") MemorySegment indirect, int drawCount, int maxDrawCount, int stride, int vertexBufferCount) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiDrawArraysIndirectBindlessCountNV).invokeExact(mode, indirect, drawCount, maxDrawCount, stride, vertexBufferCount); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiDrawElementsIndirectBindlessCountNV(int mode, int type, @NativeType("const void *") MemorySegment indirect, int drawCount, int maxDrawCount, int stride, int vertexBufferCount) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiDrawElementsIndirectBindlessCountNV).invokeExact(mode, type, indirect, drawCount, maxDrawCount, stride, vertexBufferCount); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBindlessTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBindlessTexture.java new file mode 100644 index 00000000..e43b91d3 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBindlessTexture.java @@ -0,0 +1,144 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_bindless_texture} + */ +public final class GLNVBindlessTexture { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_bindless_texture) return; + ext.glGetTextureHandleNV = load.invoke("glGetTextureHandleNV", of(JAVA_LONG, JAVA_INT)); + ext.glGetTextureSamplerHandleNV = load.invoke("glGetTextureSamplerHandleNV", of(JAVA_LONG, JAVA_INT, JAVA_INT)); + ext.glMakeTextureHandleResidentNV = load.invoke("glMakeTextureHandleResidentNV", ofVoid(JAVA_LONG)); + ext.glMakeTextureHandleNonResidentNV = load.invoke("glMakeTextureHandleNonResidentNV", ofVoid(JAVA_LONG)); + ext.glGetImageHandleNV = load.invoke("glGetImageHandleNV", of(JAVA_LONG, JAVA_INT, JAVA_INT, JAVA_BYTE, JAVA_INT, JAVA_INT)); + ext.glMakeImageHandleResidentNV = load.invoke("glMakeImageHandleResidentNV", ofVoid(JAVA_LONG, JAVA_INT)); + ext.glMakeImageHandleNonResidentNV = load.invoke("glMakeImageHandleNonResidentNV", ofVoid(JAVA_LONG)); + ext.glUniformHandleui64NV = load.invoke("glUniformHandleui64NV", ofVoid(JAVA_INT, JAVA_LONG)); + ext.glUniformHandleui64vNV = load.invoke("glUniformHandleui64vNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniformHandleui64NV = load.invoke("glProgramUniformHandleui64NV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glProgramUniformHandleui64vNV = load.invoke("glProgramUniformHandleui64vNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glIsTextureHandleResidentNV = load.invoke("glIsTextureHandleResidentNV", of(JAVA_BYTE, JAVA_LONG)); + ext.glIsImageHandleResidentNV = load.invoke("glIsImageHandleResidentNV", of(JAVA_BYTE, JAVA_LONG)); + } + + public static long glGetTextureHandleNV(int texture) { + final var ext = getExtCapabilities(); + try { + return (long) + check(ext.glGetTextureHandleNV).invokeExact(texture); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static long glGetTextureSamplerHandleNV(int texture, int sampler) { + final var ext = getExtCapabilities(); + try { + return (long) + check(ext.glGetTextureSamplerHandleNV).invokeExact(texture, sampler); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMakeTextureHandleResidentNV(long handle) { + final var ext = getExtCapabilities(); + try { + check(ext.glMakeTextureHandleResidentNV).invokeExact(handle); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMakeTextureHandleNonResidentNV(long handle) { + final var ext = getExtCapabilities(); + try { + check(ext.glMakeTextureHandleNonResidentNV).invokeExact(handle); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static long glGetImageHandleNV(int texture, int level, boolean layered, int layer, int format) { + final var ext = getExtCapabilities(); + try { + return (long) + check(ext.glGetImageHandleNV).invokeExact(texture, level, layered, layer, format); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMakeImageHandleResidentNV(long handle, int access) { + final var ext = getExtCapabilities(); + try { + check(ext.glMakeImageHandleResidentNV).invokeExact(handle, access); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMakeImageHandleNonResidentNV(long handle) { + final var ext = getExtCapabilities(); + try { + check(ext.glMakeImageHandleNonResidentNV).invokeExact(handle); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniformHandleui64NV(int location, long value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniformHandleui64NV).invokeExact(location, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniformHandleui64vNV(int location, int count, @NativeType("const GLuint64 *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniformHandleui64vNV).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformHandleui64NV(int program, int location, long value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformHandleui64NV).invokeExact(program, location, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformHandleui64vNV(int program, int location, int count, @NativeType("const GLuint64 *") MemorySegment values) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformHandleui64vNV).invokeExact(program, location, count, values); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsTextureHandleResidentNV(long handle) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsTextureHandleResidentNV).invokeExact(handle); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsImageHandleResidentNV(long handle) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsImageHandleResidentNV).invokeExact(handle); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBlendEquationAdvanced.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBlendEquationAdvanced.java new file mode 100644 index 00000000..4e0e6cd8 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBlendEquationAdvanced.java @@ -0,0 +1,100 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_blend_equation_advanced} + */ +public final class GLNVBlendEquationAdvanced { + public static final int GL_BLEND_OVERLAP_NV = 0x9281; + public static final int GL_BLEND_PREMULTIPLIED_SRC_NV = 0x9280; + public static final int GL_BLUE_NV = 0x1905; + public static final int GL_COLORBURN_NV = 0x929A; + public static final int GL_COLORDODGE_NV = 0x9299; + public static final int GL_CONJOINT_NV = 0x9284; + public static final int GL_CONTRAST_NV = 0x92A1; + public static final int GL_DARKEN_NV = 0x9297; + public static final int GL_DIFFERENCE_NV = 0x929E; + public static final int GL_DISJOINT_NV = 0x9283; + public static final int GL_DST_ATOP_NV = 0x928F; + public static final int GL_DST_IN_NV = 0x928B; + public static final int GL_DST_NV = 0x9287; + public static final int GL_DST_OUT_NV = 0x928D; + public static final int GL_DST_OVER_NV = 0x9289; + public static final int GL_EXCLUSION_NV = 0x92A0; + public static final int GL_GREEN_NV = 0x1904; + public static final int GL_HARDLIGHT_NV = 0x929B; + public static final int GL_HARDMIX_NV = 0x92A9; + public static final int GL_HSL_COLOR_NV = 0x92AF; + public static final int GL_HSL_HUE_NV = 0x92AD; + public static final int GL_HSL_LUMINOSITY_NV = 0x92B0; + public static final int GL_HSL_SATURATION_NV = 0x92AE; + public static final int GL_INVERT_OVG_NV = 0x92B4; + public static final int GL_INVERT_RGB_NV = 0x92A3; + public static final int GL_LIGHTEN_NV = 0x9298; + public static final int GL_LINEARBURN_NV = 0x92A5; + public static final int GL_LINEARDODGE_NV = 0x92A4; + public static final int GL_LINEARLIGHT_NV = 0x92A7; + public static final int GL_MINUS_CLAMPED_NV = 0x92B3; + public static final int GL_MINUS_NV = 0x929F; + public static final int GL_MULTIPLY_NV = 0x9294; + public static final int GL_OVERLAY_NV = 0x9296; + public static final int GL_PINLIGHT_NV = 0x92A8; + public static final int GL_PLUS_CLAMPED_ALPHA_NV = 0x92B2; + public static final int GL_PLUS_CLAMPED_NV = 0x92B1; + public static final int GL_PLUS_DARKER_NV = 0x9292; + public static final int GL_PLUS_NV = 0x9291; + public static final int GL_RED_NV = 0x1903; + public static final int GL_SCREEN_NV = 0x9295; + public static final int GL_SOFTLIGHT_NV = 0x929C; + public static final int GL_SRC_ATOP_NV = 0x928E; + public static final int GL_SRC_IN_NV = 0x928A; + public static final int GL_SRC_NV = 0x9286; + public static final int GL_SRC_OUT_NV = 0x928C; + public static final int GL_SRC_OVER_NV = 0x9288; + public static final int GL_UNCORRELATED_NV = 0x9282; + public static final int GL_VIVIDLIGHT_NV = 0x92A6; + public static final int GL_XOR_NV = 0x1506; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_blend_equation_advanced) return; + ext.glBlendParameteriNV = load.invoke("glBlendParameteriNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glBlendBarrierNV = load.invoke("glBlendBarrierNV", ofVoid()); + } + + public static void glBlendParameteriNV(int pname, int value) { + final var ext = getExtCapabilities(); + try { + check(ext.glBlendParameteriNV).invokeExact(pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBlendBarrierNV() { + final var ext = getExtCapabilities(); + try { + check(ext.glBlendBarrierNV).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBlendEquationAdvancedCoherent.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBlendEquationAdvancedCoherent.java new file mode 100644 index 00000000..64ac7dc0 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVBlendEquationAdvancedCoherent.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_blend_equation_advanced_coherent} + */ +public final class GLNVBlendEquationAdvancedCoherent { + public static final int GL_BLEND_ADVANCED_COHERENT_NV = 0x9285; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVClipSpaceWScaling.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVClipSpaceWScaling.java new file mode 100644 index 00000000..83bb883a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVClipSpaceWScaling.java @@ -0,0 +1,46 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_clip_space_w_scaling} + */ +public final class GLNVClipSpaceWScaling { + public static final int GL_VIEWPORT_POSITION_W_SCALE_NV = 0x937C; + public static final int GL_VIEWPORT_POSITION_W_SCALE_X_COEFF_NV = 0x937D; + public static final int GL_VIEWPORT_POSITION_W_SCALE_Y_COEFF_NV = 0x937E; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_clip_space_w_scaling) return; + ext.glViewportPositionWScaleNV = load.invoke("glViewportPositionWScaleNV", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT)); + } + + public static void glViewportPositionWScaleNV(int index, float xcoeff, float ycoeff) { + final var ext = getExtCapabilities(); + try { + check(ext.glViewportPositionWScaleNV).invokeExact(index, xcoeff, ycoeff); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVCommandList.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVCommandList.java new file mode 100644 index 00000000..dc5d4a76 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVCommandList.java @@ -0,0 +1,194 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_command_list} + */ +public final class GLNVCommandList { + public static final int GL_TERMINATE_SEQUENCE_COMMAND_NV = 0x0000; + public static final int GL_NOP_COMMAND_NV = 0x0001; + public static final int GL_DRAW_ELEMENTS_COMMAND_NV = 0x0002; + public static final int GL_DRAW_ARRAYS_COMMAND_NV = 0x0003; + public static final int GL_DRAW_ELEMENTS_STRIP_COMMAND_NV = 0x0004; + public static final int GL_DRAW_ARRAYS_STRIP_COMMAND_NV = 0x0005; + public static final int GL_DRAW_ELEMENTS_INSTANCED_COMMAND_NV = 0x0006; + public static final int GL_DRAW_ARRAYS_INSTANCED_COMMAND_NV = 0x0007; + public static final int GL_ELEMENT_ADDRESS_COMMAND_NV = 0x0008; + public static final int GL_ATTRIBUTE_ADDRESS_COMMAND_NV = 0x0009; + public static final int GL_UNIFORM_ADDRESS_COMMAND_NV = 0x000A; + public static final int GL_BLEND_COLOR_COMMAND_NV = 0x000B; + public static final int GL_STENCIL_REF_COMMAND_NV = 0x000C; + public static final int GL_LINE_WIDTH_COMMAND_NV = 0x000D; + public static final int GL_POLYGON_OFFSET_COMMAND_NV = 0x000E; + public static final int GL_ALPHA_REF_COMMAND_NV = 0x000F; + public static final int GL_VIEWPORT_COMMAND_NV = 0x0010; + public static final int GL_SCISSOR_COMMAND_NV = 0x0011; + public static final int GL_FRONT_FACE_COMMAND_NV = 0x0012; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_command_list) return; + ext.glCreateStatesNV = load.invoke("glCreateStatesNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glDeleteStatesNV = load.invoke("glDeleteStatesNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glIsStateNV = load.invoke("glIsStateNV", of(JAVA_BYTE, JAVA_INT)); + ext.glStateCaptureNV = load.invoke("glStateCaptureNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glGetCommandHeaderNV = load.invoke("glGetCommandHeaderNV", of(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetStageIndexNV = load.invoke("glGetStageIndexNV", of(JAVA_SHORT, JAVA_INT)); + ext.glDrawCommandsNV = load.invoke("glDrawCommandsNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS, JAVA_INT)); + ext.glDrawCommandsAddressNV = load.invoke("glDrawCommandsAddressNV", ofVoid(JAVA_INT, ADDRESS, ADDRESS, JAVA_INT)); + ext.glDrawCommandsStatesNV = load.invoke("glDrawCommandsStatesNV", ofVoid(JAVA_INT, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_INT)); + ext.glDrawCommandsStatesAddressNV = load.invoke("glDrawCommandsStatesAddressNV", ofVoid(ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_INT)); + ext.glCreateCommandListsNV = load.invoke("glCreateCommandListsNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glDeleteCommandListsNV = load.invoke("glDeleteCommandListsNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glIsCommandListNV = load.invoke("glIsCommandListNV", of(JAVA_BYTE, JAVA_INT)); + ext.glListDrawCommandsStatesClientNV = load.invoke("glListDrawCommandsStatesClientNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS, ADDRESS, ADDRESS, JAVA_INT)); + ext.glCommandListSegmentsNV = load.invoke("glCommandListSegmentsNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glCompileCommandListNV = load.invoke("glCompileCommandListNV", ofVoid(JAVA_INT)); + ext.glCallCommandListNV = load.invoke("glCallCommandListNV", ofVoid(JAVA_INT)); + } + + public static void glCreateStatesNV(int n, @NativeType("GLuint *") MemorySegment states) { + final var ext = getExtCapabilities(); + try { + check(ext.glCreateStatesNV).invokeExact(n, states); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeleteStatesNV(int n, @NativeType("const GLuint *") MemorySegment states) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeleteStatesNV).invokeExact(n, states); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsStateNV(int state) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsStateNV).invokeExact(state); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStateCaptureNV(int state, int mode) { + final var ext = getExtCapabilities(); + try { + check(ext.glStateCaptureNV).invokeExact(state, mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glGetCommandHeaderNV(int tokenID, int size) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glGetCommandHeaderNV).invokeExact(tokenID, size); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static short glGetStageIndexNV(int shadertype) { + final var ext = getExtCapabilities(); + try { + return (short) + check(ext.glGetStageIndexNV).invokeExact(shadertype); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDrawCommandsNV(int primitiveMode, int buffer, @NativeType("const GLintptr *") MemorySegment indirects, @NativeType("const GLsizei *") MemorySegment sizes, int count) { + final var ext = getExtCapabilities(); + try { + check(ext.glDrawCommandsNV).invokeExact(primitiveMode, buffer, indirects, sizes, count); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDrawCommandsAddressNV(int primitiveMode, @NativeType("const GLuint64 *") MemorySegment indirects, @NativeType("const GLsizei *") MemorySegment sizes, int count) { + final var ext = getExtCapabilities(); + try { + check(ext.glDrawCommandsAddressNV).invokeExact(primitiveMode, indirects, sizes, count); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDrawCommandsStatesNV(int buffer, @NativeType("const GLintptr *") MemorySegment indirects, @NativeType("const GLsizei *") MemorySegment sizes, @NativeType("const GLuint *") MemorySegment states, @NativeType("const GLuint *") MemorySegment fbos, int count) { + final var ext = getExtCapabilities(); + try { + check(ext.glDrawCommandsStatesNV).invokeExact(buffer, indirects, sizes, states, fbos, count); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDrawCommandsStatesAddressNV(@NativeType("const GLuint64 *") MemorySegment indirects, @NativeType("const GLsizei *") MemorySegment sizes, @NativeType("const GLuint *") MemorySegment states, @NativeType("const GLuint *") MemorySegment fbos, int count) { + final var ext = getExtCapabilities(); + try { + check(ext.glDrawCommandsStatesAddressNV).invokeExact(indirects, sizes, states, fbos, count); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCreateCommandListsNV(int n, @NativeType("GLuint *") MemorySegment lists) { + final var ext = getExtCapabilities(); + try { + check(ext.glCreateCommandListsNV).invokeExact(n, lists); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeleteCommandListsNV(int n, @NativeType("const GLuint *") MemorySegment lists) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeleteCommandListsNV).invokeExact(n, lists); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsCommandListNV(int list) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsCommandListNV).invokeExact(list); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glListDrawCommandsStatesClientNV(int list, int segment, @NativeType("const void **") MemorySegment indirects, @NativeType("const GLsizei *") MemorySegment sizes, @NativeType("const GLuint *") MemorySegment states, @NativeType("const GLuint *") MemorySegment fbos, int count) { + final var ext = getExtCapabilities(); + try { + check(ext.glListDrawCommandsStatesClientNV).invokeExact(list, segment, indirects, sizes, states, fbos, count); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCommandListSegmentsNV(int list, int segments) { + final var ext = getExtCapabilities(); + try { + check(ext.glCommandListSegmentsNV).invokeExact(list, segments); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCompileCommandListNV(int list) { + final var ext = getExtCapabilities(); + try { + check(ext.glCompileCommandListNV).invokeExact(list); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCallCommandListNV(int list) { + final var ext = getExtCapabilities(); + try { + check(ext.glCallCommandListNV).invokeExact(list); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVComputeProgram5.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVComputeProgram5.java new file mode 100644 index 00000000..f7f3cee8 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVComputeProgram5.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_compute_program5} + */ +public final class GLNVComputeProgram5 { + public static final int GL_COMPUTE_PROGRAM_NV = 0x90FB; + public static final int GL_COMPUTE_PROGRAM_PARAMETER_BUFFER_NV = 0x90FC; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConditionalRender.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConditionalRender.java new file mode 100644 index 00000000..dde4d1bb --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConditionalRender.java @@ -0,0 +1,55 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_conditional_render} + */ +public final class GLNVConditionalRender { + public static final int GL_QUERY_WAIT_NV = 0x8E13; + public static final int GL_QUERY_NO_WAIT_NV = 0x8E14; + public static final int GL_QUERY_BY_REGION_WAIT_NV = 0x8E15; + public static final int GL_QUERY_BY_REGION_NO_WAIT_NV = 0x8E16; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_conditional_render) return; + ext.glBeginConditionalRenderNV = load.invoke("glBeginConditionalRenderNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glEndConditionalRenderNV = load.invoke("glEndConditionalRenderNV", ofVoid()); + } + + public static void glBeginConditionalRenderNV(int id, int mode) { + final var ext = getExtCapabilities(); + try { + check(ext.glBeginConditionalRenderNV).invokeExact(id, mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEndConditionalRenderNV() { + final var ext = getExtCapabilities(); + try { + check(ext.glEndConditionalRenderNV).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConservativeRaster.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConservativeRaster.java new file mode 100644 index 00000000..f25dc09b --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConservativeRaster.java @@ -0,0 +1,47 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_conservative_raster} + */ +public final class GLNVConservativeRaster { + public static final int GL_CONSERVATIVE_RASTERIZATION_NV = 0x9346; + public static final int GL_SUBPIXEL_PRECISION_BIAS_X_BITS_NV = 0x9347; + public static final int GL_SUBPIXEL_PRECISION_BIAS_Y_BITS_NV = 0x9348; + public static final int GL_MAX_SUBPIXEL_PRECISION_BIAS_BITS_NV = 0x9349; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_conservative_raster) return; + ext.glSubpixelPrecisionBiasNV = load.invoke("glSubpixelPrecisionBiasNV", ofVoid(JAVA_INT, JAVA_INT)); + } + + public static void glSubpixelPrecisionBiasNV(int xbits, int ybits) { + final var ext = getExtCapabilities(); + try { + check(ext.glSubpixelPrecisionBiasNV).invokeExact(xbits, ybits); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConservativeRasterDilate.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConservativeRasterDilate.java new file mode 100644 index 00000000..93f71105 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConservativeRasterDilate.java @@ -0,0 +1,46 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_conservative_raster_dilate} + */ +public final class GLNVConservativeRasterDilate { + public static final int GL_CONSERVATIVE_RASTER_DILATE_NV = 0x9379; + public static final int GL_CONSERVATIVE_RASTER_DILATE_RANGE_NV = 0x937A; + public static final int GL_CONSERVATIVE_RASTER_DILATE_GRANULARITY_NV = 0x937B; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_conservative_raster_dilate) return; + ext.glConservativeRasterParameterfNV = load.invoke("glConservativeRasterParameterfNV", ofVoid(JAVA_INT, JAVA_FLOAT)); + } + + public static void glConservativeRasterParameterfNV(int pname, float value) { + final var ext = getExtCapabilities(); + try { + check(ext.glConservativeRasterParameterfNV).invokeExact(pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConservativeRasterPreSnap.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConservativeRasterPreSnap.java new file mode 100644 index 00000000..980c8a26 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConservativeRasterPreSnap.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_conservative_raster_pre_snap} + */ +public final class GLNVConservativeRasterPreSnap { + public static final int GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_NV = 0x9550; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConservativeRasterPreSnapTriangles.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConservativeRasterPreSnapTriangles.java new file mode 100644 index 00000000..8a24e828 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVConservativeRasterPreSnapTriangles.java @@ -0,0 +1,46 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_conservative_raster_pre_snap_triangles} + */ +public final class GLNVConservativeRasterPreSnapTriangles { + public static final int GL_CONSERVATIVE_RASTER_MODE_NV = 0x954D; + public static final int GL_CONSERVATIVE_RASTER_MODE_POST_SNAP_NV = 0x954E; + public static final int GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_TRIANGLES_NV = 0x954F; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_conservative_raster_pre_snap_triangles) return; + ext.glConservativeRasterParameteriNV = load.invoke("glConservativeRasterParameteriNV", ofVoid(JAVA_INT, JAVA_INT)); + } + + public static void glConservativeRasterParameteriNV(int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glConservativeRasterParameteriNV).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVCopyDepthToColor.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVCopyDepthToColor.java new file mode 100644 index 00000000..8587e932 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVCopyDepthToColor.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_copy_depth_to_color} + */ +public final class GLNVCopyDepthToColor { + public static final int GL_DEPTH_STENCIL_TO_RGBA_NV = 0x886E; + public static final int GL_DEPTH_STENCIL_TO_BGRA_NV = 0x886F; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVCopyImage.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVCopyImage.java new file mode 100644 index 00000000..94ae52a3 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVCopyImage.java @@ -0,0 +1,43 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_copy_image} + */ +public final class GLNVCopyImage { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_copy_image) return; + ext.glCopyImageSubDataNV = load.invoke("glCopyImageSubDataNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glCopyImageSubDataNV(int srcName, int srcTarget, int srcLevel, int srcX, int srcY, int srcZ, int dstName, int dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int width, int height, int depth) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyImageSubDataNV).invokeExact(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, width, height, depth); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDeepTexture3D.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDeepTexture3D.java new file mode 100644 index 00000000..db50def8 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDeepTexture3D.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_deep_texture3D} + */ +public final class GLNVDeepTexture3D { + public static final int GL_MAX_DEEP_3D_TEXTURE_WIDTH_HEIGHT_NV = 0x90D0; + public static final int GL_MAX_DEEP_3D_TEXTURE_DEPTH_NV = 0x90D1; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDepthBufferFloat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDepthBufferFloat.java new file mode 100644 index 00000000..cd081830 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDepthBufferFloat.java @@ -0,0 +1,63 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_depth_buffer_float} + */ +public final class GLNVDepthBufferFloat { + public static final int GL_DEPTH_COMPONENT32F_NV = 0x8DAB; + public static final int GL_DEPTH32F_STENCIL8_NV = 0x8DAC; + public static final int GL_FLOAT_32_UNSIGNED_INT_24_8_REV_NV = 0x8DAD; + public static final int GL_DEPTH_BUFFER_FLOAT_MODE_NV = 0x8DAF; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_depth_buffer_float) return; + ext.glDepthRangedNV = load.invoke("glDepthRangedNV", ofVoid(JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glClearDepthdNV = load.invoke("glClearDepthdNV", ofVoid(JAVA_DOUBLE)); + ext.glDepthBoundsdNV = load.invoke("glDepthBoundsdNV", ofVoid(JAVA_DOUBLE, JAVA_DOUBLE)); + } + + public static void glDepthRangedNV(double zNear, double zFar) { + final var ext = getExtCapabilities(); + try { + check(ext.glDepthRangedNV).invokeExact(zNear, zFar); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glClearDepthdNV(double depth) { + final var ext = getExtCapabilities(); + try { + check(ext.glClearDepthdNV).invokeExact(depth); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDepthBoundsdNV(double zmin, double zmax) { + final var ext = getExtCapabilities(); + try { + check(ext.glDepthBoundsdNV).invokeExact(zmin, zmax); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDepthClamp.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDepthClamp.java new file mode 100644 index 00000000..b782616f --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDepthClamp.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_depth_clamp} + */ +public final class GLNVDepthClamp { + public static final int GL_DEPTH_CLAMP_NV = 0x864F; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDrawTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDrawTexture.java new file mode 100644 index 00000000..085de6d2 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDrawTexture.java @@ -0,0 +1,43 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_draw_texture} + */ +public final class GLNVDrawTexture { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_draw_texture) return; + ext.glDrawTextureNV = load.invoke("glDrawTextureNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + } + + public static void glDrawTextureNV(int texture, int sampler, float x0, float y0, float x1, float y1, float z, float s0, float t0, float s1, float t1) { + final var ext = getExtCapabilities(); + try { + check(ext.glDrawTextureNV).invokeExact(texture, sampler, x0, y0, x1, y1, z, s0, t0, s1, t1); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDrawVulkanImage.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDrawVulkanImage.java new file mode 100644 index 00000000..5238c653 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVDrawVulkanImage.java @@ -0,0 +1,76 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_draw_vulkan_image} + */ +public final class GLNVDrawVulkanImage { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_draw_vulkan_image) return; + ext.glDrawVkImageNV = load.invoke("glDrawVkImageNV", ofVoid(JAVA_LONG, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glGetVkProcAddrNV = load.invoke("glGetVkProcAddrNV", of(ADDRESS, ADDRESS)); + ext.glWaitVkSemaphoreNV = load.invoke("glWaitVkSemaphoreNV", ofVoid(JAVA_LONG)); + ext.glSignalVkSemaphoreNV = load.invoke("glSignalVkSemaphoreNV", ofVoid(JAVA_LONG)); + ext.glSignalVkFenceNV = load.invoke("glSignalVkFenceNV", ofVoid(JAVA_LONG)); + } + + public static void glDrawVkImageNV(long vkImage, int sampler, float x0, float y0, float x1, float y1, float z, float s0, float t0, float s1, float t1) { + final var ext = getExtCapabilities(); + try { + check(ext.glDrawVkImageNV).invokeExact(vkImage, sampler, x0, y0, x1, y1, z, s0, t0, s1, t1); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static @NativeType("GLVULKANPROCNV") MemorySegment glGetVkProcAddrNV(@NativeType("const GLchar *") MemorySegment name) { + final var ext = getExtCapabilities(); + try { + return (MemorySegment) + check(ext.glGetVkProcAddrNV).invokeExact(name); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWaitVkSemaphoreNV(long vkSemaphore) { + final var ext = getExtCapabilities(); + try { + check(ext.glWaitVkSemaphoreNV).invokeExact(vkSemaphore); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSignalVkSemaphoreNV(long vkSemaphore) { + final var ext = getExtCapabilities(); + try { + check(ext.glSignalVkSemaphoreNV).invokeExact(vkSemaphore); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSignalVkFenceNV(long vkFence) { + final var ext = getExtCapabilities(); + try { + check(ext.glSignalVkFenceNV).invokeExact(vkFence); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVEvaluators.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVEvaluators.java new file mode 100644 index 00000000..5d3e2cf7 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVEvaluators.java @@ -0,0 +1,131 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_evaluators} + */ +public final class GLNVEvaluators { + public static final int GL_EVAL_2D_NV = 0x86C0; + public static final int GL_EVAL_TRIANGULAR_2D_NV = 0x86C1; + public static final int GL_MAP_TESSELLATION_NV = 0x86C2; + public static final int GL_MAP_ATTRIB_U_ORDER_NV = 0x86C3; + public static final int GL_MAP_ATTRIB_V_ORDER_NV = 0x86C4; + public static final int GL_EVAL_FRACTIONAL_TESSELLATION_NV = 0x86C5; + public static final int GL_EVAL_VERTEX_ATTRIB0_NV = 0x86C6; + public static final int GL_EVAL_VERTEX_ATTRIB1_NV = 0x86C7; + public static final int GL_EVAL_VERTEX_ATTRIB2_NV = 0x86C8; + public static final int GL_EVAL_VERTEX_ATTRIB3_NV = 0x86C9; + public static final int GL_EVAL_VERTEX_ATTRIB4_NV = 0x86CA; + public static final int GL_EVAL_VERTEX_ATTRIB5_NV = 0x86CB; + public static final int GL_EVAL_VERTEX_ATTRIB6_NV = 0x86CC; + public static final int GL_EVAL_VERTEX_ATTRIB7_NV = 0x86CD; + public static final int GL_EVAL_VERTEX_ATTRIB8_NV = 0x86CE; + public static final int GL_EVAL_VERTEX_ATTRIB9_NV = 0x86CF; + public static final int GL_EVAL_VERTEX_ATTRIB10_NV = 0x86D0; + public static final int GL_EVAL_VERTEX_ATTRIB11_NV = 0x86D1; + public static final int GL_EVAL_VERTEX_ATTRIB12_NV = 0x86D2; + public static final int GL_EVAL_VERTEX_ATTRIB13_NV = 0x86D3; + public static final int GL_EVAL_VERTEX_ATTRIB14_NV = 0x86D4; + public static final int GL_EVAL_VERTEX_ATTRIB15_NV = 0x86D5; + public static final int GL_MAX_MAP_TESSELLATION_NV = 0x86D6; + public static final int GL_MAX_RATIONAL_EVAL_ORDER_NV = 0x86D7; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_evaluators) return; + ext.glMapControlPointsNV = load.invoke("glMapControlPointsNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glMapParameterivNV = load.invoke("glMapParameterivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMapParameterfvNV = load.invoke("glMapParameterfvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMapControlPointsNV = load.invoke("glGetMapControlPointsNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glGetMapParameterivNV = load.invoke("glGetMapParameterivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMapParameterfvNV = load.invoke("glGetMapParameterfvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMapAttribParameterivNV = load.invoke("glGetMapAttribParameterivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMapAttribParameterfvNV = load.invoke("glGetMapAttribParameterfvNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glEvalMapsNV = load.invoke("glEvalMapsNV", ofVoid(JAVA_INT, JAVA_INT)); + } + + public static void glMapControlPointsNV(int target, int index, int type, int ustride, int vstride, int uorder, int vorder, boolean packed, @NativeType("const void *") MemorySegment points) { + final var ext = getExtCapabilities(); + try { + check(ext.glMapControlPointsNV).invokeExact(target, index, type, ustride, vstride, uorder, vorder, packed, points); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMapParameterivNV(int target, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMapParameterivNV).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMapParameterfvNV(int target, int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMapParameterfvNV).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMapControlPointsNV(int target, int index, int type, int ustride, int vstride, boolean packed, @NativeType("void *") MemorySegment points) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMapControlPointsNV).invokeExact(target, index, type, ustride, vstride, packed, points); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMapParameterivNV(int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMapParameterivNV).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMapParameterfvNV(int target, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMapParameterfvNV).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMapAttribParameterivNV(int target, int index, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMapAttribParameterivNV).invokeExact(target, index, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMapAttribParameterfvNV(int target, int index, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMapAttribParameterfvNV).invokeExact(target, index, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEvalMapsNV(int target, int mode) { + final var ext = getExtCapabilities(); + try { + check(ext.glEvalMapsNV).invokeExact(target, mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVExplicitMultisample.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVExplicitMultisample.java new file mode 100644 index 00000000..856db0f9 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVExplicitMultisample.java @@ -0,0 +1,69 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_explicit_multisample} + */ +public final class GLNVExplicitMultisample { + public static final int GL_SAMPLE_POSITION_NV = 0x8E50; + public static final int GL_SAMPLE_MASK_NV = 0x8E51; + public static final int GL_SAMPLE_MASK_VALUE_NV = 0x8E52; + public static final int GL_TEXTURE_BINDING_RENDERBUFFER_NV = 0x8E53; + public static final int GL_TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV = 0x8E54; + public static final int GL_TEXTURE_RENDERBUFFER_NV = 0x8E55; + public static final int GL_SAMPLER_RENDERBUFFER_NV = 0x8E56; + public static final int GL_INT_SAMPLER_RENDERBUFFER_NV = 0x8E57; + public static final int GL_UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV = 0x8E58; + public static final int GL_MAX_SAMPLE_MASK_WORDS_NV = 0x8E59; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_explicit_multisample) return; + ext.glGetMultisamplefvNV = load.invoke("glGetMultisamplefvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glSampleMaskIndexedNV = load.invoke("glSampleMaskIndexedNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glTexRenderbufferNV = load.invoke("glTexRenderbufferNV", ofVoid(JAVA_INT, JAVA_INT)); + } + + public static void glGetMultisamplefvNV(int pname, int index, @NativeType("GLfloat *") MemorySegment val) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMultisamplefvNV).invokeExact(pname, index, val); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSampleMaskIndexedNV(int index, int mask) { + final var ext = getExtCapabilities(); + try { + check(ext.glSampleMaskIndexedNV).invokeExact(index, mask); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexRenderbufferNV(int target, int renderbuffer) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexRenderbufferNV).invokeExact(target, renderbuffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXGpuMemoryInfo.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXGpuMemoryInfo.java new file mode 100644 index 00000000..4e22beb6 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXGpuMemoryInfo.java @@ -0,0 +1,36 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NVX_gpu_memory_info} + */ +public final class GLNVXGpuMemoryInfo { + public static final int GL_GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX = 0x9047; + public static final int GL_GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX = 0x9048; + public static final int GL_GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX = 0x9049; + public static final int GL_GPU_MEMORY_INFO_EVICTION_COUNT_NVX = 0x904A; + public static final int GL_GPU_MEMORY_INFO_EVICTED_MEMORY_NVX = 0x904B; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXGpuMulticast2.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXGpuMulticast2.java new file mode 100644 index 00000000..23477d0a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXGpuMulticast2.java @@ -0,0 +1,86 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NVX_gpu_multicast2} + */ +public final class GLNVXGpuMulticast2 { + public static final int GL_UPLOAD_GPU_MASK_NVX = 0x954A; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NVX_gpu_multicast2) return; + ext.glUploadGpuMaskNVX = load.invoke("glUploadGpuMaskNVX", ofVoid(JAVA_INT)); + ext.glMulticastViewportArrayvNVX = load.invoke("glMulticastViewportArrayvNVX", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMulticastViewportPositionWScaleNVX = load.invoke("glMulticastViewportPositionWScaleNVX", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glMulticastScissorArrayvNVX = load.invoke("glMulticastScissorArrayvNVX", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glAsyncCopyBufferSubDataNVX = load.invoke("glAsyncCopyBufferSubDataNVX", of(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_INT, ADDRESS, ADDRESS)); + ext.glAsyncCopyImageSubDataNVX = load.invoke("glAsyncCopyImageSubDataNVX", of(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + } + + public static void glUploadGpuMaskNVX(int mask) { + final var ext = getExtCapabilities(); + try { + check(ext.glUploadGpuMaskNVX).invokeExact(mask); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastViewportArrayvNVX(int gpu, int first, int count, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastViewportArrayvNVX).invokeExact(gpu, first, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastViewportPositionWScaleNVX(int gpu, int index, float xcoeff, float ycoeff) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastViewportPositionWScaleNVX).invokeExact(gpu, index, xcoeff, ycoeff); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastScissorArrayvNVX(int gpu, int first, int count, @NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastScissorArrayvNVX).invokeExact(gpu, first, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glAsyncCopyBufferSubDataNVX(int waitSemaphoreCount, @NativeType("const GLuint *") MemorySegment waitSemaphoreArray, @NativeType("const GLuint64 *") MemorySegment fenceValueArray, int readGpu, int writeGpuMask, int readBuffer, int writeBuffer, long readOffset, long writeOffset, long size, int signalSemaphoreCount, @NativeType("const GLuint *") MemorySegment signalSemaphoreArray, @NativeType("const GLuint64 *") MemorySegment signalValueArray) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glAsyncCopyBufferSubDataNVX).invokeExact(waitSemaphoreCount, waitSemaphoreArray, fenceValueArray, readGpu, writeGpuMask, readBuffer, writeBuffer, readOffset, writeOffset, size, signalSemaphoreCount, signalSemaphoreArray, signalValueArray); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glAsyncCopyImageSubDataNVX(int waitSemaphoreCount, @NativeType("const GLuint *") MemorySegment waitSemaphoreArray, @NativeType("const GLuint64 *") MemorySegment waitValueArray, int srcGpu, int dstGpuMask, int srcName, int srcTarget, int srcLevel, int srcX, int srcY, int srcZ, int dstName, int dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth, int signalSemaphoreCount, @NativeType("const GLuint *") MemorySegment signalSemaphoreArray, @NativeType("const GLuint64 *") MemorySegment signalValueArray) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glAsyncCopyImageSubDataNVX).invokeExact(waitSemaphoreCount, waitSemaphoreArray, waitValueArray, srcGpu, dstGpuMask, srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth, signalSemaphoreCount, signalSemaphoreArray, signalValueArray); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXLinkedGpuMulticast.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXLinkedGpuMulticast.java new file mode 100644 index 00000000..744ae92a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXLinkedGpuMulticast.java @@ -0,0 +1,61 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NVX_linked_gpu_multicast} + */ +public final class GLNVXLinkedGpuMulticast { + public static final int GL_LGPU_SEPARATE_STORAGE_BIT_NVX = 0x0800; + public static final int GL_MAX_LGPU_GPUS_NVX = 0x92BA; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NVX_linked_gpu_multicast) return; + ext.glLGPUNamedBufferSubDataNVX = load.invoke("glLGPUNamedBufferSubDataNVX", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG, ADDRESS)); + ext.glLGPUCopyImageSubDataNVX = load.invoke("glLGPUCopyImageSubDataNVX", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glLGPUInterlockNVX = load.invoke("glLGPUInterlockNVX", ofVoid()); + } + + public static void glLGPUNamedBufferSubDataNVX(int gpuMask, int buffer, long offset, long size, @NativeType("const void *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glLGPUNamedBufferSubDataNVX).invokeExact(gpuMask, buffer, offset, size, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glLGPUCopyImageSubDataNVX(int sourceGpu, int destinationGpuMask, int srcName, int srcTarget, int srcLevel, int srcX, int srxY, int srcZ, int dstName, int dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int width, int height, int depth) { + final var ext = getExtCapabilities(); + try { + check(ext.glLGPUCopyImageSubDataNVX).invokeExact(sourceGpu, destinationGpuMask, srcName, srcTarget, srcLevel, srcX, srxY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, width, height, depth); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glLGPUInterlockNVX() { + final var ext = getExtCapabilities(); + try { + check(ext.glLGPUInterlockNVX).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXProgressFence.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXProgressFence.java new file mode 100644 index 00000000..b858fdcd --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVXProgressFence.java @@ -0,0 +1,67 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NVX_progress_fence} + */ +public final class GLNVXProgressFence { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NVX_progress_fence) return; + ext.glCreateProgressFenceNVX = load.invoke("glCreateProgressFenceNVX", ofVoid()); + ext.glSignalSemaphoreui64NVX = load.invoke("glSignalSemaphoreui64NVX", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glWaitSemaphoreui64NVX = load.invoke("glWaitSemaphoreui64NVX", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glClientWaitSemaphoreui64NVX = load.invoke("glClientWaitSemaphoreui64NVX", ofVoid(JAVA_INT, ADDRESS, ADDRESS)); + } + + public static void glCreateProgressFenceNVX() { + final var ext = getExtCapabilities(); + try { + check(ext.glCreateProgressFenceNVX).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSignalSemaphoreui64NVX(int signalGpu, int fenceObjectCount, @NativeType("const GLuint *") MemorySegment semaphoreArray, @NativeType("const GLuint64 *") MemorySegment fenceValueArray) { + final var ext = getExtCapabilities(); + try { + check(ext.glSignalSemaphoreui64NVX).invokeExact(signalGpu, fenceObjectCount, semaphoreArray, fenceValueArray); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWaitSemaphoreui64NVX(int waitGpu, int fenceObjectCount, @NativeType("const GLuint *") MemorySegment semaphoreArray, @NativeType("const GLuint64 *") MemorySegment fenceValueArray) { + final var ext = getExtCapabilities(); + try { + check(ext.glWaitSemaphoreui64NVX).invokeExact(waitGpu, fenceObjectCount, semaphoreArray, fenceValueArray); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glClientWaitSemaphoreui64NVX(int fenceObjectCount, @NativeType("const GLuint *") MemorySegment semaphoreArray, @NativeType("const GLuint64 *") MemorySegment fenceValueArray) { + final var ext = getExtCapabilities(); + try { + check(ext.glClientWaitSemaphoreui64NVX).invokeExact(fenceObjectCount, semaphoreArray, fenceValueArray); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLVulkanProcNV.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLVulkanProcNV.java new file mode 100644 index 00000000..ff939276 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLVulkanProcNV.java @@ -0,0 +1,58 @@ +/* + * MIT License + * + * Copyright (c) 2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +package overrungl.opengl.ext.nv; + +import overrungl.Callback; + +import java.lang.foreign.FunctionDescriptor; +import java.lang.invoke.MethodHandle; +import java.lang.invoke.MethodHandles; +import java.lang.invoke.MethodType; + +/** + * {@link GLNVDrawVulkanImage} + * + * @author squid233 + * @since 0.1.0 + */ +@FunctionalInterface +public interface GLVulkanProcNV extends Callback { + FunctionDescriptor DESC = FunctionDescriptor.ofVoid(); + MethodType MTYPE = DESC.toMethodType(); + Native NATIVE = segment -> new GLVulkanProcNV() { + @Override + public void invoke() { + try { + nativeHandle(segment).invokeExact(); + } catch (Throwable e) { + throw new AssertionError("should not reach here", e); + } + } + }; + + void invoke(); + + @Override + default FunctionDescriptor descriptor() { + return DESC; + } + + @Override + default MethodHandle handle(MethodHandles.Lookup lookup) throws NoSuchMethodException, IllegalAccessException { + return lookup.findVirtual(GLVulkanProcNV.class, "invoke", MTYPE); + } +} From 94efe40d0f10fd839b63cd1d32e7a9612b294c2f Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Sat, 18 Nov 2023 15:09:16 +0800 Subject: [PATCH 13/20] [OpenGL] Update extensions --- .../kotlin/overrungl/opengl/GLAMD.kt | 492 +++ .../kotlin/overrungl/opengl/GLARB.kt | 1641 ++++++++++ .../generator/kotlin/overrungl/opengl/GLNV.kt | 1631 ++++++++++ .../overrungl/opengl/OpenGLGenerator.kt | 2628 +---------------- .../main/java/overrungl/opengl/GLExtCaps.java | 51 +- .../overrungl/opengl/ext/nv/GLNVFence.java | 96 + .../opengl/ext/nv/GLNVFillRectangle.java | 32 + .../opengl/ext/nv/GLNVFloatBuffer.java | 46 + .../opengl/ext/nv/GLNVFogDistance.java | 34 + .../ext/nv/GLNVFragmentCoverageToColor.java | 45 + .../opengl/ext/nv/GLNVFragmentProgram.java | 89 + .../opengl/ext/nv/GLNVFragmentProgram2.java | 36 + .../ext/nv/GLNVFramebufferMixedSamples.java | 67 + .../GLNVFramebufferMultisampleCoverage.java | 47 + .../opengl/ext/nv/GLNVGeometryProgram4.java | 62 + .../opengl/ext/nv/GLNVGpuMulticast.java | 136 + .../opengl/ext/nv/GLNVGpuProgram4.java | 171 ++ .../opengl/ext/nv/GLNVGpuProgram5.java | 59 + .../opengl/ext/nv/GLNVHalfFloat.java | 404 +++ .../ext/nv/GLNVInternalformatSampleQuery.java | 47 + .../opengl/ext/nv/GLNVLightMaxExponent.java | 33 + .../opengl/ext/nv/GLNVMemoryAttachment.java | 93 + .../opengl/ext/nv/GLNVMemoryObjectSparse.java | 67 + .../opengl/ext/nv/GLNVMeshShader.java | 115 + .../ext/nv/GLNVMultisampleFilterHint.java | 32 + .../opengl/ext/nv/GLNVOcculusionQuery.java | 96 + .../opengl/ext/nv/GLNVPackedDepthStencil.java | 33 + .../ext/nv/GLNVParameterBufferObject.java | 64 + .../opengl/ext/nv/GLNVPathRendering.java | 719 +++++ .../ext/nv/GLNVPathRenderingSharedEdge.java | 32 + 30 files changed, 6461 insertions(+), 2637 deletions(-) create mode 100644 modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLAMD.kt create mode 100644 modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLARB.kt create mode 100644 modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLNV.kt create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFence.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFillRectangle.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFloatBuffer.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFogDistance.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentCoverageToColor.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentProgram.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentProgram2.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFramebufferMixedSamples.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFramebufferMultisampleCoverage.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGeometryProgram4.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuMulticast.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuProgram4.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuProgram5.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVHalfFloat.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVInternalformatSampleQuery.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVLightMaxExponent.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMemoryAttachment.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMemoryObjectSparse.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMeshShader.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMultisampleFilterHint.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVOcculusionQuery.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPackedDepthStencil.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVParameterBufferObject.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPathRendering.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPathRenderingSharedEdge.java diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLAMD.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLAMD.kt new file mode 100644 index 00000000..fde48d9b --- /dev/null +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLAMD.kt @@ -0,0 +1,492 @@ +/* + * MIT License + * + * Copyright (c) 2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +package overrungl.opengl + +import overrungl.opengl.OpenGLExt.AMD + +/** + * @author squid233 + * @since 0.1.0 + */ +fun amd() { + file( + "BlendMinmaxFactor", AMD, "GL_AMD_blend_minmax_factor", + "GL_FACTOR_MIN_AMD" to "0x901C", + "GL_FACTOR_MAX_AMD" to "0x901D" + ) + file("DebugOutput", AMD, "GL_AMD_debug_output") { + "GL_MAX_DEBUG_MESSAGE_LENGTH_AMD"("0x9143") + "GL_MAX_DEBUG_LOGGED_MESSAGES_AMD"("0x9144") + "GL_DEBUG_LOGGED_MESSAGES_AMD"("0x9145") + "GL_DEBUG_SEVERITY_HIGH_AMD"("0x9146") + "GL_DEBUG_SEVERITY_MEDIUM_AMD"("0x9147") + "GL_DEBUG_SEVERITY_LOW_AMD"("0x9148") + "GL_DEBUG_CATEGORY_API_ERROR_AMD"("0x9149") + "GL_DEBUG_CATEGORY_WINDOW_SYSTEM_AMD"("0x914A") + "GL_DEBUG_CATEGORY_DEPRECATION_AMD"("0x914B") + "GL_DEBUG_CATEGORY_UNDEFINED_BEHAVIOR_AMD"("0x914C") + "GL_DEBUG_CATEGORY_PERFORMANCE_AMD"("0x914D") + "GL_DEBUG_CATEGORY_SHADER_COMPILER_AMD"("0x914E") + "GL_DEBUG_CATEGORY_APPLICATION_AMD"("0x914F") + "GL_DEBUG_CATEGORY_OTHER_AMD"("0x9150") + "glDebugMessageEnableAMD"( + void, + GLenum("category"), + GLenum("severity"), + GLsizei("count"), + address("ids", "const GLuint *"), + GLboolean("enabled") + ) + "glDebugMessageInsertAMD"( + void, + GLenum("category"), + GLenum("severity"), + GLuint("id"), + GLsizei("length"), + address("buf", "const GLchar *") + ) + ("glDebugMessageCallbackAMD"(void, address("callback", "GLDEBUGPROCAMD"), address("userParam", "void *"))) { + "glDebugMessageCallbackAMD"( + void, + "glDebugMessageCallbackAMD(callback.address(arena), userParam);", + arena("arena"), + Type("GLDebugProcAMD", null)("callback"), + address("userParam", "void *") + ) + } + "glGetDebugMessageLogAMD"( + GLuint, + GLuint("count"), + GLsizei("bufSize"), + address("categories", "GLenum *"), + address("severities", "GLenum *"), + address("ids", "GLuint *"), + address("lengths", "GLsizei *"), + address("message", "GLchar *") + ) + } + file( + "DepthClampSeparate", AMD, "GL_AMD_depth_clamp_separate", + "GL_DEPTH_CLAMP_NEAR_AMD" to "0x901E", + "GL_DEPTH_CLAMP_FAR_AMD" to "0x901F" + ) + file("DrawBuffersBlend", AMD, "GL_AMD_draw_buffers_blend") { + "glBlendFuncIndexedAMD"(void, GLuint("buf"), GLenum("src"), GLenum("dst")) + "glBlendFuncSeparateIndexedAMD"( + void, + GLuint("buf"), + GLenum("srcRGB"), + GLenum("dstRGB"), + GLenum("srcAlpha"), + GLenum("dstAlpha") + ) + "glBlendEquationIndexedAMD"(void, GLuint("buf"), GLenum("mode")) + "glBlendEquationSeparateIndexedAMD"(void, GLuint("buf"), GLenum("modeRGB"), GLenum("modeAlpha")) + } + file("FramebufferMultisampleAdvanced", AMD, "GL_AMD_framebuffer_multisample_advanced") { + "GL_RENDERBUFFER_STORAGE_SAMPLES_AMD"("0x91B2") + "GL_MAX_COLOR_FRAMEBUFFER_SAMPLES_AMD"("0x91B3") + "GL_MAX_COLOR_FRAMEBUFFER_STORAGE_SAMPLES_AMD"("0x91B4") + "GL_MAX_DEPTH_STENCIL_FRAMEBUFFER_SAMPLES_AMD"("0x91B5") + "GL_NUM_SUPPORTED_MULTISAMPLE_MODES_AMD"("0x91B6") + "GL_SUPPORTED_MULTISAMPLE_MODES_AMD"("0x91B7") + "glRenderbufferStorageMultisampleAdvancedAMD"( + void, + GLenum("target"), + GLsizei("samples"), + GLsizei("storageSamples"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height") + ) + "glNamedRenderbufferStorageMultisampleAdvancedAMD"( + void, + GLuint("renderbuffer"), + GLsizei("samples"), + GLsizei("storageSamples"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height") + ) + } + file("FramebufferSamplePositions", AMD, "GL_AMD_framebuffer_sample_positions") { + "GL_SUBSAMPLE_DISTANCE_AMD"("0x883F") + "GL_PIXELS_PER_SAMPLE_PATTERN_X_AMD"("0x91AE") + "GL_PIXELS_PER_SAMPLE_PATTERN_Y_AMD"("0x91AF") + "GL_ALL_PIXELS_AMD"("0xFFFFFFFF") + "glFramebufferSamplePositionsfvAMD"( + void, + GLenum("target"), + GLuint("numsamples"), + GLuint("pixelindex"), + address("values", "const GLfloat *") + ) + "glNamedFramebufferSamplePositionsfvAMD"( + void, + GLuint("framebuffer"), + GLuint("numsamples"), + GLuint("pixelindex"), + address("values", "const GLfloat *") + ) + "glGetFramebufferParameterfvAMD"( + void, + GLenum("target"), + GLenum("pname"), + GLuint("numsamples"), + GLuint("pixelindex"), + GLsizei("size"), + address("values", "GLfloat *") + ) + "glGetNamedFramebufferParameterfvAMD"( + void, + GLuint("framebuffer"), + GLenum("pname"), + GLuint("numsamples"), + GLuint("pixelindex"), + GLsizei("size"), + address("values", "GLfloat *") + ) + } + file( + "GpuShaderHalfFloat", AMD, "GL_AMD_gpu_shader_half_float", + "GL_FLOAT16_NV" to "0x8FF8", + "GL_FLOAT16_VEC2_NV" to "0x8FF9", + "GL_FLOAT16_VEC3_NV" to "0x8FFA", + "GL_FLOAT16_VEC4_NV" to "0x8FFB", + "GL_FLOAT16_MAT2_AMD" to "0x91C5", + "GL_FLOAT16_MAT3_AMD" to "0x91C6", + "GL_FLOAT16_MAT4_AMD" to "0x91C7", + "GL_FLOAT16_MAT2x3_AMD" to "0x91C8", + "GL_FLOAT16_MAT2x4_AMD" to "0x91C9", + "GL_FLOAT16_MAT3x2_AMD" to "0x91CA", + "GL_FLOAT16_MAT3x4_AMD" to "0x91CB", + "GL_FLOAT16_MAT4x2_AMD" to "0x91CC", + "GL_FLOAT16_MAT4x3_AMD" to "0x91CD" + ) + file("GpuShaderInt64", AMD, "GL_AMD_gpu_shader_int64") { + "GL_INT64_NV"("0x140E") + "GL_UNSIGNED_INT64_NV"("0x140F") + "GL_INT8_NV"("0x8FE0") + "GL_INT8_VEC2_NV"("0x8FE1") + "GL_INT8_VEC3_NV"("0x8FE2") + "GL_INT8_VEC4_NV"("0x8FE3") + "GL_INT16_NV"("0x8FE4") + "GL_INT16_VEC2_NV"("0x8FE5") + "GL_INT16_VEC3_NV"("0x8FE6") + "GL_INT16_VEC4_NV"("0x8FE7") + "GL_INT64_VEC2_NV"("0x8FE9") + "GL_INT64_VEC3_NV"("0x8FEA") + "GL_INT64_VEC4_NV"("0x8FEB") + "GL_UNSIGNED_INT8_NV"("0x8FEC") + "GL_UNSIGNED_INT8_VEC2_NV"("0x8FED") + "GL_UNSIGNED_INT8_VEC3_NV"("0x8FEE") + "GL_UNSIGNED_INT8_VEC4_NV"("0x8FEF") + "GL_UNSIGNED_INT16_NV"("0x8FF0") + "GL_UNSIGNED_INT16_VEC2_NV"("0x8FF1") + "GL_UNSIGNED_INT16_VEC3_NV"("0x8FF2") + "GL_UNSIGNED_INT16_VEC4_NV"("0x8FF3") + "GL_UNSIGNED_INT64_VEC2_NV"("0x8FF5") + "GL_UNSIGNED_INT64_VEC3_NV"("0x8FF6") + "GL_UNSIGNED_INT64_VEC4_NV"("0x8FF7") + "glUniform1i64NV"(void, GLint("location"), GLint64EXT("x")) + "glUniform2i64NV"(void, GLint("location"), GLint64EXT("x"), GLint64EXT("y")) + "glUniform3i64NV"(void, GLint("location"), GLint64EXT("x"), GLint64EXT("y"), GLint64EXT("z")) + "glUniform4i64NV"(void, GLint("location"), GLint64EXT("x"), GLint64EXT("y"), GLint64EXT("z"), GLint64EXT("w")) + "glUniform1i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) + "glUniform2i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) + "glUniform3i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) + "glUniform4i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) + "glUniform1ui64NV"(void, GLint("location"), GLuint64EXT("x")) + "glUniform2ui64NV"(void, GLint("location"), GLuint64EXT("x"), GLuint64EXT("y")) + "glUniform3ui64NV"(void, GLint("location"), GLuint64EXT("x"), GLuint64EXT("y"), GLuint64EXT("z")) + "glUniform4ui64NV"( + void, + GLint("location"), + GLuint64EXT("x"), + GLuint64EXT("y"), + GLuint64EXT("z"), + GLuint64EXT("w") + ) + "glUniform1ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) + "glUniform2ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) + "glUniform3ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) + "glUniform4ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) + "glGetUniformi64vNV"(void, GLuint("program"), GLint("location"), address("params", "GLint64EXT *")) + "glGetUniformui64vNV"(void, GLuint("program"), GLint("location"), address("params", "GLuint64EXT *")) + "glProgramUniform1i64NV"(void, GLuint("program"), GLint("location"), GLint64EXT("x")) + "glProgramUniform2i64NV"(void, GLuint("program"), GLint("location"), GLint64EXT("x"), GLint64EXT("y")) + "glProgramUniform3i64NV"( + void, + GLuint("program"), + GLint("location"), + GLint64EXT("x"), + GLint64EXT("y"), + GLint64EXT("z") + ) + "glProgramUniform4i64NV"( + void, + GLuint("program"), + GLint("location"), + GLint64EXT("x"), + GLint64EXT("y"), + GLint64EXT("z"), + GLint64EXT("w") + ) + "glProgramUniform1i64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64EXT *") + ) + "glProgramUniform2i64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64EXT *") + ) + "glProgramUniform3i64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64EXT *") + ) + "glProgramUniform4i64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64EXT *") + ) + "glProgramUniform1ui64NV"(void, GLuint("program"), GLint("location"), GLuint64EXT("x")) + "glProgramUniform2ui64NV"(void, GLuint("program"), GLint("location"), GLuint64EXT("x"), GLuint64EXT("y")) + "glProgramUniform3ui64NV"( + void, + GLuint("program"), + GLint("location"), + GLuint64EXT("x"), + GLuint64EXT("y"), + GLuint64EXT("z") + ) + "glProgramUniform4ui64NV"( + void, + GLuint("program"), + GLint("location"), + GLuint64EXT("x"), + GLuint64EXT("y"), + GLuint64EXT("z"), + GLuint64EXT("w") + ) + "glProgramUniform1ui64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64EXT *") + ) + "glProgramUniform2ui64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64EXT *") + ) + "glProgramUniform3ui64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64EXT *") + ) + "glProgramUniform4ui64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64EXT *") + ) + } + file("InterleavedElements", AMD, "GL_AMD_interleaved_elements") { + "GL_VERTEX_ELEMENT_SWIZZLE_AMD"("0x91A4") + "GL_VERTEX_ID_SWIZZLE_AMD"("0x91A5") + "glVertexAttribParameteriAMD"(void, GLuint("index"), GLenum("pname"), GLint("param")) + } + file("MultiDrawIndirect", AMD, "GL_AMD_multi_draw_indirect") { + "glMultiDrawArraysIndirectAMD"( + void, + GLenum("mode"), + address("indirect", "const void *"), + GLsizei("primcount"), + GLsizei("stride") + ) + "glMultiDrawElementsIndirectAMD"( + void, + GLenum("mode"), + GLenum("type"), + address("indirect", "const void *"), + GLsizei("primcount"), + GLsizei("stride") + ) + } + file("NameGenDelete", AMD, "GL_AMD_name_gen_delete") { + "GL_DATA_BUFFER_AMD"("0x9151") + "GL_PERFORMANCE_MONITOR_AMD"("0x9152") + "GL_QUERY_OBJECT_AMD"("0x9153") + "GL_VERTEX_ARRAY_OBJECT_AMD"("0x9154") + "GL_SAMPLER_OBJECT_AMD"("0x9155") + "glGenNamesAMD"(void, GLenum("identifier"), GLuint("num"), address("names", "GLuint *")) + "glDeleteNamesAMD"(void, GLenum("identifier"), GLuint("num"), address("names", "const GLuint *")) + "glIsNameAMD"(GLboolean, GLenum("identifier"), GLuint("name")) + } + file("OcclusionQueryEvent", AMD, "GL_AMD_occlusion_query_event") { + "GL_OCCLUSION_QUERY_EVENT_MASK_AMD"("0x874F") + "GL_QUERY_DEPTH_PASS_EVENT_BIT_AMD"("0x00000001") + "GL_QUERY_DEPTH_FAIL_EVENT_BIT_AMD"("0x00000002") + "GL_QUERY_STENCIL_FAIL_EVENT_BIT_AMD"("0x00000004") + "GL_QUERY_DEPTH_BOUNDS_FAIL_EVENT_BIT_AMD"("0x00000008") + "GL_QUERY_ALL_EVENT_BITS_AMD"("0xFFFFFFFF") + "glQueryObjectParameteruiAMD"(void, GLenum("target"), GLuint("id"), GLenum("pname"), GLuint("param")) + } + file("PerformanceMonitor", AMD, "GL_AMD_performance_monitor") { + "GL_COUNTER_TYPE_AMD"("0x8BC0") + "GL_COUNTER_RANGE_AMD"("0x8BC1") + "GL_UNSIGNED_INT64_AMD"("0x8BC2") + "GL_PERCENTAGE_AMD"("0x8BC3") + "GL_PERFMON_RESULT_AVAILABLE_AMD"("0x8BC4") + "GL_PERFMON_RESULT_SIZE_AMD"("0x8BC5") + "GL_PERFMON_RESULT_AMD"("0x8BC6") + "glGetPerfMonitorGroupsAMD"( + void, + address("numGroups", "GLint *"), + GLsizei("groupsSize"), + address("groups", "GLuint *") + ) + "glGetPerfMonitorCountersAMD"( + void, + GLuint("group"), + address("numCounters", "GLint *"), + address("maxActiveCounters", "GLint *"), + GLsizei("counterSize"), + address("counters", "GLuint *") + ) + "glGetPerfMonitorGroupStringAMD"( + void, + GLuint("group"), + GLsizei("bufSize"), + address("length", "GLsizei *"), + address("groupString", "GLchar *") + ) + "glGetPerfMonitorCounterStringAMD"( + void, + GLuint("group"), + GLuint("counter"), + GLsizei("bufSize"), + address("length", "GLsizei *"), + address("counterString", "GLchar *") + ) + "glGetPerfMonitorCounterInfoAMD"( + void, + GLuint("group"), + GLuint("counter"), + GLenum("pname"), + address("data", "void *") + ) + "glGenPerfMonitorsAMD"(void, GLsizei("n"), address("monitors", "GLuint *")) + "glDeletePerfMonitorsAMD"(void, GLsizei("n"), address("monitors", "GLuint *")) + "glSelectPerfMonitorCountersAMD"( + void, + GLuint("monitor"), + GLboolean("enable"), + GLuint("group"), + GLint("numCounters"), + address("counterList", "GLuint *") + ) + "glBeginPerfMonitorAMD"(void, GLuint("monitor")) + "glEndPerfMonitorAMD"(void, GLuint("monitor")) + "glGetPerfMonitorCounterDataAMD"( + void, + GLuint("monitor"), + GLenum("pname"), + GLsizei("dataSize"), + address("data", "GLuint *"), + address("bytesWritten", "GLint *") + ) + } + file("PinnedMemory", AMD, "GL_AMD_pinned_memory", "GL_EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD" to "0x9160") + file( + "QueryBufferObject", AMD, "GL_AMD_query_buffer_object", + "GL_QUERY_BUFFER_AMD" to "0x9192", + "GL_QUERY_BUFFER_BINDING_AMD" to "0x9193", + "GL_QUERY_RESULT_NO_WAIT_AMD" to "0x9194" + ) + file("SamplePositions", AMD, "GL_AMD_sample_positions") { + "glSetMultisamplefvAMD"(void, GLenum("pname"), GLuint("index"), address("val", "const GLfloat *")) + } + file("SparseTexture", AMD, "GL_AMD_sparse_texture") { + "GL_VIRTUAL_PAGE_SIZE_X_AMD"("0x9195") + "GL_VIRTUAL_PAGE_SIZE_Y_AMD"("0x9196") + "GL_VIRTUAL_PAGE_SIZE_Z_AMD"("0x9197") + "GL_MAX_SPARSE_TEXTURE_SIZE_AMD"("0x9198") + "GL_MAX_SPARSE_3D_TEXTURE_SIZE_AMD"("0x9199") + "GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS"("0x919A") + "GL_MIN_SPARSE_LEVEL_AMD"("0x919B") + "GL_MIN_LOD_WARNING_AMD"("0x919C") + "GL_TEXTURE_STORAGE_SPARSE_BIT_AMD"("0x00000001") + "glTexStorageSparseAMD"( + void, + GLenum("target"), + GLenum("internalFormat"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLsizei("layers"), + GLbitfield("flags") + ) + "glTextureStorageSparseAMD"( + void, + GLuint("texture"), + GLenum("target"), + GLenum("internalFormat"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLsizei("layers"), + GLbitfield("flags") + ) + } + file("StencilOperationExtended", AMD, "GL_AMD_stencil_operation_extended") { + "GL_SET_AMD"("0x874A") + "GL_REPLACE_VALUE_AMD"("0x874B") + "GL_STENCIL_OP_VALUE_AMD"("0x874C") + "GL_STENCIL_BACK_OP_VALUE_AMD"("0x874D") + "glStencilOpValueAMD"(void, GLenum("face"), GLuint("value")) + } + file("TransformFeedback4", AMD, "GL_AMD_transform_feedback4", "GL_STREAM_RASTERIZATION_AMD" to "0x91A0") + file("VertexShaderTessellator", AMD, "GL_AMD_vertex_shader_tessellator") { + "GL_SAMPLER_BUFFER_AMD"("0x9001") + "GL_INT_SAMPLER_BUFFER_AMD"("0x9002") + "GL_UNSIGNED_INT_SAMPLER_BUFFER_AMD"("0x9003") + "GL_TESSELLATION_MODE_AMD"("0x9004") + "GL_TESSELLATION_FACTOR_AMD"("0x9005") + "GL_DISCRETE_AMD"("0x9006") + "GL_CONTINUOUS_AMD"("0x9007") + "glTessellationFactorAMD"(void, GLfloat("factor")) + "glTessellationModeAMD"(void, GLenum("mode")) + } +} diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLARB.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLARB.kt new file mode 100644 index 00000000..36c8f6ce --- /dev/null +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLARB.kt @@ -0,0 +1,1641 @@ +/* + * MIT License + * + * Copyright (c) 2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +package overrungl.opengl + +import overrungl.opengl.OpenGLExt.ARB + +/** + * @author squid233 + * @since 0.1.0 + */ +fun arb() { + file("ES32Compatibility", ARB, "GL_ARB_ES3_2_compatibility") { + "GL_PRIMITIVE_BOUNDING_BOX_ARB"("0x92BE") + "GL_MULTISAMPLE_LINE_WIDTH_RANGE_ARB"("0x9381") + "GL_MULTISAMPLE_LINE_WIDTH_GRANULARITY_ARB"("0x9382") + "glPrimitiveBoundingBoxARB"( + void, + GLfloat("minX"), + GLfloat("minY"), + GLfloat("minZ"), + GLfloat("minW"), + GLfloat("maxX"), + GLfloat("maxY"), + GLfloat("maxZ"), + GLfloat("maxW") + ) + } + file("BindlessTexture", ARB, "GL_ARB_bindless_texture") { + "GL_UNSIGNED_INT64_ARB"("0x140F") + "glGetTextureHandleARB"(GLuint64, GLuint("texture")) + "glGetTextureSamplerHandleARB"(GLuint64, GLuint("texture"), GLuint("sampler")) + "glMakeTextureHandleResidentARB"(void, GLuint64("handle")) + "glMakeTextureHandleNonResidentARB"(void, GLuint64("handle")) + "glGetImageHandleARB"( + GLuint64, + GLuint("texture"), + GLint("level"), + GLboolean("layered"), + GLint("layer"), + GLenum("format") + ) + "glMakeImageHandleResidentARB"(void, GLuint64("handle"), GLenum("access")) + "glMakeImageHandleNonResidentARB"(void, GLuint64("handle")) + "glUniformHandleui64ARB"(void, GLint("location"), GLuint64("value")) + "glUniformHandleui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) + "glProgramUniformHandleui64ARB"(void, GLuint("program"), GLint("location"), GLuint64("value")) + "glProgramUniformHandleui64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("values", "const GLuint64 *") + ) + "glIsTextureHandleResidentARB"(GLboolean, GLuint64("handle")) + "glIsImageHandleResidentARB"(GLboolean, GLuint64("handle")) + "glVertexAttribL1ui64ARB"(void, GLuint("index"), GLuint64EXT("x")) + "glVertexAttribL1ui64vARB"(void, GLuint("index"), address("v", "const GLuint64EXT *")) + "glGetVertexAttribLui64vARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLuint64EXT *")) + } + file("CLEvent", ARB, "GL_ARB_cl_event") { + "GL_SYNC_CL_EVENT_ARB"("0x8240") + "GL_SYNC_CL_EVENT_COMPLETE_ARB"("0x8241") + "glCreateSyncFromCLeventARB"( + address, + address("context", "struct _cl_context *"), + address("event", "struct _cl_event *"), + GLbitfield("flags"), + nativeType = "GLsync" + ) + } + file("ColorBufferFloat", ARB, "GL_ARB_color_buffer_float") { + "GL_RGBA_FLOAT_MODE_ARB"("0x8820") + "GL_CLAMP_VERTEX_COLOR_ARB"("0x891A") + "GL_CLAMP_FRAGMENT_COLOR_ARB"("0x891B") + "GL_CLAMP_READ_COLOR_ARB"("0x891C") + "GL_FIXED_ONLY_ARB"("0x891D") + "glClampColorARB"(void, GLenum("target"), GLenum("clamp")) + } + file("ComputeVariableGroupSize", ARB, "GL_ARB_compute_variable_group_size") { + "GL_MAX_COMPUTE_VARIABLE_GROUP_INVOCATIONS_ARB"("0x9344") + "GL_MAX_COMPUTE_FIXED_GROUP_INVOCATIONS_ARB"("0x90EB") + "GL_MAX_COMPUTE_VARIABLE_GROUP_SIZE_ARB"("0x9345") + "GL_MAX_COMPUTE_FIXED_GROUP_SIZE_ARB"("0x91BF") + "glDispatchComputeGroupSizeARB"( + void, + GLuint("num_groups_x"), + GLuint("num_groups_y"), + GLuint("num_groups_z"), + GLuint("group_size_x"), + GLuint("group_size_y"), + GLuint("group_size_z") + ) + } + file("DebugOutput", ARB, "GL_ARB_debug_output") { + "GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB"("0x8242") + "GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB"("0x8243") + "GL_DEBUG_CALLBACK_FUNCTION_ARB"("0x8244") + "GL_DEBUG_CALLBACK_USER_PARAM_ARB"("0x8245") + "GL_DEBUG_SOURCE_API_ARB"("0x8246") + "GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB"("0x8247") + "GL_DEBUG_SOURCE_SHADER_COMPILER_ARB"("0x8248") + "GL_DEBUG_SOURCE_THIRD_PARTY_ARB"("0x8249") + "GL_DEBUG_SOURCE_APPLICATION_ARB"("0x824A") + "GL_DEBUG_SOURCE_OTHER_ARB"("0x824B") + "GL_DEBUG_TYPE_ERROR_ARB"("0x824C") + "GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB"("0x824D") + "GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB"("0x824E") + "GL_DEBUG_TYPE_PORTABILITY_ARB"("0x824F") + "GL_DEBUG_TYPE_PERFORMANCE_ARB"("0x8250") + "GL_DEBUG_TYPE_OTHER_ARB"("0x8251") + "GL_MAX_DEBUG_MESSAGE_LENGTH_ARB"("0x9143") + "GL_MAX_DEBUG_LOGGED_MESSAGES_ARB"("0x9144") + "GL_DEBUG_LOGGED_MESSAGES_ARB"("0x9145") + "GL_DEBUG_SEVERITY_HIGH_ARB"("0x9146") + "GL_DEBUG_SEVERITY_MEDIUM_ARB"("0x9147") + "GL_DEBUG_SEVERITY_LOW_ARB"("0x9148") + "glDebugMessageControlARB"( + void, + GLenum("source"), + GLenum("type"), + GLenum("severity"), + GLsizei("count"), + address("ids", "const GLuint *"), + GLboolean("enabled") + ) + "glDebugMessageInsertARB"( + void, + GLenum("source"), + GLenum("type"), + GLuint("id"), + GLenum("severity"), + GLsizei("length"), + address("buf", "const GLchar *") + ) + ("glDebugMessageCallbackARB"( + void, + address("callback", "GLDEBUGPROCARB"), + address("userParam", "const void *") + )) { + "glDebugMessageCallbackARB"( + void, + "glDebugMessageCallbackARB(callback.address(arena), userParam);", + arena("arena"), + Type("GLDebugProc", null)("callback"), + address("userParam", "const void *") + ) + } + "glGetDebugMessageLogARB"( + GLuint, + GLuint("count"), + GLsizei("bufSize"), + address("sources", "GLenum *"), + address("types", "GLenum *"), + address("ids", "GLuint *"), + address("severities", "GLenum *"), + address("lengths", "GLsizei *"), + address("messageLog", "GLchar *") + ) + } + file( + "DepthTexture", ARB, "GL_ARB_depth_texture", + "GL_DEPTH_COMPONENT16_ARB" to "0x81A5", + "GL_DEPTH_COMPONENT24_ARB" to "0x81A6", + "GL_DEPTH_COMPONENT32_ARB" to "0x81A7", + "GL_TEXTURE_DEPTH_SIZE_ARB" to "0x884A", + "GL_DEPTH_TEXTURE_MODE_ARB" to "0x884B" + ) + file("DrawBuffers", ARB, "GL_ARB_draw_buffers") { + "GL_MAX_DRAW_BUFFERS_ARB"("0x8824") + "GL_DRAW_BUFFER0_ARB"("0x8825") + "GL_DRAW_BUFFER1_ARB"("0x8826") + "GL_DRAW_BUFFER2_ARB"("0x8827") + "GL_DRAW_BUFFER3_ARB"("0x8828") + "GL_DRAW_BUFFER4_ARB"("0x8829") + "GL_DRAW_BUFFER5_ARB"("0x882A") + "GL_DRAW_BUFFER6_ARB"("0x882B") + "GL_DRAW_BUFFER7_ARB"("0x882C") + "GL_DRAW_BUFFER8_ARB"("0x882D") + "GL_DRAW_BUFFER9_ARB"("0x882E") + "GL_DRAW_BUFFER10_ARB"("0x882F") + "GL_DRAW_BUFFER11_ARB"("0x8830") + "GL_DRAW_BUFFER12_ARB"("0x8831") + "GL_DRAW_BUFFER13_ARB"("0x8832") + "GL_DRAW_BUFFER14_ARB"("0x8833") + "GL_DRAW_BUFFER15_ARB"("0x8834") + "glDrawBuffersARB"(void, GLsizei("n"), address("bufs", "const GLenum *")) + } + file("DrawBuffersBlend", ARB, "GL_ARB_draw_buffers_blend") { + "glBlendEquationiARB"(void, GLuint("buf"), GLenum("mode")) + "glBlendEquationSeparateiARB"(void, GLuint("buf"), GLenum("modeRGB"), GLenum("modeAlpha")) + "glBlendFunciARB"(void, GLuint("buf"), GLenum("src"), GLenum("dst")) + "glBlendFuncSeparateiARB"( + void, + GLuint("buf"), + GLenum("srcRGB"), + GLenum("dstRGB"), + GLenum("srcAlpha"), + GLenum("dstAlpha") + ) + } + file("DrawInstanced", ARB, "GL_ARB_draw_instanced") { + "glDrawArraysInstancedARB"(void, GLenum("mode"), GLint("first"), GLsizei("count"), GLsizei("primcount")) + "glDrawElementsInstancedARB"( + void, + GLenum("mode"), + GLsizei("count"), + GLenum("type"), + address("indices", "const void *"), + GLsizei("primcount") + ) + } + file("FragmentProgram", ARB, "GL_ARB_fragment_program") { + "GL_FRAGMENT_PROGRAM_ARB"("0x8804") + "GL_PROGRAM_FORMAT_ASCII_ARB"("0x8875") + "GL_PROGRAM_LENGTH_ARB"("0x8627") + "GL_PROGRAM_FORMAT_ARB"("0x8876") + "GL_PROGRAM_BINDING_ARB"("0x8677") + "GL_PROGRAM_INSTRUCTIONS_ARB"("0x88A0") + "GL_MAX_PROGRAM_INSTRUCTIONS_ARB"("0x88A1") + "GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB"("0x88A2") + "GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB"("0x88A3") + "GL_PROGRAM_TEMPORARIES_ARB"("0x88A4") + "GL_MAX_PROGRAM_TEMPORARIES_ARB"("0x88A5") + "GL_PROGRAM_NATIVE_TEMPORARIES_ARB"("0x88A6") + "GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB"("0x88A7") + "GL_PROGRAM_PARAMETERS_ARB"("0x88A8") + "GL_MAX_PROGRAM_PARAMETERS_ARB"("0x88A9") + "GL_PROGRAM_NATIVE_PARAMETERS_ARB"("0x88AA") + "GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB"("0x88AB") + "GL_PROGRAM_ATTRIBS_ARB"("0x88AC") + "GL_MAX_PROGRAM_ATTRIBS_ARB"("0x88AD") + "GL_PROGRAM_NATIVE_ATTRIBS_ARB"("0x88AE") + "GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB"("0x88AF") + "GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB"("0x88B4") + "GL_MAX_PROGRAM_ENV_PARAMETERS_ARB"("0x88B5") + "GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB"("0x88B6") + "GL_PROGRAM_ALU_INSTRUCTIONS_ARB"("0x8805") + "GL_PROGRAM_TEX_INSTRUCTIONS_ARB"("0x8806") + "GL_PROGRAM_TEX_INDIRECTIONS_ARB"("0x8807") + "GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB"("0x8808") + "GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB"("0x8809") + "GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB"("0x880A") + "GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB"("0x880B") + "GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB"("0x880C") + "GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB"("0x880D") + "GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB"("0x880E") + "GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB"("0x880F") + "GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB"("0x8810") + "GL_PROGRAM_STRING_ARB"("0x8628") + "GL_PROGRAM_ERROR_POSITION_ARB"("0x864B") + "GL_CURRENT_MATRIX_ARB"("0x8641") + "GL_TRANSPOSE_CURRENT_MATRIX_ARB"("0x88B7") + "GL_CURRENT_MATRIX_STACK_DEPTH_ARB"("0x8640") + "GL_MAX_PROGRAM_MATRICES_ARB"("0x862F") + "GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB"("0x862E") + "GL_MAX_TEXTURE_COORDS_ARB"("0x8871") + "GL_MAX_TEXTURE_IMAGE_UNITS_ARB"("0x8872") + "GL_PROGRAM_ERROR_STRING_ARB"("0x8874") + "GL_MATRIX0_ARB"("0x88C0") + "GL_MATRIX1_ARB"("0x88C1") + "GL_MATRIX2_ARB"("0x88C2") + "GL_MATRIX3_ARB"("0x88C3") + "GL_MATRIX4_ARB"("0x88C4") + "GL_MATRIX5_ARB"("0x88C5") + "GL_MATRIX6_ARB"("0x88C6") + "GL_MATRIX7_ARB"("0x88C7") + "GL_MATRIX8_ARB"("0x88C8") + "GL_MATRIX9_ARB"("0x88C9") + "GL_MATRIX10_ARB"("0x88CA") + "GL_MATRIX11_ARB"("0x88CB") + "GL_MATRIX12_ARB"("0x88CC") + "GL_MATRIX13_ARB"("0x88CD") + "GL_MATRIX14_ARB"("0x88CE") + "GL_MATRIX15_ARB"("0x88CF") + "GL_MATRIX16_ARB"("0x88D0") + "GL_MATRIX17_ARB"("0x88D1") + "GL_MATRIX18_ARB"("0x88D2") + "GL_MATRIX19_ARB"("0x88D3") + "GL_MATRIX20_ARB"("0x88D4") + "GL_MATRIX21_ARB"("0x88D5") + "GL_MATRIX22_ARB"("0x88D6") + "GL_MATRIX23_ARB"("0x88D7") + "GL_MATRIX24_ARB"("0x88D8") + "GL_MATRIX25_ARB"("0x88D9") + "GL_MATRIX26_ARB"("0x88DA") + "GL_MATRIX27_ARB"("0x88DB") + "GL_MATRIX28_ARB"("0x88DC") + "GL_MATRIX29_ARB"("0x88DD") + "GL_MATRIX30_ARB"("0x88DE") + "GL_MATRIX31_ARB"("0x88DF") + "glProgramStringARB"( + void, + GLenum("target"), + GLenum("format"), + GLsizei("len"), + address("string", "const void *") + ) + "glBindProgramARB"(void, GLenum("target"), GLuint("program")) + "glDeleteProgramsARB"(void, GLsizei("n"), address("programs", "const GLuint *")) + "glGenProgramsARB"(void, GLsizei("n"), address("programs", "GLuint *")) + "glProgramEnvParameter4dARB"( + void, + GLenum("target"), + GLuint("index"), + GLdouble("x"), + GLdouble("y"), + GLdouble("z"), + GLdouble("w") + ) + "glProgramEnvParameter4dvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLdouble *")) + "glProgramEnvParameter4fARB"( + void, + GLenum("target"), + GLuint("index"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z"), + GLfloat("w") + ) + "glProgramEnvParameter4fvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLfloat *")) + "glProgramLocalParameter4dARB"( + void, + GLenum("target"), + GLuint("index"), + GLdouble("x"), + GLdouble("y"), + GLdouble("z"), + GLdouble("w") + ) + "glProgramLocalParameter4dvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLdouble *")) + "glProgramLocalParameter4fARB"( + void, + GLenum("target"), + GLuint("index"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z"), + GLfloat("w") + ) + "glProgramLocalParameter4fvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLfloat *")) + "glGetProgramEnvParameterdvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLdouble *")) + "glGetProgramEnvParameterfvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLfloat *")) + "glGetProgramLocalParameterdvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLdouble *")) + "glGetProgramLocalParameterfvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLfloat *")) + "glGetProgramivARB"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetProgramStringARB"(void, GLenum("target"), GLenum("pname"), address("string", "void *")) + "glIsProgramARB"(GLboolean, GLuint("program")) + } + file( + "FragmentShader", ARB, "GL_ARB_fragment_shader", + "GL_FRAGMENT_SHADER_ARB" to "0x8B30", + "GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB" to "0x8B49", + "GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB" to "0x8B8B" + ) + file("GeometryShader4", ARB, "GL_ARB_geometry_shader4") { + "GL_LINES_ADJACENCY_ARB"("0x000A") + "GL_LINE_STRIP_ADJACENCY_ARB"("0x000B") + "GL_TRIANGLES_ADJACENCY_ARB"("0x000C") + "GL_TRIANGLE_STRIP_ADJACENCY_ARB"("0x000D") + "GL_PROGRAM_POINT_SIZE_ARB"("0x8642") + "GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB"("0x8C29") + "GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB"("0x8DA7") + "GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB"("0x8DA8") + "GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB"("0x8DA9") + "GL_GEOMETRY_SHADER_ARB"("0x8DD9") + "GL_GEOMETRY_VERTICES_OUT_ARB"("0x8DDA") + "GL_GEOMETRY_INPUT_TYPE_ARB"("0x8DDB") + "GL_GEOMETRY_OUTPUT_TYPE_ARB"("0x8DDC") + "GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB"("0x8DDD") + "GL_MAX_VERTEX_VARYING_COMPONENTS_ARB"("0x8DDE") + "GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB"("0x8DDF") + "GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB"("0x8DE0") + "GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB"("0x8DE1") + "glProgramParameteriARB"(void, GLuint("program"), GLenum("pname"), GLint("value")) + "glFramebufferTextureARB"(void, GLenum("target"), GLenum("attachment"), GLuint("texture"), GLint("level")) + "glFramebufferTextureLayerARB"( + void, + GLenum("target"), + GLenum("attachment"), + GLuint("texture"), + GLint("level"), + GLint("layer") + ) + "glFramebufferTextureFaceARB"( + void, + GLenum("target"), + GLenum("attachment"), + GLuint("texture"), + GLint("level"), + GLenum("face") + ) + } + file("GLSpirv", ARB, "GL_ARB_gl_spirv") { + "GL_SHADER_BINARY_FORMAT_SPIR_V_ARB"("0x9551") + "GL_SPIR_V_BINARY_ARB"("0x9552") + "glSpecializeShaderARB"( + void, + GLuint("shader"), + address("pEntryPoint", "const GLchar *"), + GLuint("numSpecializationConstants"), + address("pConstantIndex", "const GLuint *"), + address("pConstantValue", "const GLuint *") + ) + } + file("GpuShaderInt64", ARB, "GL_ARB_gpu_shader_int64") { + "GL_INT64_ARB"("0x140E") + "GL_INT64_VEC2_ARB"("0x8FE9") + "GL_INT64_VEC3_ARB"("0x8FEA") + "GL_INT64_VEC4_ARB"("0x8FEB") + "GL_UNSIGNED_INT64_VEC2_ARB"("0x8FF5") + "GL_UNSIGNED_INT64_VEC3_ARB"("0x8FF6") + "GL_UNSIGNED_INT64_VEC4_ARB"("0x8FF7") + "glUniform1i64ARB"(void, GLint("location"), GLint64("x")) + "glUniform2i64ARB"(void, GLint("location"), GLint64("x"), GLint64("y")) + "glUniform3i64ARB"(void, GLint("location"), GLint64("x"), GLint64("y"), GLint64("z")) + "glUniform4i64ARB"(void, GLint("location"), GLint64("x"), GLint64("y"), GLint64("z"), GLint64("w")) + "glUniform1i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) + "glUniform2i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) + "glUniform3i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) + "glUniform4i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) + "glUniform1ui64ARB"(void, GLint("location"), GLuint64("x")) + "glUniform2ui64ARB"(void, GLint("location"), GLuint64("x"), GLuint64("y")) + "glUniform3ui64ARB"(void, GLint("location"), GLuint64("x"), GLuint64("y"), GLuint64("z")) + "glUniform4ui64ARB"(void, GLint("location"), GLuint64("x"), GLuint64("y"), GLuint64("z"), GLuint64("w")) + "glUniform1ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) + "glUniform2ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) + "glUniform3ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) + "glUniform4ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) + "glGetUniformi64vARB"(void, GLuint("program"), GLint("location"), address("params", "GLint64 *")) + "glGetUniformui64vARB"(void, GLuint("program"), GLint("location"), address("params", "GLuint64 *")) + "glGetnUniformi64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("bufSize"), + address("params", "GLint64 *") + ) + "glGetnUniformui64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("bufSize"), + address("params", "GLuint64 *") + ) + "glProgramUniform1i64ARB"(void, GLuint("program"), GLint("location"), GLint64("x")) + "glProgramUniform2i64ARB"(void, GLuint("program"), GLint("location"), GLint64("x"), GLint64("y")) + "glProgramUniform3i64ARB"(void, GLuint("program"), GLint("location"), GLint64("x"), GLint64("y"), GLint64("z")) + "glProgramUniform4i64ARB"( + void, + GLuint("program"), + GLint("location"), + GLint64("x"), + GLint64("y"), + GLint64("z"), + GLint64("w") + ) + "glProgramUniform1i64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64 *") + ) + "glProgramUniform2i64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64 *") + ) + "glProgramUniform3i64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64 *") + ) + "glProgramUniform4i64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint64 *") + ) + "glProgramUniform1ui64ARB"(void, GLuint("program"), GLint("location"), GLuint64("x")) + "glProgramUniform2ui64ARB"(void, GLuint("program"), GLint("location"), GLuint64("x"), GLuint64("y")) + "glProgramUniform3ui64ARB"( + void, + GLuint("program"), + GLint("location"), + GLuint64("x"), + GLuint64("y"), + GLuint64("z") + ) + "glProgramUniform4ui64ARB"( + void, + GLuint("program"), + GLint("location"), + GLuint64("x"), + GLuint64("y"), + GLuint64("z"), + GLuint64("w") + ) + "glProgramUniform1ui64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64 *") + ) + "glProgramUniform2ui64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64 *") + ) + "glProgramUniform3ui64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64 *") + ) + "glProgramUniform4ui64vARB"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64 *") + ) + } + file("HalfFloatPixel", ARB, "GL_ARB_half_float_pixel", "GL_HALF_FLOAT_ARB" to "0x140B") + file("Imaging", ARB, "GL_ARB_imaging") { + "GL_CONVOLUTION_BORDER_MODE"("0x8013") + "GL_CONVOLUTION_FILTER_SCALE"("0x8014") + "GL_CONVOLUTION_FILTER_BIAS"("0x8015") + "GL_REDUCE"("0x8016") + "GL_CONVOLUTION_FORMAT"("0x8017") + "GL_CONVOLUTION_WIDTH"("0x8018") + "GL_CONVOLUTION_HEIGHT"("0x8019") + "GL_MAX_CONVOLUTION_WIDTH"("0x801A") + "GL_MAX_CONVOLUTION_HEIGHT"("0x801B") + "GL_POST_CONVOLUTION_RED_SCALE"("0x801C") + "GL_POST_CONVOLUTION_GREEN_SCALE"("0x801D") + "GL_POST_CONVOLUTION_BLUE_SCALE"("0x801E") + "GL_POST_CONVOLUTION_ALPHA_SCALE"("0x801F") + "GL_POST_CONVOLUTION_RED_BIAS"("0x8020") + "GL_POST_CONVOLUTION_GREEN_BIAS"("0x8021") + "GL_POST_CONVOLUTION_BLUE_BIAS"("0x8022") + "GL_POST_CONVOLUTION_ALPHA_BIAS"("0x8023") + "GL_HISTOGRAM_WIDTH"("0x8026") + "GL_HISTOGRAM_FORMAT"("0x8027") + "GL_HISTOGRAM_RED_SIZE"("0x8028") + "GL_HISTOGRAM_GREEN_SIZE"("0x8029") + "GL_HISTOGRAM_BLUE_SIZE"("0x802A") + "GL_HISTOGRAM_ALPHA_SIZE"("0x802B") + "GL_HISTOGRAM_LUMINANCE_SIZE"("0x802C") + "GL_HISTOGRAM_SINK"("0x802D") + "GL_MINMAX_FORMAT"("0x802F") + "GL_MINMAX_SINK"("0x8030") + "GL_TABLE_TOO_LARGE"("0x8031") + "GL_COLOR_MATRIX"("0x80B1") + "GL_COLOR_MATRIX_STACK_DEPTH"("0x80B2") + "GL_MAX_COLOR_MATRIX_STACK_DEPTH"("0x80B3") + "GL_POST_COLOR_MATRIX_RED_SCALE"("0x80B4") + "GL_POST_COLOR_MATRIX_GREEN_SCALE"("0x80B5") + "GL_POST_COLOR_MATRIX_BLUE_SCALE"("0x80B6") + "GL_POST_COLOR_MATRIX_ALPHA_SCALE"("0x80B7") + "GL_POST_COLOR_MATRIX_RED_BIAS"("0x80B8") + "GL_POST_COLOR_MATRIX_GREEN_BIAS"("0x80B9") + "GL_POST_COLOR_MATRIX_BLUE_BIAS"("0x80BA") + "GL_POST_COLOR_MATRIX_ALPHA_BIAS"("0x80BB") + "GL_COLOR_TABLE_SCALE"("0x80D6") + "GL_COLOR_TABLE_BIAS"("0x80D7") + "GL_COLOR_TABLE_FORMAT"("0x80D8") + "GL_COLOR_TABLE_WIDTH"("0x80D9") + "GL_COLOR_TABLE_RED_SIZE"("0x80DA") + "GL_COLOR_TABLE_GREEN_SIZE"("0x80DB") + "GL_COLOR_TABLE_BLUE_SIZE"("0x80DC") + "GL_COLOR_TABLE_ALPHA_SIZE"("0x80DD") + "GL_COLOR_TABLE_LUMINANCE_SIZE"("0x80DE") + "GL_COLOR_TABLE_INTENSITY_SIZE"("0x80DF") + "GL_CONSTANT_BORDER"("0x8151") + "GL_REPLICATE_BORDER"("0x8153") + "GL_CONVOLUTION_BORDER_COLOR"("0x8154") + "glColorTable"( + void, + GLenum("target"), + GLenum("internalformat"), + GLsizei("width"), + GLenum("format"), + GLenum("type"), + address("table", "const void *") + ) + "glColorTableParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfloat *")) + "glColorTableParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) + "glCopyColorTable"(void, GLenum("target"), GLenum("internalformat"), GLint("x"), GLint("y"), GLsizei("width")) + "glGetColorTable"(void, GLenum("target"), GLenum("format"), GLenum("type"), address("table", "void *")) + "glGetColorTableParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + "glGetColorTableParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glColorSubTable"( + void, + GLenum("target"), + GLsizei("start"), + GLsizei("count"), + GLenum("format"), + GLenum("type"), + address("data", "const void *") + ) + "glCopyColorSubTable"(void, GLenum("target"), GLsizei("start"), GLint("x"), GLint("y"), GLsizei("width")) + "glConvolutionFilter1D"( + void, + GLenum("target"), + GLenum("internalformat"), + GLsizei("width"), + GLenum("format"), + GLenum("type"), + address("image", "const void *") + ) + "glConvolutionFilter2D"( + void, + GLenum("target"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLenum("format"), + GLenum("type"), + address("image", "const void *") + ) + "glConvolutionParameterf"(void, GLenum("target"), GLenum("pname"), GLfloat("params")) + "glConvolutionParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfloat *")) + "glConvolutionParameteri"(void, GLenum("target"), GLenum("pname"), GLint("params")) + "glConvolutionParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) + "glCopyConvolutionFilter1D"( + void, + GLenum("target"), + GLenum("internalformat"), + GLint("x"), + GLint("y"), + GLsizei("width") + ) + "glCopyConvolutionFilter2D"( + void, + GLenum("target"), + GLenum("internalformat"), + GLint("x"), + GLint("y"), + GLsizei("width"), + GLsizei("height") + ) + "glGetConvolutionFilter"(void, GLenum("target"), GLenum("format"), GLenum("type"), address("image", "void *")) + "glGetConvolutionParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + "glGetConvolutionParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetSeparableFilter"( + void, + GLenum("target"), + GLenum("format"), + GLenum("type"), + address("row", "void *"), + address("column", "void *"), + address("span", "void *") + ) + "glSeparableFilter2D"( + void, + GLenum("target"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLenum("format"), + GLenum("type"), + address("row", "const void *"), + address("column", "const void *") + ) + "glGetHistogram"( + void, + GLenum("target"), + GLboolean("reset"), + GLenum("format"), + GLenum("type"), + address("values", "void *") + ) + "glGetHistogramParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + "glGetHistogramParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetMinmax"( + void, + GLenum("target"), + GLboolean("reset"), + GLenum("format"), + GLenum("type"), + address("values", "void *") + ) + "glGetMinmaxParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + "glGetMinmaxParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glHistogram"(void, GLenum("target"), GLsizei("width"), GLenum("internalformat"), GLboolean("sink")) + "glMinmax"(void, GLenum("target"), GLenum("internalformat"), GLboolean("sink")) + "glResetHistogram"(void, GLenum("target")) + "glResetMinmax"(void, GLenum("target")) + } + file("IndirectParameters", ARB, "GL_ARB_indirect_parameters") { + "GL_PARAMETER_BUFFER_ARB"("0x80EE") + "GL_PARAMETER_BUFFER_BINDING_ARB"("0x80EF") + "glMultiDrawArraysIndirectCountARB"( + void, + GLenum("mode"), + address("indirect", "const void *"), + GLintptr("drawcount"), + GLsizei("maxdrawcount"), + GLsizei("stride") + ) + "glMultiDrawElementsIndirectCountARB"( + void, + GLenum("mode"), + GLenum("type"), + address("indirect", "const void *"), + GLintptr("drawcount"), + GLsizei("maxdrawcount"), + GLsizei("stride") + ) + } + file("InstancedArrays", ARB, "GL_ARB_instanced_arrays") { + "GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB"("0x88FE") + "glVertexAttribDivisorARB"(void, GLuint("index"), GLuint("divisor")) + } + file( + "InternalformatQuery2", ARB, "GL_ARB_internalformat_query2", + "GL_SRGB_DECODE_ARB" to "0x8299", + "GL_VIEW_CLASS_EAC_R11" to "0x9383", + "GL_VIEW_CLASS_EAC_RG11" to "0x9384", + "GL_VIEW_CLASS_ETC2_RGB" to "0x9385", + "GL_VIEW_CLASS_ETC2_RGBA" to "0x9386", + "GL_VIEW_CLASS_ETC2_EAC_RGBA" to "0x9387", + "GL_VIEW_CLASS_ASTC_4x4_RGBA" to "0x9388", + "GL_VIEW_CLASS_ASTC_5x4_RGBA" to "0x9389", + "GL_VIEW_CLASS_ASTC_5x5_RGBA" to "0x938A", + "GL_VIEW_CLASS_ASTC_6x5_RGBA" to "0x938B", + "GL_VIEW_CLASS_ASTC_6x6_RGBA" to "0x938C", + "GL_VIEW_CLASS_ASTC_8x5_RGBA" to "0x938D", + "GL_VIEW_CLASS_ASTC_8x6_RGBA" to "0x938E", + "GL_VIEW_CLASS_ASTC_8x8_RGBA" to "0x938F", + "GL_VIEW_CLASS_ASTC_10x5_RGBA" to "0x9390", + "GL_VIEW_CLASS_ASTC_10x6_RGBA" to "0x9391", + "GL_VIEW_CLASS_ASTC_10x8_RGBA" to "0x9392", + "GL_VIEW_CLASS_ASTC_10x10_RGBA" to "0x9393", + "GL_VIEW_CLASS_ASTC_12x10_RGBA" to "0x9394", + "GL_VIEW_CLASS_ASTC_12x12_RGBA" to "0x9395" + ) + file("MatrixPalette", ARB, "GL_ARB_matrix_palette") { + "GL_MATRIX_PALETTE_ARB"("0x8840") + "GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB"("0x8841") + "GL_MAX_PALETTE_MATRICES_ARB"("0x8842") + "GL_CURRENT_PALETTE_MATRIX_ARB"("0x8843") + "GL_MATRIX_INDEX_ARRAY_ARB"("0x8844") + "GL_CURRENT_MATRIX_INDEX_ARB"("0x8845") + "GL_MATRIX_INDEX_ARRAY_SIZE_ARB"("0x8846") + "GL_MATRIX_INDEX_ARRAY_TYPE_ARB"("0x8847") + "GL_MATRIX_INDEX_ARRAY_STRIDE_ARB"("0x8848") + "GL_MATRIX_INDEX_ARRAY_POINTER_ARB"("0x8849") + "glCurrentPaletteMatrixARB"(void, GLint("index")) + "glMatrixIndexubvARB"(void, GLint("size"), address("indices", "const GLubyte *")) + "glMatrixIndexusvARB"(void, GLint("size"), address("indices", "const GLushort *")) + "glMatrixIndexuivARB"(void, GLint("size"), address("indices", "const GLuint *")) + "glMatrixIndexPointerARB"( + void, + GLint("size"), + GLenum("type"), + GLsizei("stride"), + address("pointer", "const void *") + ) + } + file("Multisample", ARB, "GL_ARB_multisample") { + "GL_MULTISAMPLE_ARB"("0x809D") + "GL_SAMPLE_ALPHA_TO_COVERAGE_ARB"("0x809E") + "GL_SAMPLE_ALPHA_TO_ONE_ARB"("0x809F") + "GL_SAMPLE_COVERAGE_ARB"("0x80A0") + "GL_SAMPLE_BUFFERS_ARB"("0x80A8") + "GL_SAMPLES_ARB"("0x80A9") + "GL_SAMPLE_COVERAGE_VALUE_ARB"("0x80AA") + "GL_SAMPLE_COVERAGE_INVERT_ARB"("0x80AB") + "GL_MULTISAMPLE_BIT_ARB"("0x20000000") + "glSampleCoverageARB"(void, GLfloat("value"), GLboolean("invert")) + } + file("Multitexture", ARB, "GL_ARB_multitexture") { + "GL_TEXTURE0_ARB"("0x84C0") + "GL_TEXTURE1_ARB"("0x84C1") + "GL_TEXTURE2_ARB"("0x84C2") + "GL_TEXTURE3_ARB"("0x84C3") + "GL_TEXTURE4_ARB"("0x84C4") + "GL_TEXTURE5_ARB"("0x84C5") + "GL_TEXTURE6_ARB"("0x84C6") + "GL_TEXTURE7_ARB"("0x84C7") + "GL_TEXTURE8_ARB"("0x84C8") + "GL_TEXTURE9_ARB"("0x84C9") + "GL_TEXTURE10_ARB"("0x84CA") + "GL_TEXTURE11_ARB"("0x84CB") + "GL_TEXTURE12_ARB"("0x84CC") + "GL_TEXTURE13_ARB"("0x84CD") + "GL_TEXTURE14_ARB"("0x84CE") + "GL_TEXTURE15_ARB"("0x84CF") + "GL_TEXTURE16_ARB"("0x84D0") + "GL_TEXTURE17_ARB"("0x84D1") + "GL_TEXTURE18_ARB"("0x84D2") + "GL_TEXTURE19_ARB"("0x84D3") + "GL_TEXTURE20_ARB"("0x84D4") + "GL_TEXTURE21_ARB"("0x84D5") + "GL_TEXTURE22_ARB"("0x84D6") + "GL_TEXTURE23_ARB"("0x84D7") + "GL_TEXTURE24_ARB"("0x84D8") + "GL_TEXTURE25_ARB"("0x84D9") + "GL_TEXTURE26_ARB"("0x84DA") + "GL_TEXTURE27_ARB"("0x84DB") + "GL_TEXTURE28_ARB"("0x84DC") + "GL_TEXTURE29_ARB"("0x84DD") + "GL_TEXTURE30_ARB"("0x84DE") + "GL_TEXTURE31_ARB"("0x84DF") + "GL_ACTIVE_TEXTURE_ARB"("0x84E0") + "GL_CLIENT_ACTIVE_TEXTURE_ARB"("0x84E1") + "GL_MAX_TEXTURE_UNITS_ARB"("0x84E2") + "glActiveTextureARB"(void, GLenum("texture")) + "glClientActiveTextureARB"(void, GLenum("texture")) + "glMultiTexCoord1dARB"(void, GLenum("target"), GLdouble("s")) + "glMultiTexCoord1dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) + "glMultiTexCoord1fARB"(void, GLenum("target"), GLfloat("s")) + "glMultiTexCoord1fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) + "glMultiTexCoord1iARB"(void, GLenum("target"), GLint("s")) + "glMultiTexCoord1ivARB"(void, GLenum("target"), address("v", "const GLint *")) + "glMultiTexCoord1sARB"(void, GLenum("target"), GLshort("s")) + "glMultiTexCoord1svARB"(void, GLenum("target"), address("v", "const GLshort *")) + "glMultiTexCoord2dARB"(void, GLenum("target"), GLdouble("s"), GLdouble("t")) + "glMultiTexCoord2dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) + "glMultiTexCoord2fARB"(void, GLenum("target"), GLfloat("s"), GLfloat("t")) + "glMultiTexCoord2fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) + "glMultiTexCoord2iARB"(void, GLenum("target"), GLint("s"), GLint("t")) + "glMultiTexCoord2ivARB"(void, GLenum("target"), address("v", "const GLint *")) + "glMultiTexCoord2sARB"(void, GLenum("target"), GLshort("s"), GLshort("t")) + "glMultiTexCoord2svARB"(void, GLenum("target"), address("v", "const GLshort *")) + "glMultiTexCoord3dARB"(void, GLenum("target"), GLdouble("s"), GLdouble("t"), GLdouble("r")) + "glMultiTexCoord3dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) + "glMultiTexCoord3fARB"(void, GLenum("target"), GLfloat("s"), GLfloat("t"), GLfloat("r")) + "glMultiTexCoord3fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) + "glMultiTexCoord3iARB"(void, GLenum("target"), GLint("s"), GLint("t"), GLint("r")) + "glMultiTexCoord3ivARB"(void, GLenum("target"), address("v", "const GLint *")) + "glMultiTexCoord3sARB"(void, GLenum("target"), GLshort("s"), GLshort("t"), GLshort("r")) + "glMultiTexCoord3svARB"(void, GLenum("target"), address("v", "const GLshort *")) + "glMultiTexCoord4dARB"(void, GLenum("target"), GLdouble("s"), GLdouble("t"), GLdouble("r"), GLdouble("q")) + "glMultiTexCoord4dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) + "glMultiTexCoord4fARB"(void, GLenum("target"), GLfloat("s"), GLfloat("t"), GLfloat("r"), GLfloat("q")) + "glMultiTexCoord4fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) + "glMultiTexCoord4iARB"(void, GLenum("target"), GLint("s"), GLint("t"), GLint("r"), GLint("q")) + "glMultiTexCoord4ivARB"(void, GLenum("target"), address("v", "const GLint *")) + "glMultiTexCoord4sARB"(void, GLenum("target"), GLshort("s"), GLshort("t"), GLshort("r"), GLshort("q")) + "glMultiTexCoord4svARB"(void, GLenum("target"), address("v", "const GLshort *")) + } + file("OcclusionQuery", ARB, "GL_ARB_occlusion_query") { + "GL_QUERY_COUNTER_BITS_ARB"("0x8864") + "GL_CURRENT_QUERY_ARB"("0x8865") + "GL_QUERY_RESULT_ARB"("0x8866") + "GL_QUERY_RESULT_AVAILABLE_ARB"("0x8867") + "GL_SAMPLES_PASSED_ARB"("0x8914") + "glGenQueriesARB"(void, GLsizei("n"), address("ids", "GLuint *")) + "glDeleteQueriesARB"(void, GLsizei("n"), address("ids", "const GLuint *")) + "glIsQueryARB"(GLboolean, GLuint("id")) + "glBeginQueryARB"(void, GLenum("target"), GLuint("id")) + "glEndQueryARB"(void, GLenum("target")) + "glGetQueryivARB"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetQueryObjectivARB"(void, GLuint("id"), GLenum("pname"), address("params", "GLint *")) + "glGetQueryObjectuivARB"(void, GLuint("id"), GLenum("pname"), address("params", "GLuint *")) + } + file("ParallelShaderCompile", ARB, "GL_ARB_parallel_shader_compile") { + "GL_MAX_SHADER_COMPILER_THREADS_ARB"("0x91B0") + "GL_COMPLETION_STATUS_ARB"("0x91B1") + "glMaxShaderCompilerThreadsARB"(void, GLuint("count")) + } + file( + "PipelineStatisticsQuery", ARB, "GL_ARB_pipeline_statistics_query", + "GL_VERTICES_SUBMITTED_ARB" to "0x82EE", + "GL_PRIMITIVES_SUBMITTED_ARB" to "0x82EF", + "GL_VERTEX_SHADER_INVOCATIONS_ARB" to "0x82F0", + "GL_TESS_CONTROL_SHADER_PATCHES_ARB" to "0x82F1", + "GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB" to "0x82F2", + "GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED_ARB" to "0x82F3", + "GL_FRAGMENT_SHADER_INVOCATIONS_ARB" to "0x82F4", + "GL_COMPUTE_SHADER_INVOCATIONS_ARB" to "0x82F5", + "GL_CLIPPING_INPUT_PRIMITIVES_ARB" to "0x82F6", + "GL_CLIPPING_OUTPUT_PRIMITIVES_ARB" to "0x82F7" + ) + file( + "PixelBufferObject", ARB, "GL_ARB_pixel_buffer_object", + "GL_PIXEL_PACK_BUFFER_ARB" to "0x88EB", + "GL_PIXEL_UNPACK_BUFFER_ARB" to "0x88EC", + "GL_PIXEL_PACK_BUFFER_BINDING_ARB" to "0x88ED", + "GL_PIXEL_UNPACK_BUFFER_BINDING_ARB" to "0x88EF" + ) + file("PointParameters", ARB, "GL_ARB_point_parameters") { + "GL_POINT_SIZE_MIN_ARB"("0x8126") + "GL_POINT_SIZE_MAX_ARB"("0x8127") + "GL_POINT_FADE_THRESHOLD_SIZE_ARB"("0x8128") + "GL_POINT_DISTANCE_ATTENUATION_ARB"("0x8129") + "glPointParameterfARB"(void, GLenum("pname"), GLfloat("param")) + "glPointParameterfvARB"(void, GLenum("pname"), address("params", "const GLfloat *")) + } + file( + "PointSprite", ARB, "GL_ARB_point_sprite", + "GL_POINT_SPRITE_ARB" to "0x8861", + "GL_COORD_REPLACE_ARB" to "0x8862" + ) + file("Robustness", ARB, "GL_ARB_robustness") { + "GL_NO_RESET_NOTIFICATION_ARB"("0x8261") + "GL_RESET_NOTIFICATION_STRATEGY_ARB"("0x8256") + "GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB"("0x00000004") + "GL_UNKNOWN_CONTEXT_RESET_ARB"("0x8255") + "GL_LOSE_CONTEXT_ON_RESET_ARB"("0x8252") + "GL_INNOCENT_CONTEXT_RESET_ARB"("0x8254") + "GL_GUILTY_CONTEXT_RESET_ARB"("0x8253") + "glGetGraphicsResetStatusARB"(int) + "glGetnCompressedTexImageARB"(void, int("target"), int("lod"), int("bufSize"), address("img", "void*")) + "glGetnTexImageARB"( + void, + int("target"), + int("level"), + int("format"), + int("type"), + int("bufSize"), + address("img", "void*") + ) + "glGetnUniformdvARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLdouble*")) + "glGetnUniformfvARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLfloat*")) + "glGetnUniformivARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLint*")) + "glGetnUniformuivARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLuint*")) + "glReadnPixelsARB"( + void, + int("x"), + int("y"), + int("width"), + int("height"), + int("format"), + int("type"), + int("bufSize"), + address("data", "void*") + ) + } + file("SampleLocations", ARB, "GL_ARB_sample_locations") { + "GL_SAMPLE_LOCATION_SUBPIXEL_BITS_ARB"("0x933D") + "GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_ARB"("0x933E") + "GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_ARB"("0x933F") + "GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_ARB"("0x9340") + "GL_SAMPLE_LOCATION_ARB"("0x8E50") + "GL_PROGRAMMABLE_SAMPLE_LOCATION_ARB"("0x9341") + "GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_ARB"("0x9342") + "GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_ARB"("0x9343") + "glEvaluateDepthValuesARB"(void) + "glFramebufferSampleLocationsfvARB"( + void, + int("target"), + int("start"), + int("count"), + address("v", "const GLfloat *v") + ) + "glNamedFramebufferSampleLocationsfvARB"( + void, + int("framebuffer"), + int("start"), + int("count"), + address("v", "const GLfloat *v") + ) + } + file("SampleShading", ARB, "GL_ARB_sample_shading") { + "GL_SAMPLE_SHADING_ARB"("0x8C36") + "GL_MIN_SAMPLE_SHADING_VALUE_ARB"("0x8C37") + "glMinSampleShadingARB"(void, float("value")) + } + file("ShaderObjects", ARB, "GL_ARB_shader_objects") { + "GL_PROGRAM_OBJECT_ARB"("0x8B40") + "GL_SHADER_OBJECT_ARB"("0x8B48") + "GL_OBJECT_TYPE_ARB"("0x8B4E") + "GL_OBJECT_SUBTYPE_ARB"("0x8B4F") + "GL_FLOAT_VEC2_ARB"("0x8B50") + "GL_FLOAT_VEC3_ARB"("0x8B51") + "GL_FLOAT_VEC4_ARB"("0x8B52") + "GL_INT_VEC2_ARB"("0x8B53") + "GL_INT_VEC3_ARB"("0x8B54") + "GL_INT_VEC4_ARB"("0x8B55") + "GL_BOOL_ARB"("0x8B56") + "GL_BOOL_VEC2_ARB"("0x8B57") + "GL_BOOL_VEC3_ARB"("0x8B58") + "GL_BOOL_VEC4_ARB"("0x8B59") + "GL_FLOAT_MAT2_ARB"("0x8B5A") + "GL_FLOAT_MAT3_ARB"("0x8B5B") + "GL_FLOAT_MAT4_ARB"("0x8B5C") + "GL_SAMPLER_1D_ARB"("0x8B5D") + "GL_SAMPLER_2D_ARB"("0x8B5E") + "GL_SAMPLER_3D_ARB"("0x8B5F") + "GL_SAMPLER_CUBE_ARB"("0x8B60") + "GL_SAMPLER_1D_SHADOW_ARB"("0x8B61") + "GL_SAMPLER_2D_SHADOW_ARB"("0x8B62") + "GL_SAMPLER_2D_RECT_ARB"("0x8B63") + "GL_SAMPLER_2D_RECT_SHADOW_ARB"("0x8B64") + "GL_OBJECT_DELETE_STATUS_ARB"("0x8B80") + "GL_OBJECT_COMPILE_STATUS_ARB"("0x8B81") + "GL_OBJECT_LINK_STATUS_ARB"("0x8B82") + "GL_OBJECT_VALIDATE_STATUS_ARB"("0x8B83") + "GL_OBJECT_INFO_LOG_LENGTH_ARB"("0x8B84") + "GL_OBJECT_ATTACHED_OBJECTS_ARB"("0x8B85") + "GL_OBJECT_ACTIVE_UNIFORMS_ARB"("0x8B86") + "GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB"("0x8B87") + "GL_OBJECT_SHADER_SOURCE_LENGTH_ARB"("0x8B88") + "glDeleteObjectARB"(void, int("obj")) + "glGetHandleARB"(int, int("pname")) + "glDetachObjectARB"(void, int("containerObj"), int("attachedObj")) + "glCreateShaderObjectARB"(int, int("shaderType")) + "glShaderSourceARB"( + void, + int("shaderObj"), + int("count"), + address("string", "const GLcharARB**"), + address("length", "const GLint*") + ) + "glCompileShaderARB"(void, int("shaderObj")) + "glCreateProgramObjectARB"(int) + "glAttachObjectARB"(void, int("containerObj"), int("obj")) + "glLinkProgramARB"(void, int("programObj")) + "glUseProgramObjectARB"(void, int("programObj")) + "glValidateProgramARB"(void, int("programObj")) + "glUniform1fARB"(void, int("location"), float("v0")) + "glUniform2fARB"(void, int("location"), float("v0"), float("v1")) + "glUniform3fARB"(void, int("location"), float("v0"), float("v1"), float("v2")) + "glUniform4fARB"(void, int("location"), float("v0"), float("v1"), float("v2"), float("v3")) + "glUniform1iARB"(void, int("location"), int("v0")) + "glUniform2iARB"(void, int("location"), int("v0"), int("v1")) + "glUniform3iARB"(void, int("location"), int("v0"), int("v1"), int("v2")) + "glUniform4iARB"(void, int("location"), int("v0"), int("v1"), int("v2"), int("v3")) + "glUniform1fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) + "glUniform2fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) + "glUniform3fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) + "glUniform4fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) + "glUniform1ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) + "glUniform2ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) + "glUniform3ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) + "glUniform4ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) + "glUniformMatrix2fvARB"( + void, + int("location"), + int("count"), + boolean("transpose"), + address("value", "const GLfloat*") + ) + "glUniformMatrix3fvARB"( + void, + int("location"), + int("count"), + boolean("transpose"), + address("value", "const GLfloat*") + ) + "glUniformMatrix4fvARB"( + void, + int("location"), + int("count"), + boolean("transpose"), + address("value", "const GLfloat*") + ) + "glGetObjectParameterfvARB"(void, int("obj"), int("pname"), address("params", "GLfloat*")) + "glGetObjectParameterivARB"(void, int("obj"), int("pname"), address("params", "GLint*")) + "glGetInfoLogARB"( + void, + int("obj"), + int("maxLength"), + address("length", "GLsizei*"), + address("infoLog", "GLcharARB*") + ) + "glGetAttachedObjectsARB"( + void, + int("containerObj"), + int("maxCount"), + address("count", "GLsizei*"), + address("obj", "GLhandleARB*") + ) + "glGetUniformLocationARB"(int, int("programObj"), address("name", "const GLcharARB*")) + "glGetActiveUniformARB"( + void, + int("programObj"), + int("index"), + int("maxLength"), + address("length", "GLsizei*"), + address("size", "GLint*"), + address("type", "GLenum*"), + address("name", "GLcharARB*") + ) + "glGetUniformfvARB"(void, int("programObj"), int("location"), address("params", "GLfloat*")) + "glGetUniformivARB"(void, int("programObj"), int("location"), address("params", "GLint*")) + "glGetShaderSourceARB"( + void, + int("obj"), + int("maxLength"), + address("length", "GLsizei*"), + address("source", "GLcharARB*") + ) + } + file("ShadingLanguageInclude", ARB, "GL_ARB_shading_language_include") { + "GL_SHADER_INCLUDE_ARB"("0x8DAE") + "GL_NAMED_STRING_LENGTH_ARB"("0x8DE9") + "GL_NAMED_STRING_TYPE_ARB"("0x8DEA") + "glNamedStringARB"( + void, + int("type"), + int("nameLen"), + address("name", "const GLchar*"), + int("stringLen"), + address("string", "const GLchar*") + ) + "glDeleteNamedStringARB"(void, int("nameLen"), address("name", "const GLchar*")) + "glCompileShaderIncludeARB"( + void, + int("shader"), + int("count"), + address("path", "const GLchar *const*"), + address("length", "const GLint*") + ) + "glIsNamedStringARB"(boolean, int("nameLen"), address("name", "const GLchar*")) + "glGetNamedStringARB"( + void, + int("nameLen"), + address("name", "const GLchar*"), + int("bufSize"), + address("stringLen", "GLint*"), + address("string", "GLchar*") + ) + "glGetNamedStringivARB"( + void, + int("nameLen"), + address("name", "const GLchar*"), + int("pname"), + address("params", "GLint*") + ) + } + file( + "Shadow", ARB, "GL_ARB_shadow", + "GL_TEXTURE_COMPARE_MODE_ARB" to "0x884C", + "GL_TEXTURE_COMPARE_FUNC_ARB" to "0x884D", + "GL_COMPARE_R_TO_TEXTURE_ARB" to "0x884E" + ) + file( + "ShadowAmbient", ARB, "GL_ARB_shadow_ambient", + "GL_TEXTURE_COMPARE_FAIL_VALUE_ARB" to "0x80BF" + ) + file("SparseBuffer", ARB, "GL_ARB_sparse_buffer") { + "GL_SPARSE_STORAGE_BIT_ARB"("0x0400") + "GL_SPARSE_BUFFER_PAGE_SIZE_ARB"("0x82F8") + "glBufferPageCommitmentARB"(void, int("target"), long("offset"), long("size"), boolean("commit")) + "glNamedBufferPageCommitmentEXT"(void, int("buffer"), long("offset"), long("size"), boolean("commit")) + "glNamedBufferPageCommitmentARB"(void, int("buffer"), long("offset"), long("size"), boolean("commit")) + } + file("SparseTexture", ARB, "GL_ARB_sparse_texture") { + "GL_TEXTURE_SPARSE_ARB"("0x91A6") + "GL_VIRTUAL_PAGE_SIZE_INDEX_ARB"("0x91A7") + "GL_NUM_SPARSE_LEVELS_ARB"("0x91AA") + "GL_NUM_VIRTUAL_PAGE_SIZES_ARB"("0x91A8") + "GL_VIRTUAL_PAGE_SIZE_X_ARB"("0x9195") + "GL_VIRTUAL_PAGE_SIZE_Y_ARB"("0x9196") + "GL_VIRTUAL_PAGE_SIZE_Z_ARB"("0x9197") + "GL_MAX_SPARSE_TEXTURE_SIZE_ARB"("0x9198") + "GL_MAX_SPARSE_3D_TEXTURE_SIZE_ARB"("0x9199") + "GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_ARB"("0x919A") + "GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_ARB"("0x91A9") + "glTexPageCommitmentARB"( + void, + int("target"), + int("level"), + int("xoffset"), + int("yoffset"), + int("zoffset"), + int("width"), + int("height"), + int("depth"), + boolean("commit") + ) + } + file( + "TextureBorderClamp", ARB, "GL_ARB_texture_border_clamp", + "GL_CLAMP_TO_BORDER_ARB" to "0x812D" + ) + file("TextureBufferObject", ARB, "GL_ARB_texture_buffer_object") { + "GL_TEXTURE_BUFFER_ARB"("0x8C2A") + "GL_MAX_TEXTURE_BUFFER_SIZE_ARB"("0x8C2B") + "GL_TEXTURE_BINDING_BUFFER_ARB"("0x8C2C") + "GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB"("0x8C2D") + "GL_TEXTURE_BUFFER_FORMAT_ARB"("0x8C2E") + "glTexBufferARB"(void, int("target"), int("internalFormat"), int("buffer")) + } + file("TextureCompression", ARB, "GL_ARB_texture_compression") { + "GL_COMPRESSED_ALPHA_ARB"("0x84E9") + "GL_COMPRESSED_LUMINANCE_ARB"("0x84EA") + "GL_COMPRESSED_LUMINANCE_ALPHA_ARB"("0x84EB") + "GL_COMPRESSED_INTENSITY_ARB"("0x84EC") + "GL_COMPRESSED_RGB_ARB"("0x84ED") + "GL_COMPRESSED_RGBA_ARB"("0x84EE") + "GL_TEXTURE_COMPRESSION_HINT_ARB"("0x84EF") + "GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB"("0x86A0") + "GL_TEXTURE_COMPRESSED_ARB"("0x86A1") + "GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB"("0x86A2") + "GL_COMPRESSED_TEXTURE_FORMATS_ARB"("0x86A3") + "glCompressedTexImage3DARB"( + void, + int("target"), + int("level"), + int("internalFormat"), + int("width"), + int("height"), + int("depth"), + int("border"), + int("imageSize"), + address("data", "const void*") + ) + "glCompressedTexImage2DARB"( + void, + int("target"), + int("level"), + int("internalFormat"), + int("width"), + int("height"), + int("border"), + int("imageSize"), + address("data", "const void*") + ) + "glCompressedTexImage1DARB"( + void, + int("target"), + int("level"), + int("internalFormat"), + int("width"), + int("border"), + int("imageSize"), + address("data", "const void*") + ) + "glCompressedTexSubImage3DARB"( + void, + int("target"), + int("level"), + int("xoffset"), + int("yoffset"), + int("zoffset"), + int("width"), + int("height"), + int("depth"), + int("format"), + int("imageSize"), + address("data", "const void*") + ) + "glCompressedTexSubImage2DARB"( + void, + int("target"), + int("level"), + int("xoffset"), + int("yoffset"), + int("width"), + int("height"), + int("format"), + int("imageSize"), + address("data", "const void*") + ) + "glCompressedTexSubImage1DARB"( + void, + int("target"), + int("level"), + int("xoffset"), + int("width"), + int("format"), + int("imageSize"), + address("data", "const void*") + ) + "glGetCompressedTexImageARB"(void, int("target"), int("level"), address("img", "void*")) + } + file( + "TextureCompressionBptc", ARB, "GL_ARB_texture_compression_bptc", + "GL_COMPRESSED_RGBA_BPTC_UNORM_ARB" to "0x8E8C", + "GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB" to "0x8E8D", + "GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB" to "0x8E8E", + "GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB" to "0x8E8F" + ) + file( + "TextureCubeMap", ARB, "GL_ARB_texture_cube_map", + "GL_NORMAL_MAP_ARB" to "0x8511", + "GL_REFLECTION_MAP_ARB" to "0x8512", + "GL_TEXTURE_CUBE_MAP_ARB" to "0x8513", + "GL_TEXTURE_BINDING_CUBE_MAP_ARB" to "0x8514", + "GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB" to "0x8515", + "GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB" to "0x8516", + "GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB" to "0x8517", + "GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB" to "0x8518", + "GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB" to "0x8519", + "GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB" to "0x851A", + "GL_PROXY_TEXTURE_CUBE_MAP_ARB" to "0x851B", + "GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB" to "0x851C" + ) + file( + "TextureCubeMapArray", ARB, "GL_ARB_texture_cube_map_array", + "GL_TEXTURE_CUBE_MAP_ARRAY_ARB" to "0x9009", + "GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB" to "0x900A", + "GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB" to "0x900B", + "GL_SAMPLER_CUBE_MAP_ARRAY_ARB" to "0x900C", + "GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB" to "0x900D", + "GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB" to "0x900E", + "GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB" to "0x900F" + ) + file( + "TextureEnvCombine", ARB, "GL_ARB_texture_env_combine", + "GL_COMBINE_ARB" to "0x8570", + "GL_COMBINE_RGB_ARB" to "0x8571", + "GL_COMBINE_ALPHA_ARB" to "0x8572", + "GL_SOURCE0_RGB_ARB" to "0x8580", + "GL_SOURCE1_RGB_ARB" to "0x8581", + "GL_SOURCE2_RGB_ARB" to "0x8582", + "GL_SOURCE0_ALPHA_ARB" to "0x8588", + "GL_SOURCE1_ALPHA_ARB" to "0x8589", + "GL_SOURCE2_ALPHA_ARB" to "0x858A", + "GL_OPERAND0_RGB_ARB" to "0x8590", + "GL_OPERAND1_RGB_ARB" to "0x8591", + "GL_OPERAND2_RGB_ARB" to "0x8592", + "GL_OPERAND0_ALPHA_ARB" to "0x8598", + "GL_OPERAND1_ALPHA_ARB" to "0x8599", + "GL_OPERAND2_ALPHA_ARB" to "0x859A", + "GL_RGB_SCALE_ARB" to "0x8573", + "GL_ADD_SIGNED_ARB" to "0x8574", + "GL_INTERPOLATE_ARB" to "0x8575", + "GL_SUBTRACT_ARB" to "0x84E7", + "GL_CONSTANT_ARB" to "0x8576", + "GL_PRIMARY_COLOR_ARB" to "0x8577", + "GL_PREVIOUS_ARB" to "0x8578" + ) + file( + "TextureEnvDot3", ARB, "GL_ARB_texture_env_dot3", + "GL_DOT3_RGB_ARB" to "0x86AE", + "GL_DOT3_RGBA_ARB" to "0x86AF" + ) + file( + "TextureFilterMinmax", ARB, "GL_ARB_texture_filter_minmax", + "GL_TEXTURE_REDUCTION_MODE_ARB" to "0x9366", + "GL_WEIGHTED_AVERAGE_ARB" to "0x9367" + ) + file( + "TextureFloat", ARB, "GL_ARB_texture_float", + "GL_TEXTURE_RED_TYPE_ARB" to "0x8C10", + "GL_TEXTURE_GREEN_TYPE_ARB" to "0x8C11", + "GL_TEXTURE_BLUE_TYPE_ARB" to "0x8C12", + "GL_TEXTURE_ALPHA_TYPE_ARB" to "0x8C13", + "GL_TEXTURE_LUMINANCE_TYPE_ARB" to "0x8C14", + "GL_TEXTURE_INTENSITY_TYPE_ARB" to "0x8C15", + "GL_TEXTURE_DEPTH_TYPE_ARB" to "0x8C16", + "GL_UNSIGNED_NORMALIZED_ARB" to "0x8C17", + "GL_RGBA32F_ARB" to "0x8814", + "GL_RGB32F_ARB" to "0x8815", + "GL_ALPHA32F_ARB" to "0x8816", + "GL_INTENSITY32F_ARB" to "0x8817", + "GL_LUMINANCE32F_ARB" to "0x8818", + "GL_LUMINANCE_ALPHA32F_ARB" to "0x8819", + "GL_RGBA16F_ARB" to "0x881A", + "GL_RGB16F_ARB" to "0x881B", + "GL_ALPHA16F_ARB" to "0x881C", + "GL_INTENSITY16F_ARB" to "0x881D", + "GL_LUMINANCE16F_ARB" to "0x881E", + "GL_LUMINANCE_ALPHA16F_ARB" to "0x881F" + ) + file( + "TextureGather", ARB, "GL_ARB_texture_gather", + "GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB" to "0x8E5E", + "GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB" to "0x8E5F", + "GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB" to "0x8F9F" + ) + file( + "TextureMirroredRepeat", ARB, "GL_ARB_texture_mirrored_repeat", + "GL_MIRRORED_REPEAT_ARB" to "0x8370" + ) + file( + "TextureRectangle", ARB, "GL_ARB_texture_rectangle", + "GL_TEXTURE_RECTANGLE_ARB" to "0x84F5", + "GL_TEXTURE_BINDING_RECTANGLE_ARB" to "0x84F6", + "GL_PROXY_TEXTURE_RECTANGLE_ARB" to "0x84F7", + "GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB" to "0x84F8" + ) + file( + "TransformFeedbackOverflowQuery", ARB, "GL_ARB_transform_feedback_overflow_query", + "GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB" to "0x82EC", + "GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB" to "0x82ED" + ) + file("TransposeMatrix", ARB, "GL_ARB_transpose_matrix") { + "GL_TRANSPOSE_MODELVIEW_MATRIX_ARB"("0x84E3") + "GL_TRANSPOSE_PROJECTION_MATRIX_ARB"("0x84E4") + "GL_TRANSPOSE_TEXTURE_MATRIX_ARB"("0x84E5") + "GL_TRANSPOSE_COLOR_MATRIX_ARB"("0x84E6") + "glLoadTransposeMatrixfARB"(void, address("m", "const GLfloat*")) + "glLoadTransposeMatrixdARB"(void, address("m", "const GLdouble*")) + "glMultTransposeMatrixfARB"(void, address("m", "const GLfloat*")) + "glMultTransposeMatrixdARB"(void, address("m", "const GLdouble*")) + } + file("VertexBlend", ARB, "GL_ARB_vertex_blend") { + "GL_MAX_VERTEX_UNITS_ARB"("0x86A4") + "GL_ACTIVE_VERTEX_UNITS_ARB"("0x86A5") + "GL_WEIGHT_SUM_UNITY_ARB"("0x86A6") + "GL_VERTEX_BLEND_ARB"("0x86A7") + "GL_CURRENT_WEIGHT_ARB"("0x86A8") + "GL_WEIGHT_ARRAY_TYPE_ARB"("0x86A9") + "GL_WEIGHT_ARRAY_STRIDE_ARB"("0x86AA") + "GL_WEIGHT_ARRAY_SIZE_ARB"("0x86AB") + "GL_WEIGHT_ARRAY_POINTER_ARB"("0x86AC") + "GL_WEIGHT_ARRAY_ARB"("0x86AD") + "GL_MODELVIEW0_ARB"("0x1700") + "GL_MODELVIEW1_ARB"("0x850A") + "GL_MODELVIEW2_ARB"("0x8722") + "GL_MODELVIEW3_ARB"("0x8723") + "GL_MODELVIEW4_ARB"("0x8724") + "GL_MODELVIEW5_ARB"("0x8725") + "GL_MODELVIEW6_ARB"("0x8726") + "GL_MODELVIEW7_ARB"("0x8727") + "GL_MODELVIEW8_ARB"("0x8728") + "GL_MODELVIEW9_ARB"("0x8729") + "GL_MODELVIEW10_ARB"("0x872A") + "GL_MODELVIEW11_ARB"("0x872B") + "GL_MODELVIEW12_ARB"("0x872C") + "GL_MODELVIEW13_ARB"("0x872D") + "GL_MODELVIEW14_ARB"("0x872E") + "GL_MODELVIEW15_ARB"("0x872F") + "GL_MODELVIEW16_ARB"("0x8730") + "GL_MODELVIEW17_ARB"("0x8731") + "GL_MODELVIEW18_ARB"("0x8732") + "GL_MODELVIEW19_ARB"("0x8733") + "GL_MODELVIEW20_ARB"("0x8734") + "GL_MODELVIEW21_ARB"("0x8735") + "GL_MODELVIEW22_ARB"("0x8736") + "GL_MODELVIEW23_ARB"("0x8737") + "GL_MODELVIEW24_ARB"("0x8738") + "GL_MODELVIEW25_ARB"("0x8739") + "GL_MODELVIEW26_ARB"("0x873A") + "GL_MODELVIEW27_ARB"("0x873B") + "GL_MODELVIEW28_ARB"("0x873C") + "GL_MODELVIEW29_ARB"("0x873D") + "GL_MODELVIEW30_ARB"("0x873E") + "GL_MODELVIEW31_ARB"("0x873F") + "glWeightbvARB"(void, GLint("size"), address("weights", "const GLbyte*")) + "glWeightsvARB"(void, GLint("size"), address("weights", "const GLshort*")) + "glWeightivARB"(void, GLint("size"), address("weights", "const GLint*")) + "glWeightfvARB"(void, GLint("size"), address("weights", "const GLfloat*")) + "glWeightdvARB"(void, GLint("size"), address("weights", "const GLdouble*")) + "glWeightubvARB"(void, GLint("size"), address("weights", "const GLubyte*")) + "glWeightusvARB"(void, GLint("size"), address("weights", "const GLushort*")) + "glWeightuivARB"(void, GLint("size"), address("weights", "const GLuint*")) + "glWeightPointerARB"(void, GLint("size"), GLenum("type"), GLsizei("stride"), address("pointer", "const void*")) + "glVertexBlendARB"(void, GLint("count")) + } + file("VertexBufferObject", ARB, "GL_ARB_vertex_buffer_object") { + "GL_BUFFER_SIZE_ARB"("0x8764") + "GL_BUFFER_USAGE_ARB"("0x8765") + "GL_ARRAY_BUFFER_ARB"("0x8892") + "GL_ELEMENT_ARRAY_BUFFER_ARB"("0x8893") + "GL_ARRAY_BUFFER_BINDING_ARB"("0x8894") + "GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB"("0x8895") + "GL_VERTEX_ARRAY_BUFFER_BINDING_ARB"("0x8896") + "GL_NORMAL_ARRAY_BUFFER_BINDING_ARB"("0x8897") + "GL_COLOR_ARRAY_BUFFER_BINDING_ARB"("0x8898") + "GL_INDEX_ARRAY_BUFFER_BINDING_ARB"("0x8899") + "GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB"("0x889A") + "GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB"("0x889B") + "GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB"("0x889C") + "GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB"("0x889D") + "GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB"("0x889E") + "GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB"("0x889F") + "GL_READ_ONLY_ARB"("0x88B8") + "GL_WRITE_ONLY_ARB"("0x88B9") + "GL_READ_WRITE_ARB"("0x88BA") + "GL_BUFFER_ACCESS_ARB"("0x88BB") + "GL_BUFFER_MAPPED_ARB"("0x88BC") + "GL_BUFFER_MAP_POINTER_ARB"("0x88BD") + "GL_STREAM_DRAW_ARB"("0x88E0") + "GL_STREAM_READ_ARB"("0x88E1") + "GL_STREAM_COPY_ARB"("0x88E2") + "GL_STATIC_DRAW_ARB"("0x88E4") + "GL_STATIC_READ_ARB"("0x88E5") + "GL_STATIC_COPY_ARB"("0x88E6") + "GL_DYNAMIC_DRAW_ARB"("0x88E8") + "GL_DYNAMIC_READ_ARB"("0x88E9") + "GL_DYNAMIC_COPY_ARB"("0x88EA") + "glBindBufferARB"(void, GLenum("target"), GLuint("buffer")) + "glDeleteBuffersARB"(void, GLsizei("n"), address("buffers", "const GLuint*")) + "glGenBuffersARB"(void, GLsizei("n"), address("buffers", "GLuint*")) + "glIsBufferARB"(boolean, GLuint("buffer")) + "glBufferDataARB"( + void, + GLenum("target"), + GLsizeiptrARB("size"), + address("data", "const void*"), + GLenum("usage") + ) + "glBufferSubDataARB"( + void, + GLenum("target"), + GLintptrARB("offset"), + GLsizeiptrARB("size"), + address("data", "const void*") + ) + "glGetBufferSubDataARB"( + void, + GLenum("target"), + GLintptrARB("offset"), + GLsizeiptrARB("size"), + address("data", "void*") + ) + "glMapBufferARB"(address, GLenum("target"), GLenum("access"), nativeType = "void*") + "glUnmapBufferARB"(boolean, GLenum("target")) + "glGetBufferParameterivARB"(void, GLenum("target"), GLenum("pname"), address("params", "GLint*")) + "glGetBufferPointervARB"(void, GLenum("target"), GLenum("pname"), address("params", "void**")) + } + file("VertexProgram", ARB, "GL_ARB_vertex_program") { + "GL_COLOR_SUM_ARB"("0x8458") + "GL_VERTEX_PROGRAM_ARB"("0x8620") + "GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB"("0x8622") + "GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB"("0x8623") + "GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB"("0x8624") + "GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB"("0x8625") + "GL_CURRENT_VERTEX_ATTRIB_ARB"("0x8626") + "GL_VERTEX_PROGRAM_POINT_SIZE_ARB"("0x8642") + "GL_VERTEX_PROGRAM_TWO_SIDE_ARB"("0x8643") + "GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB"("0x8645") + "GL_MAX_VERTEX_ATTRIBS_ARB"("0x8869") + "GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB"("0x886A") + "GL_PROGRAM_ADDRESS_REGISTERS_ARB"("0x88B0") + "GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB"("0x88B1") + "GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB"("0x88B2") + "GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB"("0x88B3") + "glVertexAttrib1dARB"(void, GLuint("index"), GLdouble("x")) + "glVertexAttrib1dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttrib1fARB"(void, GLuint("index"), GLfloat("x")) + "glVertexAttrib1fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) + "glVertexAttrib1sARB"(void, GLuint("index"), GLshort("x")) + "glVertexAttrib1svARB"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttrib2dARB"(void, GLuint("index"), GLdouble("x"), GLdouble("y")) + "glVertexAttrib2dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttrib2fARB"(void, GLuint("index"), GLfloat("x"), GLfloat("y")) + "glVertexAttrib2fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) + "glVertexAttrib2sARB"(void, GLuint("index"), GLshort("x"), GLshort("y")) + "glVertexAttrib2svARB"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttrib3dARB"(void, GLuint("index"), GLdouble("x"), GLdouble("y"), GLdouble("z")) + "glVertexAttrib3dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttrib3fARB"(void, GLuint("index"), GLfloat("x"), GLfloat("y"), GLfloat("z")) + "glVertexAttrib3fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) + "glVertexAttrib3sARB"(void, GLuint("index"), GLshort("x"), GLshort("y"), GLshort("z")) + "glVertexAttrib3svARB"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttrib4NbvARB"(void, GLuint("index"), address("v", "const GLbyte *")) + "glVertexAttrib4NivARB"(void, GLuint("index"), address("v", "const GLint *")) + "glVertexAttrib4NsvARB"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttrib4NubARB"(void, GLuint("index"), GLubyte("x"), GLubyte("y"), GLubyte("z"), GLubyte("w")) + "glVertexAttrib4NubvARB"(void, GLuint("index"), address("v", "const GLubyte *")) + "glVertexAttrib4NuivARB"(void, GLuint("index"), address("v", "const GLuint *")) + "glVertexAttrib4NusvARB"(void, GLuint("index"), address("v", "const GLushort *")) + "glVertexAttrib4bvARB"(void, GLuint("index"), address("v", "const GLbyte *")) + "glVertexAttrib4dARB"(void, GLuint("index"), GLdouble("x"), GLdouble("y"), GLdouble("z"), GLdouble("w")) + "glVertexAttrib4dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttrib4fARB"(void, GLuint("index"), GLfloat("x"), GLfloat("y"), GLfloat("z"), GLfloat("w")) + "glVertexAttrib4fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) + "glVertexAttrib4ivARB"(void, GLuint("index"), address("v", "const GLint *")) + "glVertexAttrib4sARB"(void, GLuint("index"), GLshort("x"), GLshort("y"), GLshort("z"), GLshort("w")) + "glVertexAttrib4svARB"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttrib4ubvARB"(void, GLuint("index"), address("v", "const GLubyte *")) + "glVertexAttrib4uivARB"(void, GLuint("index"), address("v", "const GLuint *")) + "glVertexAttrib4usvARB"(void, GLuint("index"), address("v", "const GLushort *")) + "glVertexAttribPointerARB"( + void, + GLuint("index"), + GLint("size"), + GLenum("type"), + GLboolean("normalized"), + GLsizei("stride"), + address("pointer", "const void *") + ) + "glEnableVertexAttribArrayARB"(void, GLuint("index")) + "glDisableVertexAttribArrayARB"(void, GLuint("index")) + "glGetVertexAttribdvARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLdouble *")) + "glGetVertexAttribfvARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLfloat *")) + "glGetVertexAttribivARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLint *")) + "glGetVertexAttribPointervARB"(void, GLuint("index"), GLenum("pname"), address("pointer", "void **")) + } + file("VertexShader", ARB, "GL_ARB_vertex_shader") { + "GL_VERTEX_SHADER_ARB"("0x8B31") + "GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB"("0x8B4A") + "GL_MAX_VARYING_FLOATS_ARB"("0x8B4B") + "GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB"("0x8B4C") + "GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB"("0x8B4D") + "GL_OBJECT_ACTIVE_ATTRIBUTES_ARB"("0x8B89") + "GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB"("0x8B8A") + "glBindAttribLocationARB"( + void, + GLhandleARB("programObj"), + GLuint("index"), + address("name", "const GLcharARB *") + ) + "glGetActiveAttribARB"( + void, + GLhandleARB("programObj"), + GLuint("index"), + GLsizei("maxLength"), + address("length", "GLsizei *"), + address("size", "GLint *"), + address("type", "GLenum *"), + address("name", "GLcharARB *") + ) + "glGetAttribLocationARB"(GLint, GLhandleARB("programObj"), address("name", "const GLcharARB *")) + } + file("ViewportArray", ARB, "GL_ARB_viewport_array") { + "glDepthRangeArraydvNV"(void, GLuint("first"), GLsizei("count"), address("v", "const GLdouble *")) + "glDepthRangeIndexeddNV"(void, GLuint("index"), GLdouble("n"), GLdouble("f")) + } + file("WindowPos", ARB, "GL_ARB_window_pos") { + "glWindowPos2dARB"(void, GLdouble("x"), GLdouble("y")) + "glWindowPos2dvARB"(void, address("v", "const GLdouble *")) + "glWindowPos2fARB"(void, GLfloat("x"), GLfloat("y")) + "glWindowPos2fvARB"(void, address("v", "const GLfloat *")) + "glWindowPos2iARB"(void, GLint("x"), GLint("y")) + "glWindowPos2ivARB"(void, address("v", "const GLint *")) + "glWindowPos2sARB"(void, GLshort("x"), GLshort("y")) + "glWindowPos2svARB"(void, address("v", "const GLshort *")) + "glWindowPos3dARB"(void, GLdouble("x"), GLdouble("y"), GLdouble("z")) + "glWindowPos3dvARB"(void, address("v", "const GLdouble *")) + "glWindowPos3fARB"(void, GLfloat("x"), GLfloat("y"), GLfloat("z")) + "glWindowPos3fvARB"(void, address("v", "const GLfloat *")) + "glWindowPos3iARB"(void, GLint("x"), GLint("y"), GLint("z")) + "glWindowPos3ivARB"(void, address("v", "const GLint *")) + "glWindowPos3sARB"(void, GLshort("x"), GLshort("y"), GLshort("z")) + "glWindowPos3svARB"(void, address("v", "const GLshort *")) + } +} diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLNV.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLNV.kt new file mode 100644 index 00000000..9d8f62a6 --- /dev/null +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLNV.kt @@ -0,0 +1,1631 @@ +/* + * MIT License + * + * Copyright (c) 2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +package overrungl.opengl + +import overrungl.opengl.OpenGLExt.NV +import overrungl.opengl.OpenGLExt.NVX + +/** + * @author squid233 + * @since 0.1.0 + */ +fun nv() { + file("ConditionalRender", NVX, "GL_NVX_conditional_render") { + "glBeginConditionalRenderNVX"(void, GLuint("id")) + "glEndConditionalRenderNVX"(void) + } + file( + "GpuMemoryInfo", NVX, "GL_NVX_gpu_memory_info", + "GL_GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX" to "0x9047", + "GL_GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX" to "0x9048", + "GL_GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX" to "0x9049", + "GL_GPU_MEMORY_INFO_EVICTION_COUNT_NVX" to "0x904A", + "GL_GPU_MEMORY_INFO_EVICTED_MEMORY_NVX" to "0x904B" + ) + file("GpuMulticast2", NVX, "GL_NVX_gpu_multicast2") { + "GL_UPLOAD_GPU_MASK_NVX"("0x954A") + "glUploadGpuMaskNVX"(void, GLbitfield("mask")) + "glMulticastViewportArrayvNVX"( + void, + GLuint("gpu"), + GLuint("first"), + GLsizei("count"), + address("v", "const GLfloat *") + ) + "glMulticastViewportPositionWScaleNVX"( + void, + GLuint("gpu"), + GLuint("index"), + GLfloat("xcoeff"), + GLfloat("ycoeff") + ) + "glMulticastScissorArrayvNVX"( + void, + GLuint("gpu"), + GLuint("first"), + GLsizei("count"), + address("v", "const GLint *") + ) + "glAsyncCopyBufferSubDataNVX"( + GLuint, + GLsizei("waitSemaphoreCount"), + address("waitSemaphoreArray", "const GLuint *"), + address("fenceValueArray", "const GLuint64 *"), + GLuint("readGpu"), + GLbitfield("writeGpuMask"), + GLuint("readBuffer"), + GLuint("writeBuffer"), + GLintptr("readOffset"), + GLintptr("writeOffset"), + GLsizeiptr("size"), + GLsizei("signalSemaphoreCount"), + address("signalSemaphoreArray", "const GLuint *"), + address("signalValueArray", "const GLuint64 *") + ) + "glAsyncCopyImageSubDataNVX"( + GLuint, + GLsizei("waitSemaphoreCount"), + address("waitSemaphoreArray", "const GLuint *"), + address("waitValueArray", "const GLuint64 *"), + GLuint("srcGpu"), + GLbitfield("dstGpuMask"), + GLuint("srcName"), + GLenum("srcTarget"), + GLint("srcLevel"), + GLint("srcX"), + GLint("srcY"), + GLint("srcZ"), + GLuint("dstName"), + GLenum("dstTarget"), + GLint("dstLevel"), + GLint("dstX"), + GLint("dstY"), + GLint("dstZ"), + GLsizei("srcWidth"), + GLsizei("srcHeight"), + GLsizei("srcDepth"), + GLsizei("signalSemaphoreCount"), + address("signalSemaphoreArray", "const GLuint *"), + address("signalValueArray", "const GLuint64 *") + ) + } + file("LinkedGpuMulticast", NVX, "GL_NVX_linked_gpu_multicast") { + "GL_LGPU_SEPARATE_STORAGE_BIT_NVX"("0x0800") + "GL_MAX_LGPU_GPUS_NVX"("0x92BA") + "glLGPUNamedBufferSubDataNVX"( + void, + GLbitfield("gpuMask"), + GLuint("buffer"), + GLintptr("offset"), + GLsizeiptr("size"), + address("data", "const void *") + ) + "glLGPUCopyImageSubDataNVX"( + void, + GLuint("sourceGpu"), + GLbitfield("destinationGpuMask"), + GLuint("srcName"), + GLenum("srcTarget"), + GLint("srcLevel"), + GLint("srcX"), + GLint("srxY"), + GLint("srcZ"), + GLuint("dstName"), + GLenum("dstTarget"), + GLint("dstLevel"), + GLint("dstX"), + GLint("dstY"), + GLint("dstZ"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth") + ) + "glLGPUInterlockNVX"(void) + } + file("ProgressFence", NVX, "GL_NVX_progress_fence") { + "glCreateProgressFenceNVX"(void) + "glSignalSemaphoreui64NVX"( + void, + GLuint("signalGpu"), + GLsizei("fenceObjectCount"), + address("semaphoreArray", "const GLuint *"), + address("fenceValueArray", "const GLuint64 *") + ) + "glWaitSemaphoreui64NVX"( + void, + GLuint("waitGpu"), + GLsizei("fenceObjectCount"), + address("semaphoreArray", "const GLuint *"), + address("fenceValueArray", "const GLuint64 *") + ) + "glClientWaitSemaphoreui64NVX"( + void, + GLsizei("fenceObjectCount"), + address("semaphoreArray", "const GLuint *"), + address("fenceValueArray", "const GLuint64 *") + ) + } + file("AlphaToCoverageDitherControl", NV, "GL_NV_alpha_to_coverage_dither_control") { + "GL_ALPHA_TO_COVERAGE_DITHER_DEFAULT_NV"("0x934D") + "GL_ALPHA_TO_COVERAGE_DITHER_ENABLE_NV"("0x934E") + "GL_ALPHA_TO_COVERAGE_DITHER_DISABLE_NV"("0x934F") + "GL_ALPHA_TO_COVERAGE_DITHER_MODE_NV"("0x92BF") + "glAlphaToCoverageDitherControlNV"(void, GLenum("mode")) + } + file("BindlessMultiDrawIndirect", NV, "GL_NV_bindless_multi_draw_indirect") { + "glMultiDrawArraysIndirectBindlessNV"( + void, + GLenum("mode"), + address("indirect", "const void *"), + GLsizei("drawCount"), + GLsizei("stride"), + GLint("vertexBufferCount") + ) + "glMultiDrawElementsIndirectBindlessNV"( + void, + GLenum("mode"), + GLenum("type"), + address("indirect", "const void *"), + GLsizei("drawCount"), + GLsizei("stride"), + GLint("vertexBufferCount") + ) + } + file("BindlessMultiDrawIndirectCount", NV, "GL_NV_bindless_multi_draw_indirect_count") { + "glMultiDrawArraysIndirectBindlessCountNV"( + void, + GLenum("mode"), + address("indirect", "const void *"), + GLsizei("drawCount"), + GLsizei("maxDrawCount"), + GLsizei("stride"), + GLint("vertexBufferCount") + ) + "glMultiDrawElementsIndirectBindlessCountNV"( + void, + GLenum("mode"), + GLenum("type"), + address("indirect", "const void *"), + GLsizei("drawCount"), + GLsizei("maxDrawCount"), + GLsizei("stride"), + GLint("vertexBufferCount") + ) + } + file("BindlessTexture", NV, "GL_NV_bindless_texture") { + "glGetTextureHandleNV"(GLuint64, GLuint("texture")) + "glGetTextureSamplerHandleNV"(GLuint64, GLuint("texture"), GLuint("sampler")) + "glMakeTextureHandleResidentNV"(void, GLuint64("handle")) + "glMakeTextureHandleNonResidentNV"(void, GLuint64("handle")) + "glGetImageHandleNV"( + GLuint64, + GLuint("texture"), + GLint("level"), + GLboolean("layered"), + GLint("layer"), + GLenum("format") + ) + "glMakeImageHandleResidentNV"(void, GLuint64("handle"), GLenum("access")) + "glMakeImageHandleNonResidentNV"(void, GLuint64("handle")) + "glUniformHandleui64NV"(void, GLint("location"), GLuint64("value")) + "glUniformHandleui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) + "glProgramUniformHandleui64NV"(void, GLuint("program"), GLint("location"), GLuint64("value")) + "glProgramUniformHandleui64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("values", "const GLuint64 *") + ) + "glIsTextureHandleResidentNV"(GLboolean, GLuint64("handle")) + "glIsImageHandleResidentNV"(GLboolean, GLuint64("handle")) + } + file("BlendEquationAdvanced", NV, "GL_NV_blend_equation_advanced") { + "GL_BLEND_OVERLAP_NV"("0x9281") + "GL_BLEND_PREMULTIPLIED_SRC_NV"("0x9280") + "GL_BLUE_NV"("0x1905") + "GL_COLORBURN_NV"("0x929A") + "GL_COLORDODGE_NV"("0x9299") + "GL_CONJOINT_NV"("0x9284") + "GL_CONTRAST_NV"("0x92A1") + "GL_DARKEN_NV"("0x9297") + "GL_DIFFERENCE_NV"("0x929E") + "GL_DISJOINT_NV"("0x9283") + "GL_DST_ATOP_NV"("0x928F") + "GL_DST_IN_NV"("0x928B") + "GL_DST_NV"("0x9287") + "GL_DST_OUT_NV"("0x928D") + "GL_DST_OVER_NV"("0x9289") + "GL_EXCLUSION_NV"("0x92A0") + "GL_GREEN_NV"("0x1904") + "GL_HARDLIGHT_NV"("0x929B") + "GL_HARDMIX_NV"("0x92A9") + "GL_HSL_COLOR_NV"("0x92AF") + "GL_HSL_HUE_NV"("0x92AD") + "GL_HSL_LUMINOSITY_NV"("0x92B0") + "GL_HSL_SATURATION_NV"("0x92AE") + "GL_INVERT_OVG_NV"("0x92B4") + "GL_INVERT_RGB_NV"("0x92A3") + "GL_LIGHTEN_NV"("0x9298") + "GL_LINEARBURN_NV"("0x92A5") + "GL_LINEARDODGE_NV"("0x92A4") + "GL_LINEARLIGHT_NV"("0x92A7") + "GL_MINUS_CLAMPED_NV"("0x92B3") + "GL_MINUS_NV"("0x929F") + "GL_MULTIPLY_NV"("0x9294") + "GL_OVERLAY_NV"("0x9296") + "GL_PINLIGHT_NV"("0x92A8") + "GL_PLUS_CLAMPED_ALPHA_NV"("0x92B2") + "GL_PLUS_CLAMPED_NV"("0x92B1") + "GL_PLUS_DARKER_NV"("0x9292") + "GL_PLUS_NV"("0x9291") + "GL_RED_NV"("0x1903") + "GL_SCREEN_NV"("0x9295") + "GL_SOFTLIGHT_NV"("0x929C") + "GL_SRC_ATOP_NV"("0x928E") + "GL_SRC_IN_NV"("0x928A") + "GL_SRC_NV"("0x9286") + "GL_SRC_OUT_NV"("0x928C") + "GL_SRC_OVER_NV"("0x9288") + "GL_UNCORRELATED_NV"("0x9282") + "GL_VIVIDLIGHT_NV"("0x92A6") + "GL_XOR_NV"("0x1506") + "glBlendParameteriNV"(void, GLenum("pname"), GLint("value")) + "glBlendBarrierNV"(void) + } + file( + "BlendEquationAdvancedCoherent", + NV, + "GL_NV_blend_equation_advanced_coherent", + "GL_BLEND_ADVANCED_COHERENT_NV" to "0x9285" + ) + file("ClipSpaceWScaling", NV, "GL_NV_clip_space_w_scaling") { + "GL_VIEWPORT_POSITION_W_SCALE_NV"("0x937C") + "GL_VIEWPORT_POSITION_W_SCALE_X_COEFF_NV"("0x937D") + "GL_VIEWPORT_POSITION_W_SCALE_Y_COEFF_NV"("0x937E") + "glViewportPositionWScaleNV"(void, GLuint("index"), GLfloat("xcoeff"), GLfloat("ycoeff")) + } + file("CommandList", NV, "GL_NV_command_list") { + "GL_TERMINATE_SEQUENCE_COMMAND_NV"("0x0000") + "GL_NOP_COMMAND_NV"("0x0001") + "GL_DRAW_ELEMENTS_COMMAND_NV"("0x0002") + "GL_DRAW_ARRAYS_COMMAND_NV"("0x0003") + "GL_DRAW_ELEMENTS_STRIP_COMMAND_NV"("0x0004") + "GL_DRAW_ARRAYS_STRIP_COMMAND_NV"("0x0005") + "GL_DRAW_ELEMENTS_INSTANCED_COMMAND_NV"("0x0006") + "GL_DRAW_ARRAYS_INSTANCED_COMMAND_NV"("0x0007") + "GL_ELEMENT_ADDRESS_COMMAND_NV"("0x0008") + "GL_ATTRIBUTE_ADDRESS_COMMAND_NV"("0x0009") + "GL_UNIFORM_ADDRESS_COMMAND_NV"("0x000A") + "GL_BLEND_COLOR_COMMAND_NV"("0x000B") + "GL_STENCIL_REF_COMMAND_NV"("0x000C") + "GL_LINE_WIDTH_COMMAND_NV"("0x000D") + "GL_POLYGON_OFFSET_COMMAND_NV"("0x000E") + "GL_ALPHA_REF_COMMAND_NV"("0x000F") + "GL_VIEWPORT_COMMAND_NV"("0x0010") + "GL_SCISSOR_COMMAND_NV"("0x0011") + "GL_FRONT_FACE_COMMAND_NV"("0x0012") + "glCreateStatesNV"(void, GLsizei("n"), address("states", "GLuint *")) + "glDeleteStatesNV"(void, GLsizei("n"), address("states", "const GLuint *")) + "glIsStateNV"(GLboolean, GLuint("state")) + "glStateCaptureNV"(void, GLuint("state"), GLenum("mode")) + "glGetCommandHeaderNV"(GLuint, GLenum("tokenID"), GLuint("size")) + "glGetStageIndexNV"(GLushort, GLenum("shadertype")) + "glDrawCommandsNV"( + void, + GLenum("primitiveMode"), + GLuint("buffer"), + address("indirects", "const GLintptr *"), + address("sizes", "const GLsizei *"), + GLuint("count") + ) + "glDrawCommandsAddressNV"( + void, + GLenum("primitiveMode"), + address("indirects", "const GLuint64 *"), + address("sizes", "const GLsizei *"), + GLuint("count") + ) + "glDrawCommandsStatesNV"( + void, + GLuint("buffer"), + address("indirects", "const GLintptr *"), + address("sizes", "const GLsizei *"), + address("states", "const GLuint *"), + address("fbos", "const GLuint *"), + GLuint("count") + ) + "glDrawCommandsStatesAddressNV"( + void, + address("indirects", "const GLuint64 *"), + address("sizes", "const GLsizei *"), + address("states", "const GLuint *"), + address("fbos", "const GLuint *"), + GLuint("count") + ) + "glCreateCommandListsNV"(void, GLsizei("n"), address("lists", "GLuint *")) + "glDeleteCommandListsNV"(void, GLsizei("n"), address("lists", "const GLuint *")) + "glIsCommandListNV"(GLboolean, GLuint("list")) + "glListDrawCommandsStatesClientNV"( + void, + GLuint("list"), + GLuint("segment"), + address("indirects", "const void **"), + address("sizes", "const GLsizei *"), + address("states", "const GLuint *"), + address("fbos", "const GLuint *"), + GLuint("count") + ) + "glCommandListSegmentsNV"(void, GLuint("list"), GLuint("segments")) + "glCompileCommandListNV"(void, GLuint("list")) + "glCallCommandListNV"(void, GLuint("list")) + } + file( + "ComputeProgram5", NV, "GL_NV_compute_program5", + "GL_COMPUTE_PROGRAM_NV" to "0x90FB", + "GL_COMPUTE_PROGRAM_PARAMETER_BUFFER_NV" to "0x90FC" + ) + file("ConditionalRender", NV, "GL_NV_conditional_render") { + "GL_QUERY_WAIT_NV"("0x8E13") + "GL_QUERY_NO_WAIT_NV"("0x8E14") + "GL_QUERY_BY_REGION_WAIT_NV"("0x8E15") + "GL_QUERY_BY_REGION_NO_WAIT_NV"("0x8E16") + "glBeginConditionalRenderNV"(void, GLuint("id"), GLenum("mode")) + "glEndConditionalRenderNV"(void) + } + file("ConservativeRaster", NV, "GL_NV_conservative_raster") { + "GL_CONSERVATIVE_RASTERIZATION_NV"("0x9346") + "GL_SUBPIXEL_PRECISION_BIAS_X_BITS_NV"("0x9347") + "GL_SUBPIXEL_PRECISION_BIAS_Y_BITS_NV"("0x9348") + "GL_MAX_SUBPIXEL_PRECISION_BIAS_BITS_NV"("0x9349") + "glSubpixelPrecisionBiasNV"(void, GLuint("xbits"), GLuint("ybits")) + } + file("ConservativeRasterDilate", NV, "GL_NV_conservative_raster_dilate") { + "GL_CONSERVATIVE_RASTER_DILATE_NV"("0x9379") + "GL_CONSERVATIVE_RASTER_DILATE_RANGE_NV"("0x937A") + "GL_CONSERVATIVE_RASTER_DILATE_GRANULARITY_NV"("0x937B") + "glConservativeRasterParameterfNV"(void, GLenum("pname"), GLfloat("value")) + } + file( + "ConservativeRasterPreSnap", + NV, + "GL_NV_conservative_raster_pre_snap", + "GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_NV" to "0x9550" + ) + file("ConservativeRasterPreSnapTriangles", NV, "GL_NV_conservative_raster_pre_snap_triangles") { + "GL_CONSERVATIVE_RASTER_MODE_NV"("0x954D") + "GL_CONSERVATIVE_RASTER_MODE_POST_SNAP_NV"("0x954E") + "GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_TRIANGLES_NV"("0x954F") + "glConservativeRasterParameteriNV"(void, GLenum("pname"), GLint("param")) + } + file( + "CopyDepthToColor", NV, "GL_NV_copy_depth_to_color", + "GL_DEPTH_STENCIL_TO_RGBA_NV" to "0x886E", + "GL_DEPTH_STENCIL_TO_BGRA_NV" to "0x886F" + ) + file("CopyImage", NV, "GL_NV_copy_image") { + "glCopyImageSubDataNV"( + void, + GLuint("srcName"), + GLenum("srcTarget"), + GLint("srcLevel"), + GLint("srcX"), + GLint("srcY"), + GLint("srcZ"), + GLuint("dstName"), + GLenum("dstTarget"), + GLint("dstLevel"), + GLint("dstX"), + GLint("dstY"), + GLint("dstZ"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth") + ) + } + file( + "DeepTexture3D", NV, "GL_NV_deep_texture3D", + "GL_MAX_DEEP_3D_TEXTURE_WIDTH_HEIGHT_NV" to "0x90D0", + "GL_MAX_DEEP_3D_TEXTURE_DEPTH_NV" to "0x90D1" + ) + file("DepthBufferFloat", NV, "GL_NV_depth_buffer_float") { + "GL_DEPTH_COMPONENT32F_NV"("0x8DAB") + "GL_DEPTH32F_STENCIL8_NV"("0x8DAC") + "GL_FLOAT_32_UNSIGNED_INT_24_8_REV_NV"("0x8DAD") + "GL_DEPTH_BUFFER_FLOAT_MODE_NV"("0x8DAF") + "glDepthRangedNV"(void, GLdouble("zNear"), GLdouble("zFar")) + "glClearDepthdNV"(void, GLdouble("depth")) + "glDepthBoundsdNV"(void, GLdouble("zmin"), GLdouble("zmax")) + } + file("DepthClamp", NV, "GL_NV_depth_clamp", "GL_DEPTH_CLAMP_NV" to "0x864F") + file("DrawTexture", NV, "GL_NV_draw_texture") { + "glDrawTextureNV"( + void, + GLuint("texture"), + GLuint("sampler"), + GLfloat("x0"), + GLfloat("y0"), + GLfloat("x1"), + GLfloat("y1"), + GLfloat("z"), + GLfloat("s0"), + GLfloat("t0"), + GLfloat("s1"), + GLfloat("t1") + ) + } + file("DrawVulkanImage", NV, "GL_NV_draw_vulkan_image") { + "glDrawVkImageNV"( + void, + GLuint64("vkImage"), + GLuint("sampler"), + GLfloat("x0"), + GLfloat("y0"), + GLfloat("x1"), + GLfloat("y1"), + GLfloat("z"), + GLfloat("s0"), + GLfloat("t0"), + GLfloat("s1"), + GLfloat("t1") + ) + "glGetVkProcAddrNV"(address, address("name", "const GLchar *"), nativeType = "GLVULKANPROCNV") + "glWaitVkSemaphoreNV"(void, GLuint64("vkSemaphore")) + "glSignalVkSemaphoreNV"(void, GLuint64("vkSemaphore")) + "glSignalVkFenceNV"(void, GLuint64("vkFence")) + } + file("Evaluators", NV, "GL_NV_evaluators") { + "GL_EVAL_2D_NV"("0x86C0") + "GL_EVAL_TRIANGULAR_2D_NV"("0x86C1") + "GL_MAP_TESSELLATION_NV"("0x86C2") + "GL_MAP_ATTRIB_U_ORDER_NV"("0x86C3") + "GL_MAP_ATTRIB_V_ORDER_NV"("0x86C4") + "GL_EVAL_FRACTIONAL_TESSELLATION_NV"("0x86C5") + "GL_EVAL_VERTEX_ATTRIB0_NV"("0x86C6") + "GL_EVAL_VERTEX_ATTRIB1_NV"("0x86C7") + "GL_EVAL_VERTEX_ATTRIB2_NV"("0x86C8") + "GL_EVAL_VERTEX_ATTRIB3_NV"("0x86C9") + "GL_EVAL_VERTEX_ATTRIB4_NV"("0x86CA") + "GL_EVAL_VERTEX_ATTRIB5_NV"("0x86CB") + "GL_EVAL_VERTEX_ATTRIB6_NV"("0x86CC") + "GL_EVAL_VERTEX_ATTRIB7_NV"("0x86CD") + "GL_EVAL_VERTEX_ATTRIB8_NV"("0x86CE") + "GL_EVAL_VERTEX_ATTRIB9_NV"("0x86CF") + "GL_EVAL_VERTEX_ATTRIB10_NV"("0x86D0") + "GL_EVAL_VERTEX_ATTRIB11_NV"("0x86D1") + "GL_EVAL_VERTEX_ATTRIB12_NV"("0x86D2") + "GL_EVAL_VERTEX_ATTRIB13_NV"("0x86D3") + "GL_EVAL_VERTEX_ATTRIB14_NV"("0x86D4") + "GL_EVAL_VERTEX_ATTRIB15_NV"("0x86D5") + "GL_MAX_MAP_TESSELLATION_NV"("0x86D6") + "GL_MAX_RATIONAL_EVAL_ORDER_NV"("0x86D7") + "glMapControlPointsNV"( + void, + GLenum("target"), + GLuint("index"), + GLenum("type"), + GLsizei("ustride"), + GLsizei("vstride"), + GLint("uorder"), + GLint("vorder"), + GLboolean("packed"), + address("points", "const void *") + ) + "glMapParameterivNV"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) + "glMapParameterfvNV"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfloat *")) + "glGetMapControlPointsNV"( + void, + GLenum("target"), + GLuint("index"), + GLenum("type"), + GLsizei("ustride"), + GLsizei("vstride"), + GLboolean("packed"), + address("points", "void *") + ) + "glGetMapParameterivNV"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetMapParameterfvNV"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + "glGetMapAttribParameterivNV"( + void, + GLenum("target"), + GLuint("index"), + GLenum("pname"), + address("params", "GLint *") + ) + "glGetMapAttribParameterfvNV"( + void, + GLenum("target"), + GLuint("index"), + GLenum("pname"), + address("params", "GLfloat *") + ) + "glEvalMapsNV"(void, GLenum("target"), GLenum("mode")) + } + file("ExplicitMultisample", NV, "GL_NV_explicit_multisample") { + "GL_SAMPLE_POSITION_NV"("0x8E50") + "GL_SAMPLE_MASK_NV"("0x8E51") + "GL_SAMPLE_MASK_VALUE_NV"("0x8E52") + "GL_TEXTURE_BINDING_RENDERBUFFER_NV"("0x8E53") + "GL_TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV"("0x8E54") + "GL_TEXTURE_RENDERBUFFER_NV"("0x8E55") + "GL_SAMPLER_RENDERBUFFER_NV"("0x8E56") + "GL_INT_SAMPLER_RENDERBUFFER_NV"("0x8E57") + "GL_UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV"("0x8E58") + "GL_MAX_SAMPLE_MASK_WORDS_NV"("0x8E59") + "glGetMultisamplefvNV"(void, GLenum("pname"), GLuint("index"), address("val", "GLfloat *")) + "glSampleMaskIndexedNV"(void, GLuint("index"), GLbitfield("mask")) + "glTexRenderbufferNV"(void, GLenum("target"), GLuint("renderbuffer")) + } + file("Fence", NV, "GL_NV_fence") { + "GL_ALL_COMPLETED_NV"("0x84F2") + "GL_FENCE_STATUS_NV"("0x84F3") + "GL_FENCE_CONDITION_NV"("0x84F4") + "glDeleteFencesNV"(void, GLsizei("n"), address("fences", "const GLuint *")) + "glGenFencesNV"(void, GLsizei("n"), address("fences", "GLuint *")) + "glIsFenceNV"(GLboolean, GLuint("fence")) + "glTestFenceNV"(GLboolean, GLuint("fence")) + "glGetFenceivNV"(void, GLuint("fence"), GLenum("pname"), address("params", "GLint *")) + "glFinishFenceNV"(void, GLuint("fence")) + "glSetFenceNV"(void, GLuint("fence"), GLenum("condition")) + } + file("FillRectangle", NV, "GL_NV_fill_rectangle", "GL_FILL_RECTANGLE_NV" to "0x933C") + file( + "FloatBuffer", NV, "GL_NV_float_buffer", + "GL_FLOAT_R_NV" to "0x8880", + "GL_FLOAT_RG_NV" to "0x8881", + "GL_FLOAT_RGB_NV" to "0x8882", + "GL_FLOAT_RGBA_NV" to "0x8883", + "GL_FLOAT_R16_NV" to "0x8884", + "GL_FLOAT_R32_NV" to "0x8885", + "GL_FLOAT_RG16_NV" to "0x8886", + "GL_FLOAT_RG32_NV" to "0x8887", + "GL_FLOAT_RGB16_NV" to "0x8888", + "GL_FLOAT_RGB32_NV" to "0x8889", + "GL_FLOAT_RGBA16_NV" to "0x888A", + "GL_FLOAT_RGBA32_NV" to "0x888B", + "GL_TEXTURE_FLOAT_COMPONENTS_NV" to "0x888C", + "GL_FLOAT_CLEAR_COLOR_VALUE_NV" to "0x888D", + "GL_FLOAT_RGBA_MODE_NV" to "0x888E" + ) + file( + "FogDistance", NV, "GL_NV_fog_distance", + "GL_FOG_DISTANCE_MODE_NV" to "0x855A", + "GL_EYE_RADIAL_NV" to "0x855B", + "GL_EYE_PLANE_ABSOLUTE_NV" to "0x855C" + ) + file("FragmentCoverageToColor", NV, "GL_NV_fragment_coverage_to_color") { + "GL_FRAGMENT_COVERAGE_TO_COLOR_NV"("0x92DD") + "GL_FRAGMENT_COVERAGE_COLOR_NV"("0x92DE") + "glFragmentCoverageColorNV"(void, GLuint("color")) + } + file("FragmentProgram", NV, "GL_NV_fragment_program") { + "GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV"("0x8868") + "GL_FRAGMENT_PROGRAM_NV"("0x8870") + "GL_MAX_TEXTURE_COORDS_NV"("0x8871") + "GL_MAX_TEXTURE_IMAGE_UNITS_NV"("0x8872") + "GL_FRAGMENT_PROGRAM_BINDING_NV"("0x8873") + "GL_PROGRAM_ERROR_STRING_NV"("0x8874") + "glProgramNamedParameter4fNV"( + void, + GLuint("id"), + GLsizei("len"), + address("name", "const GLubyte *"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z"), + GLfloat("w") + ) + "glProgramNamedParameter4fvNV"( + void, + GLuint("id"), + GLsizei("len"), + address("name", "const GLubyte *"), + address("v", "const GLfloat *") + ) + "glProgramNamedParameter4dNV"( + void, + GLuint("id"), + GLsizei("len"), + address("name", "const GLubyte *"), + GLdouble("x"), + GLdouble("y"), + GLdouble("z"), + GLdouble("w") + ) + "glProgramNamedParameter4dvNV"( + void, + GLuint("id"), + GLsizei("len"), + address("name", "const GLubyte *"), + address("v", "const GLdouble *") + ) + "glGetProgramNamedParameterfvNV"( + void, + GLuint("id"), + GLsizei("len"), + address("name", "const GLubyte *"), + address("params", "GLfloat *") + ) + "glGetProgramNamedParameterdvNV"( + void, + GLuint("id"), + GLsizei("len"), + address("name", "const GLubyte *"), + address("params", "GLdouble *") + ) + } + file( + "FragmentProgram2", NV, "GL_NV_fragment_program2", + "GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV" to "0x88F4", + "GL_MAX_PROGRAM_CALL_DEPTH_NV" to "0x88F5", + "GL_MAX_PROGRAM_IF_DEPTH_NV" to "0x88F6", + "GL_MAX_PROGRAM_LOOP_DEPTH_NV" to "0x88F7", + "GL_MAX_PROGRAM_LOOP_COUNT_NV" to "0x88F8" + ) + file("FramebufferMixedSamples", NV, "GL_NV_framebuffer_mixed_samples") { + "GL_COVERAGE_MODULATION_TABLE_NV"("0x9331") + "GL_COLOR_SAMPLES_NV"("0x8E20") + "GL_DEPTH_SAMPLES_NV"("0x932D") + "GL_STENCIL_SAMPLES_NV"("0x932E") + "GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV"("0x932F") + "GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV"("0x9330") + "GL_COVERAGE_MODULATION_NV"("0x9332") + "GL_COVERAGE_MODULATION_TABLE_SIZE_NV"("0x9333") + "glCoverageModulationTableNV"(void, GLsizei("n"), address("v", "const GLfloat *")) + "glGetCoverageModulationTableNV"(void, GLsizei("bufSize"), address("v", "GLfloat *")) + "glCoverageModulationNV"(void, GLenum("components")) + } + file("FramebufferMultisampleCoverage", NV, "GL_NV_framebuffer_multisample_coverage") { + "GL_RENDERBUFFER_COVERAGE_SAMPLES_NV"("0x8CAB") + "GL_RENDERBUFFER_COLOR_SAMPLES_NV"("0x8E10") + "GL_MAX_MULTISAMPLE_COVERAGE_MODES_NV"("0x8E11") + "GL_MULTISAMPLE_COVERAGE_MODES_NV"("0x8E12") + "glRenderbufferStorageMultisampleCoverageNV"( + void, + GLenum("target"), + GLsizei("coverageSamples"), + GLsizei("colorSamples"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height") + ) + } + file("GeometryProgram4", NV, "GL_NV_geometry_program4") { + "GL_GEOMETRY_PROGRAM_NV"("0x8C26") + "GL_MAX_PROGRAM_OUTPUT_VERTICES_NV"("0x8C27") + "GL_MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV"("0x8C28") + "glProgramVertexLimitNV"(void, GLenum("target"), GLint("limit")) + "glFramebufferTextureEXT"(void, GLenum("target"), GLenum("attachment"), GLuint("texture"), GLint("level")) + "glFramebufferTextureFaceEXT"( + void, + GLenum("target"), + GLenum("attachment"), + GLuint("texture"), + GLint("level"), + GLenum("face") + ) + } + file("GpuMulticast", NV, "GL_NV_gpu_multicast") { + "GL_PER_GPU_STORAGE_BIT_NV"("0x0800") + "GL_MULTICAST_GPUS_NV"("0x92BA") + "GL_RENDER_GPU_MASK_NV"("0x9558") + "GL_PER_GPU_STORAGE_NV"("0x9548") + "GL_MULTICAST_PROGRAMMABLE_SAMPLE_LOCATION_NV"("0x9549") + "glRenderGpuMaskNV"(void, GLbitfield("mask")) + "glMulticastBufferSubDataNV"( + void, + GLbitfield("gpuMask"), + GLuint("buffer"), + GLintptr("offset"), + GLsizeiptr("size"), + address("data", "const void *") + ) + "glMulticastCopyBufferSubDataNV"( + void, + GLuint("readGpu"), + GLbitfield("writeGpuMask"), + GLuint("readBuffer"), + GLuint("writeBuffer"), + GLintptr("readOffset"), + GLintptr("writeOffset"), + GLsizeiptr("size") + ) + "glMulticastCopyImageSubDataNV"( + void, + GLuint("srcGpu"), + GLbitfield("dstGpuMask"), + GLuint("srcName"), + GLenum("srcTarget"), + GLint("srcLevel"), + GLint("srcX"), + GLint("srcY"), + GLint("srcZ"), + GLuint("dstName"), + GLenum("dstTarget"), + GLint("dstLevel"), + GLint("dstX"), + GLint("dstY"), + GLint("dstZ"), + GLsizei("srcWidth"), + GLsizei("srcHeight"), + GLsizei("srcDepth") + ) + "glMulticastBlitFramebufferNV"( + void, + GLuint("srcGpu"), + GLuint("dstGpu"), + GLint("srcX0"), + GLint("srcY0"), + GLint("srcX1"), + GLint("srcY1"), + GLint("dstX0"), + GLint("dstY0"), + GLint("dstX1"), + GLint("dstY1"), + GLbitfield("mask"), + GLenum("filter") + ) + "glMulticastFramebufferSampleLocationsfvNV"( + void, + GLuint("gpu"), + GLuint("framebuffer"), + GLuint("start"), + GLsizei("count"), + address("v", "const GLfloat *") + ) + "glMulticastBarrierNV"(void) + "glMulticastWaitSyncNV"(void, GLuint("signalGpu"), GLbitfield("waitGpuMask")) + "glMulticastGetQueryObjectivNV"( + void, + GLuint("gpu"), + GLuint("id"), + GLenum("pname"), + address("params", "GLint *") + ) + "glMulticastGetQueryObjectuivNV"( + void, + GLuint("gpu"), + GLuint("id"), + GLenum("pname"), + address("params", "GLuint *") + ) + "glMulticastGetQueryObjecti64vNV"( + void, + GLuint("gpu"), + GLuint("id"), + GLenum("pname"), + address("params", "GLint64 *") + ) + "glMulticastGetQueryObjectui64vNV"( + void, + GLuint("gpu"), + GLuint("id"), + GLenum("pname"), + address("params", "GLuint64 *") + ) + } + file("GpuProgram4", NV, "GL_NV_gpu_program4") { + "GL_MIN_PROGRAM_TEXEL_OFFSET_NV"("0x8904") + "GL_MAX_PROGRAM_TEXEL_OFFSET_NV"("0x8905") + "GL_PROGRAM_ATTRIB_COMPONENTS_NV"("0x8906") + "GL_PROGRAM_RESULT_COMPONENTS_NV"("0x8907") + "GL_MAX_PROGRAM_ATTRIB_COMPONENTS_NV"("0x8908") + "GL_MAX_PROGRAM_RESULT_COMPONENTS_NV"("0x8909") + "GL_MAX_PROGRAM_GENERIC_ATTRIBS_NV"("0x8DA5") + "GL_MAX_PROGRAM_GENERIC_RESULTS_NV"("0x8DA6") + "glProgramLocalParameterI4iNV"( + void, + GLenum("target"), + GLuint("index"), + GLint("x"), + GLint("y"), + GLint("z"), + GLint("w") + ) + "glProgramLocalParameterI4ivNV"(void, GLenum("target"), GLuint("index"), address("params", "const GLint *")) + "glProgramLocalParametersI4ivNV"( + void, + GLenum("target"), + GLuint("index"), + GLsizei("count"), + address("params", "const GLint *") + ) + "glProgramLocalParameterI4uiNV"( + void, + GLenum("target"), + GLuint("index"), + GLuint("x"), + GLuint("y"), + GLuint("z"), + GLuint("w") + ) + "glProgramLocalParameterI4uivNV"(void, GLenum("target"), GLuint("index"), address("params", "const GLuint *")) + "glProgramLocalParametersI4uivNV"( + void, + GLenum("target"), + GLuint("index"), + GLsizei("count"), + address("params", "const GLuint *") + ) + "glProgramEnvParameterI4iNV"( + void, + GLenum("target"), + GLuint("index"), + GLint("x"), + GLint("y"), + GLint("z"), + GLint("w") + ) + "glProgramEnvParameterI4ivNV"(void, GLenum("target"), GLuint("index"), address("params", "const GLint *")) + "glProgramEnvParametersI4ivNV"( + void, + GLenum("target"), + GLuint("index"), + GLsizei("count"), + address("params", "const GLint *") + ) + "glProgramEnvParameterI4uiNV"( + void, + GLenum("target"), + GLuint("index"), + GLuint("x"), + GLuint("y"), + GLuint("z"), + GLuint("w") + ) + "glProgramEnvParameterI4uivNV"(void, GLenum("target"), GLuint("index"), address("params", "const GLuint *")) + "glProgramEnvParametersI4uivNV"( + void, + GLenum("target"), + GLuint("index"), + GLsizei("count"), + address("params", "const GLuint *") + ) + "glGetProgramLocalParameterIivNV"(void, GLenum("target"), GLuint("index"), address("params", "GLint *")) + "glGetProgramLocalParameterIuivNV"(void, GLenum("target"), GLuint("index"), address("params", "GLuint *")) + "glGetProgramEnvParameterIivNV"(void, GLenum("target"), GLuint("index"), address("params", "GLint *")) + "glGetProgramEnvParameterIuivNV"(void, GLenum("target"), GLuint("index"), address("params", "GLuint *")) + } + file("GpuProgram5", NV, "GL_NV_gpu_program5") { + "GL_MAX_GEOMETRY_PROGRAM_INVOCATIONS_NV"("0x8E5A") + "GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_NV"("0x8E5B") + "GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_NV"("0x8E5C") + "GL_FRAGMENT_PROGRAM_INTERPOLATION_OFFSET_BITS_NV"("0x8E5D") + "GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_NV"("0x8E5E") + "GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_NV"("0x8E5F") + "GL_MAX_PROGRAM_SUBROUTINE_PARAMETERS_NV"("0x8F44") + "GL_MAX_PROGRAM_SUBROUTINE_NUM_NV"("0x8F45") + "glProgramSubroutineParametersuivNV"( + void, + GLenum("target"), + GLsizei("count"), + address("params", "const GLuint *") + ) + "glGetProgramSubroutineParameteruivNV"(void, GLenum("target"), GLuint("index"), address("param", "GLuint *")) + } + file("HalfFloat", NV, "GL_NV_half_float") { + "GL_HALF_FLOAT_NV"("0x140B") + "glVertex2hNV"(void, GLhalfNV("x"), GLhalfNV("y")) + "glVertex2hvNV"(void, address("v", "const GLhalfNV *")) + "glVertex3hNV"(void, GLhalfNV("x"), GLhalfNV("y"), GLhalfNV("z")) + "glVertex3hvNV"(void, address("v", "const GLhalfNV *")) + "glVertex4hNV"(void, GLhalfNV("x"), GLhalfNV("y"), GLhalfNV("z"), GLhalfNV("w")) + "glVertex4hvNV"(void, address("v", "const GLhalfNV *")) + "glNormal3hNV"(void, GLhalfNV("nx"), GLhalfNV("ny"), GLhalfNV("nz")) + "glNormal3hvNV"(void, address("v", "const GLhalfNV *")) + "glColor3hNV"(void, GLhalfNV("red"), GLhalfNV("green"), GLhalfNV("blue")) + "glColor3hvNV"(void, address("v", "const GLhalfNV *")) + "glColor4hNV"(void, GLhalfNV("red"), GLhalfNV("green"), GLhalfNV("blue"), GLhalfNV("alpha")) + "glColor4hvNV"(void, address("v", "const GLhalfNV *")) + "glTexCoord1hNV"(void, GLhalfNV("s")) + "glTexCoord1hvNV"(void, address("v", "const GLhalfNV *")) + "glTexCoord2hNV"(void, GLhalfNV("s"), GLhalfNV("t")) + "glTexCoord2hvNV"(void, address("v", "const GLhalfNV *")) + "glTexCoord3hNV"(void, GLhalfNV("s"), GLhalfNV("t"), GLhalfNV("r")) + "glTexCoord3hvNV"(void, address("v", "const GLhalfNV *")) + "glTexCoord4hNV"(void, GLhalfNV("s"), GLhalfNV("t"), GLhalfNV("r"), GLhalfNV("q")) + "glTexCoord4hvNV"(void, address("v", "const GLhalfNV *")) + "glMultiTexCoord1hNV"(void, GLenum("target"), GLhalfNV("s")) + "glMultiTexCoord1hvNV"(void, GLenum("target"), address("v", "const GLhalfNV *")) + "glMultiTexCoord2hNV"(void, GLenum("target"), GLhalfNV("s"), GLhalfNV("t")) + "glMultiTexCoord2hvNV"(void, GLenum("target"), address("v", "const GLhalfNV *")) + "glMultiTexCoord3hNV"(void, GLenum("target"), GLhalfNV("s"), GLhalfNV("t"), GLhalfNV("r")) + "glMultiTexCoord3hvNV"(void, GLenum("target"), address("v", "const GLhalfNV *")) + "glMultiTexCoord4hNV"(void, GLenum("target"), GLhalfNV("s"), GLhalfNV("t"), GLhalfNV("r"), GLhalfNV("q")) + "glMultiTexCoord4hvNV"(void, GLenum("target"), address("v", "const GLhalfNV *")) + "glVertexAttrib1hNV"(void, GLuint("index"), GLhalfNV("x")) + "glVertexAttrib1hvNV"(void, GLuint("index"), address("v", "const GLhalfNV *")) + "glVertexAttrib2hNV"(void, GLuint("index"), GLhalfNV("x"), GLhalfNV("y")) + "glVertexAttrib2hvNV"(void, GLuint("index"), address("v", "const GLhalfNV *")) + "glVertexAttrib3hNV"(void, GLuint("index"), GLhalfNV("x"), GLhalfNV("y"), GLhalfNV("z")) + "glVertexAttrib3hvNV"(void, GLuint("index"), address("v", "const GLhalfNV *")) + "glVertexAttrib4hNV"(void, GLuint("index"), GLhalfNV("x"), GLhalfNV("y"), GLhalfNV("z"), GLhalfNV("w")) + "glVertexAttrib4hvNV"(void, GLuint("index"), address("v", "const GLhalfNV *")) + "glVertexAttribs1hvNV"(void, GLuint("index"), GLsizei("n"), address("v", "const GLhalfNV *")) + "glVertexAttribs2hvNV"(void, GLuint("index"), GLsizei("n"), address("v", "const GLhalfNV *")) + "glVertexAttribs3hvNV"(void, GLuint("index"), GLsizei("n"), address("v", "const GLhalfNV *")) + "glVertexAttribs4hvNV"(void, GLuint("index"), GLsizei("n"), address("v", "const GLhalfNV *")) + "glFogCoordhNV"(void, GLhalfNV("fog")) + "glFogCoordhvNV"(void, address("fog", "const GLhalfNV *")) + "glSecondaryColor3hNV"(void, GLhalfNV("red"), GLhalfNV("green"), GLhalfNV("blue")) + "glSecondaryColor3hvNV"(void, address("v", "const GLhalfNV *")) + "glVertexWeighthNV"(void, GLhalfNV("weight")) + "glVertexWeighthvNV"(void, address("weight", "const GLhalfNV *")) + } + file("InternalformatSampleQuery", NV, "GL_NV_internalformat_sample_query") { + "GL_MULTISAMPLES_NV"("0x9371") + "GL_SUPERSAMPLE_SCALE_X_NV"("0x9372") + "GL_SUPERSAMPLE_SCALE_Y_NV"("0x9373") + "GL_CONFORMANT_NV"("0x9374") + "glGetInternalformatSampleivNV"( + void, + GLenum("target"), + GLenum("internalformat"), + GLsizei("samples"), + GLenum("pname"), + GLsizei("count"), + address("params", "GLint *") + ) + } + file( + "LightMaxExponent", NV, "GL_NV_light_max_exponent", + "GL_MAX_SHININESS_NV" to "0x8504", + "GL_MAX_SPOT_EXPONENT_NV" to "0x8505" + ) + file("MemoryAttachment", NV, "GL_NV_memory_attachment") { + "GL_ATTACHED_MEMORY_OBJECT_NV"("0x95A4") + "GL_ATTACHED_MEMORY_OFFSET_NV"("0x95A5") + "GL_MEMORY_ATTACHABLE_ALIGNMENT_NV"("0x95A6") + "GL_MEMORY_ATTACHABLE_SIZE_NV"("0x95A7") + "GL_MEMORY_ATTACHABLE_NV"("0x95A8") + "GL_DETACHED_MEMORY_INCARNATION_NV"("0x95A9") + "GL_DETACHED_TEXTURES_NV"("0x95AA") + "GL_DETACHED_BUFFERS_NV"("0x95AB") + "GL_MAX_DETACHED_TEXTURES_NV"("0x95AC") + "GL_MAX_DETACHED_BUFFERS_NV"("0x95AD") + "glGetMemoryObjectDetachedResourcesuivNV"( + void, + GLuint("memory"), + GLenum("pname"), + GLint("first"), + GLsizei("count"), + address("params", "GLuint *") + ) + "glResetMemoryObjectParameterNV"(void, GLuint("memory"), GLenum("pname")) + "glTexAttachMemoryNV"(void, GLenum("target"), GLuint("memory"), GLuint64("offset")) + "glBufferAttachMemoryNV"(void, GLenum("target"), GLuint("memory"), GLuint64("offset")) + "glTextureAttachMemoryNV"(void, GLuint("texture"), GLuint("memory"), GLuint64("offset")) + "glNamedBufferAttachMemoryNV"(void, GLuint("buffer"), GLuint("memory"), GLuint64("offset")) + } + file("MemoryObjectSparse", NV, "GL_NV_memory_object_sparse") { + "glBufferPageCommitmentMemNV"( + void, + GLenum("target"), + GLintptr("offset"), + GLsizeiptr("size"), + GLuint("memory"), + GLuint64("memOffset"), + GLboolean("commit") + ) + "glTexPageCommitmentMemNV"( + void, + GLenum("target"), + GLint("layer"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLint("zoffset"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLuint("memory"), + GLuint64("offset"), + GLboolean("commit") + ) + "glNamedBufferPageCommitmentMemNV"( + void, + GLuint("buffer"), + GLintptr("offset"), + GLsizeiptr("size"), + GLuint("memory"), + GLuint64("memOffset"), + GLboolean("commit") + ) + "glTexturePageCommitmentMemNV"( + void, + GLuint("texture"), + GLint("layer"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLint("zoffset"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLuint("memory"), + GLuint64("offset"), + GLboolean("commit") + ) + } + file("MeshShader", NV, "GL_NV_mesh_shader") { + "GL_MESH_SHADER_NV"("0x9559") + "GL_TASK_SHADER_NV"("0x955A") + "GL_MAX_MESH_UNIFORM_BLOCKS_NV"("0x8E60") + "GL_MAX_MESH_TEXTURE_IMAGE_UNITS_NV"("0x8E61") + "GL_MAX_MESH_IMAGE_UNIFORMS_NV"("0x8E62") + "GL_MAX_MESH_UNIFORM_COMPONENTS_NV"("0x8E63") + "GL_MAX_MESH_ATOMIC_COUNTER_BUFFERS_NV"("0x8E64") + "GL_MAX_MESH_ATOMIC_COUNTERS_NV"("0x8E65") + "GL_MAX_MESH_SHADER_STORAGE_BLOCKS_NV"("0x8E66") + "GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NV"("0x8E67") + "GL_MAX_TASK_UNIFORM_BLOCKS_NV"("0x8E68") + "GL_MAX_TASK_TEXTURE_IMAGE_UNITS_NV"("0x8E69") + "GL_MAX_TASK_IMAGE_UNIFORMS_NV"("0x8E6A") + "GL_MAX_TASK_UNIFORM_COMPONENTS_NV"("0x8E6B") + "GL_MAX_TASK_ATOMIC_COUNTER_BUFFERS_NV"("0x8E6C") + "GL_MAX_TASK_ATOMIC_COUNTERS_NV"("0x8E6D") + "GL_MAX_TASK_SHADER_STORAGE_BLOCKS_NV"("0x8E6E") + "GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NV"("0x8E6F") + "GL_MAX_MESH_WORK_GROUP_INVOCATIONS_NV"("0x95A2") + "GL_MAX_TASK_WORK_GROUP_INVOCATIONS_NV"("0x95A3") + "GL_MAX_MESH_TOTAL_MEMORY_SIZE_NV"("0x9536") + "GL_MAX_TASK_TOTAL_MEMORY_SIZE_NV"("0x9537") + "GL_MAX_MESH_OUTPUT_VERTICES_NV"("0x9538") + "GL_MAX_MESH_OUTPUT_PRIMITIVES_NV"("0x9539") + "GL_MAX_TASK_OUTPUT_COUNT_NV"("0x953A") + "GL_MAX_DRAW_MESH_TASKS_COUNT_NV"("0x953D") + "GL_MAX_MESH_VIEWS_NV"("0x9557") + "GL_MESH_OUTPUT_PER_VERTEX_GRANULARITY_NV"("0x92DF") + "GL_MESH_OUTPUT_PER_PRIMITIVE_GRANULARITY_NV"("0x9543") + "GL_MAX_MESH_WORK_GROUP_SIZE_NV"("0x953B") + "GL_MAX_TASK_WORK_GROUP_SIZE_NV"("0x953C") + "GL_MESH_WORK_GROUP_SIZE_NV"("0x953E") + "GL_TASK_WORK_GROUP_SIZE_NV"("0x953F") + "GL_MESH_VERTICES_OUT_NV"("0x9579") + "GL_MESH_PRIMITIVES_OUT_NV"("0x957A") + "GL_MESH_OUTPUT_TYPE_NV"("0x957B") + "GL_UNIFORM_BLOCK_REFERENCED_BY_MESH_SHADER_NV"("0x959C") + "GL_UNIFORM_BLOCK_REFERENCED_BY_TASK_SHADER_NV"("0x959D") + "GL_REFERENCED_BY_MESH_SHADER_NV"("0x95A0") + "GL_REFERENCED_BY_TASK_SHADER_NV"("0x95A1") + "GL_MESH_SHADER_BIT_NV"("0x00000040") + "GL_TASK_SHADER_BIT_NV"("0x00000080") + "GL_MESH_SUBROUTINE_NV"("0x957C") + "GL_TASK_SUBROUTINE_NV"("0x957D") + "GL_MESH_SUBROUTINE_UNIFORM_NV"("0x957E") + "GL_TASK_SUBROUTINE_UNIFORM_NV"("0x957F") + "GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_MESH_SHADER_NV"("0x959E") + "GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TASK_SHADER_NV"("0x959F") + "glDrawMeshTasksNV"(void, GLuint("first"), GLuint("count")) + "glDrawMeshTasksIndirectNV"(void, GLintptr("indirect")) + "glMultiDrawMeshTasksIndirectNV"(void, GLintptr("indirect"), GLsizei("drawcount"), GLsizei("stride")) + "glMultiDrawMeshTasksIndirectCountNV"( + void, + GLintptr("indirect"), + GLintptr("drawcount"), + GLsizei("maxdrawcount"), + GLsizei("stride") + ) + } + file("MultisampleFilterHint", NV, "GL_NV_multisample_filter_hint", "GL_MULTISAMPLE_FILTER_HINT_NV" to "0x8534") + file("OcculusionQuery", NV, "GL_NV_occlusion_query") { + "GL_PIXEL_COUNTER_BITS_NV"("0x8864") + "GL_CURRENT_OCCLUSION_QUERY_ID_NV"("0x8865") + "GL_PIXEL_COUNT_NV"("0x8866") + "GL_PIXEL_COUNT_AVAILABLE_NV"("0x8867") + "glGenOcclusionQueriesNV"(void, GLsizei("n"), address("ids", "GLuint *")) + "glDeleteOcclusionQueriesNV"(void, GLsizei("n"), address("ids", "const GLuint *")) + "glIsOcclusionQueryNV"(GLboolean, GLuint("id")) + "glBeginOcclusionQueryNV"(void, GLuint("id")) + "glEndOcclusionQueryNV"(void) + "glGetOcclusionQueryivNV"(void, GLuint("id"), GLenum("pname"), address("params", "GLint *")) + "glGetOcclusionQueryuivNV"(void, GLuint("id"), GLenum("pname"), address("params", "GLuint *")) + } + file( + "PackedDepthStencil", NV, "GL_NV_packed_depth_stencil", + "GL_DEPTH_STENCIL_NV" to "0x84F9", + "GL_UNSIGNED_INT_24_8_NV" to "0x84FA" + ) + file("ParameterBufferObject", NV, "GL_NV_parameter_buffer_object") { + "GL_MAX_PROGRAM_PARAMETER_BUFFER_BINDINGS_NV"("0x8DA0") + "GL_MAX_PROGRAM_PARAMETER_BUFFER_SIZE_NV"("0x8DA1") + "GL_VERTEX_PROGRAM_PARAMETER_BUFFER_NV"("0x8DA2") + "GL_GEOMETRY_PROGRAM_PARAMETER_BUFFER_NV"("0x8DA3") + "GL_FRAGMENT_PROGRAM_PARAMETER_BUFFER_NV"("0x8DA4") + "glProgramBufferParametersfvNV"( + void, + GLenum("target"), + GLuint("bindingIndex"), + GLuint("wordIndex"), + GLsizei("count"), + address("params", "const GLfloat *") + ) + "glProgramBufferParametersIivNV"( + void, + GLenum("target"), + GLuint("bindingIndex"), + GLuint("wordIndex"), + GLsizei("count"), + address("params", "const GLint *") + ) + "glProgramBufferParametersIuivNV"( + void, + GLenum("target"), + GLuint("bindingIndex"), + GLuint("wordIndex"), + GLsizei("count"), + address("params", "const GLuint *") + ) + } + file("PathRendering", NV, "GL_NV_path_rendering") { + "GL_PATH_FORMAT_SVG_NV"("0x9070") + "GL_PATH_FORMAT_PS_NV"("0x9071") + "GL_STANDARD_FONT_NAME_NV"("0x9072") + "GL_SYSTEM_FONT_NAME_NV"("0x9073") + "GL_FILE_NAME_NV"("0x9074") + "GL_PATH_STROKE_WIDTH_NV"("0x9075") + "GL_PATH_END_CAPS_NV"("0x9076") + "GL_PATH_INITIAL_END_CAP_NV"("0x9077") + "GL_PATH_TERMINAL_END_CAP_NV"("0x9078") + "GL_PATH_JOIN_STYLE_NV"("0x9079") + "GL_PATH_MITER_LIMIT_NV"("0x907A") + "GL_PATH_DASH_CAPS_NV"("0x907B") + "GL_PATH_INITIAL_DASH_CAP_NV"("0x907C") + "GL_PATH_TERMINAL_DASH_CAP_NV"("0x907D") + "GL_PATH_DASH_OFFSET_NV"("0x907E") + "GL_PATH_CLIENT_LENGTH_NV"("0x907F") + "GL_PATH_FILL_MODE_NV"("0x9080") + "GL_PATH_FILL_MASK_NV"("0x9081") + "GL_PATH_FILL_COVER_MODE_NV"("0x9082") + "GL_PATH_STROKE_COVER_MODE_NV"("0x9083") + "GL_PATH_STROKE_MASK_NV"("0x9084") + "GL_COUNT_UP_NV"("0x9088") + "GL_COUNT_DOWN_NV"("0x9089") + "GL_PATH_OBJECT_BOUNDING_BOX_NV"("0x908A") + "GL_CONVEX_HULL_NV"("0x908B") + "GL_BOUNDING_BOX_NV"("0x908D") + "GL_TRANSLATE_X_NV"("0x908E") + "GL_TRANSLATE_Y_NV"("0x908F") + "GL_TRANSLATE_2D_NV"("0x9090") + "GL_TRANSLATE_3D_NV"("0x9091") + "GL_AFFINE_2D_NV"("0x9092") + "GL_AFFINE_3D_NV"("0x9094") + "GL_TRANSPOSE_AFFINE_2D_NV"("0x9096") + "GL_TRANSPOSE_AFFINE_3D_NV"("0x9098") + "GL_UTF8_NV"("0x909A") + "GL_UTF16_NV"("0x909B") + "GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV"("0x909C") + "GL_PATH_COMMAND_COUNT_NV"("0x909D") + "GL_PATH_COORD_COUNT_NV"("0x909E") + "GL_PATH_DASH_ARRAY_COUNT_NV"("0x909F") + "GL_PATH_COMPUTED_LENGTH_NV"("0x90A0") + "GL_PATH_FILL_BOUNDING_BOX_NV"("0x90A1") + "GL_PATH_STROKE_BOUNDING_BOX_NV"("0x90A2") + "GL_SQUARE_NV"("0x90A3") + "GL_ROUND_NV"("0x90A4") + "GL_TRIANGULAR_NV"("0x90A5") + "GL_BEVEL_NV"("0x90A6") + "GL_MITER_REVERT_NV"("0x90A7") + "GL_MITER_TRUNCATE_NV"("0x90A8") + "GL_SKIP_MISSING_GLYPH_NV"("0x90A9") + "GL_USE_MISSING_GLYPH_NV"("0x90AA") + "GL_PATH_ERROR_POSITION_NV"("0x90AB") + "GL_ACCUM_ADJACENT_PAIRS_NV"("0x90AD") + "GL_ADJACENT_PAIRS_NV"("0x90AE") + "GL_FIRST_TO_REST_NV"("0x90AF") + "GL_PATH_GEN_MODE_NV"("0x90B0") + "GL_PATH_GEN_COEFF_NV"("0x90B1") + "GL_PATH_GEN_COMPONENTS_NV"("0x90B3") + "GL_PATH_STENCIL_FUNC_NV"("0x90B7") + "GL_PATH_STENCIL_REF_NV"("0x90B8") + "GL_PATH_STENCIL_VALUE_MASK_NV"("0x90B9") + "GL_PATH_STENCIL_DEPTH_OFFSET_FACTOR_NV"("0x90BD") + "GL_PATH_STENCIL_DEPTH_OFFSET_UNITS_NV"("0x90BE") + "GL_PATH_COVER_DEPTH_FUNC_NV"("0x90BF") + "GL_PATH_DASH_OFFSET_RESET_NV"("0x90B4") + "GL_MOVE_TO_RESETS_NV"("0x90B5") + "GL_MOVE_TO_CONTINUES_NV"("0x90B6") + "GL_CLOSE_PATH_NV"("0x00") + "GL_MOVE_TO_NV"("0x02") + "GL_RELATIVE_MOVE_TO_NV"("0x03") + "GL_LINE_TO_NV"("0x04") + "GL_RELATIVE_LINE_TO_NV"("0x05") + "GL_HORIZONTAL_LINE_TO_NV"("0x06") + "GL_RELATIVE_HORIZONTAL_LINE_TO_NV"("0x07") + "GL_VERTICAL_LINE_TO_NV"("0x08") + "GL_RELATIVE_VERTICAL_LINE_TO_NV"("0x09") + "GL_QUADRATIC_CURVE_TO_NV"("0x0A") + "GL_RELATIVE_QUADRATIC_CURVE_TO_NV"("0x0B") + "GL_CUBIC_CURVE_TO_NV"("0x0C") + "GL_RELATIVE_CUBIC_CURVE_TO_NV"("0x0D") + "GL_SMOOTH_QUADRATIC_CURVE_TO_NV"("0x0E") + "GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV"("0x0F") + "GL_SMOOTH_CUBIC_CURVE_TO_NV"("0x10") + "GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV"("0x11") + "GL_SMALL_CCW_ARC_TO_NV"("0x12") + "GL_RELATIVE_SMALL_CCW_ARC_TO_NV"("0x13") + "GL_SMALL_CW_ARC_TO_NV"("0x14") + "GL_RELATIVE_SMALL_CW_ARC_TO_NV"("0x15") + "GL_LARGE_CCW_ARC_TO_NV"("0x16") + "GL_RELATIVE_LARGE_CCW_ARC_TO_NV"("0x17") + "GL_LARGE_CW_ARC_TO_NV"("0x18") + "GL_RELATIVE_LARGE_CW_ARC_TO_NV"("0x19") + "GL_RESTART_PATH_NV"("0xF0") + "GL_DUP_FIRST_CUBIC_CURVE_TO_NV"("0xF2") + "GL_DUP_LAST_CUBIC_CURVE_TO_NV"("0xF4") + "GL_RECT_NV"("0xF6") + "GL_CIRCULAR_CCW_ARC_TO_NV"("0xF8") + "GL_CIRCULAR_CW_ARC_TO_NV"("0xFA") + "GL_CIRCULAR_TANGENT_ARC_TO_NV"("0xFC") + "GL_ARC_TO_NV"("0xFE") + "GL_RELATIVE_ARC_TO_NV"("0xFF") + "GL_BOLD_BIT_NV"("0x01") + "GL_ITALIC_BIT_NV"("0x02") + "GL_GLYPH_WIDTH_BIT_NV"("0x01") + "GL_GLYPH_HEIGHT_BIT_NV"("0x02") + "GL_GLYPH_HORIZONTAL_BEARING_X_BIT_NV"("0x04") + "GL_GLYPH_HORIZONTAL_BEARING_Y_BIT_NV"("0x08") + "GL_GLYPH_HORIZONTAL_BEARING_ADVANCE_BIT_NV"("0x10") + "GL_GLYPH_VERTICAL_BEARING_X_BIT_NV"("0x20") + "GL_GLYPH_VERTICAL_BEARING_Y_BIT_NV"("0x40") + "GL_GLYPH_VERTICAL_BEARING_ADVANCE_BIT_NV"("0x80") + "GL_GLYPH_HAS_KERNING_BIT_NV"("0x100") + "GL_FONT_X_MIN_BOUNDS_BIT_NV"("0x00010000") + "GL_FONT_Y_MIN_BOUNDS_BIT_NV"("0x00020000") + "GL_FONT_X_MAX_BOUNDS_BIT_NV"("0x00040000") + "GL_FONT_Y_MAX_BOUNDS_BIT_NV"("0x00080000") + "GL_FONT_UNITS_PER_EM_BIT_NV"("0x00100000") + "GL_FONT_ASCENDER_BIT_NV"("0x00200000") + "GL_FONT_DESCENDER_BIT_NV"("0x00400000") + "GL_FONT_HEIGHT_BIT_NV"("0x00800000") + "GL_FONT_MAX_ADVANCE_WIDTH_BIT_NV"("0x01000000") + "GL_FONT_MAX_ADVANCE_HEIGHT_BIT_NV"("0x02000000") + "GL_FONT_UNDERLINE_POSITION_BIT_NV"("0x04000000") + "GL_FONT_UNDERLINE_THICKNESS_BIT_NV"("0x08000000") + "GL_FONT_HAS_KERNING_BIT_NV"("0x10000000") + "GL_ROUNDED_RECT_NV"("0xE8") + "GL_RELATIVE_ROUNDED_RECT_NV"("0xE9") + "GL_ROUNDED_RECT2_NV"("0xEA") + "GL_RELATIVE_ROUNDED_RECT2_NV"("0xEB") + "GL_ROUNDED_RECT4_NV"("0xEC") + "GL_RELATIVE_ROUNDED_RECT4_NV"("0xED") + "GL_ROUNDED_RECT8_NV"("0xEE") + "GL_RELATIVE_ROUNDED_RECT8_NV"("0xEF") + "GL_RELATIVE_RECT_NV"("0xF7") + "GL_FONT_GLYPHS_AVAILABLE_NV"("0x9368") + "GL_FONT_TARGET_UNAVAILABLE_NV"("0x9369") + "GL_FONT_UNAVAILABLE_NV"("0x936A") + "GL_FONT_UNINTELLIGIBLE_NV"("0x936B") + "GL_CONIC_CURVE_TO_NV"("0x1A") + "GL_RELATIVE_CONIC_CURVE_TO_NV"("0x1B") + "GL_FONT_NUM_GLYPH_INDICES_BIT_NV"("0x20000000") + "GL_STANDARD_FONT_FORMAT_NV"("0x936C") + "GL_2_BYTES_NV"("0x1407") + "GL_3_BYTES_NV"("0x1408") + "GL_4_BYTES_NV"("0x1409") + "GL_EYE_LINEAR_NV"("0x2400") + "GL_OBJECT_LINEAR_NV"("0x2401") + "GL_CONSTANT_NV"("0x8576") + "GL_PATH_FOG_GEN_MODE_NV"("0x90AC") + "GL_PRIMARY_COLOR_NV"("0x852C") + "GL_SECONDARY_COLOR_NV"("0x852D") + "GL_PATH_GEN_COLOR_FORMAT_NV"("0x90B2") + "GL_PATH_PROJECTION_NV"("0x1701") + "GL_PATH_MODELVIEW_NV"("0x1700") + "GL_PATH_MODELVIEW_STACK_DEPTH_NV"("0x0BA3") + "GL_PATH_MODELVIEW_MATRIX_NV"("0x0BA6") + "GL_PATH_MAX_MODELVIEW_STACK_DEPTH_NV"("0x0D36") + "GL_PATH_TRANSPOSE_MODELVIEW_MATRIX_NV"("0x84E3") + "GL_PATH_PROJECTION_STACK_DEPTH_NV"("0x0BA4") + "GL_PATH_PROJECTION_MATRIX_NV"("0x0BA7") + "GL_PATH_MAX_PROJECTION_STACK_DEPTH_NV"("0x0D38") + "GL_PATH_TRANSPOSE_PROJECTION_MATRIX_NV"("0x84E4") + "GL_FRAGMENT_INPUT_NV"("0x936D") + "glGenPathsNV"(GLuint, GLsizei("range")) + "glDeletePathsNV"(void, GLuint("path"), GLsizei("range")) + "glIsPathNV"(GLboolean, GLuint("path")) + "glPathCommandsNV"( + void, + GLuint("path"), + GLsizei("numCommands"), + address("commands", "const GLubyte *"), + GLsizei("numCoords"), + GLenum("coordType"), + address("coords", "const void *") + ) + "glPathCoordsNV"( + void, + GLuint("path"), + GLsizei("numCoords"), + GLenum("coordType"), + address("coords", "const void *") + ) + "glPathSubCommandsNV"( + void, + GLuint("path"), + GLsizei("commandStart"), + GLsizei("commandsToDelete"), + GLsizei("numCommands"), + address("commands", "const GLubyte *"), + GLsizei("numCoords"), + GLenum("coordType"), + address("coords", "const void *") + ) + "glPathSubCoordsNV"( + void, + GLuint("path"), + GLsizei("coordStart"), + GLsizei("numCoords"), + GLenum("coordType"), + address("coords", "const void *") + ) + "glPathStringNV"( + void, + GLuint("path"), + GLenum("format"), + GLsizei("length"), + address("pathString", "const void *") + ) + "glPathGlyphsNV"( + void, + GLuint("firstPathName"), + GLenum("fontTarget"), + address("fontName", "const void *"), + GLbitfield("fontStyle"), + GLsizei("numGlyphs"), + GLenum("type"), + address("charcodes", "const void *"), + GLenum("handleMissingGlyphs"), + GLuint("pathParameterTemplate"), + GLfloat("emScale") + ) + "glPathGlyphRangeNV"( + void, + GLuint("firstPathName"), + GLenum("fontTarget"), + address("fontName", "const void *"), + GLbitfield("fontStyle"), + GLuint("firstGlyph"), + GLsizei("numGlyphs"), + GLenum("handleMissingGlyphs"), + GLuint("pathParameterTemplate"), + GLfloat("emScale") + ) + "glWeightPathsNV"( + void, + GLuint("resultPath"), + GLsizei("numPaths"), + address("paths", "const GLuint *"), + address("weights", "const GLfloat *") + ) + "glCopyPathNV"(void, GLuint("resultPath"), GLuint("srcPath")) + "glInterpolatePathsNV"(void, GLuint("resultPath"), GLuint("pathA"), GLuint("pathB"), GLfloat("weight")) + "glTransformPathNV"( + void, + GLuint("resultPath"), + GLuint("srcPath"), + GLenum("transformType"), + address("transformValues", "const GLfloat *") + ) + "glPathParameterivNV"(void, GLuint("path"), GLenum("pname"), address("value", "const GLint *")) + "glPathParameteriNV"(void, GLuint("path"), GLenum("pname"), GLint("value")) + "glPathParameterfvNV"(void, GLuint("path"), GLenum("pname"), address("value", "const GLfloat *")) + "glPathParameterfNV"(void, GLuint("path"), GLenum("pname"), GLfloat("value")) + "glPathDashArrayNV"(void, GLuint("path"), GLsizei("dashCount"), address("dashArray", "const GLfloat *")) + "glPathStencilFuncNV"(void, GLenum("func"), GLint("ref"), GLuint("mask")) + "glPathStencilDepthOffsetNV"(void, GLfloat("factor"), GLfloat("units")) + "glStencilFillPathNV"(void, GLuint("path"), GLenum("fillMode"), GLuint("mask")) + "glStencilStrokePathNV"(void, GLuint("path"), GLint("reference"), GLuint("mask")) + "glStencilFillPathInstancedNV"( + void, + GLsizei("numPaths"), + GLenum("pathNameType"), + address("paths", "const void *"), + GLuint("pathBase"), + GLenum("fillMode"), + GLuint("mask"), + GLenum("transformType"), + address("transformValues", "const GLfloat *") + ) + "glStencilStrokePathInstancedNV"( + void, + GLsizei("numPaths"), + GLenum("pathNameType"), + address("paths", "const void *"), + GLuint("pathBase"), + GLint("reference"), + GLuint("mask"), + GLenum("transformType"), + address("transformValues", "const GLfloat *") + ) + "glPathCoverDepthFuncNV"(void, GLenum("func")) + "glCoverFillPathNV"(void, GLuint("path"), GLenum("coverMode")) + "glCoverStrokePathNV"(void, GLuint("path"), GLenum("coverMode")) + "glCoverFillPathInstancedNV"( + void, + GLsizei("numPaths"), + GLenum("pathNameType"), + address("paths", "const void *"), + GLuint("pathBase"), + GLenum("coverMode"), + GLenum("transformType"), + address("transformValues", "const GLfloat *") + ) + "glCoverStrokePathInstancedNV"( + void, + GLsizei("numPaths"), + GLenum("pathNameType"), + address("paths", "const void *"), + GLuint("pathBase"), + GLenum("coverMode"), + GLenum("transformType"), + address("transformValues", "const GLfloat *") + ) + "glGetPathParameterivNV"(void, GLuint("path"), GLenum("pname"), address("value", "GLint *")) + "glGetPathParameterfvNV"(void, GLuint("path"), GLenum("pname"), address("value", "GLfloat *")) + "glGetPathCommandsNV"(void, GLuint("path"), address("commands", "GLubyte *")) + "glGetPathCoordsNV"(void, GLuint("path"), address("coords", "GLfloat *")) + "glGetPathDashArrayNV"(void, GLuint("path"), address("dashArray", "GLfloat *")) + "glGetPathMetricsNV"( + void, + GLbitfield("metricQueryMask"), + GLsizei("numPaths"), + GLenum("pathNameType"), + address("paths", "const void *"), + GLuint("pathBase"), + GLsizei("stride"), + address("metrics", "GLfloat *") + ) + "glGetPathMetricRangeNV"( + void, + GLbitfield("metricQueryMask"), + GLuint("firstPathName"), + GLsizei("numPaths"), + GLsizei("stride"), + address("metrics", "GLfloat *") + ) + "glGetPathSpacingNV"( + void, + GLenum("pathListMode"), + GLsizei("numPaths"), + GLenum("pathNameType"), + address("paths", "const void *"), + GLuint("pathBase"), + GLfloat("advanceScale"), + GLfloat("kerningScale"), + GLenum("transformType"), + address("returnedSpacing", "GLfloat *") + ) + "glIsPointInFillPathNV"(GLboolean, GLuint("path"), GLuint("mask"), GLfloat("x"), GLfloat("y")) + "glIsPointInStrokePathNV"(GLboolean, GLuint("path"), GLfloat("x"), GLfloat("y")) + "glGetPathLengthNV"(GLfloat, GLuint("path"), GLsizei("startSegment"), GLsizei("numSegments")) + "glPointAlongPathNV"( + GLboolean, + GLuint("path"), + GLsizei("startSegment"), + GLsizei("numSegments"), + GLfloat("distance"), + address("x", "GLfloat *"), + address("y", "GLfloat *"), + address("tangentX", "GLfloat *"), + address("tangentY", "GLfloat *") + ) + "glMatrixLoad3x2fNV"(void, GLenum("matrixMode"), address("m", "const GLfloat *")) + "glMatrixLoad3x3fNV"(void, GLenum("matrixMode"), address("m", "const GLfloat *")) + "glMatrixLoadTranspose3x3fNV"(void, GLenum("matrixMode"), address("m", "const GLfloat *")) + "glMatrixMult3x2fNV"(void, GLenum("matrixMode"), address("m", "const GLfloat *")) + "glMatrixMult3x3fNV"(void, GLenum("matrixMode"), address("m", "const GLfloat *")) + "glMatrixMultTranspose3x3fNV"(void, GLenum("matrixMode"), address("m", "const GLfloat *")) + "glStencilThenCoverFillPathNV"(void, GLuint("path"), GLenum("fillMode"), GLuint("mask"), GLenum("coverMode")) + "glStencilThenCoverStrokePathNV"(void, GLuint("path"), GLint("reference"), GLuint("mask"), GLenum("coverMode")) + "glStencilThenCoverFillPathInstancedNV"( + void, + GLsizei("numPaths"), + GLenum("pathNameType"), + address("paths", "const void *"), + GLuint("pathBase"), + GLenum("fillMode"), + GLuint("mask"), + GLenum("coverMode"), + GLenum("transformType"), + address("transformValues", "const GLfloat *") + ) + "glStencilThenCoverStrokePathInstancedNV"( + void, + GLsizei("numPaths"), + GLenum("pathNameType"), + address("paths", "const void *"), + GLuint("pathBase"), + GLint("reference"), + GLuint("mask"), + GLenum("coverMode"), + GLenum("transformType"), + address("transformValues", "const GLfloat *") + ) + "glPathGlyphIndexRangeNV"( + GLenum, + GLenum("fontTarget"), + address("fontName", "const void *"), + GLbitfield("fontStyle"), + GLuint("pathParameterTemplate"), + GLfloat("emScale"), + address("baseAndCount", "GLuint *") + ) + "glPathGlyphIndexArrayNV"( + GLenum, + GLuint("firstPathName"), + GLenum("fontTarget"), + address("fontName", "const void *"), + GLbitfield("fontStyle"), + GLuint("firstGlyphIndex"), + GLsizei("numGlyphs"), + GLuint("pathParameterTemplate"), + GLfloat("emScale") + ) + "glPathMemoryGlyphIndexArrayNV"( + GLenum, + GLuint("firstPathName"), + GLenum("fontTarget"), + GLsizeiptr("fontSize"), + address("fontData", "const void *"), + GLsizei("faceIndex"), + GLuint("firstGlyphIndex"), + GLsizei("numGlyphs"), + GLuint("pathParameterTemplate"), + GLfloat("emScale") + ) + "glProgramPathFragmentInputGenNV"( + void, + GLuint("program"), + GLint("location"), + GLenum("genMode"), + GLint("components"), + address("coeffs", "const GLfloat *") + ) + "glGetProgramResourcefvNV"( + void, + GLuint("program"), + GLenum("programInterface"), + GLuint("index"), + GLsizei("propCount"), + address("props", "const GLenum *"), + GLsizei("count"), + address("length", "GLsizei *"), + address("params", "GLfloat *") + ) + "glPathColorGenNV"( + void, + GLenum("color"), + GLenum("genMode"), + GLenum("colorFormat"), + address("coeffs", "const GLfloat *") + ) + "glPathTexGenNV"( + void, + GLenum("texCoordSet"), + GLenum("genMode"), + GLint("components"), + address("coeffs", "const GLfloat *") + ) + "glPathFogGenNV"(void, GLenum("genMode")) + "glGetPathColorGenivNV"(void, GLenum("color"), GLenum("pname"), address("value", "GLint *")) + "glGetPathColorGenfvNV"(void, GLenum("color"), GLenum("pname"), address("value", "GLfloat *")) + "glGetPathTexGenivNV"(void, GLenum("texCoordSet"), GLenum("pname"), address("value", "GLint *")) + "glGetPathTexGenfvNV"(void, GLenum("texCoordSet"), GLenum("pname"), address("value", "GLfloat *")) + } + file("PathRenderingSharedEdge", NV, "GL_NV_path_rendering_shared_edge", "GL_SHARED_EDGE_NV" to "0xC0") +} diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt index ffcefd2b..8e23425e 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt @@ -123,6 +123,7 @@ val GLhandleARB = int // Don't know how to handle on APPLE val GLcharARB = byte val GLint64EXT = long val GLuint64EXT = long +val GLhalfNV = short data class Parameter( val type: Type, @@ -288,1624 +289,6 @@ fun file( } } -fun arb() { - file("ES32Compatibility", ARB, "GL_ARB_ES3_2_compatibility") { - "GL_PRIMITIVE_BOUNDING_BOX_ARB"("0x92BE") - "GL_MULTISAMPLE_LINE_WIDTH_RANGE_ARB"("0x9381") - "GL_MULTISAMPLE_LINE_WIDTH_GRANULARITY_ARB"("0x9382") - "glPrimitiveBoundingBoxARB"( - void, - GLfloat("minX"), - GLfloat("minY"), - GLfloat("minZ"), - GLfloat("minW"), - GLfloat("maxX"), - GLfloat("maxY"), - GLfloat("maxZ"), - GLfloat("maxW") - ) - } - file("BindlessTexture", ARB, "GL_ARB_bindless_texture") { - "GL_UNSIGNED_INT64_ARB"("0x140F") - "glGetTextureHandleARB"(GLuint64, GLuint("texture")) - "glGetTextureSamplerHandleARB"(GLuint64, GLuint("texture"), GLuint("sampler")) - "glMakeTextureHandleResidentARB"(void, GLuint64("handle")) - "glMakeTextureHandleNonResidentARB"(void, GLuint64("handle")) - "glGetImageHandleARB"( - GLuint64, - GLuint("texture"), - GLint("level"), - GLboolean("layered"), - GLint("layer"), - GLenum("format") - ) - "glMakeImageHandleResidentARB"(void, GLuint64("handle"), GLenum("access")) - "glMakeImageHandleNonResidentARB"(void, GLuint64("handle")) - "glUniformHandleui64ARB"(void, GLint("location"), GLuint64("value")) - "glUniformHandleui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) - "glProgramUniformHandleui64ARB"(void, GLuint("program"), GLint("location"), GLuint64("value")) - "glProgramUniformHandleui64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("values", "const GLuint64 *") - ) - "glIsTextureHandleResidentARB"(GLboolean, GLuint64("handle")) - "glIsImageHandleResidentARB"(GLboolean, GLuint64("handle")) - "glVertexAttribL1ui64ARB"(void, GLuint("index"), GLuint64EXT("x")) - "glVertexAttribL1ui64vARB"(void, GLuint("index"), address("v", "const GLuint64EXT *")) - "glGetVertexAttribLui64vARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLuint64EXT *")) - } - file("CLEvent", ARB, "GL_ARB_cl_event") { - "GL_SYNC_CL_EVENT_ARB"("0x8240") - "GL_SYNC_CL_EVENT_COMPLETE_ARB"("0x8241") - "glCreateSyncFromCLeventARB"( - address, - address("context", "struct _cl_context *"), - address("event", "struct _cl_event *"), - GLbitfield("flags"), - nativeType = "GLsync" - ) - } - file("ColorBufferFloat", ARB, "GL_ARB_color_buffer_float") { - "GL_RGBA_FLOAT_MODE_ARB"("0x8820") - "GL_CLAMP_VERTEX_COLOR_ARB"("0x891A") - "GL_CLAMP_FRAGMENT_COLOR_ARB"("0x891B") - "GL_CLAMP_READ_COLOR_ARB"("0x891C") - "GL_FIXED_ONLY_ARB"("0x891D") - "glClampColorARB"(void, GLenum("target"), GLenum("clamp")) - } - file("ComputeVariableGroupSize", ARB, "GL_ARB_compute_variable_group_size") { - "GL_MAX_COMPUTE_VARIABLE_GROUP_INVOCATIONS_ARB"("0x9344") - "GL_MAX_COMPUTE_FIXED_GROUP_INVOCATIONS_ARB"("0x90EB") - "GL_MAX_COMPUTE_VARIABLE_GROUP_SIZE_ARB"("0x9345") - "GL_MAX_COMPUTE_FIXED_GROUP_SIZE_ARB"("0x91BF") - "glDispatchComputeGroupSizeARB"( - void, - GLuint("num_groups_x"), - GLuint("num_groups_y"), - GLuint("num_groups_z"), - GLuint("group_size_x"), - GLuint("group_size_y"), - GLuint("group_size_z") - ) - } - file("DebugOutput", ARB, "GL_ARB_debug_output") { - "GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB"("0x8242") - "GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB"("0x8243") - "GL_DEBUG_CALLBACK_FUNCTION_ARB"("0x8244") - "GL_DEBUG_CALLBACK_USER_PARAM_ARB"("0x8245") - "GL_DEBUG_SOURCE_API_ARB"("0x8246") - "GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB"("0x8247") - "GL_DEBUG_SOURCE_SHADER_COMPILER_ARB"("0x8248") - "GL_DEBUG_SOURCE_THIRD_PARTY_ARB"("0x8249") - "GL_DEBUG_SOURCE_APPLICATION_ARB"("0x824A") - "GL_DEBUG_SOURCE_OTHER_ARB"("0x824B") - "GL_DEBUG_TYPE_ERROR_ARB"("0x824C") - "GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB"("0x824D") - "GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB"("0x824E") - "GL_DEBUG_TYPE_PORTABILITY_ARB"("0x824F") - "GL_DEBUG_TYPE_PERFORMANCE_ARB"("0x8250") - "GL_DEBUG_TYPE_OTHER_ARB"("0x8251") - "GL_MAX_DEBUG_MESSAGE_LENGTH_ARB"("0x9143") - "GL_MAX_DEBUG_LOGGED_MESSAGES_ARB"("0x9144") - "GL_DEBUG_LOGGED_MESSAGES_ARB"("0x9145") - "GL_DEBUG_SEVERITY_HIGH_ARB"("0x9146") - "GL_DEBUG_SEVERITY_MEDIUM_ARB"("0x9147") - "GL_DEBUG_SEVERITY_LOW_ARB"("0x9148") - "glDebugMessageControlARB"( - void, - GLenum("source"), - GLenum("type"), - GLenum("severity"), - GLsizei("count"), - address("ids", "const GLuint *"), - GLboolean("enabled") - ) - "glDebugMessageInsertARB"( - void, - GLenum("source"), - GLenum("type"), - GLuint("id"), - GLenum("severity"), - GLsizei("length"), - address("buf", "const GLchar *") - ) - ("glDebugMessageCallbackARB"( - void, - address("callback", "GLDEBUGPROCARB"), - address("userParam", "const void *") - )) { - "glDebugMessageCallbackARB"( - void, - "glDebugMessageCallbackARB(callback.address(arena), userParam);", - arena("arena"), - Type("GLDebugProc", null)("callback"), - address("userParam", "const void *") - ) - } - "glGetDebugMessageLogARB"( - GLuint, - GLuint("count"), - GLsizei("bufSize"), - address("sources", "GLenum *"), - address("types", "GLenum *"), - address("ids", "GLuint *"), - address("severities", "GLenum *"), - address("lengths", "GLsizei *"), - address("messageLog", "GLchar *") - ) - } - file( - "DepthTexture", ARB, "GL_ARB_depth_texture", - "GL_DEPTH_COMPONENT16_ARB" to "0x81A5", - "GL_DEPTH_COMPONENT24_ARB" to "0x81A6", - "GL_DEPTH_COMPONENT32_ARB" to "0x81A7", - "GL_TEXTURE_DEPTH_SIZE_ARB" to "0x884A", - "GL_DEPTH_TEXTURE_MODE_ARB" to "0x884B" - ) - file("DrawBuffers", ARB, "GL_ARB_draw_buffers") { - "GL_MAX_DRAW_BUFFERS_ARB"("0x8824") - "GL_DRAW_BUFFER0_ARB"("0x8825") - "GL_DRAW_BUFFER1_ARB"("0x8826") - "GL_DRAW_BUFFER2_ARB"("0x8827") - "GL_DRAW_BUFFER3_ARB"("0x8828") - "GL_DRAW_BUFFER4_ARB"("0x8829") - "GL_DRAW_BUFFER5_ARB"("0x882A") - "GL_DRAW_BUFFER6_ARB"("0x882B") - "GL_DRAW_BUFFER7_ARB"("0x882C") - "GL_DRAW_BUFFER8_ARB"("0x882D") - "GL_DRAW_BUFFER9_ARB"("0x882E") - "GL_DRAW_BUFFER10_ARB"("0x882F") - "GL_DRAW_BUFFER11_ARB"("0x8830") - "GL_DRAW_BUFFER12_ARB"("0x8831") - "GL_DRAW_BUFFER13_ARB"("0x8832") - "GL_DRAW_BUFFER14_ARB"("0x8833") - "GL_DRAW_BUFFER15_ARB"("0x8834") - "glDrawBuffersARB"(void, GLsizei("n"), address("bufs", "const GLenum *")) - } - file("DrawBuffersBlend", ARB, "GL_ARB_draw_buffers_blend") { - "glBlendEquationiARB"(void, GLuint("buf"), GLenum("mode")) - "glBlendEquationSeparateiARB"(void, GLuint("buf"), GLenum("modeRGB"), GLenum("modeAlpha")) - "glBlendFunciARB"(void, GLuint("buf"), GLenum("src"), GLenum("dst")) - "glBlendFuncSeparateiARB"( - void, - GLuint("buf"), - GLenum("srcRGB"), - GLenum("dstRGB"), - GLenum("srcAlpha"), - GLenum("dstAlpha") - ) - } - file("DrawInstanced", ARB, "GL_ARB_draw_instanced") { - "glDrawArraysInstancedARB"(void, GLenum("mode"), GLint("first"), GLsizei("count"), GLsizei("primcount")) - "glDrawElementsInstancedARB"( - void, - GLenum("mode"), - GLsizei("count"), - GLenum("type"), - address("indices", "const void *"), - GLsizei("primcount") - ) - } - file("FragmentProgram", ARB, "GL_ARB_fragment_program") { - "GL_FRAGMENT_PROGRAM_ARB"("0x8804") - "GL_PROGRAM_FORMAT_ASCII_ARB"("0x8875") - "GL_PROGRAM_LENGTH_ARB"("0x8627") - "GL_PROGRAM_FORMAT_ARB"("0x8876") - "GL_PROGRAM_BINDING_ARB"("0x8677") - "GL_PROGRAM_INSTRUCTIONS_ARB"("0x88A0") - "GL_MAX_PROGRAM_INSTRUCTIONS_ARB"("0x88A1") - "GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB"("0x88A2") - "GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB"("0x88A3") - "GL_PROGRAM_TEMPORARIES_ARB"("0x88A4") - "GL_MAX_PROGRAM_TEMPORARIES_ARB"("0x88A5") - "GL_PROGRAM_NATIVE_TEMPORARIES_ARB"("0x88A6") - "GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB"("0x88A7") - "GL_PROGRAM_PARAMETERS_ARB"("0x88A8") - "GL_MAX_PROGRAM_PARAMETERS_ARB"("0x88A9") - "GL_PROGRAM_NATIVE_PARAMETERS_ARB"("0x88AA") - "GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB"("0x88AB") - "GL_PROGRAM_ATTRIBS_ARB"("0x88AC") - "GL_MAX_PROGRAM_ATTRIBS_ARB"("0x88AD") - "GL_PROGRAM_NATIVE_ATTRIBS_ARB"("0x88AE") - "GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB"("0x88AF") - "GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB"("0x88B4") - "GL_MAX_PROGRAM_ENV_PARAMETERS_ARB"("0x88B5") - "GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB"("0x88B6") - "GL_PROGRAM_ALU_INSTRUCTIONS_ARB"("0x8805") - "GL_PROGRAM_TEX_INSTRUCTIONS_ARB"("0x8806") - "GL_PROGRAM_TEX_INDIRECTIONS_ARB"("0x8807") - "GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB"("0x8808") - "GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB"("0x8809") - "GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB"("0x880A") - "GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB"("0x880B") - "GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB"("0x880C") - "GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB"("0x880D") - "GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB"("0x880E") - "GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB"("0x880F") - "GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB"("0x8810") - "GL_PROGRAM_STRING_ARB"("0x8628") - "GL_PROGRAM_ERROR_POSITION_ARB"("0x864B") - "GL_CURRENT_MATRIX_ARB"("0x8641") - "GL_TRANSPOSE_CURRENT_MATRIX_ARB"("0x88B7") - "GL_CURRENT_MATRIX_STACK_DEPTH_ARB"("0x8640") - "GL_MAX_PROGRAM_MATRICES_ARB"("0x862F") - "GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB"("0x862E") - "GL_MAX_TEXTURE_COORDS_ARB"("0x8871") - "GL_MAX_TEXTURE_IMAGE_UNITS_ARB"("0x8872") - "GL_PROGRAM_ERROR_STRING_ARB"("0x8874") - "GL_MATRIX0_ARB"("0x88C0") - "GL_MATRIX1_ARB"("0x88C1") - "GL_MATRIX2_ARB"("0x88C2") - "GL_MATRIX3_ARB"("0x88C3") - "GL_MATRIX4_ARB"("0x88C4") - "GL_MATRIX5_ARB"("0x88C5") - "GL_MATRIX6_ARB"("0x88C6") - "GL_MATRIX7_ARB"("0x88C7") - "GL_MATRIX8_ARB"("0x88C8") - "GL_MATRIX9_ARB"("0x88C9") - "GL_MATRIX10_ARB"("0x88CA") - "GL_MATRIX11_ARB"("0x88CB") - "GL_MATRIX12_ARB"("0x88CC") - "GL_MATRIX13_ARB"("0x88CD") - "GL_MATRIX14_ARB"("0x88CE") - "GL_MATRIX15_ARB"("0x88CF") - "GL_MATRIX16_ARB"("0x88D0") - "GL_MATRIX17_ARB"("0x88D1") - "GL_MATRIX18_ARB"("0x88D2") - "GL_MATRIX19_ARB"("0x88D3") - "GL_MATRIX20_ARB"("0x88D4") - "GL_MATRIX21_ARB"("0x88D5") - "GL_MATRIX22_ARB"("0x88D6") - "GL_MATRIX23_ARB"("0x88D7") - "GL_MATRIX24_ARB"("0x88D8") - "GL_MATRIX25_ARB"("0x88D9") - "GL_MATRIX26_ARB"("0x88DA") - "GL_MATRIX27_ARB"("0x88DB") - "GL_MATRIX28_ARB"("0x88DC") - "GL_MATRIX29_ARB"("0x88DD") - "GL_MATRIX30_ARB"("0x88DE") - "GL_MATRIX31_ARB"("0x88DF") - "glProgramStringARB"( - void, - GLenum("target"), - GLenum("format"), - GLsizei("len"), - address("string", "const void *") - ) - "glBindProgramARB"(void, GLenum("target"), GLuint("program")) - "glDeleteProgramsARB"(void, GLsizei("n"), address("programs", "const GLuint *")) - "glGenProgramsARB"(void, GLsizei("n"), address("programs", "GLuint *")) - "glProgramEnvParameter4dARB"( - void, - GLenum("target"), - GLuint("index"), - GLdouble("x"), - GLdouble("y"), - GLdouble("z"), - GLdouble("w") - ) - "glProgramEnvParameter4dvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLdouble *")) - "glProgramEnvParameter4fARB"( - void, - GLenum("target"), - GLuint("index"), - GLfloat("x"), - GLfloat("y"), - GLfloat("z"), - GLfloat("w") - ) - "glProgramEnvParameter4fvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLfloat *")) - "glProgramLocalParameter4dARB"( - void, - GLenum("target"), - GLuint("index"), - GLdouble("x"), - GLdouble("y"), - GLdouble("z"), - GLdouble("w") - ) - "glProgramLocalParameter4dvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLdouble *")) - "glProgramLocalParameter4fARB"( - void, - GLenum("target"), - GLuint("index"), - GLfloat("x"), - GLfloat("y"), - GLfloat("z"), - GLfloat("w") - ) - "glProgramLocalParameter4fvARB"(void, GLenum("target"), GLuint("index"), address("params", "const GLfloat *")) - "glGetProgramEnvParameterdvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLdouble *")) - "glGetProgramEnvParameterfvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLfloat *")) - "glGetProgramLocalParameterdvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLdouble *")) - "glGetProgramLocalParameterfvARB"(void, GLenum("target"), GLuint("index"), address("params", "GLfloat *")) - "glGetProgramivARB"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) - "glGetProgramStringARB"(void, GLenum("target"), GLenum("pname"), address("string", "void *")) - "glIsProgramARB"(GLboolean, GLuint("program")) - } - file( - "FragmentShader", ARB, "GL_ARB_fragment_shader", - "GL_FRAGMENT_SHADER_ARB" to "0x8B30", - "GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB" to "0x8B49", - "GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB" to "0x8B8B" - ) - file("GeometryShader4", ARB, "GL_ARB_geometry_shader4") { - "GL_LINES_ADJACENCY_ARB"("0x000A") - "GL_LINE_STRIP_ADJACENCY_ARB"("0x000B") - "GL_TRIANGLES_ADJACENCY_ARB"("0x000C") - "GL_TRIANGLE_STRIP_ADJACENCY_ARB"("0x000D") - "GL_PROGRAM_POINT_SIZE_ARB"("0x8642") - "GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB"("0x8C29") - "GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB"("0x8DA7") - "GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB"("0x8DA8") - "GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB"("0x8DA9") - "GL_GEOMETRY_SHADER_ARB"("0x8DD9") - "GL_GEOMETRY_VERTICES_OUT_ARB"("0x8DDA") - "GL_GEOMETRY_INPUT_TYPE_ARB"("0x8DDB") - "GL_GEOMETRY_OUTPUT_TYPE_ARB"("0x8DDC") - "GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB"("0x8DDD") - "GL_MAX_VERTEX_VARYING_COMPONENTS_ARB"("0x8DDE") - "GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB"("0x8DDF") - "GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB"("0x8DE0") - "GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB"("0x8DE1") - "glProgramParameteriARB"(void, GLuint("program"), GLenum("pname"), GLint("value")) - "glFramebufferTextureARB"(void, GLenum("target"), GLenum("attachment"), GLuint("texture"), GLint("level")) - "glFramebufferTextureLayerARB"( - void, - GLenum("target"), - GLenum("attachment"), - GLuint("texture"), - GLint("level"), - GLint("layer") - ) - "glFramebufferTextureFaceARB"( - void, - GLenum("target"), - GLenum("attachment"), - GLuint("texture"), - GLint("level"), - GLenum("face") - ) - } - file("GLSpirv", ARB, "GL_ARB_gl_spirv") { - "GL_SHADER_BINARY_FORMAT_SPIR_V_ARB"("0x9551") - "GL_SPIR_V_BINARY_ARB"("0x9552") - "glSpecializeShaderARB"( - void, - GLuint("shader"), - address("pEntryPoint", "const GLchar *"), - GLuint("numSpecializationConstants"), - address("pConstantIndex", "const GLuint *"), - address("pConstantValue", "const GLuint *") - ) - } - file("GpuShaderInt64", ARB, "GL_ARB_gpu_shader_int64") { - "GL_INT64_ARB"("0x140E") - "GL_INT64_VEC2_ARB"("0x8FE9") - "GL_INT64_VEC3_ARB"("0x8FEA") - "GL_INT64_VEC4_ARB"("0x8FEB") - "GL_UNSIGNED_INT64_VEC2_ARB"("0x8FF5") - "GL_UNSIGNED_INT64_VEC3_ARB"("0x8FF6") - "GL_UNSIGNED_INT64_VEC4_ARB"("0x8FF7") - "glUniform1i64ARB"(void, GLint("location"), GLint64("x")) - "glUniform2i64ARB"(void, GLint("location"), GLint64("x"), GLint64("y")) - "glUniform3i64ARB"(void, GLint("location"), GLint64("x"), GLint64("y"), GLint64("z")) - "glUniform4i64ARB"(void, GLint("location"), GLint64("x"), GLint64("y"), GLint64("z"), GLint64("w")) - "glUniform1i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) - "glUniform2i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) - "glUniform3i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) - "glUniform4i64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64 *")) - "glUniform1ui64ARB"(void, GLint("location"), GLuint64("x")) - "glUniform2ui64ARB"(void, GLint("location"), GLuint64("x"), GLuint64("y")) - "glUniform3ui64ARB"(void, GLint("location"), GLuint64("x"), GLuint64("y"), GLuint64("z")) - "glUniform4ui64ARB"(void, GLint("location"), GLuint64("x"), GLuint64("y"), GLuint64("z"), GLuint64("w")) - "glUniform1ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) - "glUniform2ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) - "glUniform3ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) - "glUniform4ui64vARB"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) - "glGetUniformi64vARB"(void, GLuint("program"), GLint("location"), address("params", "GLint64 *")) - "glGetUniformui64vARB"(void, GLuint("program"), GLint("location"), address("params", "GLuint64 *")) - "glGetnUniformi64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("bufSize"), - address("params", "GLint64 *") - ) - "glGetnUniformui64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("bufSize"), - address("params", "GLuint64 *") - ) - "glProgramUniform1i64ARB"(void, GLuint("program"), GLint("location"), GLint64("x")) - "glProgramUniform2i64ARB"(void, GLuint("program"), GLint("location"), GLint64("x"), GLint64("y")) - "glProgramUniform3i64ARB"(void, GLuint("program"), GLint("location"), GLint64("x"), GLint64("y"), GLint64("z")) - "glProgramUniform4i64ARB"( - void, - GLuint("program"), - GLint("location"), - GLint64("x"), - GLint64("y"), - GLint64("z"), - GLint64("w") - ) - "glProgramUniform1i64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLint64 *") - ) - "glProgramUniform2i64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLint64 *") - ) - "glProgramUniform3i64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLint64 *") - ) - "glProgramUniform4i64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLint64 *") - ) - "glProgramUniform1ui64ARB"(void, GLuint("program"), GLint("location"), GLuint64("x")) - "glProgramUniform2ui64ARB"(void, GLuint("program"), GLint("location"), GLuint64("x"), GLuint64("y")) - "glProgramUniform3ui64ARB"( - void, - GLuint("program"), - GLint("location"), - GLuint64("x"), - GLuint64("y"), - GLuint64("z") - ) - "glProgramUniform4ui64ARB"( - void, - GLuint("program"), - GLint("location"), - GLuint64("x"), - GLuint64("y"), - GLuint64("z"), - GLuint64("w") - ) - "glProgramUniform1ui64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLuint64 *") - ) - "glProgramUniform2ui64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLuint64 *") - ) - "glProgramUniform3ui64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLuint64 *") - ) - "glProgramUniform4ui64vARB"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLuint64 *") - ) - } - file("HalfFloatPixel", ARB, "GL_ARB_half_float_pixel", "GL_HALF_FLOAT_ARB" to "0x140B") - file("Imaging", ARB, "GL_ARB_imaging") { - "GL_CONVOLUTION_BORDER_MODE"("0x8013") - "GL_CONVOLUTION_FILTER_SCALE"("0x8014") - "GL_CONVOLUTION_FILTER_BIAS"("0x8015") - "GL_REDUCE"("0x8016") - "GL_CONVOLUTION_FORMAT"("0x8017") - "GL_CONVOLUTION_WIDTH"("0x8018") - "GL_CONVOLUTION_HEIGHT"("0x8019") - "GL_MAX_CONVOLUTION_WIDTH"("0x801A") - "GL_MAX_CONVOLUTION_HEIGHT"("0x801B") - "GL_POST_CONVOLUTION_RED_SCALE"("0x801C") - "GL_POST_CONVOLUTION_GREEN_SCALE"("0x801D") - "GL_POST_CONVOLUTION_BLUE_SCALE"("0x801E") - "GL_POST_CONVOLUTION_ALPHA_SCALE"("0x801F") - "GL_POST_CONVOLUTION_RED_BIAS"("0x8020") - "GL_POST_CONVOLUTION_GREEN_BIAS"("0x8021") - "GL_POST_CONVOLUTION_BLUE_BIAS"("0x8022") - "GL_POST_CONVOLUTION_ALPHA_BIAS"("0x8023") - "GL_HISTOGRAM_WIDTH"("0x8026") - "GL_HISTOGRAM_FORMAT"("0x8027") - "GL_HISTOGRAM_RED_SIZE"("0x8028") - "GL_HISTOGRAM_GREEN_SIZE"("0x8029") - "GL_HISTOGRAM_BLUE_SIZE"("0x802A") - "GL_HISTOGRAM_ALPHA_SIZE"("0x802B") - "GL_HISTOGRAM_LUMINANCE_SIZE"("0x802C") - "GL_HISTOGRAM_SINK"("0x802D") - "GL_MINMAX_FORMAT"("0x802F") - "GL_MINMAX_SINK"("0x8030") - "GL_TABLE_TOO_LARGE"("0x8031") - "GL_COLOR_MATRIX"("0x80B1") - "GL_COLOR_MATRIX_STACK_DEPTH"("0x80B2") - "GL_MAX_COLOR_MATRIX_STACK_DEPTH"("0x80B3") - "GL_POST_COLOR_MATRIX_RED_SCALE"("0x80B4") - "GL_POST_COLOR_MATRIX_GREEN_SCALE"("0x80B5") - "GL_POST_COLOR_MATRIX_BLUE_SCALE"("0x80B6") - "GL_POST_COLOR_MATRIX_ALPHA_SCALE"("0x80B7") - "GL_POST_COLOR_MATRIX_RED_BIAS"("0x80B8") - "GL_POST_COLOR_MATRIX_GREEN_BIAS"("0x80B9") - "GL_POST_COLOR_MATRIX_BLUE_BIAS"("0x80BA") - "GL_POST_COLOR_MATRIX_ALPHA_BIAS"("0x80BB") - "GL_COLOR_TABLE_SCALE"("0x80D6") - "GL_COLOR_TABLE_BIAS"("0x80D7") - "GL_COLOR_TABLE_FORMAT"("0x80D8") - "GL_COLOR_TABLE_WIDTH"("0x80D9") - "GL_COLOR_TABLE_RED_SIZE"("0x80DA") - "GL_COLOR_TABLE_GREEN_SIZE"("0x80DB") - "GL_COLOR_TABLE_BLUE_SIZE"("0x80DC") - "GL_COLOR_TABLE_ALPHA_SIZE"("0x80DD") - "GL_COLOR_TABLE_LUMINANCE_SIZE"("0x80DE") - "GL_COLOR_TABLE_INTENSITY_SIZE"("0x80DF") - "GL_CONSTANT_BORDER"("0x8151") - "GL_REPLICATE_BORDER"("0x8153") - "GL_CONVOLUTION_BORDER_COLOR"("0x8154") - "glColorTable"( - void, - GLenum("target"), - GLenum("internalformat"), - GLsizei("width"), - GLenum("format"), - GLenum("type"), - address("table", "const void *") - ) - "glColorTableParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfloat *")) - "glColorTableParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) - "glCopyColorTable"(void, GLenum("target"), GLenum("internalformat"), GLint("x"), GLint("y"), GLsizei("width")) - "glGetColorTable"(void, GLenum("target"), GLenum("format"), GLenum("type"), address("table", "void *")) - "glGetColorTableParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) - "glGetColorTableParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) - "glColorSubTable"( - void, - GLenum("target"), - GLsizei("start"), - GLsizei("count"), - GLenum("format"), - GLenum("type"), - address("data", "const void *") - ) - "glCopyColorSubTable"(void, GLenum("target"), GLsizei("start"), GLint("x"), GLint("y"), GLsizei("width")) - "glConvolutionFilter1D"( - void, - GLenum("target"), - GLenum("internalformat"), - GLsizei("width"), - GLenum("format"), - GLenum("type"), - address("image", "const void *") - ) - "glConvolutionFilter2D"( - void, - GLenum("target"), - GLenum("internalformat"), - GLsizei("width"), - GLsizei("height"), - GLenum("format"), - GLenum("type"), - address("image", "const void *") - ) - "glConvolutionParameterf"(void, GLenum("target"), GLenum("pname"), GLfloat("params")) - "glConvolutionParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfloat *")) - "glConvolutionParameteri"(void, GLenum("target"), GLenum("pname"), GLint("params")) - "glConvolutionParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) - "glCopyConvolutionFilter1D"( - void, - GLenum("target"), - GLenum("internalformat"), - GLint("x"), - GLint("y"), - GLsizei("width") - ) - "glCopyConvolutionFilter2D"( - void, - GLenum("target"), - GLenum("internalformat"), - GLint("x"), - GLint("y"), - GLsizei("width"), - GLsizei("height") - ) - "glGetConvolutionFilter"(void, GLenum("target"), GLenum("format"), GLenum("type"), address("image", "void *")) - "glGetConvolutionParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) - "glGetConvolutionParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) - "glGetSeparableFilter"( - void, - GLenum("target"), - GLenum("format"), - GLenum("type"), - address("row", "void *"), - address("column", "void *"), - address("span", "void *") - ) - "glSeparableFilter2D"( - void, - GLenum("target"), - GLenum("internalformat"), - GLsizei("width"), - GLsizei("height"), - GLenum("format"), - GLenum("type"), - address("row", "const void *"), - address("column", "const void *") - ) - "glGetHistogram"( - void, - GLenum("target"), - GLboolean("reset"), - GLenum("format"), - GLenum("type"), - address("values", "void *") - ) - "glGetHistogramParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) - "glGetHistogramParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) - "glGetMinmax"( - void, - GLenum("target"), - GLboolean("reset"), - GLenum("format"), - GLenum("type"), - address("values", "void *") - ) - "glGetMinmaxParameterfv"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) - "glGetMinmaxParameteriv"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) - "glHistogram"(void, GLenum("target"), GLsizei("width"), GLenum("internalformat"), GLboolean("sink")) - "glMinmax"(void, GLenum("target"), GLenum("internalformat"), GLboolean("sink")) - "glResetHistogram"(void, GLenum("target")) - "glResetMinmax"(void, GLenum("target")) - } - file("IndirectParameters", ARB, "GL_ARB_indirect_parameters") { - "GL_PARAMETER_BUFFER_ARB"("0x80EE") - "GL_PARAMETER_BUFFER_BINDING_ARB"("0x80EF") - "glMultiDrawArraysIndirectCountARB"( - void, - GLenum("mode"), - address("indirect", "const void *"), - GLintptr("drawcount"), - GLsizei("maxdrawcount"), - GLsizei("stride") - ) - "glMultiDrawElementsIndirectCountARB"( - void, - GLenum("mode"), - GLenum("type"), - address("indirect", "const void *"), - GLintptr("drawcount"), - GLsizei("maxdrawcount"), - GLsizei("stride") - ) - } - file("InstancedArrays", ARB, "GL_ARB_instanced_arrays") { - "GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB"("0x88FE") - "glVertexAttribDivisorARB"(void, GLuint("index"), GLuint("divisor")) - } - file( - "InternalformatQuery2", ARB, "GL_ARB_internalformat_query2", - "GL_SRGB_DECODE_ARB" to "0x8299", - "GL_VIEW_CLASS_EAC_R11" to "0x9383", - "GL_VIEW_CLASS_EAC_RG11" to "0x9384", - "GL_VIEW_CLASS_ETC2_RGB" to "0x9385", - "GL_VIEW_CLASS_ETC2_RGBA" to "0x9386", - "GL_VIEW_CLASS_ETC2_EAC_RGBA" to "0x9387", - "GL_VIEW_CLASS_ASTC_4x4_RGBA" to "0x9388", - "GL_VIEW_CLASS_ASTC_5x4_RGBA" to "0x9389", - "GL_VIEW_CLASS_ASTC_5x5_RGBA" to "0x938A", - "GL_VIEW_CLASS_ASTC_6x5_RGBA" to "0x938B", - "GL_VIEW_CLASS_ASTC_6x6_RGBA" to "0x938C", - "GL_VIEW_CLASS_ASTC_8x5_RGBA" to "0x938D", - "GL_VIEW_CLASS_ASTC_8x6_RGBA" to "0x938E", - "GL_VIEW_CLASS_ASTC_8x8_RGBA" to "0x938F", - "GL_VIEW_CLASS_ASTC_10x5_RGBA" to "0x9390", - "GL_VIEW_CLASS_ASTC_10x6_RGBA" to "0x9391", - "GL_VIEW_CLASS_ASTC_10x8_RGBA" to "0x9392", - "GL_VIEW_CLASS_ASTC_10x10_RGBA" to "0x9393", - "GL_VIEW_CLASS_ASTC_12x10_RGBA" to "0x9394", - "GL_VIEW_CLASS_ASTC_12x12_RGBA" to "0x9395" - ) - file("MatrixPalette", ARB, "GL_ARB_matrix_palette") { - "GL_MATRIX_PALETTE_ARB"("0x8840") - "GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB"("0x8841") - "GL_MAX_PALETTE_MATRICES_ARB"("0x8842") - "GL_CURRENT_PALETTE_MATRIX_ARB"("0x8843") - "GL_MATRIX_INDEX_ARRAY_ARB"("0x8844") - "GL_CURRENT_MATRIX_INDEX_ARB"("0x8845") - "GL_MATRIX_INDEX_ARRAY_SIZE_ARB"("0x8846") - "GL_MATRIX_INDEX_ARRAY_TYPE_ARB"("0x8847") - "GL_MATRIX_INDEX_ARRAY_STRIDE_ARB"("0x8848") - "GL_MATRIX_INDEX_ARRAY_POINTER_ARB"("0x8849") - "glCurrentPaletteMatrixARB"(void, GLint("index")) - "glMatrixIndexubvARB"(void, GLint("size"), address("indices", "const GLubyte *")) - "glMatrixIndexusvARB"(void, GLint("size"), address("indices", "const GLushort *")) - "glMatrixIndexuivARB"(void, GLint("size"), address("indices", "const GLuint *")) - "glMatrixIndexPointerARB"( - void, - GLint("size"), - GLenum("type"), - GLsizei("stride"), - address("pointer", "const void *") - ) - } - file("Multisample", ARB, "GL_ARB_multisample") { - "GL_MULTISAMPLE_ARB"("0x809D") - "GL_SAMPLE_ALPHA_TO_COVERAGE_ARB"("0x809E") - "GL_SAMPLE_ALPHA_TO_ONE_ARB"("0x809F") - "GL_SAMPLE_COVERAGE_ARB"("0x80A0") - "GL_SAMPLE_BUFFERS_ARB"("0x80A8") - "GL_SAMPLES_ARB"("0x80A9") - "GL_SAMPLE_COVERAGE_VALUE_ARB"("0x80AA") - "GL_SAMPLE_COVERAGE_INVERT_ARB"("0x80AB") - "GL_MULTISAMPLE_BIT_ARB"("0x20000000") - "glSampleCoverageARB"(void, GLfloat("value"), GLboolean("invert")) - } - file("Multitexture", ARB, "GL_ARB_multitexture") { - "GL_TEXTURE0_ARB"("0x84C0") - "GL_TEXTURE1_ARB"("0x84C1") - "GL_TEXTURE2_ARB"("0x84C2") - "GL_TEXTURE3_ARB"("0x84C3") - "GL_TEXTURE4_ARB"("0x84C4") - "GL_TEXTURE5_ARB"("0x84C5") - "GL_TEXTURE6_ARB"("0x84C6") - "GL_TEXTURE7_ARB"("0x84C7") - "GL_TEXTURE8_ARB"("0x84C8") - "GL_TEXTURE9_ARB"("0x84C9") - "GL_TEXTURE10_ARB"("0x84CA") - "GL_TEXTURE11_ARB"("0x84CB") - "GL_TEXTURE12_ARB"("0x84CC") - "GL_TEXTURE13_ARB"("0x84CD") - "GL_TEXTURE14_ARB"("0x84CE") - "GL_TEXTURE15_ARB"("0x84CF") - "GL_TEXTURE16_ARB"("0x84D0") - "GL_TEXTURE17_ARB"("0x84D1") - "GL_TEXTURE18_ARB"("0x84D2") - "GL_TEXTURE19_ARB"("0x84D3") - "GL_TEXTURE20_ARB"("0x84D4") - "GL_TEXTURE21_ARB"("0x84D5") - "GL_TEXTURE22_ARB"("0x84D6") - "GL_TEXTURE23_ARB"("0x84D7") - "GL_TEXTURE24_ARB"("0x84D8") - "GL_TEXTURE25_ARB"("0x84D9") - "GL_TEXTURE26_ARB"("0x84DA") - "GL_TEXTURE27_ARB"("0x84DB") - "GL_TEXTURE28_ARB"("0x84DC") - "GL_TEXTURE29_ARB"("0x84DD") - "GL_TEXTURE30_ARB"("0x84DE") - "GL_TEXTURE31_ARB"("0x84DF") - "GL_ACTIVE_TEXTURE_ARB"("0x84E0") - "GL_CLIENT_ACTIVE_TEXTURE_ARB"("0x84E1") - "GL_MAX_TEXTURE_UNITS_ARB"("0x84E2") - "glActiveTextureARB"(void, GLenum("texture")) - "glClientActiveTextureARB"(void, GLenum("texture")) - "glMultiTexCoord1dARB"(void, GLenum("target"), GLdouble("s")) - "glMultiTexCoord1dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) - "glMultiTexCoord1fARB"(void, GLenum("target"), GLfloat("s")) - "glMultiTexCoord1fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) - "glMultiTexCoord1iARB"(void, GLenum("target"), GLint("s")) - "glMultiTexCoord1ivARB"(void, GLenum("target"), address("v", "const GLint *")) - "glMultiTexCoord1sARB"(void, GLenum("target"), GLshort("s")) - "glMultiTexCoord1svARB"(void, GLenum("target"), address("v", "const GLshort *")) - "glMultiTexCoord2dARB"(void, GLenum("target"), GLdouble("s"), GLdouble("t")) - "glMultiTexCoord2dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) - "glMultiTexCoord2fARB"(void, GLenum("target"), GLfloat("s"), GLfloat("t")) - "glMultiTexCoord2fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) - "glMultiTexCoord2iARB"(void, GLenum("target"), GLint("s"), GLint("t")) - "glMultiTexCoord2ivARB"(void, GLenum("target"), address("v", "const GLint *")) - "glMultiTexCoord2sARB"(void, GLenum("target"), GLshort("s"), GLshort("t")) - "glMultiTexCoord2svARB"(void, GLenum("target"), address("v", "const GLshort *")) - "glMultiTexCoord3dARB"(void, GLenum("target"), GLdouble("s"), GLdouble("t"), GLdouble("r")) - "glMultiTexCoord3dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) - "glMultiTexCoord3fARB"(void, GLenum("target"), GLfloat("s"), GLfloat("t"), GLfloat("r")) - "glMultiTexCoord3fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) - "glMultiTexCoord3iARB"(void, GLenum("target"), GLint("s"), GLint("t"), GLint("r")) - "glMultiTexCoord3ivARB"(void, GLenum("target"), address("v", "const GLint *")) - "glMultiTexCoord3sARB"(void, GLenum("target"), GLshort("s"), GLshort("t"), GLshort("r")) - "glMultiTexCoord3svARB"(void, GLenum("target"), address("v", "const GLshort *")) - "glMultiTexCoord4dARB"(void, GLenum("target"), GLdouble("s"), GLdouble("t"), GLdouble("r"), GLdouble("q")) - "glMultiTexCoord4dvARB"(void, GLenum("target"), address("v", "const GLdouble *")) - "glMultiTexCoord4fARB"(void, GLenum("target"), GLfloat("s"), GLfloat("t"), GLfloat("r"), GLfloat("q")) - "glMultiTexCoord4fvARB"(void, GLenum("target"), address("v", "const GLfloat *")) - "glMultiTexCoord4iARB"(void, GLenum("target"), GLint("s"), GLint("t"), GLint("r"), GLint("q")) - "glMultiTexCoord4ivARB"(void, GLenum("target"), address("v", "const GLint *")) - "glMultiTexCoord4sARB"(void, GLenum("target"), GLshort("s"), GLshort("t"), GLshort("r"), GLshort("q")) - "glMultiTexCoord4svARB"(void, GLenum("target"), address("v", "const GLshort *")) - } - file("OcclusionQuery", ARB, "GL_ARB_occlusion_query") { - "GL_QUERY_COUNTER_BITS_ARB"("0x8864") - "GL_CURRENT_QUERY_ARB"("0x8865") - "GL_QUERY_RESULT_ARB"("0x8866") - "GL_QUERY_RESULT_AVAILABLE_ARB"("0x8867") - "GL_SAMPLES_PASSED_ARB"("0x8914") - "glGenQueriesARB"(void, GLsizei("n"), address("ids", "GLuint *")) - "glDeleteQueriesARB"(void, GLsizei("n"), address("ids", "const GLuint *")) - "glIsQueryARB"(GLboolean, GLuint("id")) - "glBeginQueryARB"(void, GLenum("target"), GLuint("id")) - "glEndQueryARB"(void, GLenum("target")) - "glGetQueryivARB"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) - "glGetQueryObjectivARB"(void, GLuint("id"), GLenum("pname"), address("params", "GLint *")) - "glGetQueryObjectuivARB"(void, GLuint("id"), GLenum("pname"), address("params", "GLuint *")) - } - file("ParallelShaderCompile", ARB, "GL_ARB_parallel_shader_compile") { - "GL_MAX_SHADER_COMPILER_THREADS_ARB"("0x91B0") - "GL_COMPLETION_STATUS_ARB"("0x91B1") - "glMaxShaderCompilerThreadsARB"(void, GLuint("count")) - } - file( - "PipelineStatisticsQuery", ARB, "GL_ARB_pipeline_statistics_query", - "GL_VERTICES_SUBMITTED_ARB" to "0x82EE", - "GL_PRIMITIVES_SUBMITTED_ARB" to "0x82EF", - "GL_VERTEX_SHADER_INVOCATIONS_ARB" to "0x82F0", - "GL_TESS_CONTROL_SHADER_PATCHES_ARB" to "0x82F1", - "GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB" to "0x82F2", - "GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED_ARB" to "0x82F3", - "GL_FRAGMENT_SHADER_INVOCATIONS_ARB" to "0x82F4", - "GL_COMPUTE_SHADER_INVOCATIONS_ARB" to "0x82F5", - "GL_CLIPPING_INPUT_PRIMITIVES_ARB" to "0x82F6", - "GL_CLIPPING_OUTPUT_PRIMITIVES_ARB" to "0x82F7" - ) - file( - "PixelBufferObject", ARB, "GL_ARB_pixel_buffer_object", - "GL_PIXEL_PACK_BUFFER_ARB" to "0x88EB", - "GL_PIXEL_UNPACK_BUFFER_ARB" to "0x88EC", - "GL_PIXEL_PACK_BUFFER_BINDING_ARB" to "0x88ED", - "GL_PIXEL_UNPACK_BUFFER_BINDING_ARB" to "0x88EF" - ) - file("PointParameters", ARB, "GL_ARB_point_parameters") { - "GL_POINT_SIZE_MIN_ARB"("0x8126") - "GL_POINT_SIZE_MAX_ARB"("0x8127") - "GL_POINT_FADE_THRESHOLD_SIZE_ARB"("0x8128") - "GL_POINT_DISTANCE_ATTENUATION_ARB"("0x8129") - "glPointParameterfARB"(void, GLenum("pname"), GLfloat("param")) - "glPointParameterfvARB"(void, GLenum("pname"), address("params", "const GLfloat *")) - } - file( - "PointSprite", ARB, "GL_ARB_point_sprite", - "GL_POINT_SPRITE_ARB" to "0x8861", - "GL_COORD_REPLACE_ARB" to "0x8862" - ) - file("Robustness", ARB, "GL_ARB_robustness") { - "GL_NO_RESET_NOTIFICATION_ARB"("0x8261") - "GL_RESET_NOTIFICATION_STRATEGY_ARB"("0x8256") - "GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB"("0x00000004") - "GL_UNKNOWN_CONTEXT_RESET_ARB"("0x8255") - "GL_LOSE_CONTEXT_ON_RESET_ARB"("0x8252") - "GL_INNOCENT_CONTEXT_RESET_ARB"("0x8254") - "GL_GUILTY_CONTEXT_RESET_ARB"("0x8253") - "glGetGraphicsResetStatusARB"(int) - "glGetnCompressedTexImageARB"(void, int("target"), int("lod"), int("bufSize"), address("img", "void*")) - "glGetnTexImageARB"( - void, - int("target"), - int("level"), - int("format"), - int("type"), - int("bufSize"), - address("img", "void*") - ) - "glGetnUniformdvARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLdouble*")) - "glGetnUniformfvARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLfloat*")) - "glGetnUniformivARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLint*")) - "glGetnUniformuivARB"(void, int("program"), int("location"), int("bufSize"), address("params", "GLuint*")) - "glReadnPixelsARB"( - void, - int("x"), - int("y"), - int("width"), - int("height"), - int("format"), - int("type"), - int("bufSize"), - address("data", "void*") - ) - } - file("SampleLocations", ARB, "GL_ARB_sample_locations") { - "GL_SAMPLE_LOCATION_SUBPIXEL_BITS_ARB"("0x933D") - "GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_ARB"("0x933E") - "GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_ARB"("0x933F") - "GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_ARB"("0x9340") - "GL_SAMPLE_LOCATION_ARB"("0x8E50") - "GL_PROGRAMMABLE_SAMPLE_LOCATION_ARB"("0x9341") - "GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_ARB"("0x9342") - "GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_ARB"("0x9343") - "glEvaluateDepthValuesARB"(void) - "glFramebufferSampleLocationsfvARB"( - void, - int("target"), - int("start"), - int("count"), - address("v", "const GLfloat *v") - ) - "glNamedFramebufferSampleLocationsfvARB"( - void, - int("framebuffer"), - int("start"), - int("count"), - address("v", "const GLfloat *v") - ) - } - file("SampleShading", ARB, "GL_ARB_sample_shading") { - "GL_SAMPLE_SHADING_ARB"("0x8C36") - "GL_MIN_SAMPLE_SHADING_VALUE_ARB"("0x8C37") - "glMinSampleShadingARB"(void, float("value")) - } - file("ShaderObjects", ARB, "GL_ARB_shader_objects") { - "GL_PROGRAM_OBJECT_ARB"("0x8B40") - "GL_SHADER_OBJECT_ARB"("0x8B48") - "GL_OBJECT_TYPE_ARB"("0x8B4E") - "GL_OBJECT_SUBTYPE_ARB"("0x8B4F") - "GL_FLOAT_VEC2_ARB"("0x8B50") - "GL_FLOAT_VEC3_ARB"("0x8B51") - "GL_FLOAT_VEC4_ARB"("0x8B52") - "GL_INT_VEC2_ARB"("0x8B53") - "GL_INT_VEC3_ARB"("0x8B54") - "GL_INT_VEC4_ARB"("0x8B55") - "GL_BOOL_ARB"("0x8B56") - "GL_BOOL_VEC2_ARB"("0x8B57") - "GL_BOOL_VEC3_ARB"("0x8B58") - "GL_BOOL_VEC4_ARB"("0x8B59") - "GL_FLOAT_MAT2_ARB"("0x8B5A") - "GL_FLOAT_MAT3_ARB"("0x8B5B") - "GL_FLOAT_MAT4_ARB"("0x8B5C") - "GL_SAMPLER_1D_ARB"("0x8B5D") - "GL_SAMPLER_2D_ARB"("0x8B5E") - "GL_SAMPLER_3D_ARB"("0x8B5F") - "GL_SAMPLER_CUBE_ARB"("0x8B60") - "GL_SAMPLER_1D_SHADOW_ARB"("0x8B61") - "GL_SAMPLER_2D_SHADOW_ARB"("0x8B62") - "GL_SAMPLER_2D_RECT_ARB"("0x8B63") - "GL_SAMPLER_2D_RECT_SHADOW_ARB"("0x8B64") - "GL_OBJECT_DELETE_STATUS_ARB"("0x8B80") - "GL_OBJECT_COMPILE_STATUS_ARB"("0x8B81") - "GL_OBJECT_LINK_STATUS_ARB"("0x8B82") - "GL_OBJECT_VALIDATE_STATUS_ARB"("0x8B83") - "GL_OBJECT_INFO_LOG_LENGTH_ARB"("0x8B84") - "GL_OBJECT_ATTACHED_OBJECTS_ARB"("0x8B85") - "GL_OBJECT_ACTIVE_UNIFORMS_ARB"("0x8B86") - "GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB"("0x8B87") - "GL_OBJECT_SHADER_SOURCE_LENGTH_ARB"("0x8B88") - "glDeleteObjectARB"(void, int("obj")) - "glGetHandleARB"(int, int("pname")) - "glDetachObjectARB"(void, int("containerObj"), int("attachedObj")) - "glCreateShaderObjectARB"(int, int("shaderType")) - "glShaderSourceARB"( - void, - int("shaderObj"), - int("count"), - address("string", "const GLcharARB**"), - address("length", "const GLint*") - ) - "glCompileShaderARB"(void, int("shaderObj")) - "glCreateProgramObjectARB"(int) - "glAttachObjectARB"(void, int("containerObj"), int("obj")) - "glLinkProgramARB"(void, int("programObj")) - "glUseProgramObjectARB"(void, int("programObj")) - "glValidateProgramARB"(void, int("programObj")) - "glUniform1fARB"(void, int("location"), float("v0")) - "glUniform2fARB"(void, int("location"), float("v0"), float("v1")) - "glUniform3fARB"(void, int("location"), float("v0"), float("v1"), float("v2")) - "glUniform4fARB"(void, int("location"), float("v0"), float("v1"), float("v2"), float("v3")) - "glUniform1iARB"(void, int("location"), int("v0")) - "glUniform2iARB"(void, int("location"), int("v0"), int("v1")) - "glUniform3iARB"(void, int("location"), int("v0"), int("v1"), int("v2")) - "glUniform4iARB"(void, int("location"), int("v0"), int("v1"), int("v2"), int("v3")) - "glUniform1fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) - "glUniform2fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) - "glUniform3fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) - "glUniform4fvARB"(void, int("location"), int("count"), address("value", "const GLfloat*")) - "glUniform1ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) - "glUniform2ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) - "glUniform3ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) - "glUniform4ivARB"(void, int("location"), int("count"), address("value", "const GLint*")) - "glUniformMatrix2fvARB"( - void, - int("location"), - int("count"), - boolean("transpose"), - address("value", "const GLfloat*") - ) - "glUniformMatrix3fvARB"( - void, - int("location"), - int("count"), - boolean("transpose"), - address("value", "const GLfloat*") - ) - "glUniformMatrix4fvARB"( - void, - int("location"), - int("count"), - boolean("transpose"), - address("value", "const GLfloat*") - ) - "glGetObjectParameterfvARB"(void, int("obj"), int("pname"), address("params", "GLfloat*")) - "glGetObjectParameterivARB"(void, int("obj"), int("pname"), address("params", "GLint*")) - "glGetInfoLogARB"( - void, - int("obj"), - int("maxLength"), - address("length", "GLsizei*"), - address("infoLog", "GLcharARB*") - ) - "glGetAttachedObjectsARB"( - void, - int("containerObj"), - int("maxCount"), - address("count", "GLsizei*"), - address("obj", "GLhandleARB*") - ) - "glGetUniformLocationARB"(int, int("programObj"), address("name", "const GLcharARB*")) - "glGetActiveUniformARB"( - void, - int("programObj"), - int("index"), - int("maxLength"), - address("length", "GLsizei*"), - address("size", "GLint*"), - address("type", "GLenum*"), - address("name", "GLcharARB*") - ) - "glGetUniformfvARB"(void, int("programObj"), int("location"), address("params", "GLfloat*")) - "glGetUniformivARB"(void, int("programObj"), int("location"), address("params", "GLint*")) - "glGetShaderSourceARB"( - void, - int("obj"), - int("maxLength"), - address("length", "GLsizei*"), - address("source", "GLcharARB*") - ) - } - file("ShadingLanguageInclude", ARB, "GL_ARB_shading_language_include") { - "GL_SHADER_INCLUDE_ARB"("0x8DAE") - "GL_NAMED_STRING_LENGTH_ARB"("0x8DE9") - "GL_NAMED_STRING_TYPE_ARB"("0x8DEA") - "glNamedStringARB"( - void, - int("type"), - int("nameLen"), - address("name", "const GLchar*"), - int("stringLen"), - address("string", "const GLchar*") - ) - "glDeleteNamedStringARB"(void, int("nameLen"), address("name", "const GLchar*")) - "glCompileShaderIncludeARB"( - void, - int("shader"), - int("count"), - address("path", "const GLchar *const*"), - address("length", "const GLint*") - ) - "glIsNamedStringARB"(boolean, int("nameLen"), address("name", "const GLchar*")) - "glGetNamedStringARB"( - void, - int("nameLen"), - address("name", "const GLchar*"), - int("bufSize"), - address("stringLen", "GLint*"), - address("string", "GLchar*") - ) - "glGetNamedStringivARB"( - void, - int("nameLen"), - address("name", "const GLchar*"), - int("pname"), - address("params", "GLint*") - ) - } - file( - "Shadow", ARB, "GL_ARB_shadow", - "GL_TEXTURE_COMPARE_MODE_ARB" to "0x884C", - "GL_TEXTURE_COMPARE_FUNC_ARB" to "0x884D", - "GL_COMPARE_R_TO_TEXTURE_ARB" to "0x884E" - ) - file( - "ShadowAmbient", ARB, "GL_ARB_shadow_ambient", - "GL_TEXTURE_COMPARE_FAIL_VALUE_ARB" to "0x80BF" - ) - file("SparseBuffer", ARB, "GL_ARB_sparse_buffer") { - "GL_SPARSE_STORAGE_BIT_ARB"("0x0400") - "GL_SPARSE_BUFFER_PAGE_SIZE_ARB"("0x82F8") - "glBufferPageCommitmentARB"(void, int("target"), long("offset"), long("size"), boolean("commit")) - "glNamedBufferPageCommitmentEXT"(void, int("buffer"), long("offset"), long("size"), boolean("commit")) - "glNamedBufferPageCommitmentARB"(void, int("buffer"), long("offset"), long("size"), boolean("commit")) - } - file("SparseTexture", ARB, "GL_ARB_sparse_texture") { - "GL_TEXTURE_SPARSE_ARB"("0x91A6") - "GL_VIRTUAL_PAGE_SIZE_INDEX_ARB"("0x91A7") - "GL_NUM_SPARSE_LEVELS_ARB"("0x91AA") - "GL_NUM_VIRTUAL_PAGE_SIZES_ARB"("0x91A8") - "GL_VIRTUAL_PAGE_SIZE_X_ARB"("0x9195") - "GL_VIRTUAL_PAGE_SIZE_Y_ARB"("0x9196") - "GL_VIRTUAL_PAGE_SIZE_Z_ARB"("0x9197") - "GL_MAX_SPARSE_TEXTURE_SIZE_ARB"("0x9198") - "GL_MAX_SPARSE_3D_TEXTURE_SIZE_ARB"("0x9199") - "GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_ARB"("0x919A") - "GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_ARB"("0x91A9") - "glTexPageCommitmentARB"( - void, - int("target"), - int("level"), - int("xoffset"), - int("yoffset"), - int("zoffset"), - int("width"), - int("height"), - int("depth"), - boolean("commit") - ) - } - file( - "TextureBorderClamp", ARB, "GL_ARB_texture_border_clamp", - "GL_CLAMP_TO_BORDER_ARB" to "0x812D" - ) - file("TextureBufferObject", ARB, "GL_ARB_texture_buffer_object") { - "GL_TEXTURE_BUFFER_ARB"("0x8C2A") - "GL_MAX_TEXTURE_BUFFER_SIZE_ARB"("0x8C2B") - "GL_TEXTURE_BINDING_BUFFER_ARB"("0x8C2C") - "GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB"("0x8C2D") - "GL_TEXTURE_BUFFER_FORMAT_ARB"("0x8C2E") - "glTexBufferARB"(void, int("target"), int("internalFormat"), int("buffer")) - } - file("TextureCompression", ARB, "GL_ARB_texture_compression") { - "GL_COMPRESSED_ALPHA_ARB"("0x84E9") - "GL_COMPRESSED_LUMINANCE_ARB"("0x84EA") - "GL_COMPRESSED_LUMINANCE_ALPHA_ARB"("0x84EB") - "GL_COMPRESSED_INTENSITY_ARB"("0x84EC") - "GL_COMPRESSED_RGB_ARB"("0x84ED") - "GL_COMPRESSED_RGBA_ARB"("0x84EE") - "GL_TEXTURE_COMPRESSION_HINT_ARB"("0x84EF") - "GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB"("0x86A0") - "GL_TEXTURE_COMPRESSED_ARB"("0x86A1") - "GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB"("0x86A2") - "GL_COMPRESSED_TEXTURE_FORMATS_ARB"("0x86A3") - "glCompressedTexImage3DARB"( - void, - int("target"), - int("level"), - int("internalFormat"), - int("width"), - int("height"), - int("depth"), - int("border"), - int("imageSize"), - address("data", "const void*") - ) - "glCompressedTexImage2DARB"( - void, - int("target"), - int("level"), - int("internalFormat"), - int("width"), - int("height"), - int("border"), - int("imageSize"), - address("data", "const void*") - ) - "glCompressedTexImage1DARB"( - void, - int("target"), - int("level"), - int("internalFormat"), - int("width"), - int("border"), - int("imageSize"), - address("data", "const void*") - ) - "glCompressedTexSubImage3DARB"( - void, - int("target"), - int("level"), - int("xoffset"), - int("yoffset"), - int("zoffset"), - int("width"), - int("height"), - int("depth"), - int("format"), - int("imageSize"), - address("data", "const void*") - ) - "glCompressedTexSubImage2DARB"( - void, - int("target"), - int("level"), - int("xoffset"), - int("yoffset"), - int("width"), - int("height"), - int("format"), - int("imageSize"), - address("data", "const void*") - ) - "glCompressedTexSubImage1DARB"( - void, - int("target"), - int("level"), - int("xoffset"), - int("width"), - int("format"), - int("imageSize"), - address("data", "const void*") - ) - "glGetCompressedTexImageARB"(void, int("target"), int("level"), address("img", "void*")) - } - file( - "TextureCompressionBptc", ARB, "GL_ARB_texture_compression_bptc", - "GL_COMPRESSED_RGBA_BPTC_UNORM_ARB" to "0x8E8C", - "GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB" to "0x8E8D", - "GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB" to "0x8E8E", - "GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB" to "0x8E8F" - ) - file( - "TextureCubeMap", ARB, "GL_ARB_texture_cube_map", - "GL_NORMAL_MAP_ARB" to "0x8511", - "GL_REFLECTION_MAP_ARB" to "0x8512", - "GL_TEXTURE_CUBE_MAP_ARB" to "0x8513", - "GL_TEXTURE_BINDING_CUBE_MAP_ARB" to "0x8514", - "GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB" to "0x8515", - "GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB" to "0x8516", - "GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB" to "0x8517", - "GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB" to "0x8518", - "GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB" to "0x8519", - "GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB" to "0x851A", - "GL_PROXY_TEXTURE_CUBE_MAP_ARB" to "0x851B", - "GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB" to "0x851C" - ) - file( - "TextureCubeMapArray", ARB, "GL_ARB_texture_cube_map_array", - "GL_TEXTURE_CUBE_MAP_ARRAY_ARB" to "0x9009", - "GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB" to "0x900A", - "GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB" to "0x900B", - "GL_SAMPLER_CUBE_MAP_ARRAY_ARB" to "0x900C", - "GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB" to "0x900D", - "GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB" to "0x900E", - "GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB" to "0x900F" - ) - file( - "TextureEnvCombine", ARB, "GL_ARB_texture_env_combine", - "GL_COMBINE_ARB" to "0x8570", - "GL_COMBINE_RGB_ARB" to "0x8571", - "GL_COMBINE_ALPHA_ARB" to "0x8572", - "GL_SOURCE0_RGB_ARB" to "0x8580", - "GL_SOURCE1_RGB_ARB" to "0x8581", - "GL_SOURCE2_RGB_ARB" to "0x8582", - "GL_SOURCE0_ALPHA_ARB" to "0x8588", - "GL_SOURCE1_ALPHA_ARB" to "0x8589", - "GL_SOURCE2_ALPHA_ARB" to "0x858A", - "GL_OPERAND0_RGB_ARB" to "0x8590", - "GL_OPERAND1_RGB_ARB" to "0x8591", - "GL_OPERAND2_RGB_ARB" to "0x8592", - "GL_OPERAND0_ALPHA_ARB" to "0x8598", - "GL_OPERAND1_ALPHA_ARB" to "0x8599", - "GL_OPERAND2_ALPHA_ARB" to "0x859A", - "GL_RGB_SCALE_ARB" to "0x8573", - "GL_ADD_SIGNED_ARB" to "0x8574", - "GL_INTERPOLATE_ARB" to "0x8575", - "GL_SUBTRACT_ARB" to "0x84E7", - "GL_CONSTANT_ARB" to "0x8576", - "GL_PRIMARY_COLOR_ARB" to "0x8577", - "GL_PREVIOUS_ARB" to "0x8578" - ) - file( - "TextureEnvDot3", ARB, "GL_ARB_texture_env_dot3", - "GL_DOT3_RGB_ARB" to "0x86AE", - "GL_DOT3_RGBA_ARB" to "0x86AF" - ) - file( - "TextureFilterMinmax", ARB, "GL_ARB_texture_filter_minmax", - "GL_TEXTURE_REDUCTION_MODE_ARB" to "0x9366", - "GL_WEIGHTED_AVERAGE_ARB" to "0x9367" - ) - file( - "TextureFloat", ARB, "GL_ARB_texture_float", - "GL_TEXTURE_RED_TYPE_ARB" to "0x8C10", - "GL_TEXTURE_GREEN_TYPE_ARB" to "0x8C11", - "GL_TEXTURE_BLUE_TYPE_ARB" to "0x8C12", - "GL_TEXTURE_ALPHA_TYPE_ARB" to "0x8C13", - "GL_TEXTURE_LUMINANCE_TYPE_ARB" to "0x8C14", - "GL_TEXTURE_INTENSITY_TYPE_ARB" to "0x8C15", - "GL_TEXTURE_DEPTH_TYPE_ARB" to "0x8C16", - "GL_UNSIGNED_NORMALIZED_ARB" to "0x8C17", - "GL_RGBA32F_ARB" to "0x8814", - "GL_RGB32F_ARB" to "0x8815", - "GL_ALPHA32F_ARB" to "0x8816", - "GL_INTENSITY32F_ARB" to "0x8817", - "GL_LUMINANCE32F_ARB" to "0x8818", - "GL_LUMINANCE_ALPHA32F_ARB" to "0x8819", - "GL_RGBA16F_ARB" to "0x881A", - "GL_RGB16F_ARB" to "0x881B", - "GL_ALPHA16F_ARB" to "0x881C", - "GL_INTENSITY16F_ARB" to "0x881D", - "GL_LUMINANCE16F_ARB" to "0x881E", - "GL_LUMINANCE_ALPHA16F_ARB" to "0x881F" - ) - file( - "TextureGather", ARB, "GL_ARB_texture_gather", - "GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB" to "0x8E5E", - "GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB" to "0x8E5F", - "GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB" to "0x8F9F" - ) - file( - "TextureMirroredRepeat", ARB, "GL_ARB_texture_mirrored_repeat", - "GL_MIRRORED_REPEAT_ARB" to "0x8370" - ) - file( - "TextureRectangle", ARB, "GL_ARB_texture_rectangle", - "GL_TEXTURE_RECTANGLE_ARB" to "0x84F5", - "GL_TEXTURE_BINDING_RECTANGLE_ARB" to "0x84F6", - "GL_PROXY_TEXTURE_RECTANGLE_ARB" to "0x84F7", - "GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB" to "0x84F8" - ) - file( - "TransformFeedbackOverflowQuery", ARB, "GL_ARB_transform_feedback_overflow_query", - "GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB" to "0x82EC", - "GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB" to "0x82ED" - ) - file("TransposeMatrix", ARB, "GL_ARB_transpose_matrix") { - "GL_TRANSPOSE_MODELVIEW_MATRIX_ARB"("0x84E3") - "GL_TRANSPOSE_PROJECTION_MATRIX_ARB"("0x84E4") - "GL_TRANSPOSE_TEXTURE_MATRIX_ARB"("0x84E5") - "GL_TRANSPOSE_COLOR_MATRIX_ARB"("0x84E6") - "glLoadTransposeMatrixfARB"(void, address("m", "const GLfloat*")) - "glLoadTransposeMatrixdARB"(void, address("m", "const GLdouble*")) - "glMultTransposeMatrixfARB"(void, address("m", "const GLfloat*")) - "glMultTransposeMatrixdARB"(void, address("m", "const GLdouble*")) - } - file("VertexBlend", ARB, "GL_ARB_vertex_blend") { - "GL_MAX_VERTEX_UNITS_ARB"("0x86A4") - "GL_ACTIVE_VERTEX_UNITS_ARB"("0x86A5") - "GL_WEIGHT_SUM_UNITY_ARB"("0x86A6") - "GL_VERTEX_BLEND_ARB"("0x86A7") - "GL_CURRENT_WEIGHT_ARB"("0x86A8") - "GL_WEIGHT_ARRAY_TYPE_ARB"("0x86A9") - "GL_WEIGHT_ARRAY_STRIDE_ARB"("0x86AA") - "GL_WEIGHT_ARRAY_SIZE_ARB"("0x86AB") - "GL_WEIGHT_ARRAY_POINTER_ARB"("0x86AC") - "GL_WEIGHT_ARRAY_ARB"("0x86AD") - "GL_MODELVIEW0_ARB"("0x1700") - "GL_MODELVIEW1_ARB"("0x850A") - "GL_MODELVIEW2_ARB"("0x8722") - "GL_MODELVIEW3_ARB"("0x8723") - "GL_MODELVIEW4_ARB"("0x8724") - "GL_MODELVIEW5_ARB"("0x8725") - "GL_MODELVIEW6_ARB"("0x8726") - "GL_MODELVIEW7_ARB"("0x8727") - "GL_MODELVIEW8_ARB"("0x8728") - "GL_MODELVIEW9_ARB"("0x8729") - "GL_MODELVIEW10_ARB"("0x872A") - "GL_MODELVIEW11_ARB"("0x872B") - "GL_MODELVIEW12_ARB"("0x872C") - "GL_MODELVIEW13_ARB"("0x872D") - "GL_MODELVIEW14_ARB"("0x872E") - "GL_MODELVIEW15_ARB"("0x872F") - "GL_MODELVIEW16_ARB"("0x8730") - "GL_MODELVIEW17_ARB"("0x8731") - "GL_MODELVIEW18_ARB"("0x8732") - "GL_MODELVIEW19_ARB"("0x8733") - "GL_MODELVIEW20_ARB"("0x8734") - "GL_MODELVIEW21_ARB"("0x8735") - "GL_MODELVIEW22_ARB"("0x8736") - "GL_MODELVIEW23_ARB"("0x8737") - "GL_MODELVIEW24_ARB"("0x8738") - "GL_MODELVIEW25_ARB"("0x8739") - "GL_MODELVIEW26_ARB"("0x873A") - "GL_MODELVIEW27_ARB"("0x873B") - "GL_MODELVIEW28_ARB"("0x873C") - "GL_MODELVIEW29_ARB"("0x873D") - "GL_MODELVIEW30_ARB"("0x873E") - "GL_MODELVIEW31_ARB"("0x873F") - "glWeightbvARB"(void, GLint("size"), address("weights", "const GLbyte*")) - "glWeightsvARB"(void, GLint("size"), address("weights", "const GLshort*")) - "glWeightivARB"(void, GLint("size"), address("weights", "const GLint*")) - "glWeightfvARB"(void, GLint("size"), address("weights", "const GLfloat*")) - "glWeightdvARB"(void, GLint("size"), address("weights", "const GLdouble*")) - "glWeightubvARB"(void, GLint("size"), address("weights", "const GLubyte*")) - "glWeightusvARB"(void, GLint("size"), address("weights", "const GLushort*")) - "glWeightuivARB"(void, GLint("size"), address("weights", "const GLuint*")) - "glWeightPointerARB"(void, GLint("size"), GLenum("type"), GLsizei("stride"), address("pointer", "const void*")) - "glVertexBlendARB"(void, GLint("count")) - } - file("VertexBufferObject", ARB, "GL_ARB_vertex_buffer_object") { - "GL_BUFFER_SIZE_ARB"("0x8764") - "GL_BUFFER_USAGE_ARB"("0x8765") - "GL_ARRAY_BUFFER_ARB"("0x8892") - "GL_ELEMENT_ARRAY_BUFFER_ARB"("0x8893") - "GL_ARRAY_BUFFER_BINDING_ARB"("0x8894") - "GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB"("0x8895") - "GL_VERTEX_ARRAY_BUFFER_BINDING_ARB"("0x8896") - "GL_NORMAL_ARRAY_BUFFER_BINDING_ARB"("0x8897") - "GL_COLOR_ARRAY_BUFFER_BINDING_ARB"("0x8898") - "GL_INDEX_ARRAY_BUFFER_BINDING_ARB"("0x8899") - "GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB"("0x889A") - "GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB"("0x889B") - "GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB"("0x889C") - "GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB"("0x889D") - "GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB"("0x889E") - "GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB"("0x889F") - "GL_READ_ONLY_ARB"("0x88B8") - "GL_WRITE_ONLY_ARB"("0x88B9") - "GL_READ_WRITE_ARB"("0x88BA") - "GL_BUFFER_ACCESS_ARB"("0x88BB") - "GL_BUFFER_MAPPED_ARB"("0x88BC") - "GL_BUFFER_MAP_POINTER_ARB"("0x88BD") - "GL_STREAM_DRAW_ARB"("0x88E0") - "GL_STREAM_READ_ARB"("0x88E1") - "GL_STREAM_COPY_ARB"("0x88E2") - "GL_STATIC_DRAW_ARB"("0x88E4") - "GL_STATIC_READ_ARB"("0x88E5") - "GL_STATIC_COPY_ARB"("0x88E6") - "GL_DYNAMIC_DRAW_ARB"("0x88E8") - "GL_DYNAMIC_READ_ARB"("0x88E9") - "GL_DYNAMIC_COPY_ARB"("0x88EA") - "glBindBufferARB"(void, GLenum("target"), GLuint("buffer")) - "glDeleteBuffersARB"(void, GLsizei("n"), address("buffers", "const GLuint*")) - "glGenBuffersARB"(void, GLsizei("n"), address("buffers", "GLuint*")) - "glIsBufferARB"(boolean, GLuint("buffer")) - "glBufferDataARB"( - void, - GLenum("target"), - GLsizeiptrARB("size"), - address("data", "const void*"), - GLenum("usage") - ) - "glBufferSubDataARB"( - void, - GLenum("target"), - GLintptrARB("offset"), - GLsizeiptrARB("size"), - address("data", "const void*") - ) - "glGetBufferSubDataARB"( - void, - GLenum("target"), - GLintptrARB("offset"), - GLsizeiptrARB("size"), - address("data", "void*") - ) - "glMapBufferARB"(address, GLenum("target"), GLenum("access"), nativeType = "void*") - "glUnmapBufferARB"(boolean, GLenum("target")) - "glGetBufferParameterivARB"(void, GLenum("target"), GLenum("pname"), address("params", "GLint*")) - "glGetBufferPointervARB"(void, GLenum("target"), GLenum("pname"), address("params", "void**")) - } - file("VertexProgram", ARB, "GL_ARB_vertex_program") { - "GL_COLOR_SUM_ARB"("0x8458") - "GL_VERTEX_PROGRAM_ARB"("0x8620") - "GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB"("0x8622") - "GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB"("0x8623") - "GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB"("0x8624") - "GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB"("0x8625") - "GL_CURRENT_VERTEX_ATTRIB_ARB"("0x8626") - "GL_VERTEX_PROGRAM_POINT_SIZE_ARB"("0x8642") - "GL_VERTEX_PROGRAM_TWO_SIDE_ARB"("0x8643") - "GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB"("0x8645") - "GL_MAX_VERTEX_ATTRIBS_ARB"("0x8869") - "GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB"("0x886A") - "GL_PROGRAM_ADDRESS_REGISTERS_ARB"("0x88B0") - "GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB"("0x88B1") - "GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB"("0x88B2") - "GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB"("0x88B3") - "glVertexAttrib1dARB"(void, GLuint("index"), GLdouble("x")) - "glVertexAttrib1dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) - "glVertexAttrib1fARB"(void, GLuint("index"), GLfloat("x")) - "glVertexAttrib1fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) - "glVertexAttrib1sARB"(void, GLuint("index"), GLshort("x")) - "glVertexAttrib1svARB"(void, GLuint("index"), address("v", "const GLshort *")) - "glVertexAttrib2dARB"(void, GLuint("index"), GLdouble("x"), GLdouble("y")) - "glVertexAttrib2dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) - "glVertexAttrib2fARB"(void, GLuint("index"), GLfloat("x"), GLfloat("y")) - "glVertexAttrib2fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) - "glVertexAttrib2sARB"(void, GLuint("index"), GLshort("x"), GLshort("y")) - "glVertexAttrib2svARB"(void, GLuint("index"), address("v", "const GLshort *")) - "glVertexAttrib3dARB"(void, GLuint("index"), GLdouble("x"), GLdouble("y"), GLdouble("z")) - "glVertexAttrib3dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) - "glVertexAttrib3fARB"(void, GLuint("index"), GLfloat("x"), GLfloat("y"), GLfloat("z")) - "glVertexAttrib3fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) - "glVertexAttrib3sARB"(void, GLuint("index"), GLshort("x"), GLshort("y"), GLshort("z")) - "glVertexAttrib3svARB"(void, GLuint("index"), address("v", "const GLshort *")) - "glVertexAttrib4NbvARB"(void, GLuint("index"), address("v", "const GLbyte *")) - "glVertexAttrib4NivARB"(void, GLuint("index"), address("v", "const GLint *")) - "glVertexAttrib4NsvARB"(void, GLuint("index"), address("v", "const GLshort *")) - "glVertexAttrib4NubARB"(void, GLuint("index"), GLubyte("x"), GLubyte("y"), GLubyte("z"), GLubyte("w")) - "glVertexAttrib4NubvARB"(void, GLuint("index"), address("v", "const GLubyte *")) - "glVertexAttrib4NuivARB"(void, GLuint("index"), address("v", "const GLuint *")) - "glVertexAttrib4NusvARB"(void, GLuint("index"), address("v", "const GLushort *")) - "glVertexAttrib4bvARB"(void, GLuint("index"), address("v", "const GLbyte *")) - "glVertexAttrib4dARB"(void, GLuint("index"), GLdouble("x"), GLdouble("y"), GLdouble("z"), GLdouble("w")) - "glVertexAttrib4dvARB"(void, GLuint("index"), address("v", "const GLdouble *")) - "glVertexAttrib4fARB"(void, GLuint("index"), GLfloat("x"), GLfloat("y"), GLfloat("z"), GLfloat("w")) - "glVertexAttrib4fvARB"(void, GLuint("index"), address("v", "const GLfloat *")) - "glVertexAttrib4ivARB"(void, GLuint("index"), address("v", "const GLint *")) - "glVertexAttrib4sARB"(void, GLuint("index"), GLshort("x"), GLshort("y"), GLshort("z"), GLshort("w")) - "glVertexAttrib4svARB"(void, GLuint("index"), address("v", "const GLshort *")) - "glVertexAttrib4ubvARB"(void, GLuint("index"), address("v", "const GLubyte *")) - "glVertexAttrib4uivARB"(void, GLuint("index"), address("v", "const GLuint *")) - "glVertexAttrib4usvARB"(void, GLuint("index"), address("v", "const GLushort *")) - "glVertexAttribPointerARB"( - void, - GLuint("index"), - GLint("size"), - GLenum("type"), - GLboolean("normalized"), - GLsizei("stride"), - address("pointer", "const void *") - ) - "glEnableVertexAttribArrayARB"(void, GLuint("index")) - "glDisableVertexAttribArrayARB"(void, GLuint("index")) - "glGetVertexAttribdvARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLdouble *")) - "glGetVertexAttribfvARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLfloat *")) - "glGetVertexAttribivARB"(void, GLuint("index"), GLenum("pname"), address("params", "GLint *")) - "glGetVertexAttribPointervARB"(void, GLuint("index"), GLenum("pname"), address("pointer", "void **")) - } - file("VertexShader", ARB, "GL_ARB_vertex_shader") { - "GL_VERTEX_SHADER_ARB"("0x8B31") - "GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB"("0x8B4A") - "GL_MAX_VARYING_FLOATS_ARB"("0x8B4B") - "GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB"("0x8B4C") - "GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB"("0x8B4D") - "GL_OBJECT_ACTIVE_ATTRIBUTES_ARB"("0x8B89") - "GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB"("0x8B8A") - "glBindAttribLocationARB"( - void, - GLhandleARB("programObj"), - GLuint("index"), - address("name", "const GLcharARB *") - ) - "glGetActiveAttribARB"( - void, - GLhandleARB("programObj"), - GLuint("index"), - GLsizei("maxLength"), - address("length", "GLsizei *"), - address("size", "GLint *"), - address("type", "GLenum *"), - address("name", "GLcharARB *") - ) - "glGetAttribLocationARB"(GLint, GLhandleARB("programObj"), address("name", "const GLcharARB *")) - } - file("ViewportArray", ARB, "GL_ARB_viewport_array") { - "glDepthRangeArraydvNV"(void, GLuint("first"), GLsizei("count"), address("v", "const GLdouble *")) - "glDepthRangeIndexeddNV"(void, GLuint("index"), GLdouble("n"), GLdouble("f")) - } - file("WindowPos", ARB, "GL_ARB_window_pos") { - "glWindowPos2dARB"(void, GLdouble("x"), GLdouble("y")) - "glWindowPos2dvARB"(void, address("v", "const GLdouble *")) - "glWindowPos2fARB"(void, GLfloat("x"), GLfloat("y")) - "glWindowPos2fvARB"(void, address("v", "const GLfloat *")) - "glWindowPos2iARB"(void, GLint("x"), GLint("y")) - "glWindowPos2ivARB"(void, address("v", "const GLint *")) - "glWindowPos2sARB"(void, GLshort("x"), GLshort("y")) - "glWindowPos2svARB"(void, address("v", "const GLshort *")) - "glWindowPos3dARB"(void, GLdouble("x"), GLdouble("y"), GLdouble("z")) - "glWindowPos3dvARB"(void, address("v", "const GLdouble *")) - "glWindowPos3fARB"(void, GLfloat("x"), GLfloat("y"), GLfloat("z")) - "glWindowPos3fvARB"(void, address("v", "const GLfloat *")) - "glWindowPos3iARB"(void, GLint("x"), GLint("y"), GLint("z")) - "glWindowPos3ivARB"(void, address("v", "const GLint *")) - "glWindowPos3sARB"(void, GLshort("x"), GLshort("y"), GLshort("z")) - "glWindowPos3svARB"(void, address("v", "const GLshort *")) - } -} - fun khr() { file("BlendEquationAdvanced", KHR, "GL_KHR_blend_equation_advanced") { "GL_MULTIPLY_KHR"("0x9294") @@ -2210,475 +593,6 @@ fun `3dfx`() { ) } -fun amd() { - file( - "BlendMinmaxFactor", AMD, "GL_AMD_blend_minmax_factor", - "GL_FACTOR_MIN_AMD" to "0x901C", - "GL_FACTOR_MAX_AMD" to "0x901D" - ) - file("DebugOutput", AMD, "GL_AMD_debug_output") { - "GL_MAX_DEBUG_MESSAGE_LENGTH_AMD"("0x9143") - "GL_MAX_DEBUG_LOGGED_MESSAGES_AMD"("0x9144") - "GL_DEBUG_LOGGED_MESSAGES_AMD"("0x9145") - "GL_DEBUG_SEVERITY_HIGH_AMD"("0x9146") - "GL_DEBUG_SEVERITY_MEDIUM_AMD"("0x9147") - "GL_DEBUG_SEVERITY_LOW_AMD"("0x9148") - "GL_DEBUG_CATEGORY_API_ERROR_AMD"("0x9149") - "GL_DEBUG_CATEGORY_WINDOW_SYSTEM_AMD"("0x914A") - "GL_DEBUG_CATEGORY_DEPRECATION_AMD"("0x914B") - "GL_DEBUG_CATEGORY_UNDEFINED_BEHAVIOR_AMD"("0x914C") - "GL_DEBUG_CATEGORY_PERFORMANCE_AMD"("0x914D") - "GL_DEBUG_CATEGORY_SHADER_COMPILER_AMD"("0x914E") - "GL_DEBUG_CATEGORY_APPLICATION_AMD"("0x914F") - "GL_DEBUG_CATEGORY_OTHER_AMD"("0x9150") - "glDebugMessageEnableAMD"( - void, - GLenum("category"), - GLenum("severity"), - GLsizei("count"), - address("ids", "const GLuint *"), - GLboolean("enabled") - ) - "glDebugMessageInsertAMD"( - void, - GLenum("category"), - GLenum("severity"), - GLuint("id"), - GLsizei("length"), - address("buf", "const GLchar *") - ) - ("glDebugMessageCallbackAMD"(void, address("callback", "GLDEBUGPROCAMD"), address("userParam", "void *"))) { - "glDebugMessageCallbackAMD"( - void, - "glDebugMessageCallbackAMD(callback.address(arena), userParam);", - arena("arena"), - Type("GLDebugProcAMD", null)("callback"), - address("userParam", "void *") - ) - } - "glGetDebugMessageLogAMD"( - GLuint, - GLuint("count"), - GLsizei("bufSize"), - address("categories", "GLenum *"), - address("severities", "GLenum *"), - address("ids", "GLuint *"), - address("lengths", "GLsizei *"), - address("message", "GLchar *") - ) - } - file( - "DepthClampSeparate", AMD, "GL_AMD_depth_clamp_separate", - "GL_DEPTH_CLAMP_NEAR_AMD" to "0x901E", - "GL_DEPTH_CLAMP_FAR_AMD" to "0x901F" - ) - file("DrawBuffersBlend", AMD, "GL_AMD_draw_buffers_blend") { - "glBlendFuncIndexedAMD"(void, GLuint("buf"), GLenum("src"), GLenum("dst")) - "glBlendFuncSeparateIndexedAMD"( - void, - GLuint("buf"), - GLenum("srcRGB"), - GLenum("dstRGB"), - GLenum("srcAlpha"), - GLenum("dstAlpha") - ) - "glBlendEquationIndexedAMD"(void, GLuint("buf"), GLenum("mode")) - "glBlendEquationSeparateIndexedAMD"(void, GLuint("buf"), GLenum("modeRGB"), GLenum("modeAlpha")) - } - file("FramebufferMultisampleAdvanced", AMD, "GL_AMD_framebuffer_multisample_advanced") { - "GL_RENDERBUFFER_STORAGE_SAMPLES_AMD"("0x91B2") - "GL_MAX_COLOR_FRAMEBUFFER_SAMPLES_AMD"("0x91B3") - "GL_MAX_COLOR_FRAMEBUFFER_STORAGE_SAMPLES_AMD"("0x91B4") - "GL_MAX_DEPTH_STENCIL_FRAMEBUFFER_SAMPLES_AMD"("0x91B5") - "GL_NUM_SUPPORTED_MULTISAMPLE_MODES_AMD"("0x91B6") - "GL_SUPPORTED_MULTISAMPLE_MODES_AMD"("0x91B7") - "glRenderbufferStorageMultisampleAdvancedAMD"( - void, - GLenum("target"), - GLsizei("samples"), - GLsizei("storageSamples"), - GLenum("internalformat"), - GLsizei("width"), - GLsizei("height") - ) - "glNamedRenderbufferStorageMultisampleAdvancedAMD"( - void, - GLuint("renderbuffer"), - GLsizei("samples"), - GLsizei("storageSamples"), - GLenum("internalformat"), - GLsizei("width"), - GLsizei("height") - ) - } - file("FramebufferSamplePositions", AMD, "GL_AMD_framebuffer_sample_positions") { - "GL_SUBSAMPLE_DISTANCE_AMD"("0x883F") - "GL_PIXELS_PER_SAMPLE_PATTERN_X_AMD"("0x91AE") - "GL_PIXELS_PER_SAMPLE_PATTERN_Y_AMD"("0x91AF") - "GL_ALL_PIXELS_AMD"("0xFFFFFFFF") - "glFramebufferSamplePositionsfvAMD"( - void, - GLenum("target"), - GLuint("numsamples"), - GLuint("pixelindex"), - address("values", "const GLfloat *") - ) - "glNamedFramebufferSamplePositionsfvAMD"( - void, - GLuint("framebuffer"), - GLuint("numsamples"), - GLuint("pixelindex"), - address("values", "const GLfloat *") - ) - "glGetFramebufferParameterfvAMD"( - void, - GLenum("target"), - GLenum("pname"), - GLuint("numsamples"), - GLuint("pixelindex"), - GLsizei("size"), - address("values", "GLfloat *") - ) - "glGetNamedFramebufferParameterfvAMD"( - void, - GLuint("framebuffer"), - GLenum("pname"), - GLuint("numsamples"), - GLuint("pixelindex"), - GLsizei("size"), - address("values", "GLfloat *") - ) - } - file( - "GpuShaderHalfFloat", AMD, "GL_AMD_gpu_shader_half_float", - "GL_FLOAT16_NV" to "0x8FF8", - "GL_FLOAT16_VEC2_NV" to "0x8FF9", - "GL_FLOAT16_VEC3_NV" to "0x8FFA", - "GL_FLOAT16_VEC4_NV" to "0x8FFB", - "GL_FLOAT16_MAT2_AMD" to "0x91C5", - "GL_FLOAT16_MAT3_AMD" to "0x91C6", - "GL_FLOAT16_MAT4_AMD" to "0x91C7", - "GL_FLOAT16_MAT2x3_AMD" to "0x91C8", - "GL_FLOAT16_MAT2x4_AMD" to "0x91C9", - "GL_FLOAT16_MAT3x2_AMD" to "0x91CA", - "GL_FLOAT16_MAT3x4_AMD" to "0x91CB", - "GL_FLOAT16_MAT4x2_AMD" to "0x91CC", - "GL_FLOAT16_MAT4x3_AMD" to "0x91CD" - ) - file("GpuShaderInt64", AMD, "GL_AMD_gpu_shader_int64") { - "GL_INT64_NV"("0x140E") - "GL_UNSIGNED_INT64_NV"("0x140F") - "GL_INT8_NV"("0x8FE0") - "GL_INT8_VEC2_NV"("0x8FE1") - "GL_INT8_VEC3_NV"("0x8FE2") - "GL_INT8_VEC4_NV"("0x8FE3") - "GL_INT16_NV"("0x8FE4") - "GL_INT16_VEC2_NV"("0x8FE5") - "GL_INT16_VEC3_NV"("0x8FE6") - "GL_INT16_VEC4_NV"("0x8FE7") - "GL_INT64_VEC2_NV"("0x8FE9") - "GL_INT64_VEC3_NV"("0x8FEA") - "GL_INT64_VEC4_NV"("0x8FEB") - "GL_UNSIGNED_INT8_NV"("0x8FEC") - "GL_UNSIGNED_INT8_VEC2_NV"("0x8FED") - "GL_UNSIGNED_INT8_VEC3_NV"("0x8FEE") - "GL_UNSIGNED_INT8_VEC4_NV"("0x8FEF") - "GL_UNSIGNED_INT16_NV"("0x8FF0") - "GL_UNSIGNED_INT16_VEC2_NV"("0x8FF1") - "GL_UNSIGNED_INT16_VEC3_NV"("0x8FF2") - "GL_UNSIGNED_INT16_VEC4_NV"("0x8FF3") - "GL_UNSIGNED_INT64_VEC2_NV"("0x8FF5") - "GL_UNSIGNED_INT64_VEC3_NV"("0x8FF6") - "GL_UNSIGNED_INT64_VEC4_NV"("0x8FF7") - "glUniform1i64NV"(void, GLint("location"), GLint64EXT("x")) - "glUniform2i64NV"(void, GLint("location"), GLint64EXT("x"), GLint64EXT("y")) - "glUniform3i64NV"(void, GLint("location"), GLint64EXT("x"), GLint64EXT("y"), GLint64EXT("z")) - "glUniform4i64NV"(void, GLint("location"), GLint64EXT("x"), GLint64EXT("y"), GLint64EXT("z"), GLint64EXT("w")) - "glUniform1i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) - "glUniform2i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) - "glUniform3i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) - "glUniform4i64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLint64EXT *")) - "glUniform1ui64NV"(void, GLint("location"), GLuint64EXT("x")) - "glUniform2ui64NV"(void, GLint("location"), GLuint64EXT("x"), GLuint64EXT("y")) - "glUniform3ui64NV"(void, GLint("location"), GLuint64EXT("x"), GLuint64EXT("y"), GLuint64EXT("z")) - "glUniform4ui64NV"( - void, - GLint("location"), - GLuint64EXT("x"), - GLuint64EXT("y"), - GLuint64EXT("z"), - GLuint64EXT("w") - ) - "glUniform1ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) - "glUniform2ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) - "glUniform3ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) - "glUniform4ui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) - "glGetUniformi64vNV"(void, GLuint("program"), GLint("location"), address("params", "GLint64EXT *")) - "glGetUniformui64vNV"(void, GLuint("program"), GLint("location"), address("params", "GLuint64EXT *")) - "glProgramUniform1i64NV"(void, GLuint("program"), GLint("location"), GLint64EXT("x")) - "glProgramUniform2i64NV"(void, GLuint("program"), GLint("location"), GLint64EXT("x"), GLint64EXT("y")) - "glProgramUniform3i64NV"( - void, - GLuint("program"), - GLint("location"), - GLint64EXT("x"), - GLint64EXT("y"), - GLint64EXT("z") - ) - "glProgramUniform4i64NV"( - void, - GLuint("program"), - GLint("location"), - GLint64EXT("x"), - GLint64EXT("y"), - GLint64EXT("z"), - GLint64EXT("w") - ) - "glProgramUniform1i64vNV"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLint64EXT *") - ) - "glProgramUniform2i64vNV"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLint64EXT *") - ) - "glProgramUniform3i64vNV"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLint64EXT *") - ) - "glProgramUniform4i64vNV"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLint64EXT *") - ) - "glProgramUniform1ui64NV"(void, GLuint("program"), GLint("location"), GLuint64EXT("x")) - "glProgramUniform2ui64NV"(void, GLuint("program"), GLint("location"), GLuint64EXT("x"), GLuint64EXT("y")) - "glProgramUniform3ui64NV"( - void, - GLuint("program"), - GLint("location"), - GLuint64EXT("x"), - GLuint64EXT("y"), - GLuint64EXT("z") - ) - "glProgramUniform4ui64NV"( - void, - GLuint("program"), - GLint("location"), - GLuint64EXT("x"), - GLuint64EXT("y"), - GLuint64EXT("z"), - GLuint64EXT("w") - ) - "glProgramUniform1ui64vNV"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLuint64EXT *") - ) - "glProgramUniform2ui64vNV"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLuint64EXT *") - ) - "glProgramUniform3ui64vNV"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLuint64EXT *") - ) - "glProgramUniform4ui64vNV"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("value", "const GLuint64EXT *") - ) - } - file("InterleavedElements", AMD, "GL_AMD_interleaved_elements") { - "GL_VERTEX_ELEMENT_SWIZZLE_AMD"("0x91A4") - "GL_VERTEX_ID_SWIZZLE_AMD"("0x91A5") - "glVertexAttribParameteriAMD"(void, GLuint("index"), GLenum("pname"), GLint("param")) - } - file("MultiDrawIndirect", AMD, "GL_AMD_multi_draw_indirect") { - "glMultiDrawArraysIndirectAMD"( - void, - GLenum("mode"), - address("indirect", "const void *"), - GLsizei("primcount"), - GLsizei("stride") - ) - "glMultiDrawElementsIndirectAMD"( - void, - GLenum("mode"), - GLenum("type"), - address("indirect", "const void *"), - GLsizei("primcount"), - GLsizei("stride") - ) - } - file("NameGenDelete", AMD, "GL_AMD_name_gen_delete") { - "GL_DATA_BUFFER_AMD"("0x9151") - "GL_PERFORMANCE_MONITOR_AMD"("0x9152") - "GL_QUERY_OBJECT_AMD"("0x9153") - "GL_VERTEX_ARRAY_OBJECT_AMD"("0x9154") - "GL_SAMPLER_OBJECT_AMD"("0x9155") - "glGenNamesAMD"(void, GLenum("identifier"), GLuint("num"), address("names", "GLuint *")) - "glDeleteNamesAMD"(void, GLenum("identifier"), GLuint("num"), address("names", "const GLuint *")) - "glIsNameAMD"(GLboolean, GLenum("identifier"), GLuint("name")) - } - file("OcclusionQueryEvent", AMD, "GL_AMD_occlusion_query_event") { - "GL_OCCLUSION_QUERY_EVENT_MASK_AMD"("0x874F") - "GL_QUERY_DEPTH_PASS_EVENT_BIT_AMD"("0x00000001") - "GL_QUERY_DEPTH_FAIL_EVENT_BIT_AMD"("0x00000002") - "GL_QUERY_STENCIL_FAIL_EVENT_BIT_AMD"("0x00000004") - "GL_QUERY_DEPTH_BOUNDS_FAIL_EVENT_BIT_AMD"("0x00000008") - "GL_QUERY_ALL_EVENT_BITS_AMD"("0xFFFFFFFF") - "glQueryObjectParameteruiAMD"(void, GLenum("target"), GLuint("id"), GLenum("pname"), GLuint("param")) - } - file("PerformanceMonitor", AMD, "GL_AMD_performance_monitor") { - "GL_COUNTER_TYPE_AMD"("0x8BC0") - "GL_COUNTER_RANGE_AMD"("0x8BC1") - "GL_UNSIGNED_INT64_AMD"("0x8BC2") - "GL_PERCENTAGE_AMD"("0x8BC3") - "GL_PERFMON_RESULT_AVAILABLE_AMD"("0x8BC4") - "GL_PERFMON_RESULT_SIZE_AMD"("0x8BC5") - "GL_PERFMON_RESULT_AMD"("0x8BC6") - "glGetPerfMonitorGroupsAMD"( - void, - address("numGroups", "GLint *"), - GLsizei("groupsSize"), - address("groups", "GLuint *") - ) - "glGetPerfMonitorCountersAMD"( - void, - GLuint("group"), - address("numCounters", "GLint *"), - address("maxActiveCounters", "GLint *"), - GLsizei("counterSize"), - address("counters", "GLuint *") - ) - "glGetPerfMonitorGroupStringAMD"( - void, - GLuint("group"), - GLsizei("bufSize"), - address("length", "GLsizei *"), - address("groupString", "GLchar *") - ) - "glGetPerfMonitorCounterStringAMD"( - void, - GLuint("group"), - GLuint("counter"), - GLsizei("bufSize"), - address("length", "GLsizei *"), - address("counterString", "GLchar *") - ) - "glGetPerfMonitorCounterInfoAMD"( - void, - GLuint("group"), - GLuint("counter"), - GLenum("pname"), - address("data", "void *") - ) - "glGenPerfMonitorsAMD"(void, GLsizei("n"), address("monitors", "GLuint *")) - "glDeletePerfMonitorsAMD"(void, GLsizei("n"), address("monitors", "GLuint *")) - "glSelectPerfMonitorCountersAMD"( - void, - GLuint("monitor"), - GLboolean("enable"), - GLuint("group"), - GLint("numCounters"), - address("counterList", "GLuint *") - ) - "glBeginPerfMonitorAMD"(void, GLuint("monitor")) - "glEndPerfMonitorAMD"(void, GLuint("monitor")) - "glGetPerfMonitorCounterDataAMD"( - void, - GLuint("monitor"), - GLenum("pname"), - GLsizei("dataSize"), - address("data", "GLuint *"), - address("bytesWritten", "GLint *") - ) - } - file("PinnedMemory", AMD, "GL_AMD_pinned_memory", "GL_EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD" to "0x9160") - file( - "QueryBufferObject", AMD, "GL_AMD_query_buffer_object", - "GL_QUERY_BUFFER_AMD" to "0x9192", - "GL_QUERY_BUFFER_BINDING_AMD" to "0x9193", - "GL_QUERY_RESULT_NO_WAIT_AMD" to "0x9194" - ) - file("SamplePositions", AMD, "GL_AMD_sample_positions") { - "glSetMultisamplefvAMD"(void, GLenum("pname"), GLuint("index"), address("val", "const GLfloat *")) - } - file("SparseTexture", AMD, "GL_AMD_sparse_texture") { - "GL_VIRTUAL_PAGE_SIZE_X_AMD"("0x9195") - "GL_VIRTUAL_PAGE_SIZE_Y_AMD"("0x9196") - "GL_VIRTUAL_PAGE_SIZE_Z_AMD"("0x9197") - "GL_MAX_SPARSE_TEXTURE_SIZE_AMD"("0x9198") - "GL_MAX_SPARSE_3D_TEXTURE_SIZE_AMD"("0x9199") - "GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS"("0x919A") - "GL_MIN_SPARSE_LEVEL_AMD"("0x919B") - "GL_MIN_LOD_WARNING_AMD"("0x919C") - "GL_TEXTURE_STORAGE_SPARSE_BIT_AMD"("0x00000001") - "glTexStorageSparseAMD"( - void, - GLenum("target"), - GLenum("internalFormat"), - GLsizei("width"), - GLsizei("height"), - GLsizei("depth"), - GLsizei("layers"), - GLbitfield("flags") - ) - "glTextureStorageSparseAMD"( - void, - GLuint("texture"), - GLenum("target"), - GLenum("internalFormat"), - GLsizei("width"), - GLsizei("height"), - GLsizei("depth"), - GLsizei("layers"), - GLbitfield("flags") - ) - } - file("StencilOperationExtended", AMD, "GL_AMD_stencil_operation_extended") { - "GL_SET_AMD"("0x874A") - "GL_REPLACE_VALUE_AMD"("0x874B") - "GL_STENCIL_OP_VALUE_AMD"("0x874C") - "GL_STENCIL_BACK_OP_VALUE_AMD"("0x874D") - "glStencilOpValueAMD"(void, GLenum("face"), GLuint("value")) - } - file("TransformFeedback4", AMD, "GL_AMD_transform_feedback4", "GL_STREAM_RASTERIZATION_AMD" to "0x91A0") - file("VertexShaderTessellator", AMD, "GL_AMD_vertex_shader_tessellator") { - "GL_SAMPLER_BUFFER_AMD"("0x9001") - "GL_INT_SAMPLER_BUFFER_AMD"("0x9002") - "GL_UNSIGNED_INT_SAMPLER_BUFFER_AMD"("0x9003") - "GL_TESSELLATION_MODE_AMD"("0x9004") - "GL_TESSELLATION_FACTOR_AMD"("0x9005") - "GL_DISCRETE_AMD"("0x9006") - "GL_CONTINUOUS_AMD"("0x9007") - "glTessellationFactorAMD"(void, GLfloat("factor")) - "glTessellationModeAMD"(void, GLenum("mode")) - } -} - fun apple() { file("AuxDepthStencil", APPLE, "GL_APPLE_aux_depth_stencil", "GL_AUX_DEPTH_STENCIL_APPLE" to "0x8A14") file("ClientStorage", APPLE, "GL_APPLE_client_storage", "GL_UNPACK_CLIENT_STORAGE_APPLE" to "0x85B2") @@ -3632,545 +1546,6 @@ fun mesa() { ) } -fun nv() { - file("ConditionalRender", NVX, "GL_NVX_conditional_render") { - "glBeginConditionalRenderNVX"(void, GLuint("id")) - "glEndConditionalRenderNVX"(void) - } - file( - "GpuMemoryInfo", NVX, "GL_NVX_gpu_memory_info", - "GL_GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX" to "0x9047", - "GL_GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX" to "0x9048", - "GL_GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX" to "0x9049", - "GL_GPU_MEMORY_INFO_EVICTION_COUNT_NVX" to "0x904A", - "GL_GPU_MEMORY_INFO_EVICTED_MEMORY_NVX" to "0x904B" - ) - file("GpuMulticast2", NVX, "GL_NVX_gpu_multicast2") { - "GL_UPLOAD_GPU_MASK_NVX"("0x954A") - "glUploadGpuMaskNVX"(void, GLbitfield("mask")) - "glMulticastViewportArrayvNVX"( - void, - GLuint("gpu"), - GLuint("first"), - GLsizei("count"), - address("v", "const GLfloat *") - ) - "glMulticastViewportPositionWScaleNVX"( - void, - GLuint("gpu"), - GLuint("index"), - GLfloat("xcoeff"), - GLfloat("ycoeff") - ) - "glMulticastScissorArrayvNVX"( - void, - GLuint("gpu"), - GLuint("first"), - GLsizei("count"), - address("v", "const GLint *") - ) - "glAsyncCopyBufferSubDataNVX"( - GLuint, - GLsizei("waitSemaphoreCount"), - address("waitSemaphoreArray", "const GLuint *"), - address("fenceValueArray", "const GLuint64 *"), - GLuint("readGpu"), - GLbitfield("writeGpuMask"), - GLuint("readBuffer"), - GLuint("writeBuffer"), - GLintptr("readOffset"), - GLintptr("writeOffset"), - GLsizeiptr("size"), - GLsizei("signalSemaphoreCount"), - address("signalSemaphoreArray", "const GLuint *"), - address("signalValueArray", "const GLuint64 *") - ) - "glAsyncCopyImageSubDataNVX"( - GLuint, - GLsizei("waitSemaphoreCount"), - address("waitSemaphoreArray", "const GLuint *"), - address("waitValueArray", "const GLuint64 *"), - GLuint("srcGpu"), - GLbitfield("dstGpuMask"), - GLuint("srcName"), - GLenum("srcTarget"), - GLint("srcLevel"), - GLint("srcX"), - GLint("srcY"), - GLint("srcZ"), - GLuint("dstName"), - GLenum("dstTarget"), - GLint("dstLevel"), - GLint("dstX"), - GLint("dstY"), - GLint("dstZ"), - GLsizei("srcWidth"), - GLsizei("srcHeight"), - GLsizei("srcDepth"), - GLsizei("signalSemaphoreCount"), - address("signalSemaphoreArray", "const GLuint *"), - address("signalValueArray", "const GLuint64 *") - ) - } - file("LinkedGpuMulticast", NVX, "GL_NVX_linked_gpu_multicast") { - "GL_LGPU_SEPARATE_STORAGE_BIT_NVX"("0x0800") - "GL_MAX_LGPU_GPUS_NVX"("0x92BA") - "glLGPUNamedBufferSubDataNVX"( - void, - GLbitfield("gpuMask"), - GLuint("buffer"), - GLintptr("offset"), - GLsizeiptr("size"), - address("data", "const void *") - ) - "glLGPUCopyImageSubDataNVX"( - void, - GLuint("sourceGpu"), - GLbitfield("destinationGpuMask"), - GLuint("srcName"), - GLenum("srcTarget"), - GLint("srcLevel"), - GLint("srcX"), - GLint("srxY"), - GLint("srcZ"), - GLuint("dstName"), - GLenum("dstTarget"), - GLint("dstLevel"), - GLint("dstX"), - GLint("dstY"), - GLint("dstZ"), - GLsizei("width"), - GLsizei("height"), - GLsizei("depth") - ) - "glLGPUInterlockNVX"(void) - } - file("ProgressFence", NVX, "GL_NVX_progress_fence") { - "glCreateProgressFenceNVX"(void) - "glSignalSemaphoreui64NVX"( - void, - GLuint("signalGpu"), - GLsizei("fenceObjectCount"), - address("semaphoreArray", "const GLuint *"), - address("fenceValueArray", "const GLuint64 *") - ) - "glWaitSemaphoreui64NVX"( - void, - GLuint("waitGpu"), - GLsizei("fenceObjectCount"), - address("semaphoreArray", "const GLuint *"), - address("fenceValueArray", "const GLuint64 *") - ) - "glClientWaitSemaphoreui64NVX"( - void, - GLsizei("fenceObjectCount"), - address("semaphoreArray", "const GLuint *"), - address("fenceValueArray", "const GLuint64 *") - ) - } - file("AlphaToCoverageDitherControl", NV, "GL_NV_alpha_to_coverage_dither_control") { - "GL_ALPHA_TO_COVERAGE_DITHER_DEFAULT_NV"("0x934D") - "GL_ALPHA_TO_COVERAGE_DITHER_ENABLE_NV"("0x934E") - "GL_ALPHA_TO_COVERAGE_DITHER_DISABLE_NV"("0x934F") - "GL_ALPHA_TO_COVERAGE_DITHER_MODE_NV"("0x92BF") - "glAlphaToCoverageDitherControlNV"(void, GLenum("mode")) - } - file("BindlessMultiDrawIndirect", NV, "GL_NV_bindless_multi_draw_indirect") { - "glMultiDrawArraysIndirectBindlessNV"( - void, - GLenum("mode"), - address("indirect", "const void *"), - GLsizei("drawCount"), - GLsizei("stride"), - GLint("vertexBufferCount") - ) - "glMultiDrawElementsIndirectBindlessNV"( - void, - GLenum("mode"), - GLenum("type"), - address("indirect", "const void *"), - GLsizei("drawCount"), - GLsizei("stride"), - GLint("vertexBufferCount") - ) - } - file("BindlessMultiDrawIndirectCount", NV, "GL_NV_bindless_multi_draw_indirect_count") { - "glMultiDrawArraysIndirectBindlessCountNV"( - void, - GLenum("mode"), - address("indirect", "const void *"), - GLsizei("drawCount"), - GLsizei("maxDrawCount"), - GLsizei("stride"), - GLint("vertexBufferCount") - ) - "glMultiDrawElementsIndirectBindlessCountNV"( - void, - GLenum("mode"), - GLenum("type"), - address("indirect", "const void *"), - GLsizei("drawCount"), - GLsizei("maxDrawCount"), - GLsizei("stride"), - GLint("vertexBufferCount") - ) - } - file("BindlessTexture", NV, "GL_NV_bindless_texture") { - "glGetTextureHandleNV"(GLuint64, GLuint("texture")) - "glGetTextureSamplerHandleNV"(GLuint64, GLuint("texture"), GLuint("sampler")) - "glMakeTextureHandleResidentNV"(void, GLuint64("handle")) - "glMakeTextureHandleNonResidentNV"(void, GLuint64("handle")) - "glGetImageHandleNV"( - GLuint64, - GLuint("texture"), - GLint("level"), - GLboolean("layered"), - GLint("layer"), - GLenum("format") - ) - "glMakeImageHandleResidentNV"(void, GLuint64("handle"), GLenum("access")) - "glMakeImageHandleNonResidentNV"(void, GLuint64("handle")) - "glUniformHandleui64NV"(void, GLint("location"), GLuint64("value")) - "glUniformHandleui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64 *")) - "glProgramUniformHandleui64NV"(void, GLuint("program"), GLint("location"), GLuint64("value")) - "glProgramUniformHandleui64vNV"( - void, - GLuint("program"), - GLint("location"), - GLsizei("count"), - address("values", "const GLuint64 *") - ) - "glIsTextureHandleResidentNV"(GLboolean, GLuint64("handle")) - "glIsImageHandleResidentNV"(GLboolean, GLuint64("handle")) - } - file("BlendEquationAdvanced", NV, "GL_NV_blend_equation_advanced") { - "GL_BLEND_OVERLAP_NV"("0x9281") - "GL_BLEND_PREMULTIPLIED_SRC_NV"("0x9280") - "GL_BLUE_NV"("0x1905") - "GL_COLORBURN_NV"("0x929A") - "GL_COLORDODGE_NV"("0x9299") - "GL_CONJOINT_NV"("0x9284") - "GL_CONTRAST_NV"("0x92A1") - "GL_DARKEN_NV"("0x9297") - "GL_DIFFERENCE_NV"("0x929E") - "GL_DISJOINT_NV"("0x9283") - "GL_DST_ATOP_NV"("0x928F") - "GL_DST_IN_NV"("0x928B") - "GL_DST_NV"("0x9287") - "GL_DST_OUT_NV"("0x928D") - "GL_DST_OVER_NV"("0x9289") - "GL_EXCLUSION_NV"("0x92A0") - "GL_GREEN_NV"("0x1904") - "GL_HARDLIGHT_NV"("0x929B") - "GL_HARDMIX_NV"("0x92A9") - "GL_HSL_COLOR_NV"("0x92AF") - "GL_HSL_HUE_NV"("0x92AD") - "GL_HSL_LUMINOSITY_NV"("0x92B0") - "GL_HSL_SATURATION_NV"("0x92AE") - "GL_INVERT_OVG_NV"("0x92B4") - "GL_INVERT_RGB_NV"("0x92A3") - "GL_LIGHTEN_NV"("0x9298") - "GL_LINEARBURN_NV"("0x92A5") - "GL_LINEARDODGE_NV"("0x92A4") - "GL_LINEARLIGHT_NV"("0x92A7") - "GL_MINUS_CLAMPED_NV"("0x92B3") - "GL_MINUS_NV"("0x929F") - "GL_MULTIPLY_NV"("0x9294") - "GL_OVERLAY_NV"("0x9296") - "GL_PINLIGHT_NV"("0x92A8") - "GL_PLUS_CLAMPED_ALPHA_NV"("0x92B2") - "GL_PLUS_CLAMPED_NV"("0x92B1") - "GL_PLUS_DARKER_NV"("0x9292") - "GL_PLUS_NV"("0x9291") - "GL_RED_NV"("0x1903") - "GL_SCREEN_NV"("0x9295") - "GL_SOFTLIGHT_NV"("0x929C") - "GL_SRC_ATOP_NV"("0x928E") - "GL_SRC_IN_NV"("0x928A") - "GL_SRC_NV"("0x9286") - "GL_SRC_OUT_NV"("0x928C") - "GL_SRC_OVER_NV"("0x9288") - "GL_UNCORRELATED_NV"("0x9282") - "GL_VIVIDLIGHT_NV"("0x92A6") - "GL_XOR_NV"("0x1506") - "glBlendParameteriNV"(void, GLenum("pname"), GLint("value")) - "glBlendBarrierNV"(void) - } - file("BlendEquationAdvancedCoherent", NV, "GL_NV_blend_equation_advanced_coherent", "GL_BLEND_ADVANCED_COHERENT_NV" to "0x9285") - file("ClipSpaceWScaling", NV, "GL_NV_clip_space_w_scaling") { - "GL_VIEWPORT_POSITION_W_SCALE_NV"("0x937C") - "GL_VIEWPORT_POSITION_W_SCALE_X_COEFF_NV"("0x937D") - "GL_VIEWPORT_POSITION_W_SCALE_Y_COEFF_NV"("0x937E") - "glViewportPositionWScaleNV"(void, GLuint("index"), GLfloat("xcoeff"), GLfloat("ycoeff")) - } - file("CommandList", NV, "GL_NV_command_list") { - "GL_TERMINATE_SEQUENCE_COMMAND_NV"("0x0000") - "GL_NOP_COMMAND_NV"("0x0001") - "GL_DRAW_ELEMENTS_COMMAND_NV"("0x0002") - "GL_DRAW_ARRAYS_COMMAND_NV"("0x0003") - "GL_DRAW_ELEMENTS_STRIP_COMMAND_NV"("0x0004") - "GL_DRAW_ARRAYS_STRIP_COMMAND_NV"("0x0005") - "GL_DRAW_ELEMENTS_INSTANCED_COMMAND_NV"("0x0006") - "GL_DRAW_ARRAYS_INSTANCED_COMMAND_NV"("0x0007") - "GL_ELEMENT_ADDRESS_COMMAND_NV"("0x0008") - "GL_ATTRIBUTE_ADDRESS_COMMAND_NV"("0x0009") - "GL_UNIFORM_ADDRESS_COMMAND_NV"("0x000A") - "GL_BLEND_COLOR_COMMAND_NV"("0x000B") - "GL_STENCIL_REF_COMMAND_NV"("0x000C") - "GL_LINE_WIDTH_COMMAND_NV"("0x000D") - "GL_POLYGON_OFFSET_COMMAND_NV"("0x000E") - "GL_ALPHA_REF_COMMAND_NV"("0x000F") - "GL_VIEWPORT_COMMAND_NV"("0x0010") - "GL_SCISSOR_COMMAND_NV"("0x0011") - "GL_FRONT_FACE_COMMAND_NV"("0x0012") - "glCreateStatesNV"(void, GLsizei("n"), address("states", "GLuint *")) - "glDeleteStatesNV"(void, GLsizei("n"), address("states", "const GLuint *")) - "glIsStateNV"(GLboolean, GLuint("state")) - "glStateCaptureNV"(void, GLuint("state"), GLenum("mode")) - "glGetCommandHeaderNV"(GLuint, GLenum("tokenID"), GLuint("size")) - "glGetStageIndexNV"(GLushort, GLenum("shadertype")) - "glDrawCommandsNV"( - void, - GLenum("primitiveMode"), - GLuint("buffer"), - address("indirects", "const GLintptr *"), - address("sizes", "const GLsizei *"), - GLuint("count") - ) - "glDrawCommandsAddressNV"( - void, - GLenum("primitiveMode"), - address("indirects", "const GLuint64 *"), - address("sizes", "const GLsizei *"), - GLuint("count") - ) - "glDrawCommandsStatesNV"( - void, - GLuint("buffer"), - address("indirects", "const GLintptr *"), - address("sizes", "const GLsizei *"), - address("states", "const GLuint *"), - address("fbos", "const GLuint *"), - GLuint("count") - ) - "glDrawCommandsStatesAddressNV"( - void, - address("indirects", "const GLuint64 *"), - address("sizes", "const GLsizei *"), - address("states", "const GLuint *"), - address("fbos", "const GLuint *"), - GLuint("count") - ) - "glCreateCommandListsNV"(void, GLsizei("n"), address("lists", "GLuint *")) - "glDeleteCommandListsNV"(void, GLsizei("n"), address("lists", "const GLuint *")) - "glIsCommandListNV"(GLboolean, GLuint("list")) - "glListDrawCommandsStatesClientNV"( - void, - GLuint("list"), - GLuint("segment"), - address("indirects", "const void **"), - address("sizes", "const GLsizei *"), - address("states", "const GLuint *"), - address("fbos", "const GLuint *"), - GLuint("count") - ) - "glCommandListSegmentsNV"(void, GLuint("list"), GLuint("segments")) - "glCompileCommandListNV"(void, GLuint("list")) - "glCallCommandListNV"(void, GLuint("list")) - } - file( - "ComputeProgram5", NV, "GL_NV_compute_program5", - "GL_COMPUTE_PROGRAM_NV" to "0x90FB", - "GL_COMPUTE_PROGRAM_PARAMETER_BUFFER_NV" to "0x90FC" - ) - file("ConditionalRender", NV, "GL_NV_conditional_render") { - "GL_QUERY_WAIT_NV"("0x8E13") - "GL_QUERY_NO_WAIT_NV"("0x8E14") - "GL_QUERY_BY_REGION_WAIT_NV"("0x8E15") - "GL_QUERY_BY_REGION_NO_WAIT_NV"("0x8E16") - "glBeginConditionalRenderNV"(void, GLuint("id"), GLenum("mode")) - "glEndConditionalRenderNV"(void) - } - file("ConservativeRaster", NV, "GL_NV_conservative_raster") { - "GL_CONSERVATIVE_RASTERIZATION_NV"("0x9346") - "GL_SUBPIXEL_PRECISION_BIAS_X_BITS_NV"("0x9347") - "GL_SUBPIXEL_PRECISION_BIAS_Y_BITS_NV"("0x9348") - "GL_MAX_SUBPIXEL_PRECISION_BIAS_BITS_NV"("0x9349") - "glSubpixelPrecisionBiasNV"(void, GLuint("xbits"), GLuint("ybits")) - } - file("ConservativeRasterDilate", NV, "GL_NV_conservative_raster_dilate") { - "GL_CONSERVATIVE_RASTER_DILATE_NV" ("0x9379") - "GL_CONSERVATIVE_RASTER_DILATE_RANGE_NV" ("0x937A") - "GL_CONSERVATIVE_RASTER_DILATE_GRANULARITY_NV" ("0x937B") - "glConservativeRasterParameterfNV" (void, GLenum ("pname"), GLfloat ("value")) - } - file("ConservativeRasterPreSnap", NV, "GL_NV_conservative_raster_pre_snap", "GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_NV" to "0x9550") - file("ConservativeRasterPreSnapTriangles", NV, "GL_NV_conservative_raster_pre_snap_triangles") { - "GL_CONSERVATIVE_RASTER_MODE_NV"("0x954D") - "GL_CONSERVATIVE_RASTER_MODE_POST_SNAP_NV"("0x954E") - "GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_TRIANGLES_NV"("0x954F") - "glConservativeRasterParameteriNV"(void, GLenum("pname"), GLint("param")) - } - file( - "CopyDepthToColor", NV, "GL_NV_copy_depth_to_color", - "GL_DEPTH_STENCIL_TO_RGBA_NV" to "0x886E", - "GL_DEPTH_STENCIL_TO_BGRA_NV" to "0x886F" - ) - file("CopyImage", NV, "GL_NV_copy_image") { - "glCopyImageSubDataNV"( - void, - GLuint("srcName"), - GLenum("srcTarget"), - GLint("srcLevel"), - GLint("srcX"), - GLint("srcY"), - GLint("srcZ"), - GLuint("dstName"), - GLenum("dstTarget"), - GLint("dstLevel"), - GLint("dstX"), - GLint("dstY"), - GLint("dstZ"), - GLsizei("width"), - GLsizei("height"), - GLsizei("depth") - ) - } - file( - "DeepTexture3D", NV, "GL_NV_deep_texture3D", - "GL_MAX_DEEP_3D_TEXTURE_WIDTH_HEIGHT_NV" to "0x90D0", - "GL_MAX_DEEP_3D_TEXTURE_DEPTH_NV" to "0x90D1" - ) - file("DepthBufferFloat", NV, "GL_NV_depth_buffer_float") { - "GL_DEPTH_COMPONENT32F_NV"("0x8DAB") - "GL_DEPTH32F_STENCIL8_NV"("0x8DAC") - "GL_FLOAT_32_UNSIGNED_INT_24_8_REV_NV"("0x8DAD") - "GL_DEPTH_BUFFER_FLOAT_MODE_NV"("0x8DAF") - "glDepthRangedNV"(void, GLdouble("zNear"), GLdouble("zFar")) - "glClearDepthdNV"(void, GLdouble("depth")) - "glDepthBoundsdNV"(void, GLdouble("zmin"), GLdouble("zmax")) - } - file("DepthClamp", NV, "GL_NV_depth_clamp", "GL_DEPTH_CLAMP_NV" to "0x864F") - file("DrawTexture", NV, "GL_NV_draw_texture") { - "glDrawTextureNV"( - void, - GLuint("texture"), - GLuint("sampler"), - GLfloat("x0"), - GLfloat("y0"), - GLfloat("x1"), - GLfloat("y1"), - GLfloat("z"), - GLfloat("s0"), - GLfloat("t0"), - GLfloat("s1"), - GLfloat("t1") - ) - } - file("DrawVulkanImage", NV, "GL_NV_draw_vulkan_image") { - "glDrawVkImageNV"( - void, - GLuint64("vkImage"), - GLuint("sampler"), - GLfloat("x0"), - GLfloat("y0"), - GLfloat("x1"), - GLfloat("y1"), - GLfloat("z"), - GLfloat("s0"), - GLfloat("t0"), - GLfloat("s1"), - GLfloat("t1") - ) - "glGetVkProcAddrNV"(address, address("name", "const GLchar *"), nativeType = "GLVULKANPROCNV") - "glWaitVkSemaphoreNV"(void, GLuint64("vkSemaphore")) - "glSignalVkSemaphoreNV"(void, GLuint64("vkSemaphore")) - "glSignalVkFenceNV"(void, GLuint64("vkFence")) - } - file("Evaluators", NV, "GL_NV_evaluators") { - "GL_EVAL_2D_NV"("0x86C0") - "GL_EVAL_TRIANGULAR_2D_NV"("0x86C1") - "GL_MAP_TESSELLATION_NV"("0x86C2") - "GL_MAP_ATTRIB_U_ORDER_NV"("0x86C3") - "GL_MAP_ATTRIB_V_ORDER_NV"("0x86C4") - "GL_EVAL_FRACTIONAL_TESSELLATION_NV"("0x86C5") - "GL_EVAL_VERTEX_ATTRIB0_NV"("0x86C6") - "GL_EVAL_VERTEX_ATTRIB1_NV"("0x86C7") - "GL_EVAL_VERTEX_ATTRIB2_NV"("0x86C8") - "GL_EVAL_VERTEX_ATTRIB3_NV"("0x86C9") - "GL_EVAL_VERTEX_ATTRIB4_NV"("0x86CA") - "GL_EVAL_VERTEX_ATTRIB5_NV"("0x86CB") - "GL_EVAL_VERTEX_ATTRIB6_NV"("0x86CC") - "GL_EVAL_VERTEX_ATTRIB7_NV"("0x86CD") - "GL_EVAL_VERTEX_ATTRIB8_NV"("0x86CE") - "GL_EVAL_VERTEX_ATTRIB9_NV"("0x86CF") - "GL_EVAL_VERTEX_ATTRIB10_NV"("0x86D0") - "GL_EVAL_VERTEX_ATTRIB11_NV"("0x86D1") - "GL_EVAL_VERTEX_ATTRIB12_NV"("0x86D2") - "GL_EVAL_VERTEX_ATTRIB13_NV"("0x86D3") - "GL_EVAL_VERTEX_ATTRIB14_NV"("0x86D4") - "GL_EVAL_VERTEX_ATTRIB15_NV"("0x86D5") - "GL_MAX_MAP_TESSELLATION_NV"("0x86D6") - "GL_MAX_RATIONAL_EVAL_ORDER_NV"("0x86D7") - "glMapControlPointsNV"( - void, - GLenum("target"), - GLuint("index"), - GLenum("type"), - GLsizei("ustride"), - GLsizei("vstride"), - GLint("uorder"), - GLint("vorder"), - GLboolean("packed"), - address("points", "const void *") - ) - "glMapParameterivNV"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) - "glMapParameterfvNV"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfloat *")) - "glGetMapControlPointsNV"( - void, - GLenum("target"), - GLuint("index"), - GLenum("type"), - GLsizei("ustride"), - GLsizei("vstride"), - GLboolean("packed"), - address("points", "void *") - ) - "glGetMapParameterivNV"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) - "glGetMapParameterfvNV"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) - "glGetMapAttribParameterivNV"( - void, - GLenum("target"), - GLuint("index"), - GLenum("pname"), - address("params", "GLint *") - ) - "glGetMapAttribParameterfvNV"( - void, - GLenum("target"), - GLuint("index"), - GLenum("pname"), - address("params", "GLfloat *") - ) - "glEvalMapsNV"(void, GLenum("target"), GLenum("mode")) - } - file("ExplicitMultisample", NV, "GL_NV_explicit_multisample") { - "GL_SAMPLE_POSITION_NV"("0x8E50") - "GL_SAMPLE_MASK_NV"("0x8E51") - "GL_SAMPLE_MASK_VALUE_NV"("0x8E52") - "GL_TEXTURE_BINDING_RENDERBUFFER_NV"("0x8E53") - "GL_TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV"("0x8E54") - "GL_TEXTURE_RENDERBUFFER_NV"("0x8E55") - "GL_SAMPLER_RENDERBUFFER_NV"("0x8E56") - "GL_INT_SAMPLER_RENDERBUFFER_NV"("0x8E57") - "GL_UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV"("0x8E58") - "GL_MAX_SAMPLE_MASK_WORDS_NV"("0x8E59") - "glGetMultisamplefvNV"(void, GLenum("pname"), GLuint("index"), address("val", "GLfloat *")) - "glSampleMaskIndexedNV"(void, GLuint("index"), GLbitfield("mask")) - "glTexRenderbufferNV"(void, GLenum("target"), GLuint("renderbuffer")) - } -} - fun oml() { file( "Interlace", OML, "GL_OML_interlace", @@ -5688,6 +3063,7 @@ fun glExtCaps() { "GL_NV_timeline_semaphore", "GL_NV_transform_feedback", "GL_NV_transform_feedback2", + "GL_NV_uniform_buffer_std430_layout", "GL_NV_uniform_buffer_unified_memory", "GL_NV_vdpau_interop", "GL_NV_vdpau_interop2", diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java index 1cb105f1..f1fe5d47 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java @@ -46,7 +46,7 @@ */ public final class GLExtCaps { /** The OpenGL extension flags. */ - public boolean GL_ARB_ES2_compatibility, GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays, GL_ARB_base_instance, GL_ARB_bindless_texture, GL_ARB_blend_func_extended, GL_ARB_buffer_storage, GL_ARB_cl_event, GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, GL_ARB_color_buffer_float, GL_ARB_compatibility, GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, GL_ARB_copy_buffer, GL_ARB_copy_image, GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float, GL_ARB_depth_clamp, GL_ARB_depth_texture, GL_ARB_derivative_control, GL_ARB_direct_state_access, GL_ARB_draw_buffers, GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex, GL_ARB_draw_indirect, GL_ARB_draw_instanced, GL_ARB_enhanced_layouts, GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, GL_ARB_fragment_program, GL_ARB_fragment_program_shadow, GL_ARB_fragment_shader, GL_ARB_fragment_shader_interlock, GL_ARB_framebuffer_no_attachments, GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB, GL_ARB_geometry_shader4, GL_ARB_get_program_binary, GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64, GL_ARB_half_float_pixel, GL_ARB_half_float_vertex, GL_ARB_imaging, GL_ARB_indirect_parameters, GL_ARB_instanced_arrays, GL_ARB_internalformat_query, GL_ARB_internalformat_query2, GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment, GL_ARB_map_buffer_range, GL_ARB_matrix_palette, GL_ARB_multi_bind, GL_ARB_multi_draw_indirect, GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_occlusion_query, GL_ARB_occlusion_query2, GL_ARB_parallel_shader_compile, GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, GL_ARB_point_sprite, GL_ARB_polygon_offset_clamp, GL_ARB_post_depth_coverage, GL_ARB_program_interface_query, GL_ARB_provoking_vertex, GL_ARB_query_buffer_object, GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness, GL_ARB_robustness_isolation, GL_ARB_sample_locations, GL_ARB_sample_shading, GL_ARB_sampler_objects, GL_ARB_seamless_cube_map, GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects, GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters, GL_ARB_shader_ballot, GL_ARB_shader_bit_encoding, GL_ARB_shader_clock, GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote, GL_ARB_shader_image_load_store, GL_ARB_shader_image_size, GL_ARB_shader_objects, GL_ARB_shader_precision, GL_ARB_shader_stencil_export, GL_ARB_shader_storage_buffer_object, GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, GL_ARB_shading_language_100, GL_ARB_shading_language_420pack, GL_ARB_shading_language_include, GL_ARB_shading_language_packing, GL_ARB_shadow, GL_ARB_shadow_ambient, GL_ARB_sparse_buffer, GL_ARB_sparse_texture, GL_ARB_sparse_texture2, GL_ARB_sparse_texture_clamp, GL_ARB_spirv_extensions, GL_ARB_stencil_texturing, GL_ARB_sync, GL_ARB_tessellation_shader, GL_ARB_texture_barrier, GL_ARB_texture_border_clamp, GL_ARB_texture_buffer_object, GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range, GL_ARB_texture_compression, GL_ARB_texture_compression_bptc, GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map, GL_ARB_texture_cube_map_array, GL_ARB_texture_env_add, GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3, GL_ARB_texture_filter_anisotropic, GL_ARB_texture_filter_minmax, GL_ARB_texture_float, GL_ARB_texture_gather, GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_mirrored_repeat, GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two, GL_ARB_texture_query_levels, GL_ARB_texture_query_lod, GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui, GL_ARB_texture_stencil8, GL_ARB_texture_storage, GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle, GL_ARB_texture_view, GL_ARB_timer_query, GL_ARB_transform_feedback2, GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced, GL_ARB_transform_feedback_overflow_query, GL_ARB_transpose_matrix, GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra, GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_64bit, GL_ARB_vertex_attrib_binding, GL_ARB_vertex_blend, GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_vertex_shader, GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev, GL_ARB_viewport_array, GL_ARB_window_pos, GL_KHR_blend_equation_advanced, GL_KHR_blend_equation_advanced_coherent, GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error, GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior, GL_KHR_robustness, GL_KHR_shader_subgroup, GL_KHR_texture_compression_astc_hdr, GL_KHR_texture_compression_astc_ldr, GL_KHR_texture_compression_astc_sliced_3d, GL_OES_byte_coordinates, GL_OES_compressed_paletted_texture, GL_OES_fixed_point, GL_OES_query_matrix, GL_OES_read_format, GL_OES_single_precision, GL_3DFX_multisample, GL_3DFX_tbuffer, GL_3DFX_texture_compression_FXT1, GL_AMD_blend_minmax_factor, GL_AMD_conservative_depth, GL_AMD_debug_output, GL_AMD_depth_clamp_separate, GL_AMD_draw_buffers_blend, GL_AMD_framebuffer_multisample_advanced, GL_AMD_framebuffer_sample_positions, GL_AMD_gcn_shader, GL_AMD_gpu_shader_half_float, GL_AMD_gpu_shader_int16, GL_AMD_gpu_shader_int64, GL_AMD_interleaved_elements, GL_AMD_multi_draw_indirect, GL_AMD_name_gen_delete, GL_AMD_occlusion_query_event, GL_AMD_performance_monitor, GL_AMD_pinned_memory, GL_AMD_query_buffer_object, GL_AMD_sample_positions, GL_AMD_seamless_cubemap_per_texture, GL_AMD_shader_atomic_counter_ops, GL_AMD_shader_ballot, GL_AMD_shader_explicit_vertex_parameter, GL_AMD_shader_gpu_shader_half_float_fetch, GL_AMD_shader_image_load_store_lod, GL_AMD_shader_stencil_export, GL_AMD_shader_trinary_minmax, GL_AMD_sparse_texture, GL_AMD_stencil_operation_extended, GL_AMD_texture_gather_bias_lod, GL_AMD_texture_texture4, GL_AMD_transform_feedback3_lines_triangles, GL_AMD_transform_feedback4, GL_AMD_vertex_shader_layer, GL_AMD_vertex_shader_tessellator, GL_AMD_vertex_shader_viewport_index, GL_APPLE_aux_depth_stencil, GL_APPLE_client_storage, GL_APPLE_element_array, GL_APPLE_fence, GL_APPLE_float_pixels, GL_APPLE_flush_buffer_range, GL_APPLE_object_purgeable, GL_APPLE_rgb_422, GL_APPLE_row_bytes, GL_APPLE_specular_vector, GL_APPLE_texture_range, GL_APPLE_transform_hint, GL_APPLE_vertex_array_object, GL_APPLE_vertex_array_range, GL_APPLE_vertex_program_evaluators, GL_APPLE_ycbcr_422, GL_ATI_draw_buffers, GL_ATI_element_array, GL_ATI_envmap_bumpmap, GL_ATI_fragment_shader, GL_ATI_map_object_buffer, GL_ATI_meminfo, GL_ATI_pixel_format_float, GL_ATI_pn_triangles, GL_ATI_separate_stencil, GL_ATI_text_fragment_shader, GL_ATI_texture_env_combine3, GL_ATI_texture_float, GL_ATI_texture_mirror_once, GL_ATI_vertex_array_object, GL_ATI_vertex_attrib_array_object, GL_ATI_vertex_streams, GL_EXT_422_pixels, GL_EXT_EGL_image_storage, GL_EXT_EGL_sync, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_bindable_uniform, GL_EXT_blend_color, GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate, GL_EXT_blend_logic_op, GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_clip_volume_hint, GL_EXT_cmyka, GL_EXT_color_subtable, GL_EXT_compiled_vertex_array, GL_EXT_convolution, GL_EXT_coordinate_frame, GL_EXT_copy_texture, GL_EXT_cull_vertex, GL_EXT_debug_label, GL_EXT_debug_marker, GL_EXT_depth_bounds_test, GL_EXT_direct_state_access, GL_EXT_draw_buffers2, GL_EXT_draw_instanced, GL_EXT_draw_range_elements, GL_EXT_external_buffer, GL_EXT_fog_coord, GL_EXT_framebuffer_blit, GL_EXT_framebuffer_blit_layers, GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_multisample_blit_scaled, GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, GL_EXT_geometry_shader4, GL_EXT_gpu_program_parameters, GL_EXT_gpu_shader4, GL_EXT_histogram, GL_EXT_index_array_formats, GL_EXT_index_func, GL_EXT_index_material, GL_EXT_index_texture, GL_EXT_light_texture, GL_EXT_memory_object, GL_EXT_memory_object_fd, GL_EXT_memory_object_win32, GL_EXT_misc_attribute, GL_EXT_multi_draw_arrays, GL_EXT_multisample, GL_EXT_multiview_tessellation_geometry_shader, GL_EXT_multiview_texture_multisample, GL_EXT_multiview_timer_query, GL_EXT_packed_depth_stencil, GL_EXT_packed_float, GL_EXT_packed_pixels, GL_EXT_paletted_texture, GL_EXT_pixel_buffer_object, GL_EXT_pixel_transform, GL_EXT_pixel_transform_color_table, GL_EXT_point_parameters, GL_EXT_polygon_offset, GL_EXT_polygon_offset_clamp, GL_EXT_post_depth_coverage, GL_EXT_provoking_vertex, GL_EXT_raster_multisample, GL_EXT_rescale_normal, GL_EXT_secondary_color, GL_EXT_semaphore, GL_EXT_semaphore_fd, GL_EXT_semaphore_win32, GL_EXT_separate_shader_objects, GL_EXT_separate_specular_color, GL_EXT_shader_framebuffer_fetch, GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_image_load_formatted, GL_EXT_shader_image_load_store, GL_EXT_shader_integer_mix, GL_EXT_shader_samples_identical, GL_EXT_shadow_funcs, GL_EXT_shared_texture_palette, GL_EXT_sparse_texture2, GL_EXT_stencil_clear_tag, GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture, GL_EXT_texture, GL_EXT_texture3D, GL_EXT_texture_array, GL_EXT_texture_buffer_object, GL_EXT_texture_compression_latc, GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map, GL_EXT_texture_env_add, GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic, GL_EXT_texture_filter_minmax, GL_EXT_texture_integer, GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp, GL_EXT_texture_object, GL_EXT_texture_perturb_normal, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_RG8, GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm, GL_EXT_texture_storage, GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback, GL_EXT_vertex_array, GL_EXT_vertex_array_bgra, GL_EXT_vertex_attrib_64bit, GL_EXT_vertex_shader, GL_EXT_vertex_weighting, GL_EXT_win32_keyed_mutex, GL_EXT_window_rectangles, GL_EXT_x11_sync_object, GL_GREMEDY_frame_terminator, GL_GREMEDY_string_marker, GL_HP_convolution_border_modes, GL_HP_image_transform, GL_HP_occlusion_test, GL_HP_texture_lighting, GL_IBM_cull_vertex, GL_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip, GL_IBM_static_data, GL_IBM_texture_mirrored_repeat, GL_IBM_vertex_array_lists, GL_INGR_blend_func_separate, GL_INGR_color_clamp, GL_INGR_interlace_read, GL_INTEL_blackhole_render, GL_INTEL_conservative_rasterization, GL_INTEL_fragment_shader_ordering, GL_INTEL_framebuffer_CMAA, GL_INTEL_map_texture, GL_INTEL_parallel_arrays, GL_INTEL_performance_query, GL_MESAX_texture_stack, GL_MESA_framebuffer_flip_x, GL_MESA_framebuffer_flip_y, GL_MESA_framebuffer_swap_xy, GL_MESA_pack_invert, GL_MESA_program_binary_formats, GL_MESA_resize_buffers, GL_MESA_shader_integer_functions, GL_MESA_tile_raster_order, GL_MESA_window_pos, GL_MESA_ycbcr_texture, GL_NVX_blend_equation_advanced_multi_draw_buffers, GL_NVX_conditional_render, GL_NVX_gpu_memory_info, GL_NVX_gpu_multicast2, GL_NVX_linked_gpu_multicast, GL_NVX_progress_fence, GL_NV_alpha_to_coverage_dither_control, GL_NV_bindless_multi_draw_indirect, GL_NV_bindless_multi_draw_indirect_count, GL_NV_bindless_texture, GL_NV_blend_equation_advanced, GL_NV_blend_equation_advanced_coherent, GL_NV_blend_minmax_factor, GL_NV_blend_square, GL_NV_clip_space_w_scaling, GL_NV_command_list, GL_NV_compute_program5, GL_NV_compute_shader_derivatives, GL_NV_conditional_render, GL_NV_conservative_raster, GL_NV_conservative_raster_dilate, GL_NV_conservative_raster_pre_snap, GL_NV_conservative_raster_pre_snap_triangles, GL_NV_conservative_raster_underestimation, GL_NV_copy_depth_to_color, GL_NV_copy_image, GL_NV_deep_texture3D, GL_NV_depth_buffer_float, GL_NV_depth_clamp, GL_NV_draw_texture, GL_NV_draw_vulkan_image, GL_NV_evaluators, GL_NV_explicit_multisample, GL_NV_fence, GL_NV_fill_rectangle, GL_NV_float_buffer, GL_NV_fog_distance, GL_NV_fragment_coverage_to_color, GL_NV_fragment_program, GL_NV_fragment_program2, GL_NV_fragment_program4, GL_NV_fragment_program_option, GL_NV_fragment_shader_barycentric, GL_NV_fragment_shader_interlock, GL_NV_framebuffer_mixed_samples, GL_NV_framebuffer_multisample_coverage, GL_NV_geometry_program4, GL_NV_geometry_shader4, GL_NV_geometry_shader_passthrough, GL_NV_gpu_multicast, GL_NV_gpu_program4, GL_NV_gpu_program5, GL_NV_gpu_program5_mem_extended, GL_NV_gpu_shader5, GL_NV_half_float, GL_NV_internalformat_sample_query, GL_NV_light_max_exponent, GL_NV_memory_attachment, GL_NV_memory_object_sparse, GL_NV_mesh_shader, GL_NV_multisample_coverage, GL_NV_multisample_filter_hint, GL_NV_occlusion_query, GL_NV_packed_depth_stencil, GL_NV_parameter_buffer_object, GL_NV_parameter_buffer_object2, GL_NV_path_rendering, GL_NV_path_rendering_shared_edge, GL_NV_pixel_data_range, GL_NV_point_sprite, GL_NV_present_video, GL_NV_primitive_restart, GL_NV_primitive_shading_rate, GL_NV_query_resource, GL_NV_query_resource_tag, GL_NV_register_combiners, GL_NV_register_combiners2, GL_NV_representative_fragment_test, GL_NV_robustness_video_memory_purge, GL_NV_sample_locations, GL_NV_sample_mask_override_coverage, GL_NV_scissor_exclusive, GL_NV_shader_atomic_counters, GL_NV_shader_atomic_float, GL_NV_shader_atomic_float64, GL_NV_shader_atomic_fp16_vector, GL_NV_shader_atomic_int64, GL_NV_shader_buffer_load, GL_NV_shader_buffer_store, GL_NV_shader_storage_buffer_object, GL_NV_shader_subgroup_partitioned, GL_NV_shader_texture_footprint, GL_NV_shader_thread_group, GL_NV_shader_thread_shuffle, GL_NV_shading_rate_image, GL_NV_stereo_view_rendering, GL_NV_tessellation_program5, GL_NV_texgen_emboss, GL_NV_texgen_reflection, GL_NV_texture_barrier, GL_NV_texture_compression_vtc, GL_NV_texture_env_combine4, GL_NV_texture_expand_normal, GL_NV_texture_multisample, GL_NV_texture_rectangle, GL_NV_texture_rectangle_compressed, GL_NV_texture_shader, GL_NV_texture_shader2, GL_NV_texture_shader3, GL_NV_timeline_semaphore, GL_NV_transform_feedback, GL_NV_transform_feedback2, GL_NV_uniform_buffer_unified_memory, GL_NV_vdpau_interop, GL_NV_vdpau_interop2, GL_NV_vertex_array_range, GL_NV_vertex_array_range2, GL_NV_vertex_attrib_integer_64bit, GL_NV_vertex_buffer_unified_memory, GL_NV_vertex_program, GL_NV_vertex_program1_1, GL_NV_vertex_program2, GL_NV_vertex_program2_option, GL_NV_vertex_program3, GL_NV_vertex_program4, GL_NV_video_capture, GL_NV_viewport_array2, GL_NV_viewport_swizzle, GL_OML_interlace, GL_OML_resample, GL_OML_subsample, GL_OVR_multiview, GL_OVR_multiview2, GL_PGI_misc_hints, GL_PGI_vertex_hints, GL_REND_screen_coordinates, GL_S3_s3tc, GL_SGIS_detail_texture, GL_SGIS_fog_function, GL_SGIS_generate_mipmap, GL_SGIS_multisample, GL_SGIS_pixel_texture, GL_SGIS_point_line_texgen, GL_SGIS_point_parameters, GL_SGIS_sharpen_texture, GL_SGIS_texture4D, GL_SGIS_texture_border_clamp, GL_SGIS_texture_color_mask, GL_SGIS_texture_edge_clamp, GL_SGIS_texture_filter4, GL_SGIS_texture_lod, GL_SGIS_texture_select, GL_SGIX_async, GL_SGIX_async_histogram, GL_SGIX_async_pixel, GL_SGIX_blend_alpha_minmax, GL_SGIX_calligraphic_fragment, GL_SGIX_clipmap, GL_SGIX_convolution_accuracy, GL_SGIX_depth_pass_instrument, GL_SGIX_depth_texture, GL_SGIX_flush_raster, GL_SGIX_fog_offset, GL_SGIX_fragment_lighting, GL_SGIX_framezoom, GL_SGIX_igloo_interface, GL_SGIX_instruments, GL_SGIX_interlace, GL_SGIX_ir_instrument1, GL_SGIX_list_priority, GL_SGIX_pixel_texture, GL_SGIX_pixel_tiles, GL_SGIX_polynomial_ffd, GL_SGIX_reference_plane, GL_SGIX_resample, GL_SGIX_scalebias_hint, GL_SGIX_shadow, GL_SGIX_shadow_ambient, GL_SGIX_sprite, GL_SGIX_subsample, GL_SGIX_tag_sample_buffer, GL_SGIX_texture_add_env, GL_SGIX_texture_coordinate_clamp, GL_SGIX_texture_lod_bias, GL_SGIX_texture_multi_buffer, GL_SGIX_texture_scale_bias, GL_SGIX_vertex_preclip, GL_SGIX_ycrcb, GL_SGIX_ycrcb_subsample, GL_SGIX_ycrcba, GL_SGI_color_matrix, GL_SGI_color_table, GL_SGI_texture_color_table, GL_SUNX_constant_data, GL_SUN_convolution_border_modes, GL_SUN_global_alpha, GL_SUN_mesh_array, GL_SUN_slice_accum, GL_SUN_triangle_list, GL_SUN_vertex, GL_WIN_phong_shading, GL_WIN_specular_fog; + public boolean GL_ARB_ES2_compatibility, GL_ARB_ES3_1_compatibility, GL_ARB_ES3_2_compatibility, GL_ARB_ES3_compatibility, GL_ARB_arrays_of_arrays, GL_ARB_base_instance, GL_ARB_bindless_texture, GL_ARB_blend_func_extended, GL_ARB_buffer_storage, GL_ARB_cl_event, GL_ARB_clear_buffer_object, GL_ARB_clear_texture, GL_ARB_clip_control, GL_ARB_color_buffer_float, GL_ARB_compatibility, GL_ARB_compressed_texture_pixel_storage, GL_ARB_compute_shader, GL_ARB_compute_variable_group_size, GL_ARB_conditional_render_inverted, GL_ARB_conservative_depth, GL_ARB_copy_buffer, GL_ARB_copy_image, GL_ARB_cull_distance, GL_ARB_debug_output, GL_ARB_depth_buffer_float, GL_ARB_depth_clamp, GL_ARB_depth_texture, GL_ARB_derivative_control, GL_ARB_direct_state_access, GL_ARB_draw_buffers, GL_ARB_draw_buffers_blend, GL_ARB_draw_elements_base_vertex, GL_ARB_draw_indirect, GL_ARB_draw_instanced, GL_ARB_enhanced_layouts, GL_ARB_explicit_attrib_location, GL_ARB_explicit_uniform_location, GL_ARB_fragment_coord_conventions, GL_ARB_fragment_layer_viewport, GL_ARB_fragment_program, GL_ARB_fragment_program_shadow, GL_ARB_fragment_shader, GL_ARB_fragment_shader_interlock, GL_ARB_framebuffer_no_attachments, GL_ARB_framebuffer_object, GL_ARB_framebuffer_sRGB, GL_ARB_geometry_shader4, GL_ARB_get_program_binary, GL_ARB_get_texture_sub_image, GL_ARB_gl_spirv, GL_ARB_gpu_shader5, GL_ARB_gpu_shader_fp64, GL_ARB_gpu_shader_int64, GL_ARB_half_float_pixel, GL_ARB_half_float_vertex, GL_ARB_imaging, GL_ARB_indirect_parameters, GL_ARB_instanced_arrays, GL_ARB_internalformat_query, GL_ARB_internalformat_query2, GL_ARB_invalidate_subdata, GL_ARB_map_buffer_alignment, GL_ARB_map_buffer_range, GL_ARB_matrix_palette, GL_ARB_multi_bind, GL_ARB_multi_draw_indirect, GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_occlusion_query, GL_ARB_occlusion_query2, GL_ARB_parallel_shader_compile, GL_ARB_pipeline_statistics_query, GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, GL_ARB_point_sprite, GL_ARB_polygon_offset_clamp, GL_ARB_post_depth_coverage, GL_ARB_program_interface_query, GL_ARB_provoking_vertex, GL_ARB_query_buffer_object, GL_ARB_robust_buffer_access_behavior, GL_ARB_robustness, GL_ARB_robustness_isolation, GL_ARB_sample_locations, GL_ARB_sample_shading, GL_ARB_sampler_objects, GL_ARB_seamless_cube_map, GL_ARB_seamless_cubemap_per_texture, GL_ARB_separate_shader_objects, GL_ARB_shader_atomic_counter_ops, GL_ARB_shader_atomic_counters, GL_ARB_shader_ballot, GL_ARB_shader_bit_encoding, GL_ARB_shader_clock, GL_ARB_shader_draw_parameters, GL_ARB_shader_group_vote, GL_ARB_shader_image_load_store, GL_ARB_shader_image_size, GL_ARB_shader_objects, GL_ARB_shader_precision, GL_ARB_shader_stencil_export, GL_ARB_shader_storage_buffer_object, GL_ARB_shader_subroutine, GL_ARB_shader_texture_image_samples, GL_ARB_shader_texture_lod, GL_ARB_shader_viewport_layer_array, GL_ARB_shading_language_100, GL_ARB_shading_language_420pack, GL_ARB_shading_language_include, GL_ARB_shading_language_packing, GL_ARB_shadow, GL_ARB_shadow_ambient, GL_ARB_sparse_buffer, GL_ARB_sparse_texture, GL_ARB_sparse_texture2, GL_ARB_sparse_texture_clamp, GL_ARB_spirv_extensions, GL_ARB_stencil_texturing, GL_ARB_sync, GL_ARB_tessellation_shader, GL_ARB_texture_barrier, GL_ARB_texture_border_clamp, GL_ARB_texture_buffer_object, GL_ARB_texture_buffer_object_rgb32, GL_ARB_texture_buffer_range, GL_ARB_texture_compression, GL_ARB_texture_compression_bptc, GL_ARB_texture_compression_rgtc, GL_ARB_texture_cube_map, GL_ARB_texture_cube_map_array, GL_ARB_texture_env_add, GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3, GL_ARB_texture_filter_anisotropic, GL_ARB_texture_filter_minmax, GL_ARB_texture_float, GL_ARB_texture_gather, GL_ARB_texture_mirror_clamp_to_edge, GL_ARB_texture_mirrored_repeat, GL_ARB_texture_multisample, GL_ARB_texture_non_power_of_two, GL_ARB_texture_query_levels, GL_ARB_texture_query_lod, GL_ARB_texture_rectangle, GL_ARB_texture_rg, GL_ARB_texture_rgb10_a2ui, GL_ARB_texture_stencil8, GL_ARB_texture_storage, GL_ARB_texture_storage_multisample, GL_ARB_texture_swizzle, GL_ARB_texture_view, GL_ARB_timer_query, GL_ARB_transform_feedback2, GL_ARB_transform_feedback3, GL_ARB_transform_feedback_instanced, GL_ARB_transform_feedback_overflow_query, GL_ARB_transpose_matrix, GL_ARB_uniform_buffer_object, GL_ARB_vertex_array_bgra, GL_ARB_vertex_array_object, GL_ARB_vertex_attrib_64bit, GL_ARB_vertex_attrib_binding, GL_ARB_vertex_blend, GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_vertex_shader, GL_ARB_vertex_type_10f_11f_11f_rev, GL_ARB_vertex_type_2_10_10_10_rev, GL_ARB_viewport_array, GL_ARB_window_pos, GL_KHR_blend_equation_advanced, GL_KHR_blend_equation_advanced_coherent, GL_KHR_context_flush_control, GL_KHR_debug, GL_KHR_no_error, GL_KHR_parallel_shader_compile, GL_KHR_robust_buffer_access_behavior, GL_KHR_robustness, GL_KHR_shader_subgroup, GL_KHR_texture_compression_astc_hdr, GL_KHR_texture_compression_astc_ldr, GL_KHR_texture_compression_astc_sliced_3d, GL_OES_byte_coordinates, GL_OES_compressed_paletted_texture, GL_OES_fixed_point, GL_OES_query_matrix, GL_OES_read_format, GL_OES_single_precision, GL_3DFX_multisample, GL_3DFX_tbuffer, GL_3DFX_texture_compression_FXT1, GL_AMD_blend_minmax_factor, GL_AMD_conservative_depth, GL_AMD_debug_output, GL_AMD_depth_clamp_separate, GL_AMD_draw_buffers_blend, GL_AMD_framebuffer_multisample_advanced, GL_AMD_framebuffer_sample_positions, GL_AMD_gcn_shader, GL_AMD_gpu_shader_half_float, GL_AMD_gpu_shader_int16, GL_AMD_gpu_shader_int64, GL_AMD_interleaved_elements, GL_AMD_multi_draw_indirect, GL_AMD_name_gen_delete, GL_AMD_occlusion_query_event, GL_AMD_performance_monitor, GL_AMD_pinned_memory, GL_AMD_query_buffer_object, GL_AMD_sample_positions, GL_AMD_seamless_cubemap_per_texture, GL_AMD_shader_atomic_counter_ops, GL_AMD_shader_ballot, GL_AMD_shader_explicit_vertex_parameter, GL_AMD_shader_gpu_shader_half_float_fetch, GL_AMD_shader_image_load_store_lod, GL_AMD_shader_stencil_export, GL_AMD_shader_trinary_minmax, GL_AMD_sparse_texture, GL_AMD_stencil_operation_extended, GL_AMD_texture_gather_bias_lod, GL_AMD_texture_texture4, GL_AMD_transform_feedback3_lines_triangles, GL_AMD_transform_feedback4, GL_AMD_vertex_shader_layer, GL_AMD_vertex_shader_tessellator, GL_AMD_vertex_shader_viewport_index, GL_APPLE_aux_depth_stencil, GL_APPLE_client_storage, GL_APPLE_element_array, GL_APPLE_fence, GL_APPLE_float_pixels, GL_APPLE_flush_buffer_range, GL_APPLE_object_purgeable, GL_APPLE_rgb_422, GL_APPLE_row_bytes, GL_APPLE_specular_vector, GL_APPLE_texture_range, GL_APPLE_transform_hint, GL_APPLE_vertex_array_object, GL_APPLE_vertex_array_range, GL_APPLE_vertex_program_evaluators, GL_APPLE_ycbcr_422, GL_ATI_draw_buffers, GL_ATI_element_array, GL_ATI_envmap_bumpmap, GL_ATI_fragment_shader, GL_ATI_map_object_buffer, GL_ATI_meminfo, GL_ATI_pixel_format_float, GL_ATI_pn_triangles, GL_ATI_separate_stencil, GL_ATI_text_fragment_shader, GL_ATI_texture_env_combine3, GL_ATI_texture_float, GL_ATI_texture_mirror_once, GL_ATI_vertex_array_object, GL_ATI_vertex_attrib_array_object, GL_ATI_vertex_streams, GL_EXT_422_pixels, GL_EXT_EGL_image_storage, GL_EXT_EGL_sync, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_bindable_uniform, GL_EXT_blend_color, GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate, GL_EXT_blend_logic_op, GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_clip_volume_hint, GL_EXT_cmyka, GL_EXT_color_subtable, GL_EXT_compiled_vertex_array, GL_EXT_convolution, GL_EXT_coordinate_frame, GL_EXT_copy_texture, GL_EXT_cull_vertex, GL_EXT_debug_label, GL_EXT_debug_marker, GL_EXT_depth_bounds_test, GL_EXT_direct_state_access, GL_EXT_draw_buffers2, GL_EXT_draw_instanced, GL_EXT_draw_range_elements, GL_EXT_external_buffer, GL_EXT_fog_coord, GL_EXT_framebuffer_blit, GL_EXT_framebuffer_blit_layers, GL_EXT_framebuffer_multisample, GL_EXT_framebuffer_multisample_blit_scaled, GL_EXT_framebuffer_object, GL_EXT_framebuffer_sRGB, GL_EXT_geometry_shader4, GL_EXT_gpu_program_parameters, GL_EXT_gpu_shader4, GL_EXT_histogram, GL_EXT_index_array_formats, GL_EXT_index_func, GL_EXT_index_material, GL_EXT_index_texture, GL_EXT_light_texture, GL_EXT_memory_object, GL_EXT_memory_object_fd, GL_EXT_memory_object_win32, GL_EXT_misc_attribute, GL_EXT_multi_draw_arrays, GL_EXT_multisample, GL_EXT_multiview_tessellation_geometry_shader, GL_EXT_multiview_texture_multisample, GL_EXT_multiview_timer_query, GL_EXT_packed_depth_stencil, GL_EXT_packed_float, GL_EXT_packed_pixels, GL_EXT_paletted_texture, GL_EXT_pixel_buffer_object, GL_EXT_pixel_transform, GL_EXT_pixel_transform_color_table, GL_EXT_point_parameters, GL_EXT_polygon_offset, GL_EXT_polygon_offset_clamp, GL_EXT_post_depth_coverage, GL_EXT_provoking_vertex, GL_EXT_raster_multisample, GL_EXT_rescale_normal, GL_EXT_secondary_color, GL_EXT_semaphore, GL_EXT_semaphore_fd, GL_EXT_semaphore_win32, GL_EXT_separate_shader_objects, GL_EXT_separate_specular_color, GL_EXT_shader_framebuffer_fetch, GL_EXT_shader_framebuffer_fetch_non_coherent, GL_EXT_shader_image_load_formatted, GL_EXT_shader_image_load_store, GL_EXT_shader_integer_mix, GL_EXT_shader_samples_identical, GL_EXT_shadow_funcs, GL_EXT_shared_texture_palette, GL_EXT_sparse_texture2, GL_EXT_stencil_clear_tag, GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture, GL_EXT_texture, GL_EXT_texture3D, GL_EXT_texture_array, GL_EXT_texture_buffer_object, GL_EXT_texture_compression_latc, GL_EXT_texture_compression_rgtc, GL_EXT_texture_compression_s3tc, GL_EXT_texture_cube_map, GL_EXT_texture_env_add, GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic, GL_EXT_texture_filter_minmax, GL_EXT_texture_integer, GL_EXT_texture_lod_bias, GL_EXT_texture_mirror_clamp, GL_EXT_texture_object, GL_EXT_texture_perturb_normal, GL_EXT_texture_sRGB, GL_EXT_texture_sRGB_R8, GL_EXT_texture_sRGB_RG8, GL_EXT_texture_sRGB_decode, GL_EXT_texture_shadow_lod, GL_EXT_texture_shared_exponent, GL_EXT_texture_snorm, GL_EXT_texture_storage, GL_EXT_texture_swizzle, GL_EXT_timer_query, GL_EXT_transform_feedback, GL_EXT_vertex_array, GL_EXT_vertex_array_bgra, GL_EXT_vertex_attrib_64bit, GL_EXT_vertex_shader, GL_EXT_vertex_weighting, GL_EXT_win32_keyed_mutex, GL_EXT_window_rectangles, GL_EXT_x11_sync_object, GL_GREMEDY_frame_terminator, GL_GREMEDY_string_marker, GL_HP_convolution_border_modes, GL_HP_image_transform, GL_HP_occlusion_test, GL_HP_texture_lighting, GL_IBM_cull_vertex, GL_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip, GL_IBM_static_data, GL_IBM_texture_mirrored_repeat, GL_IBM_vertex_array_lists, GL_INGR_blend_func_separate, GL_INGR_color_clamp, GL_INGR_interlace_read, GL_INTEL_blackhole_render, GL_INTEL_conservative_rasterization, GL_INTEL_fragment_shader_ordering, GL_INTEL_framebuffer_CMAA, GL_INTEL_map_texture, GL_INTEL_parallel_arrays, GL_INTEL_performance_query, GL_MESAX_texture_stack, GL_MESA_framebuffer_flip_x, GL_MESA_framebuffer_flip_y, GL_MESA_framebuffer_swap_xy, GL_MESA_pack_invert, GL_MESA_program_binary_formats, GL_MESA_resize_buffers, GL_MESA_shader_integer_functions, GL_MESA_tile_raster_order, GL_MESA_window_pos, GL_MESA_ycbcr_texture, GL_NVX_blend_equation_advanced_multi_draw_buffers, GL_NVX_conditional_render, GL_NVX_gpu_memory_info, GL_NVX_gpu_multicast2, GL_NVX_linked_gpu_multicast, GL_NVX_progress_fence, GL_NV_alpha_to_coverage_dither_control, GL_NV_bindless_multi_draw_indirect, GL_NV_bindless_multi_draw_indirect_count, GL_NV_bindless_texture, GL_NV_blend_equation_advanced, GL_NV_blend_equation_advanced_coherent, GL_NV_blend_minmax_factor, GL_NV_blend_square, GL_NV_clip_space_w_scaling, GL_NV_command_list, GL_NV_compute_program5, GL_NV_compute_shader_derivatives, GL_NV_conditional_render, GL_NV_conservative_raster, GL_NV_conservative_raster_dilate, GL_NV_conservative_raster_pre_snap, GL_NV_conservative_raster_pre_snap_triangles, GL_NV_conservative_raster_underestimation, GL_NV_copy_depth_to_color, GL_NV_copy_image, GL_NV_deep_texture3D, GL_NV_depth_buffer_float, GL_NV_depth_clamp, GL_NV_draw_texture, GL_NV_draw_vulkan_image, GL_NV_evaluators, GL_NV_explicit_multisample, GL_NV_fence, GL_NV_fill_rectangle, GL_NV_float_buffer, GL_NV_fog_distance, GL_NV_fragment_coverage_to_color, GL_NV_fragment_program, GL_NV_fragment_program2, GL_NV_fragment_program4, GL_NV_fragment_program_option, GL_NV_fragment_shader_barycentric, GL_NV_fragment_shader_interlock, GL_NV_framebuffer_mixed_samples, GL_NV_framebuffer_multisample_coverage, GL_NV_geometry_program4, GL_NV_geometry_shader4, GL_NV_geometry_shader_passthrough, GL_NV_gpu_multicast, GL_NV_gpu_program4, GL_NV_gpu_program5, GL_NV_gpu_program5_mem_extended, GL_NV_gpu_shader5, GL_NV_half_float, GL_NV_internalformat_sample_query, GL_NV_light_max_exponent, GL_NV_memory_attachment, GL_NV_memory_object_sparse, GL_NV_mesh_shader, GL_NV_multisample_coverage, GL_NV_multisample_filter_hint, GL_NV_occlusion_query, GL_NV_packed_depth_stencil, GL_NV_parameter_buffer_object, GL_NV_parameter_buffer_object2, GL_NV_path_rendering, GL_NV_path_rendering_shared_edge, GL_NV_pixel_data_range, GL_NV_point_sprite, GL_NV_present_video, GL_NV_primitive_restart, GL_NV_primitive_shading_rate, GL_NV_query_resource, GL_NV_query_resource_tag, GL_NV_register_combiners, GL_NV_register_combiners2, GL_NV_representative_fragment_test, GL_NV_robustness_video_memory_purge, GL_NV_sample_locations, GL_NV_sample_mask_override_coverage, GL_NV_scissor_exclusive, GL_NV_shader_atomic_counters, GL_NV_shader_atomic_float, GL_NV_shader_atomic_float64, GL_NV_shader_atomic_fp16_vector, GL_NV_shader_atomic_int64, GL_NV_shader_buffer_load, GL_NV_shader_buffer_store, GL_NV_shader_storage_buffer_object, GL_NV_shader_subgroup_partitioned, GL_NV_shader_texture_footprint, GL_NV_shader_thread_group, GL_NV_shader_thread_shuffle, GL_NV_shading_rate_image, GL_NV_stereo_view_rendering, GL_NV_tessellation_program5, GL_NV_texgen_emboss, GL_NV_texgen_reflection, GL_NV_texture_barrier, GL_NV_texture_compression_vtc, GL_NV_texture_env_combine4, GL_NV_texture_expand_normal, GL_NV_texture_multisample, GL_NV_texture_rectangle, GL_NV_texture_rectangle_compressed, GL_NV_texture_shader, GL_NV_texture_shader2, GL_NV_texture_shader3, GL_NV_timeline_semaphore, GL_NV_transform_feedback, GL_NV_transform_feedback2, GL_NV_uniform_buffer_std430_layout, GL_NV_uniform_buffer_unified_memory, GL_NV_vdpau_interop, GL_NV_vdpau_interop2, GL_NV_vertex_array_range, GL_NV_vertex_array_range2, GL_NV_vertex_attrib_integer_64bit, GL_NV_vertex_buffer_unified_memory, GL_NV_vertex_program, GL_NV_vertex_program1_1, GL_NV_vertex_program2, GL_NV_vertex_program2_option, GL_NV_vertex_program3, GL_NV_vertex_program4, GL_NV_video_capture, GL_NV_viewport_array2, GL_NV_viewport_swizzle, GL_OML_interlace, GL_OML_resample, GL_OML_subsample, GL_OVR_multiview, GL_OVR_multiview2, GL_PGI_misc_hints, GL_PGI_vertex_hints, GL_REND_screen_coordinates, GL_S3_s3tc, GL_SGIS_detail_texture, GL_SGIS_fog_function, GL_SGIS_generate_mipmap, GL_SGIS_multisample, GL_SGIS_pixel_texture, GL_SGIS_point_line_texgen, GL_SGIS_point_parameters, GL_SGIS_sharpen_texture, GL_SGIS_texture4D, GL_SGIS_texture_border_clamp, GL_SGIS_texture_color_mask, GL_SGIS_texture_edge_clamp, GL_SGIS_texture_filter4, GL_SGIS_texture_lod, GL_SGIS_texture_select, GL_SGIX_async, GL_SGIX_async_histogram, GL_SGIX_async_pixel, GL_SGIX_blend_alpha_minmax, GL_SGIX_calligraphic_fragment, GL_SGIX_clipmap, GL_SGIX_convolution_accuracy, GL_SGIX_depth_pass_instrument, GL_SGIX_depth_texture, GL_SGIX_flush_raster, GL_SGIX_fog_offset, GL_SGIX_fragment_lighting, GL_SGIX_framezoom, GL_SGIX_igloo_interface, GL_SGIX_instruments, GL_SGIX_interlace, GL_SGIX_ir_instrument1, GL_SGIX_list_priority, GL_SGIX_pixel_texture, GL_SGIX_pixel_tiles, GL_SGIX_polynomial_ffd, GL_SGIX_reference_plane, GL_SGIX_resample, GL_SGIX_scalebias_hint, GL_SGIX_shadow, GL_SGIX_shadow_ambient, GL_SGIX_sprite, GL_SGIX_subsample, GL_SGIX_tag_sample_buffer, GL_SGIX_texture_add_env, GL_SGIX_texture_coordinate_clamp, GL_SGIX_texture_lod_bias, GL_SGIX_texture_multi_buffer, GL_SGIX_texture_scale_bias, GL_SGIX_vertex_preclip, GL_SGIX_ycrcb, GL_SGIX_ycrcb_subsample, GL_SGIX_ycrcba, GL_SGI_color_matrix, GL_SGI_color_table, GL_SGI_texture_color_table, GL_SUNX_constant_data, GL_SUN_convolution_border_modes, GL_SUN_global_alpha, GL_SUN_mesh_array, GL_SUN_slice_accum, GL_SUN_triangle_list, GL_SUN_vertex, GL_WIN_phong_shading, GL_WIN_specular_fog; /** GLCapabilities */ public final GLCapabilities caps; @@ -112,16 +112,27 @@ public GLExtCaps(GLCapabilities caps) { glMakeTextureHandleNonResidentNV, glGetImageHandleNV, glMakeImageHandleResidentNV, glMakeImageHandleNonResidentNV, glUniformHandleui64NV, glUniformHandleui64vNV, glProgramUniformHandleui64NV, glProgramUniformHandleui64vNV, glIsTextureHandleResidentNV, glIsImageHandleResidentNV, glBlendParameteriNV, glBlendBarrierNV, glViewportPositionWScaleNV, glCreateStatesNV, glDeleteStatesNV, glIsStateNV, glStateCaptureNV, glGetCommandHeaderNV, glGetStageIndexNV, glDrawCommandsNV, glDrawCommandsAddressNV, glDrawCommandsStatesNV, glDrawCommandsStatesAddressNV, glCreateCommandListsNV, glDeleteCommandListsNV, glIsCommandListNV, glListDrawCommandsStatesClientNV, glCommandListSegmentsNV, glCompileCommandListNV, glCallCommandListNV, glBeginConditionalRenderNV, glEndConditionalRenderNV, glSubpixelPrecisionBiasNV, glConservativeRasterParameterfNV, glConservativeRasterParameteriNV, glCopyImageSubDataNV, glDepthRangedNV, glClearDepthdNV, glDepthBoundsdNV, glDrawTextureNV, glDrawVkImageNV, glGetVkProcAddrNV, glWaitVkSemaphoreNV, glSignalVkSemaphoreNV, glSignalVkFenceNV, glMapControlPointsNV, glMapParameterivNV, glMapParameterfvNV, - glGetMapControlPointsNV, glGetMapParameterivNV, glGetMapParameterfvNV, glGetMapAttribParameterivNV, glGetMapAttribParameterfvNV, glEvalMapsNV, glGetMultisamplefvNV, glSampleMaskIndexedNV, glTexRenderbufferNV, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, glFogFuncSGIS, glGetFogFuncSGIS, glSampleMaskSGIS, - glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, glTexSubImage4DSGIS, glTextureColorMaskSGIS, glGetTexFilterFuncSGIS, glTexFilterFuncSGIS, - glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, glFlushRasterSGIX, glFragmentColorMaterialSGIX, glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, glFragmentLightModelfSGIX, glFragmentLightModelfvSGIX, glFragmentLightModeliSGIX, glFragmentLightModelivSGIX, - glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, glInstrumentsBufferSGIX, glPollInstrumentsSGIX, glReadInstrumentsSGIX, glStartInstrumentsSGIX, - glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, glListParameterivSGIX, glPixelTexGenSGIX, glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, glReferencePlaneSGIX, glSpriteParameterfSGIX, glSpriteParameterfvSGIX, glSpriteParameteriSGIX, - glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, glGetColorTableSGI, glGetColorTableParameterfvSGI, glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, - glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, glColor3fVertex3fvSUN, - glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, - glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, - glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; + glGetMapControlPointsNV, glGetMapParameterivNV, glGetMapParameterfvNV, glGetMapAttribParameterivNV, glGetMapAttribParameterfvNV, glEvalMapsNV, glGetMultisamplefvNV, glSampleMaskIndexedNV, glTexRenderbufferNV, glDeleteFencesNV, glGenFencesNV, glIsFenceNV, glTestFenceNV, glGetFenceivNV, glFinishFenceNV, glSetFenceNV, + glFragmentCoverageColorNV, glProgramNamedParameter4fNV, glProgramNamedParameter4fvNV, glProgramNamedParameter4dNV, glProgramNamedParameter4dvNV, glGetProgramNamedParameterfvNV, glGetProgramNamedParameterdvNV, glCoverageModulationTableNV, glGetCoverageModulationTableNV, glCoverageModulationNV, glRenderbufferStorageMultisampleCoverageNV, glProgramVertexLimitNV, glFramebufferTextureEXT, glFramebufferTextureFaceEXT, glRenderGpuMaskNV, glMulticastBufferSubDataNV, + glMulticastCopyBufferSubDataNV, glMulticastCopyImageSubDataNV, glMulticastBlitFramebufferNV, glMulticastFramebufferSampleLocationsfvNV, glMulticastBarrierNV, glMulticastWaitSyncNV, glMulticastGetQueryObjectivNV, glMulticastGetQueryObjectuivNV, glMulticastGetQueryObjecti64vNV, glMulticastGetQueryObjectui64vNV, glProgramLocalParameterI4iNV, glProgramLocalParameterI4ivNV, glProgramLocalParametersI4ivNV, glProgramLocalParameterI4uiNV, glProgramLocalParameterI4uivNV, glProgramLocalParametersI4uivNV, + glProgramEnvParameterI4iNV, glProgramEnvParameterI4ivNV, glProgramEnvParametersI4ivNV, glProgramEnvParameterI4uiNV, glProgramEnvParameterI4uivNV, glProgramEnvParametersI4uivNV, glGetProgramLocalParameterIivNV, glGetProgramLocalParameterIuivNV, glGetProgramEnvParameterIivNV, glGetProgramEnvParameterIuivNV, glProgramSubroutineParametersuivNV, glGetProgramSubroutineParameteruivNV, glVertex2hNV, glVertex2hvNV, glVertex3hNV, glVertex3hvNV, + glVertex4hNV, glVertex4hvNV, glNormal3hNV, glNormal3hvNV, glColor3hNV, glColor3hvNV, glColor4hNV, glColor4hvNV, glTexCoord1hNV, glTexCoord1hvNV, glTexCoord2hNV, glTexCoord2hvNV, glTexCoord3hNV, glTexCoord3hvNV, glTexCoord4hNV, glTexCoord4hvNV, + glMultiTexCoord1hNV, glMultiTexCoord1hvNV, glMultiTexCoord2hNV, glMultiTexCoord2hvNV, glMultiTexCoord3hNV, glMultiTexCoord3hvNV, glMultiTexCoord4hNV, glMultiTexCoord4hvNV, glVertexAttrib1hNV, glVertexAttrib1hvNV, glVertexAttrib2hNV, glVertexAttrib2hvNV, glVertexAttrib3hNV, glVertexAttrib3hvNV, glVertexAttrib4hNV, glVertexAttrib4hvNV, + glVertexAttribs1hvNV, glVertexAttribs2hvNV, glVertexAttribs3hvNV, glVertexAttribs4hvNV, glFogCoordhNV, glFogCoordhvNV, glSecondaryColor3hNV, glSecondaryColor3hvNV, glVertexWeighthNV, glVertexWeighthvNV, glGetInternalformatSampleivNV, glGetMemoryObjectDetachedResourcesuivNV, glResetMemoryObjectParameterNV, glTexAttachMemoryNV, glBufferAttachMemoryNV, glTextureAttachMemoryNV, + glNamedBufferAttachMemoryNV, glBufferPageCommitmentMemNV, glTexPageCommitmentMemNV, glNamedBufferPageCommitmentMemNV, glTexturePageCommitmentMemNV, glDrawMeshTasksNV, glDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectCountNV, glGenOcclusionQueriesNV, glDeleteOcclusionQueriesNV, glIsOcclusionQueryNV, glBeginOcclusionQueryNV, glEndOcclusionQueryNV, glGetOcclusionQueryivNV, glGetOcclusionQueryuivNV, + glProgramBufferParametersfvNV, glProgramBufferParametersIivNV, glProgramBufferParametersIuivNV, glGenPathsNV, glDeletePathsNV, glIsPathNV, glPathCommandsNV, glPathCoordsNV, glPathSubCommandsNV, glPathSubCoordsNV, glPathStringNV, glPathGlyphsNV, glPathGlyphRangeNV, glWeightPathsNV, glCopyPathNV, glInterpolatePathsNV, + glTransformPathNV, glPathParameterivNV, glPathParameteriNV, glPathParameterfvNV, glPathParameterfNV, glPathDashArrayNV, glPathStencilFuncNV, glPathStencilDepthOffsetNV, glStencilFillPathNV, glStencilStrokePathNV, glStencilFillPathInstancedNV, glStencilStrokePathInstancedNV, glPathCoverDepthFuncNV, glCoverFillPathNV, glCoverStrokePathNV, glCoverFillPathInstancedNV, + glCoverStrokePathInstancedNV, glGetPathParameterivNV, glGetPathParameterfvNV, glGetPathCommandsNV, glGetPathCoordsNV, glGetPathDashArrayNV, glGetPathMetricsNV, glGetPathMetricRangeNV, glGetPathSpacingNV, glIsPointInFillPathNV, glIsPointInStrokePathNV, glGetPathLengthNV, glPointAlongPathNV, glMatrixLoad3x2fNV, glMatrixLoad3x3fNV, glMatrixLoadTranspose3x3fNV, + glMatrixMult3x2fNV, glMatrixMult3x3fNV, glMatrixMultTranspose3x3fNV, glStencilThenCoverFillPathNV, glStencilThenCoverStrokePathNV, glStencilThenCoverFillPathInstancedNV, glStencilThenCoverStrokePathInstancedNV, glPathGlyphIndexRangeNV, glPathGlyphIndexArrayNV, glPathMemoryGlyphIndexArrayNV, glProgramPathFragmentInputGenNV, glGetProgramResourcefvNV, glPathColorGenNV, glPathTexGenNV, glPathFogGenNV, glGetPathColorGenivNV, + glGetPathColorGenfvNV, glGetPathTexGenivNV, glGetPathTexGenfvNV, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, glFogFuncSGIS, glGetFogFuncSGIS, glSampleMaskSGIS, glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, + glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, glTexSubImage4DSGIS, glTextureColorMaskSGIS, glGetTexFilterFuncSGIS, glTexFilterFuncSGIS, glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, + glFlushRasterSGIX, glFragmentColorMaterialSGIX, glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, glFragmentLightModelfSGIX, glFragmentLightModelfvSGIX, glFragmentLightModeliSGIX, glFragmentLightModelivSGIX, glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, + glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, glInstrumentsBufferSGIX, glPollInstrumentsSGIX, glReadInstrumentsSGIX, glStartInstrumentsSGIX, glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, + glListParameterivSGIX, glPixelTexGenSGIX, glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, glReferencePlaneSGIX, glSpriteParameterfSGIX, glSpriteParameterfvSGIX, glSpriteParameteriSGIX, glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, + glGetColorTableSGI, glGetColorTableParameterfvSGI, glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, + glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, + glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, + glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; void load(GLLoadFunc load) { GLARBES32Compatibility.load(this, load); @@ -236,6 +247,23 @@ void load(GLLoadFunc load) { GLNVDrawVulkanImage.load(this, load); GLNVEvaluators.load(this, load); GLNVExplicitMultisample.load(this, load); + GLNVFence.load(this, load); + GLNVFragmentCoverageToColor.load(this, load); + GLNVFragmentProgram.load(this, load); + GLNVFramebufferMixedSamples.load(this, load); + GLNVFramebufferMultisampleCoverage.load(this, load); + GLNVGeometryProgram4.load(this, load); + GLNVGpuMulticast.load(this, load); + GLNVGpuProgram4.load(this, load); + GLNVGpuProgram5.load(this, load); + GLNVHalfFloat.load(this, load); + GLNVInternalformatSampleQuery.load(this, load); + GLNVMemoryAttachment.load(this, load); + GLNVMemoryObjectSparse.load(this, load); + GLNVMeshShader.load(this, load); + GLNVOcculusionQuery.load(this, load); + GLNVParameterBufferObject.load(this, load); + GLNVPathRendering.load(this, load); GLOVRMultiview.load(this, load); GLPGIMiscHints.load(this, load); GLSGISDetailTexture.load(this, load); @@ -805,6 +833,7 @@ boolean findExtensionsGL(int version, SegmentAllocator allocator) { this.GL_NV_timeline_semaphore = hasExtension(version, exts, numExtsI, extsI, "GL_NV_timeline_semaphore"); this.GL_NV_transform_feedback = hasExtension(version, exts, numExtsI, extsI, "GL_NV_transform_feedback"); this.GL_NV_transform_feedback2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_transform_feedback2"); + this.GL_NV_uniform_buffer_std430_layout = hasExtension(version, exts, numExtsI, extsI, "GL_NV_uniform_buffer_std430_layout"); this.GL_NV_uniform_buffer_unified_memory = hasExtension(version, exts, numExtsI, extsI, "GL_NV_uniform_buffer_unified_memory"); this.GL_NV_vdpau_interop = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vdpau_interop"); this.GL_NV_vdpau_interop2 = hasExtension(version, exts, numExtsI, extsI, "GL_NV_vdpau_interop2"); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFence.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFence.java new file mode 100644 index 00000000..6455554a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFence.java @@ -0,0 +1,96 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_fence} + */ +public final class GLNVFence { + public static final int GL_ALL_COMPLETED_NV = 0x84F2; + public static final int GL_FENCE_STATUS_NV = 0x84F3; + public static final int GL_FENCE_CONDITION_NV = 0x84F4; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_fence) return; + ext.glDeleteFencesNV = load.invoke("glDeleteFencesNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glGenFencesNV = load.invoke("glGenFencesNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glIsFenceNV = load.invoke("glIsFenceNV", of(JAVA_BYTE, JAVA_INT)); + ext.glTestFenceNV = load.invoke("glTestFenceNV", of(JAVA_BYTE, JAVA_INT)); + ext.glGetFenceivNV = load.invoke("glGetFenceivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glFinishFenceNV = load.invoke("glFinishFenceNV", ofVoid(JAVA_INT)); + ext.glSetFenceNV = load.invoke("glSetFenceNV", ofVoid(JAVA_INT, JAVA_INT)); + } + + public static void glDeleteFencesNV(int n, @NativeType("const GLuint *") MemorySegment fences) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeleteFencesNV).invokeExact(n, fences); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGenFencesNV(int n, @NativeType("GLuint *") MemorySegment fences) { + final var ext = getExtCapabilities(); + try { + check(ext.glGenFencesNV).invokeExact(n, fences); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsFenceNV(int fence) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsFenceNV).invokeExact(fence); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glTestFenceNV(int fence) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glTestFenceNV).invokeExact(fence); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetFenceivNV(int fence, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetFenceivNV).invokeExact(fence, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFinishFenceNV(int fence) { + final var ext = getExtCapabilities(); + try { + check(ext.glFinishFenceNV).invokeExact(fence); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSetFenceNV(int fence, int condition) { + final var ext = getExtCapabilities(); + try { + check(ext.glSetFenceNV).invokeExact(fence, condition); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFillRectangle.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFillRectangle.java new file mode 100644 index 00000000..7da64672 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFillRectangle.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_fill_rectangle} + */ +public final class GLNVFillRectangle { + public static final int GL_FILL_RECTANGLE_NV = 0x933C; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFloatBuffer.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFloatBuffer.java new file mode 100644 index 00000000..7a034a30 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFloatBuffer.java @@ -0,0 +1,46 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_float_buffer} + */ +public final class GLNVFloatBuffer { + public static final int GL_FLOAT_R_NV = 0x8880; + public static final int GL_FLOAT_RG_NV = 0x8881; + public static final int GL_FLOAT_RGB_NV = 0x8882; + public static final int GL_FLOAT_RGBA_NV = 0x8883; + public static final int GL_FLOAT_R16_NV = 0x8884; + public static final int GL_FLOAT_R32_NV = 0x8885; + public static final int GL_FLOAT_RG16_NV = 0x8886; + public static final int GL_FLOAT_RG32_NV = 0x8887; + public static final int GL_FLOAT_RGB16_NV = 0x8888; + public static final int GL_FLOAT_RGB32_NV = 0x8889; + public static final int GL_FLOAT_RGBA16_NV = 0x888A; + public static final int GL_FLOAT_RGBA32_NV = 0x888B; + public static final int GL_TEXTURE_FLOAT_COMPONENTS_NV = 0x888C; + public static final int GL_FLOAT_CLEAR_COLOR_VALUE_NV = 0x888D; + public static final int GL_FLOAT_RGBA_MODE_NV = 0x888E; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFogDistance.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFogDistance.java new file mode 100644 index 00000000..1fbfeafc --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFogDistance.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_fog_distance} + */ +public final class GLNVFogDistance { + public static final int GL_FOG_DISTANCE_MODE_NV = 0x855A; + public static final int GL_EYE_RADIAL_NV = 0x855B; + public static final int GL_EYE_PLANE_ABSOLUTE_NV = 0x855C; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentCoverageToColor.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentCoverageToColor.java new file mode 100644 index 00000000..cf7698e2 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentCoverageToColor.java @@ -0,0 +1,45 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_fragment_coverage_to_color} + */ +public final class GLNVFragmentCoverageToColor { + public static final int GL_FRAGMENT_COVERAGE_TO_COLOR_NV = 0x92DD; + public static final int GL_FRAGMENT_COVERAGE_COLOR_NV = 0x92DE; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_fragment_coverage_to_color) return; + ext.glFragmentCoverageColorNV = load.invoke("glFragmentCoverageColorNV", ofVoid(JAVA_INT)); + } + + public static void glFragmentCoverageColorNV(int color) { + final var ext = getExtCapabilities(); + try { + check(ext.glFragmentCoverageColorNV).invokeExact(color); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentProgram.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentProgram.java new file mode 100644 index 00000000..3ff21b33 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentProgram.java @@ -0,0 +1,89 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_fragment_program} + */ +public final class GLNVFragmentProgram { + public static final int GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV = 0x8868; + public static final int GL_FRAGMENT_PROGRAM_NV = 0x8870; + public static final int GL_MAX_TEXTURE_COORDS_NV = 0x8871; + public static final int GL_MAX_TEXTURE_IMAGE_UNITS_NV = 0x8872; + public static final int GL_FRAGMENT_PROGRAM_BINDING_NV = 0x8873; + public static final int GL_PROGRAM_ERROR_STRING_NV = 0x8874; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_fragment_program) return; + ext.glProgramNamedParameter4fNV = load.invoke("glProgramNamedParameter4fNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glProgramNamedParameter4fvNV = load.invoke("glProgramNamedParameter4fvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glProgramNamedParameter4dNV = load.invoke("glProgramNamedParameter4dNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glProgramNamedParameter4dvNV = load.invoke("glProgramNamedParameter4dvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glGetProgramNamedParameterfvNV = load.invoke("glGetProgramNamedParameterfvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glGetProgramNamedParameterdvNV = load.invoke("glGetProgramNamedParameterdvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + } + + public static void glProgramNamedParameter4fNV(int id, int len, @NativeType("const GLubyte *") MemorySegment name, float x, float y, float z, float w) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramNamedParameter4fNV).invokeExact(id, len, name, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramNamedParameter4fvNV(int id, int len, @NativeType("const GLubyte *") MemorySegment name, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramNamedParameter4fvNV).invokeExact(id, len, name, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramNamedParameter4dNV(int id, int len, @NativeType("const GLubyte *") MemorySegment name, double x, double y, double z, double w) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramNamedParameter4dNV).invokeExact(id, len, name, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramNamedParameter4dvNV(int id, int len, @NativeType("const GLubyte *") MemorySegment name, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramNamedParameter4dvNV).invokeExact(id, len, name, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramNamedParameterfvNV(int id, int len, @NativeType("const GLubyte *") MemorySegment name, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramNamedParameterfvNV).invokeExact(id, len, name, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramNamedParameterdvNV(int id, int len, @NativeType("const GLubyte *") MemorySegment name, @NativeType("GLdouble *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramNamedParameterdvNV).invokeExact(id, len, name, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentProgram2.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentProgram2.java new file mode 100644 index 00000000..03698561 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFragmentProgram2.java @@ -0,0 +1,36 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_fragment_program2} + */ +public final class GLNVFragmentProgram2 { + public static final int GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV = 0x88F4; + public static final int GL_MAX_PROGRAM_CALL_DEPTH_NV = 0x88F5; + public static final int GL_MAX_PROGRAM_IF_DEPTH_NV = 0x88F6; + public static final int GL_MAX_PROGRAM_LOOP_DEPTH_NV = 0x88F7; + public static final int GL_MAX_PROGRAM_LOOP_COUNT_NV = 0x88F8; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFramebufferMixedSamples.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFramebufferMixedSamples.java new file mode 100644 index 00000000..1e46b57e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFramebufferMixedSamples.java @@ -0,0 +1,67 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_framebuffer_mixed_samples} + */ +public final class GLNVFramebufferMixedSamples { + public static final int GL_COVERAGE_MODULATION_TABLE_NV = 0x9331; + public static final int GL_COLOR_SAMPLES_NV = 0x8E20; + public static final int GL_DEPTH_SAMPLES_NV = 0x932D; + public static final int GL_STENCIL_SAMPLES_NV = 0x932E; + public static final int GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV = 0x932F; + public static final int GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV = 0x9330; + public static final int GL_COVERAGE_MODULATION_NV = 0x9332; + public static final int GL_COVERAGE_MODULATION_TABLE_SIZE_NV = 0x9333; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_framebuffer_mixed_samples) return; + ext.glCoverageModulationTableNV = load.invoke("glCoverageModulationTableNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetCoverageModulationTableNV = load.invoke("glGetCoverageModulationTableNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glCoverageModulationNV = load.invoke("glCoverageModulationNV", ofVoid(JAVA_INT)); + } + + public static void glCoverageModulationTableNV(int n, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glCoverageModulationTableNV).invokeExact(n, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetCoverageModulationTableNV(int bufSize, @NativeType("GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetCoverageModulationTableNV).invokeExact(bufSize, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCoverageModulationNV(int components) { + final var ext = getExtCapabilities(); + try { + check(ext.glCoverageModulationNV).invokeExact(components); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFramebufferMultisampleCoverage.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFramebufferMultisampleCoverage.java new file mode 100644 index 00000000..592b4c53 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVFramebufferMultisampleCoverage.java @@ -0,0 +1,47 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_framebuffer_multisample_coverage} + */ +public final class GLNVFramebufferMultisampleCoverage { + public static final int GL_RENDERBUFFER_COVERAGE_SAMPLES_NV = 0x8CAB; + public static final int GL_RENDERBUFFER_COLOR_SAMPLES_NV = 0x8E10; + public static final int GL_MAX_MULTISAMPLE_COVERAGE_MODES_NV = 0x8E11; + public static final int GL_MULTISAMPLE_COVERAGE_MODES_NV = 0x8E12; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_framebuffer_multisample_coverage) return; + ext.glRenderbufferStorageMultisampleCoverageNV = load.invoke("glRenderbufferStorageMultisampleCoverageNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glRenderbufferStorageMultisampleCoverageNV(int target, int coverageSamples, int colorSamples, int internalformat, int width, int height) { + final var ext = getExtCapabilities(); + try { + check(ext.glRenderbufferStorageMultisampleCoverageNV).invokeExact(target, coverageSamples, colorSamples, internalformat, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGeometryProgram4.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGeometryProgram4.java new file mode 100644 index 00000000..98ebb1ec --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGeometryProgram4.java @@ -0,0 +1,62 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_geometry_program4} + */ +public final class GLNVGeometryProgram4 { + public static final int GL_GEOMETRY_PROGRAM_NV = 0x8C26; + public static final int GL_MAX_PROGRAM_OUTPUT_VERTICES_NV = 0x8C27; + public static final int GL_MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV = 0x8C28; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_geometry_program4) return; + ext.glProgramVertexLimitNV = load.invoke("glProgramVertexLimitNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glFramebufferTextureEXT = load.invoke("glFramebufferTextureEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glFramebufferTextureFaceEXT = load.invoke("glFramebufferTextureFaceEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glProgramVertexLimitNV(int target, int limit) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramVertexLimitNV).invokeExact(target, limit); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFramebufferTextureEXT(int target, int attachment, int texture, int level) { + final var ext = getExtCapabilities(); + try { + check(ext.glFramebufferTextureEXT).invokeExact(target, attachment, texture, level); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFramebufferTextureFaceEXT(int target, int attachment, int texture, int level, int face) { + final var ext = getExtCapabilities(); + try { + check(ext.glFramebufferTextureFaceEXT).invokeExact(target, attachment, texture, level, face); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuMulticast.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuMulticast.java new file mode 100644 index 00000000..06b65502 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuMulticast.java @@ -0,0 +1,136 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_gpu_multicast} + */ +public final class GLNVGpuMulticast { + public static final int GL_PER_GPU_STORAGE_BIT_NV = 0x0800; + public static final int GL_MULTICAST_GPUS_NV = 0x92BA; + public static final int GL_RENDER_GPU_MASK_NV = 0x9558; + public static final int GL_PER_GPU_STORAGE_NV = 0x9548; + public static final int GL_MULTICAST_PROGRAMMABLE_SAMPLE_LOCATION_NV = 0x9549; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_gpu_multicast) return; + ext.glRenderGpuMaskNV = load.invoke("glRenderGpuMaskNV", ofVoid(JAVA_INT)); + ext.glMulticastBufferSubDataNV = load.invoke("glMulticastBufferSubDataNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG, ADDRESS)); + ext.glMulticastCopyBufferSubDataNV = load.invoke("glMulticastCopyBufferSubDataNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glMulticastCopyImageSubDataNV = load.invoke("glMulticastCopyImageSubDataNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMulticastBlitFramebufferNV = load.invoke("glMulticastBlitFramebufferNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMulticastFramebufferSampleLocationsfvNV = load.invoke("glMulticastFramebufferSampleLocationsfvNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMulticastBarrierNV = load.invoke("glMulticastBarrierNV", ofVoid()); + ext.glMulticastWaitSyncNV = load.invoke("glMulticastWaitSyncNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glMulticastGetQueryObjectivNV = load.invoke("glMulticastGetQueryObjectivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMulticastGetQueryObjectuivNV = load.invoke("glMulticastGetQueryObjectuivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMulticastGetQueryObjecti64vNV = load.invoke("glMulticastGetQueryObjecti64vNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMulticastGetQueryObjectui64vNV = load.invoke("glMulticastGetQueryObjectui64vNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glRenderGpuMaskNV(int mask) { + final var ext = getExtCapabilities(); + try { + check(ext.glRenderGpuMaskNV).invokeExact(mask); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastBufferSubDataNV(int gpuMask, int buffer, long offset, long size, @NativeType("const void *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastBufferSubDataNV).invokeExact(gpuMask, buffer, offset, size, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastCopyBufferSubDataNV(int readGpu, int writeGpuMask, int readBuffer, int writeBuffer, long readOffset, long writeOffset, long size) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastCopyBufferSubDataNV).invokeExact(readGpu, writeGpuMask, readBuffer, writeBuffer, readOffset, writeOffset, size); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastCopyImageSubDataNV(int srcGpu, int dstGpuMask, int srcName, int srcTarget, int srcLevel, int srcX, int srcY, int srcZ, int dstName, int dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastCopyImageSubDataNV).invokeExact(srcGpu, dstGpuMask, srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastBlitFramebufferNV(int srcGpu, int dstGpu, int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, int filter) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastBlitFramebufferNV).invokeExact(srcGpu, dstGpu, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastFramebufferSampleLocationsfvNV(int gpu, int framebuffer, int start, int count, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastFramebufferSampleLocationsfvNV).invokeExact(gpu, framebuffer, start, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastBarrierNV() { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastBarrierNV).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastWaitSyncNV(int signalGpu, int waitGpuMask) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastWaitSyncNV).invokeExact(signalGpu, waitGpuMask); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastGetQueryObjectivNV(int gpu, int id, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastGetQueryObjectivNV).invokeExact(gpu, id, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastGetQueryObjectuivNV(int gpu, int id, int pname, @NativeType("GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastGetQueryObjectuivNV).invokeExact(gpu, id, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastGetQueryObjecti64vNV(int gpu, int id, int pname, @NativeType("GLint64 *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastGetQueryObjecti64vNV).invokeExact(gpu, id, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMulticastGetQueryObjectui64vNV(int gpu, int id, int pname, @NativeType("GLuint64 *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMulticastGetQueryObjectui64vNV).invokeExact(gpu, id, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuProgram4.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuProgram4.java new file mode 100644 index 00000000..e3ab9f11 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuProgram4.java @@ -0,0 +1,171 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_gpu_program4} + */ +public final class GLNVGpuProgram4 { + public static final int GL_MIN_PROGRAM_TEXEL_OFFSET_NV = 0x8904; + public static final int GL_MAX_PROGRAM_TEXEL_OFFSET_NV = 0x8905; + public static final int GL_PROGRAM_ATTRIB_COMPONENTS_NV = 0x8906; + public static final int GL_PROGRAM_RESULT_COMPONENTS_NV = 0x8907; + public static final int GL_MAX_PROGRAM_ATTRIB_COMPONENTS_NV = 0x8908; + public static final int GL_MAX_PROGRAM_RESULT_COMPONENTS_NV = 0x8909; + public static final int GL_MAX_PROGRAM_GENERIC_ATTRIBS_NV = 0x8DA5; + public static final int GL_MAX_PROGRAM_GENERIC_RESULTS_NV = 0x8DA6; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_gpu_program4) return; + ext.glProgramLocalParameterI4iNV = load.invoke("glProgramLocalParameterI4iNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glProgramLocalParameterI4ivNV = load.invoke("glProgramLocalParameterI4ivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramLocalParametersI4ivNV = load.invoke("glProgramLocalParametersI4ivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramLocalParameterI4uiNV = load.invoke("glProgramLocalParameterI4uiNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glProgramLocalParameterI4uivNV = load.invoke("glProgramLocalParameterI4uivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramLocalParametersI4uivNV = load.invoke("glProgramLocalParametersI4uivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramEnvParameterI4iNV = load.invoke("glProgramEnvParameterI4iNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glProgramEnvParameterI4ivNV = load.invoke("glProgramEnvParameterI4ivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramEnvParametersI4ivNV = load.invoke("glProgramEnvParametersI4ivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramEnvParameterI4uiNV = load.invoke("glProgramEnvParameterI4uiNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glProgramEnvParameterI4uivNV = load.invoke("glProgramEnvParameterI4uivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramEnvParametersI4uivNV = load.invoke("glProgramEnvParametersI4uivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramLocalParameterIivNV = load.invoke("glGetProgramLocalParameterIivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramLocalParameterIuivNV = load.invoke("glGetProgramLocalParameterIuivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramEnvParameterIivNV = load.invoke("glGetProgramEnvParameterIivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramEnvParameterIuivNV = load.invoke("glGetProgramEnvParameterIuivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glProgramLocalParameterI4iNV(int target, int index, int x, int y, int z, int w) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramLocalParameterI4iNV).invokeExact(target, index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramLocalParameterI4ivNV(int target, int index, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramLocalParameterI4ivNV).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramLocalParametersI4ivNV(int target, int index, int count, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramLocalParametersI4ivNV).invokeExact(target, index, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramLocalParameterI4uiNV(int target, int index, int x, int y, int z, int w) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramLocalParameterI4uiNV).invokeExact(target, index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramLocalParameterI4uivNV(int target, int index, @NativeType("const GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramLocalParameterI4uivNV).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramLocalParametersI4uivNV(int target, int index, int count, @NativeType("const GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramLocalParametersI4uivNV).invokeExact(target, index, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramEnvParameterI4iNV(int target, int index, int x, int y, int z, int w) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramEnvParameterI4iNV).invokeExact(target, index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramEnvParameterI4ivNV(int target, int index, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramEnvParameterI4ivNV).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramEnvParametersI4ivNV(int target, int index, int count, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramEnvParametersI4ivNV).invokeExact(target, index, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramEnvParameterI4uiNV(int target, int index, int x, int y, int z, int w) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramEnvParameterI4uiNV).invokeExact(target, index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramEnvParameterI4uivNV(int target, int index, @NativeType("const GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramEnvParameterI4uivNV).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramEnvParametersI4uivNV(int target, int index, int count, @NativeType("const GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramEnvParametersI4uivNV).invokeExact(target, index, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramLocalParameterIivNV(int target, int index, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramLocalParameterIivNV).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramLocalParameterIuivNV(int target, int index, @NativeType("GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramLocalParameterIuivNV).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramEnvParameterIivNV(int target, int index, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramEnvParameterIivNV).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramEnvParameterIuivNV(int target, int index, @NativeType("GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramEnvParameterIuivNV).invokeExact(target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuProgram5.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuProgram5.java new file mode 100644 index 00000000..f2970f53 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVGpuProgram5.java @@ -0,0 +1,59 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_gpu_program5} + */ +public final class GLNVGpuProgram5 { + public static final int GL_MAX_GEOMETRY_PROGRAM_INVOCATIONS_NV = 0x8E5A; + public static final int GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_NV = 0x8E5B; + public static final int GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_NV = 0x8E5C; + public static final int GL_FRAGMENT_PROGRAM_INTERPOLATION_OFFSET_BITS_NV = 0x8E5D; + public static final int GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_NV = 0x8E5E; + public static final int GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_NV = 0x8E5F; + public static final int GL_MAX_PROGRAM_SUBROUTINE_PARAMETERS_NV = 0x8F44; + public static final int GL_MAX_PROGRAM_SUBROUTINE_NUM_NV = 0x8F45; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_gpu_program5) return; + ext.glProgramSubroutineParametersuivNV = load.invoke("glProgramSubroutineParametersuivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramSubroutineParameteruivNV = load.invoke("glGetProgramSubroutineParameteruivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glProgramSubroutineParametersuivNV(int target, int count, @NativeType("const GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramSubroutineParametersuivNV).invokeExact(target, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramSubroutineParameteruivNV(int target, int index, @NativeType("GLuint *") MemorySegment param) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramSubroutineParameteruivNV).invokeExact(target, index, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVHalfFloat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVHalfFloat.java new file mode 100644 index 00000000..764f6b63 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVHalfFloat.java @@ -0,0 +1,404 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_half_float} + */ +public final class GLNVHalfFloat { + public static final int GL_HALF_FLOAT_NV = 0x140B; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_half_float) return; + ext.glVertex2hNV = load.invoke("glVertex2hNV", ofVoid(JAVA_SHORT, JAVA_SHORT)); + ext.glVertex2hvNV = load.invoke("glVertex2hvNV", ofVoid(ADDRESS)); + ext.glVertex3hNV = load.invoke("glVertex3hNV", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glVertex3hvNV = load.invoke("glVertex3hvNV", ofVoid(ADDRESS)); + ext.glVertex4hNV = load.invoke("glVertex4hNV", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glVertex4hvNV = load.invoke("glVertex4hvNV", ofVoid(ADDRESS)); + ext.glNormal3hNV = load.invoke("glNormal3hNV", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glNormal3hvNV = load.invoke("glNormal3hvNV", ofVoid(ADDRESS)); + ext.glColor3hNV = load.invoke("glColor3hNV", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glColor3hvNV = load.invoke("glColor3hvNV", ofVoid(ADDRESS)); + ext.glColor4hNV = load.invoke("glColor4hNV", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glColor4hvNV = load.invoke("glColor4hvNV", ofVoid(ADDRESS)); + ext.glTexCoord1hNV = load.invoke("glTexCoord1hNV", ofVoid(JAVA_SHORT)); + ext.glTexCoord1hvNV = load.invoke("glTexCoord1hvNV", ofVoid(ADDRESS)); + ext.glTexCoord2hNV = load.invoke("glTexCoord2hNV", ofVoid(JAVA_SHORT, JAVA_SHORT)); + ext.glTexCoord2hvNV = load.invoke("glTexCoord2hvNV", ofVoid(ADDRESS)); + ext.glTexCoord3hNV = load.invoke("glTexCoord3hNV", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glTexCoord3hvNV = load.invoke("glTexCoord3hvNV", ofVoid(ADDRESS)); + ext.glTexCoord4hNV = load.invoke("glTexCoord4hNV", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glTexCoord4hvNV = load.invoke("glTexCoord4hvNV", ofVoid(ADDRESS)); + ext.glMultiTexCoord1hNV = load.invoke("glMultiTexCoord1hNV", ofVoid(JAVA_INT, JAVA_SHORT)); + ext.glMultiTexCoord1hvNV = load.invoke("glMultiTexCoord1hvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord2hNV = load.invoke("glMultiTexCoord2hNV", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT)); + ext.glMultiTexCoord2hvNV = load.invoke("glMultiTexCoord2hvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord3hNV = load.invoke("glMultiTexCoord3hNV", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glMultiTexCoord3hvNV = load.invoke("glMultiTexCoord3hvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glMultiTexCoord4hNV = load.invoke("glMultiTexCoord4hNV", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glMultiTexCoord4hvNV = load.invoke("glMultiTexCoord4hvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib1hNV = load.invoke("glVertexAttrib1hNV", ofVoid(JAVA_INT, JAVA_SHORT)); + ext.glVertexAttrib1hvNV = load.invoke("glVertexAttrib1hvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib2hNV = load.invoke("glVertexAttrib2hNV", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT)); + ext.glVertexAttrib2hvNV = load.invoke("glVertexAttrib2hvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib3hNV = load.invoke("glVertexAttrib3hNV", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glVertexAttrib3hvNV = load.invoke("glVertexAttrib3hvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4hNV = load.invoke("glVertexAttrib4hNV", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glVertexAttrib4hvNV = load.invoke("glVertexAttrib4hvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribs1hvNV = load.invoke("glVertexAttribs1hvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribs2hvNV = load.invoke("glVertexAttribs2hvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribs3hvNV = load.invoke("glVertexAttribs3hvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribs4hvNV = load.invoke("glVertexAttribs4hvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glFogCoordhNV = load.invoke("glFogCoordhNV", ofVoid(JAVA_SHORT)); + ext.glFogCoordhvNV = load.invoke("glFogCoordhvNV", ofVoid(ADDRESS)); + ext.glSecondaryColor3hNV = load.invoke("glSecondaryColor3hNV", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glSecondaryColor3hvNV = load.invoke("glSecondaryColor3hvNV", ofVoid(ADDRESS)); + ext.glVertexWeighthNV = load.invoke("glVertexWeighthNV", ofVoid(JAVA_SHORT)); + ext.glVertexWeighthvNV = load.invoke("glVertexWeighthvNV", ofVoid(ADDRESS)); + } + + public static void glVertex2hNV(short x, short y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex2hNV).invokeExact(x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex2hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex2hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex3hNV(short x, short y, short z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex3hNV).invokeExact(x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex3hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex3hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex4hNV(short x, short y, short z, short w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex4hNV).invokeExact(x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertex4hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertex4hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormal3hNV(short nx, short ny, short nz) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormal3hNV).invokeExact(nx, ny, nz); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormal3hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormal3hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColor3hNV(short red, short green, short blue) { + final var ext = getExtCapabilities(); + try { + check(ext.glColor3hNV).invokeExact(red, green, blue); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColor3hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glColor3hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColor4hNV(short red, short green, short blue, short alpha) { + final var ext = getExtCapabilities(); + try { + check(ext.glColor4hNV).invokeExact(red, green, blue, alpha); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColor4hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glColor4hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord1hNV(short s) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord1hNV).invokeExact(s); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord1hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord1hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord2hNV(short s, short t) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord2hNV).invokeExact(s, t); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord2hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord2hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord3hNV(short s, short t, short r) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord3hNV).invokeExact(s, t, r); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord3hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord3hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord4hNV(short s, short t, short r, short q) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord4hNV).invokeExact(s, t, r, q); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoord4hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoord4hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord1hNV(int target, short s) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord1hNV).invokeExact(target, s); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord1hvNV(int target, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord1hvNV).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord2hNV(int target, short s, short t) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord2hNV).invokeExact(target, s, t); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord2hvNV(int target, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord2hvNV).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord3hNV(int target, short s, short t, short r) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord3hNV).invokeExact(target, s, t, r); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord3hvNV(int target, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord3hvNV).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord4hNV(int target, short s, short t, short r, short q) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord4hNV).invokeExact(target, s, t, r, q); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoord4hvNV(int target, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoord4hvNV).invokeExact(target, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib1hNV(int index, short x) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib1hNV).invokeExact(index, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib1hvNV(int index, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib1hvNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib2hNV(int index, short x, short y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib2hNV).invokeExact(index, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib2hvNV(int index, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib2hvNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib3hNV(int index, short x, short y, short z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib3hNV).invokeExact(index, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib3hvNV(int index, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib3hvNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4hNV(int index, short x, short y, short z, short w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4hNV).invokeExact(index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4hvNV(int index, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4hvNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs1hvNV(int index, int n, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs1hvNV).invokeExact(index, n, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs2hvNV(int index, int n, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs2hvNV).invokeExact(index, n, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs3hvNV(int index, int n, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs3hvNV).invokeExact(index, n, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs4hvNV(int index, int n, @NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs4hvNV).invokeExact(index, n, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFogCoordhNV(short fog) { + final var ext = getExtCapabilities(); + try { + check(ext.glFogCoordhNV).invokeExact(fog); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFogCoordhvNV(@NativeType("const GLhalfNV *") MemorySegment fog) { + final var ext = getExtCapabilities(); + try { + check(ext.glFogCoordhvNV).invokeExact(fog); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColor3hNV(short red, short green, short blue) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3hNV).invokeExact(red, green, blue); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColor3hvNV(@NativeType("const GLhalfNV *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3hvNV).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexWeighthNV(short weight) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexWeighthNV).invokeExact(weight); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexWeighthvNV(@NativeType("const GLhalfNV *") MemorySegment weight) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexWeighthvNV).invokeExact(weight); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVInternalformatSampleQuery.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVInternalformatSampleQuery.java new file mode 100644 index 00000000..adf8e174 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVInternalformatSampleQuery.java @@ -0,0 +1,47 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_internalformat_sample_query} + */ +public final class GLNVInternalformatSampleQuery { + public static final int GL_MULTISAMPLES_NV = 0x9371; + public static final int GL_SUPERSAMPLE_SCALE_X_NV = 0x9372; + public static final int GL_SUPERSAMPLE_SCALE_Y_NV = 0x9373; + public static final int GL_CONFORMANT_NV = 0x9374; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_internalformat_sample_query) return; + ext.glGetInternalformatSampleivNV = load.invoke("glGetInternalformatSampleivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glGetInternalformatSampleivNV(int target, int internalformat, int samples, int pname, int count, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetInternalformatSampleivNV).invokeExact(target, internalformat, samples, pname, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVLightMaxExponent.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVLightMaxExponent.java new file mode 100644 index 00000000..49a204f1 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVLightMaxExponent.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_light_max_exponent} + */ +public final class GLNVLightMaxExponent { + public static final int GL_MAX_SHININESS_NV = 0x8504; + public static final int GL_MAX_SPOT_EXPONENT_NV = 0x8505; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMemoryAttachment.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMemoryAttachment.java new file mode 100644 index 00000000..871f7d4e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMemoryAttachment.java @@ -0,0 +1,93 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_memory_attachment} + */ +public final class GLNVMemoryAttachment { + public static final int GL_ATTACHED_MEMORY_OBJECT_NV = 0x95A4; + public static final int GL_ATTACHED_MEMORY_OFFSET_NV = 0x95A5; + public static final int GL_MEMORY_ATTACHABLE_ALIGNMENT_NV = 0x95A6; + public static final int GL_MEMORY_ATTACHABLE_SIZE_NV = 0x95A7; + public static final int GL_MEMORY_ATTACHABLE_NV = 0x95A8; + public static final int GL_DETACHED_MEMORY_INCARNATION_NV = 0x95A9; + public static final int GL_DETACHED_TEXTURES_NV = 0x95AA; + public static final int GL_DETACHED_BUFFERS_NV = 0x95AB; + public static final int GL_MAX_DETACHED_TEXTURES_NV = 0x95AC; + public static final int GL_MAX_DETACHED_BUFFERS_NV = 0x95AD; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_memory_attachment) return; + ext.glGetMemoryObjectDetachedResourcesuivNV = load.invoke("glGetMemoryObjectDetachedResourcesuivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glResetMemoryObjectParameterNV = load.invoke("glResetMemoryObjectParameterNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glTexAttachMemoryNV = load.invoke("glTexAttachMemoryNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glBufferAttachMemoryNV = load.invoke("glBufferAttachMemoryNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glTextureAttachMemoryNV = load.invoke("glTextureAttachMemoryNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glNamedBufferAttachMemoryNV = load.invoke("glNamedBufferAttachMemoryNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG)); + } + + public static void glGetMemoryObjectDetachedResourcesuivNV(int memory, int pname, int first, int count, @NativeType("GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMemoryObjectDetachedResourcesuivNV).invokeExact(memory, pname, first, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glResetMemoryObjectParameterNV(int memory, int pname) { + final var ext = getExtCapabilities(); + try { + check(ext.glResetMemoryObjectParameterNV).invokeExact(memory, pname); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexAttachMemoryNV(int target, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexAttachMemoryNV).invokeExact(target, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBufferAttachMemoryNV(int target, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glBufferAttachMemoryNV).invokeExact(target, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureAttachMemoryNV(int texture, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureAttachMemoryNV).invokeExact(texture, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedBufferAttachMemoryNV(int buffer, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedBufferAttachMemoryNV).invokeExact(buffer, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMemoryObjectSparse.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMemoryObjectSparse.java new file mode 100644 index 00000000..1a8a608f --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMemoryObjectSparse.java @@ -0,0 +1,67 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_memory_object_sparse} + */ +public final class GLNVMemoryObjectSparse { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_memory_object_sparse) return; + ext.glBufferPageCommitmentMemNV = load.invoke("glBufferPageCommitmentMemNV", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_INT, JAVA_LONG, JAVA_BYTE)); + ext.glTexPageCommitmentMemNV = load.invoke("glTexPageCommitmentMemNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_BYTE)); + ext.glNamedBufferPageCommitmentMemNV = load.invoke("glNamedBufferPageCommitmentMemNV", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_INT, JAVA_LONG, JAVA_BYTE)); + ext.glTexturePageCommitmentMemNV = load.invoke("glTexturePageCommitmentMemNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_BYTE)); + } + + public static void glBufferPageCommitmentMemNV(int target, long offset, long size, int memory, long memOffset, boolean commit) { + final var ext = getExtCapabilities(); + try { + check(ext.glBufferPageCommitmentMemNV).invokeExact(target, offset, size, memory, memOffset, commit); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexPageCommitmentMemNV(int target, int layer, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int memory, long offset, boolean commit) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexPageCommitmentMemNV).invokeExact(target, layer, level, xoffset, yoffset, zoffset, width, height, depth, memory, offset, commit); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedBufferPageCommitmentMemNV(int buffer, long offset, long size, int memory, long memOffset, boolean commit) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedBufferPageCommitmentMemNV).invokeExact(buffer, offset, size, memory, memOffset, commit); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexturePageCommitmentMemNV(int texture, int layer, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int memory, long offset, boolean commit) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexturePageCommitmentMemNV).invokeExact(texture, layer, level, xoffset, yoffset, zoffset, width, height, depth, memory, offset, commit); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMeshShader.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMeshShader.java new file mode 100644 index 00000000..96e0c9cd --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMeshShader.java @@ -0,0 +1,115 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_mesh_shader} + */ +public final class GLNVMeshShader { + public static final int GL_MESH_SHADER_NV = 0x9559; + public static final int GL_TASK_SHADER_NV = 0x955A; + public static final int GL_MAX_MESH_UNIFORM_BLOCKS_NV = 0x8E60; + public static final int GL_MAX_MESH_TEXTURE_IMAGE_UNITS_NV = 0x8E61; + public static final int GL_MAX_MESH_IMAGE_UNIFORMS_NV = 0x8E62; + public static final int GL_MAX_MESH_UNIFORM_COMPONENTS_NV = 0x8E63; + public static final int GL_MAX_MESH_ATOMIC_COUNTER_BUFFERS_NV = 0x8E64; + public static final int GL_MAX_MESH_ATOMIC_COUNTERS_NV = 0x8E65; + public static final int GL_MAX_MESH_SHADER_STORAGE_BLOCKS_NV = 0x8E66; + public static final int GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NV = 0x8E67; + public static final int GL_MAX_TASK_UNIFORM_BLOCKS_NV = 0x8E68; + public static final int GL_MAX_TASK_TEXTURE_IMAGE_UNITS_NV = 0x8E69; + public static final int GL_MAX_TASK_IMAGE_UNIFORMS_NV = 0x8E6A; + public static final int GL_MAX_TASK_UNIFORM_COMPONENTS_NV = 0x8E6B; + public static final int GL_MAX_TASK_ATOMIC_COUNTER_BUFFERS_NV = 0x8E6C; + public static final int GL_MAX_TASK_ATOMIC_COUNTERS_NV = 0x8E6D; + public static final int GL_MAX_TASK_SHADER_STORAGE_BLOCKS_NV = 0x8E6E; + public static final int GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NV = 0x8E6F; + public static final int GL_MAX_MESH_WORK_GROUP_INVOCATIONS_NV = 0x95A2; + public static final int GL_MAX_TASK_WORK_GROUP_INVOCATIONS_NV = 0x95A3; + public static final int GL_MAX_MESH_TOTAL_MEMORY_SIZE_NV = 0x9536; + public static final int GL_MAX_TASK_TOTAL_MEMORY_SIZE_NV = 0x9537; + public static final int GL_MAX_MESH_OUTPUT_VERTICES_NV = 0x9538; + public static final int GL_MAX_MESH_OUTPUT_PRIMITIVES_NV = 0x9539; + public static final int GL_MAX_TASK_OUTPUT_COUNT_NV = 0x953A; + public static final int GL_MAX_DRAW_MESH_TASKS_COUNT_NV = 0x953D; + public static final int GL_MAX_MESH_VIEWS_NV = 0x9557; + public static final int GL_MESH_OUTPUT_PER_VERTEX_GRANULARITY_NV = 0x92DF; + public static final int GL_MESH_OUTPUT_PER_PRIMITIVE_GRANULARITY_NV = 0x9543; + public static final int GL_MAX_MESH_WORK_GROUP_SIZE_NV = 0x953B; + public static final int GL_MAX_TASK_WORK_GROUP_SIZE_NV = 0x953C; + public static final int GL_MESH_WORK_GROUP_SIZE_NV = 0x953E; + public static final int GL_TASK_WORK_GROUP_SIZE_NV = 0x953F; + public static final int GL_MESH_VERTICES_OUT_NV = 0x9579; + public static final int GL_MESH_PRIMITIVES_OUT_NV = 0x957A; + public static final int GL_MESH_OUTPUT_TYPE_NV = 0x957B; + public static final int GL_UNIFORM_BLOCK_REFERENCED_BY_MESH_SHADER_NV = 0x959C; + public static final int GL_UNIFORM_BLOCK_REFERENCED_BY_TASK_SHADER_NV = 0x959D; + public static final int GL_REFERENCED_BY_MESH_SHADER_NV = 0x95A0; + public static final int GL_REFERENCED_BY_TASK_SHADER_NV = 0x95A1; + public static final int GL_MESH_SHADER_BIT_NV = 0x00000040; + public static final int GL_TASK_SHADER_BIT_NV = 0x00000080; + public static final int GL_MESH_SUBROUTINE_NV = 0x957C; + public static final int GL_TASK_SUBROUTINE_NV = 0x957D; + public static final int GL_MESH_SUBROUTINE_UNIFORM_NV = 0x957E; + public static final int GL_TASK_SUBROUTINE_UNIFORM_NV = 0x957F; + public static final int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_MESH_SHADER_NV = 0x959E; + public static final int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TASK_SHADER_NV = 0x959F; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_mesh_shader) return; + ext.glDrawMeshTasksNV = load.invoke("glDrawMeshTasksNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glDrawMeshTasksIndirectNV = load.invoke("glDrawMeshTasksIndirectNV", ofVoid(JAVA_LONG)); + ext.glMultiDrawMeshTasksIndirectNV = load.invoke("glMultiDrawMeshTasksIndirectNV", ofVoid(JAVA_LONG, JAVA_INT, JAVA_INT)); + ext.glMultiDrawMeshTasksIndirectCountNV = load.invoke("glMultiDrawMeshTasksIndirectCountNV", ofVoid(JAVA_LONG, JAVA_LONG, JAVA_INT, JAVA_INT)); + } + + public static void glDrawMeshTasksNV(int first, int count) { + final var ext = getExtCapabilities(); + try { + check(ext.glDrawMeshTasksNV).invokeExact(first, count); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDrawMeshTasksIndirectNV(long indirect) { + final var ext = getExtCapabilities(); + try { + check(ext.glDrawMeshTasksIndirectNV).invokeExact(indirect); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiDrawMeshTasksIndirectNV(long indirect, int drawcount, int stride) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiDrawMeshTasksIndirectNV).invokeExact(indirect, drawcount, stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiDrawMeshTasksIndirectCountNV(long indirect, long drawcount, int maxdrawcount, int stride) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiDrawMeshTasksIndirectCountNV).invokeExact(indirect, drawcount, maxdrawcount, stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMultisampleFilterHint.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMultisampleFilterHint.java new file mode 100644 index 00000000..4f495a8d --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVMultisampleFilterHint.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_multisample_filter_hint} + */ +public final class GLNVMultisampleFilterHint { + public static final int GL_MULTISAMPLE_FILTER_HINT_NV = 0x8534; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVOcculusionQuery.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVOcculusionQuery.java new file mode 100644 index 00000000..f1102e58 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVOcculusionQuery.java @@ -0,0 +1,96 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_occlusion_query} + */ +public final class GLNVOcculusionQuery { + public static final int GL_PIXEL_COUNTER_BITS_NV = 0x8864; + public static final int GL_CURRENT_OCCLUSION_QUERY_ID_NV = 0x8865; + public static final int GL_PIXEL_COUNT_NV = 0x8866; + public static final int GL_PIXEL_COUNT_AVAILABLE_NV = 0x8867; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_occlusion_query) return; + ext.glGenOcclusionQueriesNV = load.invoke("glGenOcclusionQueriesNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glDeleteOcclusionQueriesNV = load.invoke("glDeleteOcclusionQueriesNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glIsOcclusionQueryNV = load.invoke("glIsOcclusionQueryNV", of(JAVA_BYTE, JAVA_INT)); + ext.glBeginOcclusionQueryNV = load.invoke("glBeginOcclusionQueryNV", ofVoid(JAVA_INT)); + ext.glEndOcclusionQueryNV = load.invoke("glEndOcclusionQueryNV", ofVoid()); + ext.glGetOcclusionQueryivNV = load.invoke("glGetOcclusionQueryivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetOcclusionQueryuivNV = load.invoke("glGetOcclusionQueryuivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glGenOcclusionQueriesNV(int n, @NativeType("GLuint *") MemorySegment ids) { + final var ext = getExtCapabilities(); + try { + check(ext.glGenOcclusionQueriesNV).invokeExact(n, ids); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeleteOcclusionQueriesNV(int n, @NativeType("const GLuint *") MemorySegment ids) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeleteOcclusionQueriesNV).invokeExact(n, ids); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsOcclusionQueryNV(int id) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsOcclusionQueryNV).invokeExact(id); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBeginOcclusionQueryNV(int id) { + final var ext = getExtCapabilities(); + try { + check(ext.glBeginOcclusionQueryNV).invokeExact(id); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEndOcclusionQueryNV() { + final var ext = getExtCapabilities(); + try { + check(ext.glEndOcclusionQueryNV).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetOcclusionQueryivNV(int id, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetOcclusionQueryivNV).invokeExact(id, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetOcclusionQueryuivNV(int id, int pname, @NativeType("GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetOcclusionQueryuivNV).invokeExact(id, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPackedDepthStencil.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPackedDepthStencil.java new file mode 100644 index 00000000..2e08f44a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPackedDepthStencil.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_packed_depth_stencil} + */ +public final class GLNVPackedDepthStencil { + public static final int GL_DEPTH_STENCIL_NV = 0x84F9; + public static final int GL_UNSIGNED_INT_24_8_NV = 0x84FA; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVParameterBufferObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVParameterBufferObject.java new file mode 100644 index 00000000..32dedf19 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVParameterBufferObject.java @@ -0,0 +1,64 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_parameter_buffer_object} + */ +public final class GLNVParameterBufferObject { + public static final int GL_MAX_PROGRAM_PARAMETER_BUFFER_BINDINGS_NV = 0x8DA0; + public static final int GL_MAX_PROGRAM_PARAMETER_BUFFER_SIZE_NV = 0x8DA1; + public static final int GL_VERTEX_PROGRAM_PARAMETER_BUFFER_NV = 0x8DA2; + public static final int GL_GEOMETRY_PROGRAM_PARAMETER_BUFFER_NV = 0x8DA3; + public static final int GL_FRAGMENT_PROGRAM_PARAMETER_BUFFER_NV = 0x8DA4; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_parameter_buffer_object) return; + ext.glProgramBufferParametersfvNV = load.invoke("glProgramBufferParametersfvNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramBufferParametersIivNV = load.invoke("glProgramBufferParametersIivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramBufferParametersIuivNV = load.invoke("glProgramBufferParametersIuivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glProgramBufferParametersfvNV(int target, int bindingIndex, int wordIndex, int count, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramBufferParametersfvNV).invokeExact(target, bindingIndex, wordIndex, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramBufferParametersIivNV(int target, int bindingIndex, int wordIndex, int count, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramBufferParametersIivNV).invokeExact(target, bindingIndex, wordIndex, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramBufferParametersIuivNV(int target, int bindingIndex, int wordIndex, int count, @NativeType("const GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramBufferParametersIuivNV).invokeExact(target, bindingIndex, wordIndex, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPathRendering.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPathRendering.java new file mode 100644 index 00000000..2b6c4437 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPathRendering.java @@ -0,0 +1,719 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_path_rendering} + */ +public final class GLNVPathRendering { + public static final int GL_PATH_FORMAT_SVG_NV = 0x9070; + public static final int GL_PATH_FORMAT_PS_NV = 0x9071; + public static final int GL_STANDARD_FONT_NAME_NV = 0x9072; + public static final int GL_SYSTEM_FONT_NAME_NV = 0x9073; + public static final int GL_FILE_NAME_NV = 0x9074; + public static final int GL_PATH_STROKE_WIDTH_NV = 0x9075; + public static final int GL_PATH_END_CAPS_NV = 0x9076; + public static final int GL_PATH_INITIAL_END_CAP_NV = 0x9077; + public static final int GL_PATH_TERMINAL_END_CAP_NV = 0x9078; + public static final int GL_PATH_JOIN_STYLE_NV = 0x9079; + public static final int GL_PATH_MITER_LIMIT_NV = 0x907A; + public static final int GL_PATH_DASH_CAPS_NV = 0x907B; + public static final int GL_PATH_INITIAL_DASH_CAP_NV = 0x907C; + public static final int GL_PATH_TERMINAL_DASH_CAP_NV = 0x907D; + public static final int GL_PATH_DASH_OFFSET_NV = 0x907E; + public static final int GL_PATH_CLIENT_LENGTH_NV = 0x907F; + public static final int GL_PATH_FILL_MODE_NV = 0x9080; + public static final int GL_PATH_FILL_MASK_NV = 0x9081; + public static final int GL_PATH_FILL_COVER_MODE_NV = 0x9082; + public static final int GL_PATH_STROKE_COVER_MODE_NV = 0x9083; + public static final int GL_PATH_STROKE_MASK_NV = 0x9084; + public static final int GL_COUNT_UP_NV = 0x9088; + public static final int GL_COUNT_DOWN_NV = 0x9089; + public static final int GL_PATH_OBJECT_BOUNDING_BOX_NV = 0x908A; + public static final int GL_CONVEX_HULL_NV = 0x908B; + public static final int GL_BOUNDING_BOX_NV = 0x908D; + public static final int GL_TRANSLATE_X_NV = 0x908E; + public static final int GL_TRANSLATE_Y_NV = 0x908F; + public static final int GL_TRANSLATE_2D_NV = 0x9090; + public static final int GL_TRANSLATE_3D_NV = 0x9091; + public static final int GL_AFFINE_2D_NV = 0x9092; + public static final int GL_AFFINE_3D_NV = 0x9094; + public static final int GL_TRANSPOSE_AFFINE_2D_NV = 0x9096; + public static final int GL_TRANSPOSE_AFFINE_3D_NV = 0x9098; + public static final int GL_UTF8_NV = 0x909A; + public static final int GL_UTF16_NV = 0x909B; + public static final int GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV = 0x909C; + public static final int GL_PATH_COMMAND_COUNT_NV = 0x909D; + public static final int GL_PATH_COORD_COUNT_NV = 0x909E; + public static final int GL_PATH_DASH_ARRAY_COUNT_NV = 0x909F; + public static final int GL_PATH_COMPUTED_LENGTH_NV = 0x90A0; + public static final int GL_PATH_FILL_BOUNDING_BOX_NV = 0x90A1; + public static final int GL_PATH_STROKE_BOUNDING_BOX_NV = 0x90A2; + public static final int GL_SQUARE_NV = 0x90A3; + public static final int GL_ROUND_NV = 0x90A4; + public static final int GL_TRIANGULAR_NV = 0x90A5; + public static final int GL_BEVEL_NV = 0x90A6; + public static final int GL_MITER_REVERT_NV = 0x90A7; + public static final int GL_MITER_TRUNCATE_NV = 0x90A8; + public static final int GL_SKIP_MISSING_GLYPH_NV = 0x90A9; + public static final int GL_USE_MISSING_GLYPH_NV = 0x90AA; + public static final int GL_PATH_ERROR_POSITION_NV = 0x90AB; + public static final int GL_ACCUM_ADJACENT_PAIRS_NV = 0x90AD; + public static final int GL_ADJACENT_PAIRS_NV = 0x90AE; + public static final int GL_FIRST_TO_REST_NV = 0x90AF; + public static final int GL_PATH_GEN_MODE_NV = 0x90B0; + public static final int GL_PATH_GEN_COEFF_NV = 0x90B1; + public static final int GL_PATH_GEN_COMPONENTS_NV = 0x90B3; + public static final int GL_PATH_STENCIL_FUNC_NV = 0x90B7; + public static final int GL_PATH_STENCIL_REF_NV = 0x90B8; + public static final int GL_PATH_STENCIL_VALUE_MASK_NV = 0x90B9; + public static final int GL_PATH_STENCIL_DEPTH_OFFSET_FACTOR_NV = 0x90BD; + public static final int GL_PATH_STENCIL_DEPTH_OFFSET_UNITS_NV = 0x90BE; + public static final int GL_PATH_COVER_DEPTH_FUNC_NV = 0x90BF; + public static final int GL_PATH_DASH_OFFSET_RESET_NV = 0x90B4; + public static final int GL_MOVE_TO_RESETS_NV = 0x90B5; + public static final int GL_MOVE_TO_CONTINUES_NV = 0x90B6; + public static final int GL_CLOSE_PATH_NV = 0x00; + public static final int GL_MOVE_TO_NV = 0x02; + public static final int GL_RELATIVE_MOVE_TO_NV = 0x03; + public static final int GL_LINE_TO_NV = 0x04; + public static final int GL_RELATIVE_LINE_TO_NV = 0x05; + public static final int GL_HORIZONTAL_LINE_TO_NV = 0x06; + public static final int GL_RELATIVE_HORIZONTAL_LINE_TO_NV = 0x07; + public static final int GL_VERTICAL_LINE_TO_NV = 0x08; + public static final int GL_RELATIVE_VERTICAL_LINE_TO_NV = 0x09; + public static final int GL_QUADRATIC_CURVE_TO_NV = 0x0A; + public static final int GL_RELATIVE_QUADRATIC_CURVE_TO_NV = 0x0B; + public static final int GL_CUBIC_CURVE_TO_NV = 0x0C; + public static final int GL_RELATIVE_CUBIC_CURVE_TO_NV = 0x0D; + public static final int GL_SMOOTH_QUADRATIC_CURVE_TO_NV = 0x0E; + public static final int GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV = 0x0F; + public static final int GL_SMOOTH_CUBIC_CURVE_TO_NV = 0x10; + public static final int GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV = 0x11; + public static final int GL_SMALL_CCW_ARC_TO_NV = 0x12; + public static final int GL_RELATIVE_SMALL_CCW_ARC_TO_NV = 0x13; + public static final int GL_SMALL_CW_ARC_TO_NV = 0x14; + public static final int GL_RELATIVE_SMALL_CW_ARC_TO_NV = 0x15; + public static final int GL_LARGE_CCW_ARC_TO_NV = 0x16; + public static final int GL_RELATIVE_LARGE_CCW_ARC_TO_NV = 0x17; + public static final int GL_LARGE_CW_ARC_TO_NV = 0x18; + public static final int GL_RELATIVE_LARGE_CW_ARC_TO_NV = 0x19; + public static final int GL_RESTART_PATH_NV = 0xF0; + public static final int GL_DUP_FIRST_CUBIC_CURVE_TO_NV = 0xF2; + public static final int GL_DUP_LAST_CUBIC_CURVE_TO_NV = 0xF4; + public static final int GL_RECT_NV = 0xF6; + public static final int GL_CIRCULAR_CCW_ARC_TO_NV = 0xF8; + public static final int GL_CIRCULAR_CW_ARC_TO_NV = 0xFA; + public static final int GL_CIRCULAR_TANGENT_ARC_TO_NV = 0xFC; + public static final int GL_ARC_TO_NV = 0xFE; + public static final int GL_RELATIVE_ARC_TO_NV = 0xFF; + public static final int GL_BOLD_BIT_NV = 0x01; + public static final int GL_ITALIC_BIT_NV = 0x02; + public static final int GL_GLYPH_WIDTH_BIT_NV = 0x01; + public static final int GL_GLYPH_HEIGHT_BIT_NV = 0x02; + public static final int GL_GLYPH_HORIZONTAL_BEARING_X_BIT_NV = 0x04; + public static final int GL_GLYPH_HORIZONTAL_BEARING_Y_BIT_NV = 0x08; + public static final int GL_GLYPH_HORIZONTAL_BEARING_ADVANCE_BIT_NV = 0x10; + public static final int GL_GLYPH_VERTICAL_BEARING_X_BIT_NV = 0x20; + public static final int GL_GLYPH_VERTICAL_BEARING_Y_BIT_NV = 0x40; + public static final int GL_GLYPH_VERTICAL_BEARING_ADVANCE_BIT_NV = 0x80; + public static final int GL_GLYPH_HAS_KERNING_BIT_NV = 0x100; + public static final int GL_FONT_X_MIN_BOUNDS_BIT_NV = 0x00010000; + public static final int GL_FONT_Y_MIN_BOUNDS_BIT_NV = 0x00020000; + public static final int GL_FONT_X_MAX_BOUNDS_BIT_NV = 0x00040000; + public static final int GL_FONT_Y_MAX_BOUNDS_BIT_NV = 0x00080000; + public static final int GL_FONT_UNITS_PER_EM_BIT_NV = 0x00100000; + public static final int GL_FONT_ASCENDER_BIT_NV = 0x00200000; + public static final int GL_FONT_DESCENDER_BIT_NV = 0x00400000; + public static final int GL_FONT_HEIGHT_BIT_NV = 0x00800000; + public static final int GL_FONT_MAX_ADVANCE_WIDTH_BIT_NV = 0x01000000; + public static final int GL_FONT_MAX_ADVANCE_HEIGHT_BIT_NV = 0x02000000; + public static final int GL_FONT_UNDERLINE_POSITION_BIT_NV = 0x04000000; + public static final int GL_FONT_UNDERLINE_THICKNESS_BIT_NV = 0x08000000; + public static final int GL_FONT_HAS_KERNING_BIT_NV = 0x10000000; + public static final int GL_ROUNDED_RECT_NV = 0xE8; + public static final int GL_RELATIVE_ROUNDED_RECT_NV = 0xE9; + public static final int GL_ROUNDED_RECT2_NV = 0xEA; + public static final int GL_RELATIVE_ROUNDED_RECT2_NV = 0xEB; + public static final int GL_ROUNDED_RECT4_NV = 0xEC; + public static final int GL_RELATIVE_ROUNDED_RECT4_NV = 0xED; + public static final int GL_ROUNDED_RECT8_NV = 0xEE; + public static final int GL_RELATIVE_ROUNDED_RECT8_NV = 0xEF; + public static final int GL_RELATIVE_RECT_NV = 0xF7; + public static final int GL_FONT_GLYPHS_AVAILABLE_NV = 0x9368; + public static final int GL_FONT_TARGET_UNAVAILABLE_NV = 0x9369; + public static final int GL_FONT_UNAVAILABLE_NV = 0x936A; + public static final int GL_FONT_UNINTELLIGIBLE_NV = 0x936B; + public static final int GL_CONIC_CURVE_TO_NV = 0x1A; + public static final int GL_RELATIVE_CONIC_CURVE_TO_NV = 0x1B; + public static final int GL_FONT_NUM_GLYPH_INDICES_BIT_NV = 0x20000000; + public static final int GL_STANDARD_FONT_FORMAT_NV = 0x936C; + public static final int GL_2_BYTES_NV = 0x1407; + public static final int GL_3_BYTES_NV = 0x1408; + public static final int GL_4_BYTES_NV = 0x1409; + public static final int GL_EYE_LINEAR_NV = 0x2400; + public static final int GL_OBJECT_LINEAR_NV = 0x2401; + public static final int GL_CONSTANT_NV = 0x8576; + public static final int GL_PATH_FOG_GEN_MODE_NV = 0x90AC; + public static final int GL_PRIMARY_COLOR_NV = 0x852C; + public static final int GL_SECONDARY_COLOR_NV = 0x852D; + public static final int GL_PATH_GEN_COLOR_FORMAT_NV = 0x90B2; + public static final int GL_PATH_PROJECTION_NV = 0x1701; + public static final int GL_PATH_MODELVIEW_NV = 0x1700; + public static final int GL_PATH_MODELVIEW_STACK_DEPTH_NV = 0x0BA3; + public static final int GL_PATH_MODELVIEW_MATRIX_NV = 0x0BA6; + public static final int GL_PATH_MAX_MODELVIEW_STACK_DEPTH_NV = 0x0D36; + public static final int GL_PATH_TRANSPOSE_MODELVIEW_MATRIX_NV = 0x84E3; + public static final int GL_PATH_PROJECTION_STACK_DEPTH_NV = 0x0BA4; + public static final int GL_PATH_PROJECTION_MATRIX_NV = 0x0BA7; + public static final int GL_PATH_MAX_PROJECTION_STACK_DEPTH_NV = 0x0D38; + public static final int GL_PATH_TRANSPOSE_PROJECTION_MATRIX_NV = 0x84E4; + public static final int GL_FRAGMENT_INPUT_NV = 0x936D; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_path_rendering) return; + ext.glGenPathsNV = load.invoke("glGenPathsNV", of(JAVA_INT, JAVA_INT)); + ext.glDeletePathsNV = load.invoke("glDeletePathsNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glIsPathNV = load.invoke("glIsPathNV", of(JAVA_BYTE, JAVA_INT)); + ext.glPathCommandsNV = load.invoke("glPathCommandsNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathCoordsNV = load.invoke("glPathCoordsNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathSubCommandsNV = load.invoke("glPathSubCommandsNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathSubCoordsNV = load.invoke("glPathSubCoordsNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathStringNV = load.invoke("glPathStringNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathGlyphsNV = load.invoke("glPathGlyphsNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glPathGlyphRangeNV = load.invoke("glPathGlyphRangeNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glWeightPathsNV = load.invoke("glWeightPathsNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glCopyPathNV = load.invoke("glCopyPathNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glInterpolatePathsNV = load.invoke("glInterpolatePathsNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glTransformPathNV = load.invoke("glTransformPathNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathParameterivNV = load.invoke("glPathParameterivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathParameteriNV = load.invoke("glPathParameteriNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glPathParameterfvNV = load.invoke("glPathParameterfvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathParameterfNV = load.invoke("glPathParameterfNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glPathDashArrayNV = load.invoke("glPathDashArrayNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathStencilFuncNV = load.invoke("glPathStencilFuncNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glPathStencilDepthOffsetNV = load.invoke("glPathStencilDepthOffsetNV", ofVoid(JAVA_FLOAT, JAVA_FLOAT)); + ext.glStencilFillPathNV = load.invoke("glStencilFillPathNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glStencilStrokePathNV = load.invoke("glStencilStrokePathNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glStencilFillPathInstancedNV = load.invoke("glStencilFillPathInstancedNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glStencilStrokePathInstancedNV = load.invoke("glStencilStrokePathInstancedNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathCoverDepthFuncNV = load.invoke("glPathCoverDepthFuncNV", ofVoid(JAVA_INT)); + ext.glCoverFillPathNV = load.invoke("glCoverFillPathNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glCoverStrokePathNV = load.invoke("glCoverStrokePathNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glCoverFillPathInstancedNV = load.invoke("glCoverFillPathInstancedNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCoverStrokePathInstancedNV = load.invoke("glCoverStrokePathInstancedNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPathParameterivNV = load.invoke("glGetPathParameterivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPathParameterfvNV = load.invoke("glGetPathParameterfvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPathCommandsNV = load.invoke("glGetPathCommandsNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetPathCoordsNV = load.invoke("glGetPathCoordsNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetPathDashArrayNV = load.invoke("glGetPathDashArrayNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetPathMetricsNV = load.invoke("glGetPathMetricsNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPathMetricRangeNV = load.invoke("glGetPathMetricRangeNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPathSpacingNV = load.invoke("glGetPathSpacingNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_INT, ADDRESS)); + ext.glIsPointInFillPathNV = load.invoke("glIsPointInFillPathNV", of(JAVA_BYTE, JAVA_INT, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glIsPointInStrokePathNV = load.invoke("glIsPointInStrokePathNV", of(JAVA_BYTE, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glGetPathLengthNV = load.invoke("glGetPathLengthNV", of(JAVA_FLOAT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glPointAlongPathNV = load.invoke("glPointAlongPathNV", of(JAVA_BYTE, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_FLOAT, ADDRESS, ADDRESS, ADDRESS, ADDRESS)); + ext.glMatrixLoad3x2fNV = load.invoke("glMatrixLoad3x2fNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixLoad3x3fNV = load.invoke("glMatrixLoad3x3fNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixLoadTranspose3x3fNV = load.invoke("glMatrixLoadTranspose3x3fNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixMult3x2fNV = load.invoke("glMatrixMult3x2fNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixMult3x3fNV = load.invoke("glMatrixMult3x3fNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixMultTranspose3x3fNV = load.invoke("glMatrixMultTranspose3x3fNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glStencilThenCoverFillPathNV = load.invoke("glStencilThenCoverFillPathNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glStencilThenCoverStrokePathNV = load.invoke("glStencilThenCoverStrokePathNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glStencilThenCoverFillPathInstancedNV = load.invoke("glStencilThenCoverFillPathInstancedNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glStencilThenCoverStrokePathInstancedNV = load.invoke("glStencilThenCoverStrokePathInstancedNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathGlyphIndexRangeNV = load.invoke("glPathGlyphIndexRangeNV", of(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_FLOAT, ADDRESS)); + ext.glPathGlyphIndexArrayNV = load.invoke("glPathGlyphIndexArrayNV", of(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glPathMemoryGlyphIndexArrayNV = load.invoke("glPathMemoryGlyphIndexArrayNV", of(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG, ADDRESS, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glProgramPathFragmentInputGenNV = load.invoke("glProgramPathFragmentInputGenNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramResourcefvNV = load.invoke("glGetProgramResourcefvNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, ADDRESS, ADDRESS)); + ext.glPathColorGenNV = load.invoke("glPathColorGenNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathTexGenNV = load.invoke("glPathTexGenNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPathFogGenNV = load.invoke("glPathFogGenNV", ofVoid(JAVA_INT)); + ext.glGetPathColorGenivNV = load.invoke("glGetPathColorGenivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPathColorGenfvNV = load.invoke("glGetPathColorGenfvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPathTexGenivNV = load.invoke("glGetPathTexGenivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPathTexGenfvNV = load.invoke("glGetPathTexGenfvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static int glGenPathsNV(int range) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glGenPathsNV).invokeExact(range); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeletePathsNV(int path, int range) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeletePathsNV).invokeExact(path, range); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsPathNV(int path) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsPathNV).invokeExact(path); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathCommandsNV(int path, int numCommands, @NativeType("const GLubyte *") MemorySegment commands, int numCoords, int coordType, @NativeType("const void *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathCommandsNV).invokeExact(path, numCommands, commands, numCoords, coordType, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathCoordsNV(int path, int numCoords, int coordType, @NativeType("const void *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathCoordsNV).invokeExact(path, numCoords, coordType, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathSubCommandsNV(int path, int commandStart, int commandsToDelete, int numCommands, @NativeType("const GLubyte *") MemorySegment commands, int numCoords, int coordType, @NativeType("const void *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathSubCommandsNV).invokeExact(path, commandStart, commandsToDelete, numCommands, commands, numCoords, coordType, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathSubCoordsNV(int path, int coordStart, int numCoords, int coordType, @NativeType("const void *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathSubCoordsNV).invokeExact(path, coordStart, numCoords, coordType, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathStringNV(int path, int format, int length, @NativeType("const void *") MemorySegment pathString) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathStringNV).invokeExact(path, format, length, pathString); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathGlyphsNV(int firstPathName, int fontTarget, @NativeType("const void *") MemorySegment fontName, int fontStyle, int numGlyphs, int type, @NativeType("const void *") MemorySegment charcodes, int handleMissingGlyphs, int pathParameterTemplate, float emScale) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathGlyphsNV).invokeExact(firstPathName, fontTarget, fontName, fontStyle, numGlyphs, type, charcodes, handleMissingGlyphs, pathParameterTemplate, emScale); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathGlyphRangeNV(int firstPathName, int fontTarget, @NativeType("const void *") MemorySegment fontName, int fontStyle, int firstGlyph, int numGlyphs, int handleMissingGlyphs, int pathParameterTemplate, float emScale) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathGlyphRangeNV).invokeExact(firstPathName, fontTarget, fontName, fontStyle, firstGlyph, numGlyphs, handleMissingGlyphs, pathParameterTemplate, emScale); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWeightPathsNV(int resultPath, int numPaths, @NativeType("const GLuint *") MemorySegment paths, @NativeType("const GLfloat *") MemorySegment weights) { + final var ext = getExtCapabilities(); + try { + check(ext.glWeightPathsNV).invokeExact(resultPath, numPaths, paths, weights); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyPathNV(int resultPath, int srcPath) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyPathNV).invokeExact(resultPath, srcPath); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glInterpolatePathsNV(int resultPath, int pathA, int pathB, float weight) { + final var ext = getExtCapabilities(); + try { + check(ext.glInterpolatePathsNV).invokeExact(resultPath, pathA, pathB, weight); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTransformPathNV(int resultPath, int srcPath, int transformType, @NativeType("const GLfloat *") MemorySegment transformValues) { + final var ext = getExtCapabilities(); + try { + check(ext.glTransformPathNV).invokeExact(resultPath, srcPath, transformType, transformValues); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathParameterivNV(int path, int pname, @NativeType("const GLint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathParameterivNV).invokeExact(path, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathParameteriNV(int path, int pname, int value) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathParameteriNV).invokeExact(path, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathParameterfvNV(int path, int pname, @NativeType("const GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathParameterfvNV).invokeExact(path, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathParameterfNV(int path, int pname, float value) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathParameterfNV).invokeExact(path, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathDashArrayNV(int path, int dashCount, @NativeType("const GLfloat *") MemorySegment dashArray) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathDashArrayNV).invokeExact(path, dashCount, dashArray); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathStencilFuncNV(int func, int ref, int mask) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathStencilFuncNV).invokeExact(func, ref, mask); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathStencilDepthOffsetNV(float factor, float units) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathStencilDepthOffsetNV).invokeExact(factor, units); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStencilFillPathNV(int path, int fillMode, int mask) { + final var ext = getExtCapabilities(); + try { + check(ext.glStencilFillPathNV).invokeExact(path, fillMode, mask); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStencilStrokePathNV(int path, int reference, int mask) { + final var ext = getExtCapabilities(); + try { + check(ext.glStencilStrokePathNV).invokeExact(path, reference, mask); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStencilFillPathInstancedNV(int numPaths, int pathNameType, @NativeType("const void *") MemorySegment paths, int pathBase, int fillMode, int mask, int transformType, @NativeType("const GLfloat *") MemorySegment transformValues) { + final var ext = getExtCapabilities(); + try { + check(ext.glStencilFillPathInstancedNV).invokeExact(numPaths, pathNameType, paths, pathBase, fillMode, mask, transformType, transformValues); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStencilStrokePathInstancedNV(int numPaths, int pathNameType, @NativeType("const void *") MemorySegment paths, int pathBase, int reference, int mask, int transformType, @NativeType("const GLfloat *") MemorySegment transformValues) { + final var ext = getExtCapabilities(); + try { + check(ext.glStencilStrokePathInstancedNV).invokeExact(numPaths, pathNameType, paths, pathBase, reference, mask, transformType, transformValues); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathCoverDepthFuncNV(int func) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathCoverDepthFuncNV).invokeExact(func); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCoverFillPathNV(int path, int coverMode) { + final var ext = getExtCapabilities(); + try { + check(ext.glCoverFillPathNV).invokeExact(path, coverMode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCoverStrokePathNV(int path, int coverMode) { + final var ext = getExtCapabilities(); + try { + check(ext.glCoverStrokePathNV).invokeExact(path, coverMode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCoverFillPathInstancedNV(int numPaths, int pathNameType, @NativeType("const void *") MemorySegment paths, int pathBase, int coverMode, int transformType, @NativeType("const GLfloat *") MemorySegment transformValues) { + final var ext = getExtCapabilities(); + try { + check(ext.glCoverFillPathInstancedNV).invokeExact(numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCoverStrokePathInstancedNV(int numPaths, int pathNameType, @NativeType("const void *") MemorySegment paths, int pathBase, int coverMode, int transformType, @NativeType("const GLfloat *") MemorySegment transformValues) { + final var ext = getExtCapabilities(); + try { + check(ext.glCoverStrokePathInstancedNV).invokeExact(numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathParameterivNV(int path, int pname, @NativeType("GLint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathParameterivNV).invokeExact(path, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathParameterfvNV(int path, int pname, @NativeType("GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathParameterfvNV).invokeExact(path, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathCommandsNV(int path, @NativeType("GLubyte *") MemorySegment commands) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathCommandsNV).invokeExact(path, commands); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathCoordsNV(int path, @NativeType("GLfloat *") MemorySegment coords) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathCoordsNV).invokeExact(path, coords); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathDashArrayNV(int path, @NativeType("GLfloat *") MemorySegment dashArray) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathDashArrayNV).invokeExact(path, dashArray); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathMetricsNV(int metricQueryMask, int numPaths, int pathNameType, @NativeType("const void *") MemorySegment paths, int pathBase, int stride, @NativeType("GLfloat *") MemorySegment metrics) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathMetricsNV).invokeExact(metricQueryMask, numPaths, pathNameType, paths, pathBase, stride, metrics); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathMetricRangeNV(int metricQueryMask, int firstPathName, int numPaths, int stride, @NativeType("GLfloat *") MemorySegment metrics) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathMetricRangeNV).invokeExact(metricQueryMask, firstPathName, numPaths, stride, metrics); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathSpacingNV(int pathListMode, int numPaths, int pathNameType, @NativeType("const void *") MemorySegment paths, int pathBase, float advanceScale, float kerningScale, int transformType, @NativeType("GLfloat *") MemorySegment returnedSpacing) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathSpacingNV).invokeExact(pathListMode, numPaths, pathNameType, paths, pathBase, advanceScale, kerningScale, transformType, returnedSpacing); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsPointInFillPathNV(int path, int mask, float x, float y) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsPointInFillPathNV).invokeExact(path, mask, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsPointInStrokePathNV(int path, float x, float y) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsPointInStrokePathNV).invokeExact(path, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static float glGetPathLengthNV(int path, int startSegment, int numSegments) { + final var ext = getExtCapabilities(); + try { + return (float) + check(ext.glGetPathLengthNV).invokeExact(path, startSegment, numSegments); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glPointAlongPathNV(int path, int startSegment, int numSegments, float distance, @NativeType("GLfloat *") MemorySegment x, @NativeType("GLfloat *") MemorySegment y, @NativeType("GLfloat *") MemorySegment tangentX, @NativeType("GLfloat *") MemorySegment tangentY) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glPointAlongPathNV).invokeExact(path, startSegment, numSegments, distance, x, y, tangentX, tangentY); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixLoad3x2fNV(int matrixMode, @NativeType("const GLfloat *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixLoad3x2fNV).invokeExact(matrixMode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixLoad3x3fNV(int matrixMode, @NativeType("const GLfloat *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixLoad3x3fNV).invokeExact(matrixMode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixLoadTranspose3x3fNV(int matrixMode, @NativeType("const GLfloat *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixLoadTranspose3x3fNV).invokeExact(matrixMode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixMult3x2fNV(int matrixMode, @NativeType("const GLfloat *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixMult3x2fNV).invokeExact(matrixMode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixMult3x3fNV(int matrixMode, @NativeType("const GLfloat *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixMult3x3fNV).invokeExact(matrixMode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixMultTranspose3x3fNV(int matrixMode, @NativeType("const GLfloat *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixMultTranspose3x3fNV).invokeExact(matrixMode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStencilThenCoverFillPathNV(int path, int fillMode, int mask, int coverMode) { + final var ext = getExtCapabilities(); + try { + check(ext.glStencilThenCoverFillPathNV).invokeExact(path, fillMode, mask, coverMode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStencilThenCoverStrokePathNV(int path, int reference, int mask, int coverMode) { + final var ext = getExtCapabilities(); + try { + check(ext.glStencilThenCoverStrokePathNV).invokeExact(path, reference, mask, coverMode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStencilThenCoverFillPathInstancedNV(int numPaths, int pathNameType, @NativeType("const void *") MemorySegment paths, int pathBase, int fillMode, int mask, int coverMode, int transformType, @NativeType("const GLfloat *") MemorySegment transformValues) { + final var ext = getExtCapabilities(); + try { + check(ext.glStencilThenCoverFillPathInstancedNV).invokeExact(numPaths, pathNameType, paths, pathBase, fillMode, mask, coverMode, transformType, transformValues); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glStencilThenCoverStrokePathInstancedNV(int numPaths, int pathNameType, @NativeType("const void *") MemorySegment paths, int pathBase, int reference, int mask, int coverMode, int transformType, @NativeType("const GLfloat *") MemorySegment transformValues) { + final var ext = getExtCapabilities(); + try { + check(ext.glStencilThenCoverStrokePathInstancedNV).invokeExact(numPaths, pathNameType, paths, pathBase, reference, mask, coverMode, transformType, transformValues); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glPathGlyphIndexRangeNV(int fontTarget, @NativeType("const void *") MemorySegment fontName, int fontStyle, int pathParameterTemplate, float emScale, @NativeType("GLuint *") MemorySegment baseAndCount) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glPathGlyphIndexRangeNV).invokeExact(fontTarget, fontName, fontStyle, pathParameterTemplate, emScale, baseAndCount); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glPathGlyphIndexArrayNV(int firstPathName, int fontTarget, @NativeType("const void *") MemorySegment fontName, int fontStyle, int firstGlyphIndex, int numGlyphs, int pathParameterTemplate, float emScale) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glPathGlyphIndexArrayNV).invokeExact(firstPathName, fontTarget, fontName, fontStyle, firstGlyphIndex, numGlyphs, pathParameterTemplate, emScale); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glPathMemoryGlyphIndexArrayNV(int firstPathName, int fontTarget, long fontSize, @NativeType("const void *") MemorySegment fontData, int faceIndex, int firstGlyphIndex, int numGlyphs, int pathParameterTemplate, float emScale) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glPathMemoryGlyphIndexArrayNV).invokeExact(firstPathName, fontTarget, fontSize, fontData, faceIndex, firstGlyphIndex, numGlyphs, pathParameterTemplate, emScale); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramPathFragmentInputGenNV(int program, int location, int genMode, int components, @NativeType("const GLfloat *") MemorySegment coeffs) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramPathFragmentInputGenNV).invokeExact(program, location, genMode, components, coeffs); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramResourcefvNV(int program, int programInterface, int index, int propCount, @NativeType("const GLenum *") MemorySegment props, int count, @NativeType("GLsizei *") MemorySegment length, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramResourcefvNV).invokeExact(program, programInterface, index, propCount, props, count, length, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathColorGenNV(int color, int genMode, int colorFormat, @NativeType("const GLfloat *") MemorySegment coeffs) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathColorGenNV).invokeExact(color, genMode, colorFormat, coeffs); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathTexGenNV(int texCoordSet, int genMode, int components, @NativeType("const GLfloat *") MemorySegment coeffs) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathTexGenNV).invokeExact(texCoordSet, genMode, components, coeffs); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPathFogGenNV(int genMode) { + final var ext = getExtCapabilities(); + try { + check(ext.glPathFogGenNV).invokeExact(genMode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathColorGenivNV(int color, int pname, @NativeType("GLint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathColorGenivNV).invokeExact(color, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathColorGenfvNV(int color, int pname, @NativeType("GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathColorGenfvNV).invokeExact(color, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathTexGenivNV(int texCoordSet, int pname, @NativeType("GLint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathTexGenivNV).invokeExact(texCoordSet, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPathTexGenfvNV(int texCoordSet, int pname, @NativeType("GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPathTexGenfvNV).invokeExact(texCoordSet, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPathRenderingSharedEdge.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPathRenderingSharedEdge.java new file mode 100644 index 00000000..379ca3e9 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPathRenderingSharedEdge.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_path_rendering_shared_edge} + */ +public final class GLNVPathRenderingSharedEdge { + public static final int GL_SHARED_EDGE_NV = 0xC0; +} From 3e4cad5c6bca071cf57cd65eea8c1a26815749f3 Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Sat, 25 Nov 2023 18:44:09 +0800 Subject: [PATCH 14/20] [OpenGL] Update extensions --- .../generator/kotlin/overrungl/opengl/GLNV.kt | 338 ++++++++++++++++++ .../main/java/overrungl/opengl/GLExtCaps.java | 35 +- .../opengl/ext/nv/GLNVPixelDataRange.java | 57 +++ .../opengl/ext/nv/GLNVPointSprite.java | 54 +++ .../opengl/ext/nv/GLNVPresentVideo.java | 89 +++++ .../opengl/ext/nv/GLNVPrimitiveRestart.java | 53 +++ .../ext/nv/GLNVPrimitiveShadingRate.java | 33 ++ .../opengl/ext/nv/GLNVQueryResource.java | 50 +++ .../opengl/ext/nv/GLNVQueryResourceTag.java | 59 +++ .../opengl/ext/nv/GLNVRegisterCombiners.java | 188 ++++++++++ .../opengl/ext/nv/GLNVRegisterCombiners2.java | 52 +++ .../nv/GLNVRepresentativeFragmentTest.java | 32 ++ .../nv/GLNVRobustnessVideoMemoryPurge.java | 32 ++ .../opengl/ext/nv/GLNVSampleLocations.java | 67 ++++ .../opengl/ext/nv/GLNVScissorExclusive.java | 53 +++ .../opengl/ext/nv/GLNVShaderBufferLoad.java | 144 ++++++++ .../opengl/ext/nv/GLNVShaderBufferStore.java | 32 ++ .../ext/nv/GLNVShaderSubgroupPartitioned.java | 32 ++ .../opengl/ext/nv/GLNVShaderThreadGroup.java | 34 ++ .../opengl/ext/nv/GLNVShadingRateImage.java | 112 ++++++ .../ext/nv/GLNVTessellationProgram5.java | 36 ++ .../opengl/ext/nv/GLNVTexgenEmboss.java | 34 ++ .../opengl/ext/nv/GLNVTexgenReflection.java | 33 ++ .../opengl/ext/nv/GLNVTextureBarrier.java | 43 +++ 24 files changed, 1683 insertions(+), 9 deletions(-) create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPixelDataRange.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPointSprite.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPresentVideo.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPrimitiveRestart.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPrimitiveShadingRate.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVQueryResource.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVQueryResourceTag.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVRegisterCombiners.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVRegisterCombiners2.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVRepresentativeFragmentTest.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVRobustnessVideoMemoryPurge.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVSampleLocations.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVScissorExclusive.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShaderBufferLoad.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShaderBufferStore.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShaderSubgroupPartitioned.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShaderThreadGroup.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShadingRateImage.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTessellationProgram5.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTexgenEmboss.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTexgenReflection.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureBarrier.java diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLNV.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLNV.kt index 9d8f62a6..c3938ce8 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLNV.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLNV.kt @@ -1628,4 +1628,342 @@ fun nv() { "glGetPathTexGenfvNV"(void, GLenum("texCoordSet"), GLenum("pname"), address("value", "GLfloat *")) } file("PathRenderingSharedEdge", NV, "GL_NV_path_rendering_shared_edge", "GL_SHARED_EDGE_NV" to "0xC0") + file("PixelDataRange", NV, "GL_NV_pixel_data_range") { + "GL_WRITE_PIXEL_DATA_RANGE_NV"("0x8878") + "GL_READ_PIXEL_DATA_RANGE_NV"("0x8879") + "GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV"("0x887A") + "GL_READ_PIXEL_DATA_RANGE_LENGTH_NV"("0x887B") + "GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV"("0x887C") + "GL_READ_PIXEL_DATA_RANGE_POINTER_NV"("0x887D") + "glPixelDataRangeNV"(void, GLenum("target"), GLsizei("length"), address("pointer", "const void *")) + "glFlushPixelDataRangeNV"(void, GLenum("target")) + } + file("PointSprite", NV, "GL_NV_point_sprite") { + "GL_POINT_SPRITE_NV"("0x8861") + "GL_COORD_REPLACE_NV"("0x8862") + "GL_POINT_SPRITE_R_MODE_NV"("0x8863") + "glPointParameteriNV"(void, GLenum("pname"), GLint("param")) + "glPointParameterivNV"(void, GLenum("pname"), address("params", "const GLint *")) + } + file("PresentVideo", NV, "GL_NV_present_video") { + "GL_FRAME_NV"("0x8E26") + "GL_FIELDS_NV"("0x8E27") + "GL_CURRENT_TIME_NV"("0x8E28") + "GL_NUM_FILL_STREAMS_NV"("0x8E29") + "GL_PRESENT_TIME_NV"("0x8E2A") + "GL_PRESENT_DURATION_NV"("0x8E2B") + "glPresentFrameKeyedNV"( + void, + GLuint("video_slot"), + GLuint64EXT("minPresentTime"), + GLuint("beginPresentTimeId"), + GLuint("presentDurationId"), + GLenum("type"), + GLenum("target0"), + GLuint("fill0"), + GLuint("key0"), + GLenum("target1"), + GLuint("fill1"), + GLuint("key1") + ) + "glPresentFrameDualFillNV"( + void, + GLuint("video_slot"), + GLuint64EXT("minPresentTime"), + GLuint("beginPresentTimeId"), + GLuint("presentDurationId"), + GLenum("type"), + GLenum("target0"), + GLuint("fill0"), + GLenum("target1"), + GLuint("fill1"), + GLenum("target2"), + GLuint("fill2"), + GLenum("target3"), + GLuint("fill3") + ) + "glGetVideoivNV"(void, GLuint("video_slot"), GLenum("pname"), address("params", "GLint *")) + "glGetVideouivNV"(void, GLuint("video_slot"), GLenum("pname"), address("params", "GLuint *")) + "glGetVideoi64vNV"(void, GLuint("video_slot"), GLenum("pname"), address("params", "GLint64EXT *")) + "glGetVideoui64vNV"(void, GLuint("video_slot"), GLenum("pname"), address("params", "GLuint64EXT *")) + } + file("PrimitiveRestart", NV, "GL_NV_primitive_restart") { + "GL_PRIMITIVE_RESTART_NV"("0x8558") + "GL_PRIMITIVE_RESTART_INDEX_NV"("0x8559") + "glPrimitiveRestartNV"(void) + "glPrimitiveRestartIndexNV"(void, GLuint("index")) + } + file( + "PrimitiveShadingRate", NV, "GL_NV_primitive_shading_rate", + "GL_SHADING_RATE_IMAGE_PER_PRIMITIVE_NV" to "0x95B1", + "GL_SHADING_RATE_IMAGE_PALETTE_COUNT_NV" to "0x95B2" + ) + file("QueryResource", NV, "GL_NV_query_resource") { + "GL_QUERY_RESOURCE_TYPE_VIDMEM_ALLOC_NV"("0x9540") + "GL_QUERY_RESOURCE_MEMTYPE_VIDMEM_NV"("0x9542") + "GL_QUERY_RESOURCE_SYS_RESERVED_NV"("0x9544") + "GL_QUERY_RESOURCE_TEXTURE_NV"("0x9545") + "GL_QUERY_RESOURCE_RENDERBUFFER_NV"("0x9546") + "GL_QUERY_RESOURCE_BUFFEROBJECT_NV"("0x9547") + "glQueryResourceNV"(GLint, GLenum("queryType"), GLint("tagId"), GLuint("count"), address("buffer", "GLint *")) + } + file("QueryResourceTag", NV, "GL_NV_query_resource_tag") { + "glGenQueryResourceTagNV"(void, GLsizei("n"), address("tagIds", "GLint *")) + "glDeleteQueryResourceTagNV"(void, GLsizei("n"), address("tagIds", "const GLint *")) + "glQueryResourceTagNV"(void, GLint("tagId"), address("tagString", "const GLchar *")) + } + file("RegisterCombiners", NV, "GL_NV_register_combiners") { + "GL_REGISTER_COMBINERS_NV"("0x8522") + "GL_VARIABLE_A_NV"("0x8523") + "GL_VARIABLE_B_NV"("0x8524") + "GL_VARIABLE_C_NV"("0x8525") + "GL_VARIABLE_D_NV"("0x8526") + "GL_VARIABLE_E_NV"("0x8527") + "GL_VARIABLE_F_NV"("0x8528") + "GL_VARIABLE_G_NV"("0x8529") + "GL_CONSTANT_COLOR0_NV"("0x852A") + "GL_CONSTANT_COLOR1_NV"("0x852B") + "GL_SPARE0_NV"("0x852E") + "GL_SPARE1_NV"("0x852F") + "GL_DISCARD_NV"("0x8530") + "GL_E_TIMES_F_NV"("0x8531") + "GL_SPARE0_PLUS_SECONDARY_COLOR_NV"("0x8532") + "GL_UNSIGNED_IDENTITY_NV"("0x8536") + "GL_UNSIGNED_INVERT_NV"("0x8537") + "GL_EXPAND_NORMAL_NV"("0x8538") + "GL_EXPAND_NEGATE_NV"("0x8539") + "GL_HALF_BIAS_NORMAL_NV"("0x853A") + "GL_HALF_BIAS_NEGATE_NV"("0x853B") + "GL_SIGNED_IDENTITY_NV"("0x853C") + "GL_SIGNED_NEGATE_NV"("0x853D") + "GL_SCALE_BY_TWO_NV"("0x853E") + "GL_SCALE_BY_FOUR_NV"("0x853F") + "GL_SCALE_BY_ONE_HALF_NV"("0x8540") + "GL_BIAS_BY_NEGATIVE_ONE_HALF_NV"("0x8541") + "GL_COMBINER_INPUT_NV"("0x8542") + "GL_COMBINER_MAPPING_NV"("0x8543") + "GL_COMBINER_COMPONENT_USAGE_NV"("0x8544") + "GL_COMBINER_AB_DOT_PRODUCT_NV"("0x8545") + "GL_COMBINER_CD_DOT_PRODUCT_NV"("0x8546") + "GL_COMBINER_MUX_SUM_NV"("0x8547") + "GL_COMBINER_SCALE_NV"("0x8548") + "GL_COMBINER_BIAS_NV"("0x8549") + "GL_COMBINER_AB_OUTPUT_NV"("0x854A") + "GL_COMBINER_CD_OUTPUT_NV"("0x854B") + "GL_COMBINER_SUM_OUTPUT_NV"("0x854C") + "GL_MAX_GENERAL_COMBINERS_NV"("0x854D") + "GL_NUM_GENERAL_COMBINERS_NV"("0x854E") + "GL_COLOR_SUM_CLAMP_NV"("0x854F") + "GL_COMBINER0_NV"("0x8550") + "GL_COMBINER1_NV"("0x8551") + "GL_COMBINER2_NV"("0x8552") + "GL_COMBINER3_NV"("0x8553") + "GL_COMBINER4_NV"("0x8554") + "GL_COMBINER5_NV"("0x8555") + "GL_COMBINER6_NV"("0x8556") + "GL_COMBINER7_NV"("0x8557") + "glCombinerParameterfvNV"(void, GLenum("pname"), address("params", "const GLfloat *")) + "glCombinerParameterfNV"(void, GLenum("pname"), GLfloat("param")) + "glCombinerParameterivNV"(void, GLenum("pname"), address("params", "const GLint *")) + "glCombinerParameteriNV"(void, GLenum("pname"), GLint("param")) + "glCombinerInputNV"( + void, + GLenum("stage"), + GLenum("portion"), + GLenum("variable"), + GLenum("input"), + GLenum("mapping"), + GLenum("componentUsage") + ) + "glCombinerOutputNV"( + void, + GLenum("stage"), + GLenum("portion"), + GLenum("abOutput"), + GLenum("cdOutput"), + GLenum("sumOutput"), + GLenum("scale"), + GLenum("bias"), + GLboolean("abDotProduct"), + GLboolean("cdDotProduct"), + GLboolean("muxSum") + ) + "glFinalCombinerInputNV"(void, GLenum("variable"), GLenum("input"), GLenum("mapping"), GLenum("componentUsage")) + "glGetCombinerInputParameterfvNV"( + void, + GLenum("stage"), + GLenum("portion"), + GLenum("variable"), + GLenum("pname"), + address("params", "GLfloat *") + ) + "glGetCombinerInputParameterivNV"( + void, + GLenum("stage"), + GLenum("portion"), + GLenum("variable"), + GLenum("pname"), + address("params", "GLint *") + ) + "glGetCombinerOutputParameterfvNV"( + void, + GLenum("stage"), + GLenum("portion"), + GLenum("pname"), + address("params", "GLfloat *") + ) + "glGetCombinerOutputParameterivNV"( + void, + GLenum("stage"), + GLenum("portion"), + GLenum("pname"), + address("params", "GLint *") + ) + "glGetFinalCombinerInputParameterfvNV"( + void, + GLenum("variable"), + GLenum("pname"), + address("params", "GLfloat *") + ) + "glGetFinalCombinerInputParameterivNV"(void, GLenum("variable"), GLenum("pname"), address("params", "GLint *")) + } + file("RegisterCombiners2", NV, "GL_NV_register_combiners2") { + "GL_PER_STAGE_CONSTANTS_NV"("0x8535") + "glCombinerStageParameterfvNV"(void, GLenum("stage"), GLenum("pname"), address("params", "const GLfloat *")) + "glGetCombinerStageParameterfvNV"(void, GLenum("stage"), GLenum("pname"), address("params", "GLfloat *")) + } + file("RepresentativeFragmentTest", NV, "GL_NV_representative_fragment_test", "GL_REPRESENTATIVE_FRAGMENT_TEST_NV" to "0x937F") + file("RobustnessVideoMemoryPurge", NV, "GL_NV_robustness_video_memory_purge", "GL_PURGED_CONTEXT_RESET_NV" to "0x92BB") + file("SampleLocations", NV, "GL_NV_sample_locations") { + "GL_SAMPLE_LOCATION_SUBPIXEL_BITS_NV"("0x933D") + "GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_NV"("0x933E") + "GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_NV"("0x933F") + "GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_NV"("0x9340") + "GL_SAMPLE_LOCATION_NV"("0x8E50") + "GL_PROGRAMMABLE_SAMPLE_LOCATION_NV"("0x9341") + "GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_NV"("0x9342") + "GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_NV"("0x9343") + "glFramebufferSampleLocationsfvNV"( + void, + GLenum("target"), + GLuint("start"), + GLsizei("count"), + address("v", "const GLfloat *") + ) + "glNamedFramebufferSampleLocationsfvNV"( + void, + GLuint("framebuffer"), + GLuint("start"), + GLsizei("count"), + address("v", "const GLfloat *") + ) + "glResolveDepthValuesNV"(void) + } + file("ScissorExclusive", NV, "GL_NV_scissor_exclusive") { + "GL_SCISSOR_TEST_EXCLUSIVE_NV"("0x9555") + "GL_SCISSOR_BOX_EXCLUSIVE_NV"("0x9556") + "glScissorExclusiveNV"(void, GLint("x"), GLint("y"), GLsizei("width"), GLsizei("height")) + "glScissorExclusiveArrayvNV"(void, GLuint("first"), GLsizei("count"), address("v", "const GLint *")) + } + file("ShaderBufferLoad", NV, "GL_NV_shader_buffer_load") { + "GL_BUFFER_GPU_ADDRESS_NV"("0x8F1D") + "GL_GPU_ADDRESS_NV"("0x8F34") + "GL_MAX_SHADER_BUFFER_ADDRESS_NV"("0x8F35") + "glMakeBufferResidentNV"(void, GLenum("target"), GLenum("access")) + "glMakeBufferNonResidentNV"(void, GLenum("target")) + "glIsBufferResidentNV"(GLboolean, GLenum("target")) + "glMakeNamedBufferResidentNV"(void, GLuint("buffer"), GLenum("access")) + "glMakeNamedBufferNonResidentNV"(void, GLuint("buffer")) + "glIsNamedBufferResidentNV"(GLboolean, GLuint("buffer")) + "glGetBufferParameterui64vNV"(void, GLenum("target"), GLenum("pname"), address("params", "GLuint64EXT *")) + "glGetNamedBufferParameterui64vNV"(void, GLuint("buffer"), GLenum("pname"), address("params", "GLuint64EXT *")) + "glGetIntegerui64vNV"(void, GLenum("value"), address("result", "GLuint64EXT *")) + "glUniformui64NV"(void, GLint("location"), GLuint64EXT("value")) + "glUniformui64vNV"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint64EXT *")) + "glProgramUniformui64NV"(void, GLuint("program"), GLint("location"), GLuint64EXT("value")) + "glProgramUniformui64vNV"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint64EXT *") + ) + } + file("ShaderBufferStore", NV, "GL_NV_shader_buffer_store", "GL_SHADER_GLOBAL_ACCESS_BARRIER_BIT_NV" to "0x00000010") + file("ShaderSubgroupPartitioned", NV, "GL_NV_shader_subgroup_partitioned", "GL_SUBGROUP_FEATURE_PARTITIONED_BIT_NV" to "0x00000100") + file( + "ShaderThreadGroup", NV, "GL_NV_shader_thread_group", + "GL_WARP_SIZE_NV" to "0x9339", + "GL_WARPS_PER_SM_NV" to "0x933A", + "GL_SM_COUNT_NV" to "0x933B", + ) + file("ShadingRateImage", NV, "GL_NV_shading_rate_image") { + "GL_SHADING_RATE_IMAGE_NV"("0x9563") + "GL_SHADING_RATE_NO_INVOCATIONS_NV"("0x9564") + "GL_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV"("0x9565") + "GL_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV"("0x9566") + "GL_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV"("0x9567") + "GL_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV"("0x9568") + "GL_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV"("0x9569") + "GL_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV"("0x956A") + "GL_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV"("0x956B") + "GL_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV"("0x956C") + "GL_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV"("0x956D") + "GL_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV"("0x956E") + "GL_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV"("0x956F") + "GL_SHADING_RATE_IMAGE_BINDING_NV"("0x955B") + "GL_SHADING_RATE_IMAGE_TEXEL_WIDTH_NV"("0x955C") + "GL_SHADING_RATE_IMAGE_TEXEL_HEIGHT_NV"("0x955D") + "GL_SHADING_RATE_IMAGE_PALETTE_SIZE_NV"("0x955E") + "GL_MAX_COARSE_FRAGMENT_SAMPLES_NV"("0x955F") + "GL_SHADING_RATE_SAMPLE_ORDER_DEFAULT_NV"("0x95AE") + "GL_SHADING_RATE_SAMPLE_ORDER_PIXEL_MAJOR_NV"("0x95AF") + "GL_SHADING_RATE_SAMPLE_ORDER_SAMPLE_MAJOR_NV"("0x95B0") + "glBindShadingRateImageNV"(void, GLuint("texture")) + "glGetShadingRateImagePaletteNV"(void, GLuint("viewport"), GLuint("entry"), address("rate", "GLenum *")) + "glGetShadingRateSampleLocationivNV"( + void, + GLenum("rate"), + GLuint("samples"), + GLuint("index"), + address("location", "GLint *") + ) + "glShadingRateImageBarrierNV"(void, GLboolean("synchronize")) + "glShadingRateImagePaletteNV"( + void, + GLuint("viewport"), + GLuint("first"), + GLsizei("count"), + address("rates", "const GLenum *") + ) + "glShadingRateSampleOrderNV"(void, GLenum("order")) + "glShadingRateSampleOrderCustomNV"( + void, + GLenum("rate"), + GLuint("samples"), + address("locations", "const GLint *") + ) + } + file( + "TessellationProgram5", NV, "GL_NV_tessellation_program5", + "GL_MAX_PROGRAM_PATCH_ATTRIBS_NV" to "0x86D8", + "GL_TESS_CONTROL_PROGRAM_NV" to "0x891E", + "GL_TESS_EVALUATION_PROGRAM_NV" to "0x891F", + "GL_TESS_CONTROL_PROGRAM_PARAMETER_BUFFER_NV" to "0x8C74", + "GL_TESS_EVALUATION_PROGRAM_PARAMETER_BUFFER_NV" to "0x8C75" + ) + file( + "TexgenEmboss", NV, "GL_NV_texgen_emboss", + "GL_EMBOSS_LIGHT_NV" to "0x855D", + "GL_EMBOSS_CONSTANT_NV" to "0x855E", + "GL_EMBOSS_MAP_NV" to "0x855F" + ) + file( + "TexgenReflection", NV, "GL_NV_texgen_reflection", + "GL_NORMAL_MAP_NV" to "0x8511", + "GL_REFLECTION_MAP_NV" to "0x8512" + ) + file("TextureBarrier", NV, "GL_NV_texture_barrier") { + "glTextureBarrierNV"(void) + } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java index f1fe5d47..819a2286 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java @@ -124,15 +124,19 @@ public GLExtCaps(GLCapabilities caps) { glTransformPathNV, glPathParameterivNV, glPathParameteriNV, glPathParameterfvNV, glPathParameterfNV, glPathDashArrayNV, glPathStencilFuncNV, glPathStencilDepthOffsetNV, glStencilFillPathNV, glStencilStrokePathNV, glStencilFillPathInstancedNV, glStencilStrokePathInstancedNV, glPathCoverDepthFuncNV, glCoverFillPathNV, glCoverStrokePathNV, glCoverFillPathInstancedNV, glCoverStrokePathInstancedNV, glGetPathParameterivNV, glGetPathParameterfvNV, glGetPathCommandsNV, glGetPathCoordsNV, glGetPathDashArrayNV, glGetPathMetricsNV, glGetPathMetricRangeNV, glGetPathSpacingNV, glIsPointInFillPathNV, glIsPointInStrokePathNV, glGetPathLengthNV, glPointAlongPathNV, glMatrixLoad3x2fNV, glMatrixLoad3x3fNV, glMatrixLoadTranspose3x3fNV, glMatrixMult3x2fNV, glMatrixMult3x3fNV, glMatrixMultTranspose3x3fNV, glStencilThenCoverFillPathNV, glStencilThenCoverStrokePathNV, glStencilThenCoverFillPathInstancedNV, glStencilThenCoverStrokePathInstancedNV, glPathGlyphIndexRangeNV, glPathGlyphIndexArrayNV, glPathMemoryGlyphIndexArrayNV, glProgramPathFragmentInputGenNV, glGetProgramResourcefvNV, glPathColorGenNV, glPathTexGenNV, glPathFogGenNV, glGetPathColorGenivNV, - glGetPathColorGenfvNV, glGetPathTexGenivNV, glGetPathTexGenfvNV, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, glFogFuncSGIS, glGetFogFuncSGIS, glSampleMaskSGIS, glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, - glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, glTexSubImage4DSGIS, glTextureColorMaskSGIS, glGetTexFilterFuncSGIS, glTexFilterFuncSGIS, glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, - glFlushRasterSGIX, glFragmentColorMaterialSGIX, glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, glFragmentLightModelfSGIX, glFragmentLightModelfvSGIX, glFragmentLightModeliSGIX, glFragmentLightModelivSGIX, glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, - glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, glInstrumentsBufferSGIX, glPollInstrumentsSGIX, glReadInstrumentsSGIX, glStartInstrumentsSGIX, glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, - glListParameterivSGIX, glPixelTexGenSGIX, glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, glReferencePlaneSGIX, glSpriteParameterfSGIX, glSpriteParameterfvSGIX, glSpriteParameteriSGIX, glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, - glGetColorTableSGI, glGetColorTableParameterfvSGI, glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, - glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, - glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, - glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; + glGetPathColorGenfvNV, glGetPathTexGenivNV, glGetPathTexGenfvNV, glPixelDataRangeNV, glFlushPixelDataRangeNV, glPointParameteriNV, glPointParameterivNV, glPresentFrameKeyedNV, glPresentFrameDualFillNV, glGetVideoivNV, glGetVideouivNV, glGetVideoi64vNV, glGetVideoui64vNV, glPrimitiveRestartNV, glPrimitiveRestartIndexNV, glQueryResourceNV, + glGenQueryResourceTagNV, glDeleteQueryResourceTagNV, glQueryResourceTagNV, glCombinerParameterfvNV, glCombinerParameterfNV, glCombinerParameterivNV, glCombinerParameteriNV, glCombinerInputNV, glCombinerOutputNV, glFinalCombinerInputNV, glGetCombinerInputParameterfvNV, glGetCombinerInputParameterivNV, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterivNV, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterivNV, + glCombinerStageParameterfvNV, glGetCombinerStageParameterfvNV, glFramebufferSampleLocationsfvNV, glNamedFramebufferSampleLocationsfvNV, glResolveDepthValuesNV, glScissorExclusiveNV, glScissorExclusiveArrayvNV, glMakeBufferResidentNV, glMakeBufferNonResidentNV, glIsBufferResidentNV, glMakeNamedBufferResidentNV, glMakeNamedBufferNonResidentNV, glIsNamedBufferResidentNV, glGetBufferParameterui64vNV, glGetNamedBufferParameterui64vNV, glGetIntegerui64vNV, + glUniformui64NV, glUniformui64vNV, glProgramUniformui64NV, glProgramUniformui64vNV, glBindShadingRateImageNV, glGetShadingRateImagePaletteNV, glGetShadingRateSampleLocationivNV, glShadingRateImageBarrierNV, glShadingRateImagePaletteNV, glShadingRateSampleOrderNV, glShadingRateSampleOrderCustomNV, glTextureBarrierNV, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, + glFogFuncSGIS, glGetFogFuncSGIS, glSampleMaskSGIS, glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, glTexSubImage4DSGIS, + glTextureColorMaskSGIS, glGetTexFilterFuncSGIS, glTexFilterFuncSGIS, glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, glFlushRasterSGIX, glFragmentColorMaterialSGIX, glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, glFragmentLightModelfSGIX, + glFragmentLightModelfvSGIX, glFragmentLightModeliSGIX, glFragmentLightModelivSGIX, glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, glInstrumentsBufferSGIX, + glPollInstrumentsSGIX, glReadInstrumentsSGIX, glStartInstrumentsSGIX, glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, glListParameterivSGIX, glPixelTexGenSGIX, glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, glReferencePlaneSGIX, + glSpriteParameterfSGIX, glSpriteParameterfvSGIX, glSpriteParameteriSGIX, glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, glGetColorTableSGI, glGetColorTableParameterfvSGI, glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, + glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, + glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, + glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, + glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; void load(GLLoadFunc load) { GLARBES32Compatibility.load(this, load); @@ -264,6 +268,19 @@ void load(GLLoadFunc load) { GLNVOcculusionQuery.load(this, load); GLNVParameterBufferObject.load(this, load); GLNVPathRendering.load(this, load); + GLNVPixelDataRange.load(this, load); + GLNVPointSprite.load(this, load); + GLNVPresentVideo.load(this, load); + GLNVPrimitiveRestart.load(this, load); + GLNVQueryResource.load(this, load); + GLNVQueryResourceTag.load(this, load); + GLNVRegisterCombiners.load(this, load); + GLNVRegisterCombiners2.load(this, load); + GLNVSampleLocations.load(this, load); + GLNVScissorExclusive.load(this, load); + GLNVShaderBufferLoad.load(this, load); + GLNVShadingRateImage.load(this, load); + GLNVTextureBarrier.load(this, load); GLOVRMultiview.load(this, load); GLPGIMiscHints.load(this, load); GLSGISDetailTexture.load(this, load); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPixelDataRange.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPixelDataRange.java new file mode 100644 index 00000000..a706583a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPixelDataRange.java @@ -0,0 +1,57 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_pixel_data_range} + */ +public final class GLNVPixelDataRange { + public static final int GL_WRITE_PIXEL_DATA_RANGE_NV = 0x8878; + public static final int GL_READ_PIXEL_DATA_RANGE_NV = 0x8879; + public static final int GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV = 0x887A; + public static final int GL_READ_PIXEL_DATA_RANGE_LENGTH_NV = 0x887B; + public static final int GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV = 0x887C; + public static final int GL_READ_PIXEL_DATA_RANGE_POINTER_NV = 0x887D; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_pixel_data_range) return; + ext.glPixelDataRangeNV = load.invoke("glPixelDataRangeNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glFlushPixelDataRangeNV = load.invoke("glFlushPixelDataRangeNV", ofVoid(JAVA_INT)); + } + + public static void glPixelDataRangeNV(int target, int length, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glPixelDataRangeNV).invokeExact(target, length, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFlushPixelDataRangeNV(int target) { + final var ext = getExtCapabilities(); + try { + check(ext.glFlushPixelDataRangeNV).invokeExact(target); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPointSprite.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPointSprite.java new file mode 100644 index 00000000..df57ac2e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPointSprite.java @@ -0,0 +1,54 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_point_sprite} + */ +public final class GLNVPointSprite { + public static final int GL_POINT_SPRITE_NV = 0x8861; + public static final int GL_COORD_REPLACE_NV = 0x8862; + public static final int GL_POINT_SPRITE_R_MODE_NV = 0x8863; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_point_sprite) return; + ext.glPointParameteriNV = load.invoke("glPointParameteriNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glPointParameterivNV = load.invoke("glPointParameterivNV", ofVoid(JAVA_INT, ADDRESS)); + } + + public static void glPointParameteriNV(int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glPointParameteriNV).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPointParameterivNV(int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glPointParameterivNV).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPresentVideo.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPresentVideo.java new file mode 100644 index 00000000..82f63cdd --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPresentVideo.java @@ -0,0 +1,89 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_present_video} + */ +public final class GLNVPresentVideo { + public static final int GL_FRAME_NV = 0x8E26; + public static final int GL_FIELDS_NV = 0x8E27; + public static final int GL_CURRENT_TIME_NV = 0x8E28; + public static final int GL_NUM_FILL_STREAMS_NV = 0x8E29; + public static final int GL_PRESENT_TIME_NV = 0x8E2A; + public static final int GL_PRESENT_DURATION_NV = 0x8E2B; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_present_video) return; + ext.glPresentFrameKeyedNV = load.invoke("glPresentFrameKeyedNV", ofVoid(JAVA_INT, JAVA_LONG, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glPresentFrameDualFillNV = load.invoke("glPresentFrameDualFillNV", ofVoid(JAVA_INT, JAVA_LONG, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetVideoivNV = load.invoke("glGetVideoivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVideouivNV = load.invoke("glGetVideouivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVideoi64vNV = load.invoke("glGetVideoi64vNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVideoui64vNV = load.invoke("glGetVideoui64vNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glPresentFrameKeyedNV(int video_slot, long minPresentTime, int beginPresentTimeId, int presentDurationId, int type, int target0, int fill0, int key0, int target1, int fill1, int key1) { + final var ext = getExtCapabilities(); + try { + check(ext.glPresentFrameKeyedNV).invokeExact(video_slot, minPresentTime, beginPresentTimeId, presentDurationId, type, target0, fill0, key0, target1, fill1, key1); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPresentFrameDualFillNV(int video_slot, long minPresentTime, int beginPresentTimeId, int presentDurationId, int type, int target0, int fill0, int target1, int fill1, int target2, int fill2, int target3, int fill3) { + final var ext = getExtCapabilities(); + try { + check(ext.glPresentFrameDualFillNV).invokeExact(video_slot, minPresentTime, beginPresentTimeId, presentDurationId, type, target0, fill0, target1, fill1, target2, fill2, target3, fill3); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVideoivNV(int video_slot, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVideoivNV).invokeExact(video_slot, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVideouivNV(int video_slot, int pname, @NativeType("GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVideouivNV).invokeExact(video_slot, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVideoi64vNV(int video_slot, int pname, @NativeType("GLint64EXT *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVideoi64vNV).invokeExact(video_slot, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVideoui64vNV(int video_slot, int pname, @NativeType("GLuint64EXT *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVideoui64vNV).invokeExact(video_slot, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPrimitiveRestart.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPrimitiveRestart.java new file mode 100644 index 00000000..170f31db --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPrimitiveRestart.java @@ -0,0 +1,53 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_primitive_restart} + */ +public final class GLNVPrimitiveRestart { + public static final int GL_PRIMITIVE_RESTART_NV = 0x8558; + public static final int GL_PRIMITIVE_RESTART_INDEX_NV = 0x8559; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_primitive_restart) return; + ext.glPrimitiveRestartNV = load.invoke("glPrimitiveRestartNV", ofVoid()); + ext.glPrimitiveRestartIndexNV = load.invoke("glPrimitiveRestartIndexNV", ofVoid(JAVA_INT)); + } + + public static void glPrimitiveRestartNV() { + final var ext = getExtCapabilities(); + try { + check(ext.glPrimitiveRestartNV).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPrimitiveRestartIndexNV(int index) { + final var ext = getExtCapabilities(); + try { + check(ext.glPrimitiveRestartIndexNV).invokeExact(index); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPrimitiveShadingRate.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPrimitiveShadingRate.java new file mode 100644 index 00000000..9bc7af3c --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVPrimitiveShadingRate.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_primitive_shading_rate} + */ +public final class GLNVPrimitiveShadingRate { + public static final int GL_SHADING_RATE_IMAGE_PER_PRIMITIVE_NV = 0x95B1; + public static final int GL_SHADING_RATE_IMAGE_PALETTE_COUNT_NV = 0x95B2; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVQueryResource.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVQueryResource.java new file mode 100644 index 00000000..ced4cffb --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVQueryResource.java @@ -0,0 +1,50 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_query_resource} + */ +public final class GLNVQueryResource { + public static final int GL_QUERY_RESOURCE_TYPE_VIDMEM_ALLOC_NV = 0x9540; + public static final int GL_QUERY_RESOURCE_MEMTYPE_VIDMEM_NV = 0x9542; + public static final int GL_QUERY_RESOURCE_SYS_RESERVED_NV = 0x9544; + public static final int GL_QUERY_RESOURCE_TEXTURE_NV = 0x9545; + public static final int GL_QUERY_RESOURCE_RENDERBUFFER_NV = 0x9546; + public static final int GL_QUERY_RESOURCE_BUFFEROBJECT_NV = 0x9547; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_query_resource) return; + ext.glQueryResourceNV = load.invoke("glQueryResourceNV", of(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static int glQueryResourceNV(int queryType, int tagId, int count, @NativeType("GLint *") MemorySegment buffer) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glQueryResourceNV).invokeExact(queryType, tagId, count, buffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVQueryResourceTag.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVQueryResourceTag.java new file mode 100644 index 00000000..3d5b7348 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVQueryResourceTag.java @@ -0,0 +1,59 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_query_resource_tag} + */ +public final class GLNVQueryResourceTag { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_query_resource_tag) return; + ext.glGenQueryResourceTagNV = load.invoke("glGenQueryResourceTagNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glDeleteQueryResourceTagNV = load.invoke("glDeleteQueryResourceTagNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glQueryResourceTagNV = load.invoke("glQueryResourceTagNV", ofVoid(JAVA_INT, ADDRESS)); + } + + public static void glGenQueryResourceTagNV(int n, @NativeType("GLint *") MemorySegment tagIds) { + final var ext = getExtCapabilities(); + try { + check(ext.glGenQueryResourceTagNV).invokeExact(n, tagIds); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeleteQueryResourceTagNV(int n, @NativeType("const GLint *") MemorySegment tagIds) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeleteQueryResourceTagNV).invokeExact(n, tagIds); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glQueryResourceTagNV(int tagId, @NativeType("const GLchar *") MemorySegment tagString) { + final var ext = getExtCapabilities(); + try { + check(ext.glQueryResourceTagNV).invokeExact(tagId, tagString); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVRegisterCombiners.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVRegisterCombiners.java new file mode 100644 index 00000000..6a407815 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVRegisterCombiners.java @@ -0,0 +1,188 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_register_combiners} + */ +public final class GLNVRegisterCombiners { + public static final int GL_REGISTER_COMBINERS_NV = 0x8522; + public static final int GL_VARIABLE_A_NV = 0x8523; + public static final int GL_VARIABLE_B_NV = 0x8524; + public static final int GL_VARIABLE_C_NV = 0x8525; + public static final int GL_VARIABLE_D_NV = 0x8526; + public static final int GL_VARIABLE_E_NV = 0x8527; + public static final int GL_VARIABLE_F_NV = 0x8528; + public static final int GL_VARIABLE_G_NV = 0x8529; + public static final int GL_CONSTANT_COLOR0_NV = 0x852A; + public static final int GL_CONSTANT_COLOR1_NV = 0x852B; + public static final int GL_SPARE0_NV = 0x852E; + public static final int GL_SPARE1_NV = 0x852F; + public static final int GL_DISCARD_NV = 0x8530; + public static final int GL_E_TIMES_F_NV = 0x8531; + public static final int GL_SPARE0_PLUS_SECONDARY_COLOR_NV = 0x8532; + public static final int GL_UNSIGNED_IDENTITY_NV = 0x8536; + public static final int GL_UNSIGNED_INVERT_NV = 0x8537; + public static final int GL_EXPAND_NORMAL_NV = 0x8538; + public static final int GL_EXPAND_NEGATE_NV = 0x8539; + public static final int GL_HALF_BIAS_NORMAL_NV = 0x853A; + public static final int GL_HALF_BIAS_NEGATE_NV = 0x853B; + public static final int GL_SIGNED_IDENTITY_NV = 0x853C; + public static final int GL_SIGNED_NEGATE_NV = 0x853D; + public static final int GL_SCALE_BY_TWO_NV = 0x853E; + public static final int GL_SCALE_BY_FOUR_NV = 0x853F; + public static final int GL_SCALE_BY_ONE_HALF_NV = 0x8540; + public static final int GL_BIAS_BY_NEGATIVE_ONE_HALF_NV = 0x8541; + public static final int GL_COMBINER_INPUT_NV = 0x8542; + public static final int GL_COMBINER_MAPPING_NV = 0x8543; + public static final int GL_COMBINER_COMPONENT_USAGE_NV = 0x8544; + public static final int GL_COMBINER_AB_DOT_PRODUCT_NV = 0x8545; + public static final int GL_COMBINER_CD_DOT_PRODUCT_NV = 0x8546; + public static final int GL_COMBINER_MUX_SUM_NV = 0x8547; + public static final int GL_COMBINER_SCALE_NV = 0x8548; + public static final int GL_COMBINER_BIAS_NV = 0x8549; + public static final int GL_COMBINER_AB_OUTPUT_NV = 0x854A; + public static final int GL_COMBINER_CD_OUTPUT_NV = 0x854B; + public static final int GL_COMBINER_SUM_OUTPUT_NV = 0x854C; + public static final int GL_MAX_GENERAL_COMBINERS_NV = 0x854D; + public static final int GL_NUM_GENERAL_COMBINERS_NV = 0x854E; + public static final int GL_COLOR_SUM_CLAMP_NV = 0x854F; + public static final int GL_COMBINER0_NV = 0x8550; + public static final int GL_COMBINER1_NV = 0x8551; + public static final int GL_COMBINER2_NV = 0x8552; + public static final int GL_COMBINER3_NV = 0x8553; + public static final int GL_COMBINER4_NV = 0x8554; + public static final int GL_COMBINER5_NV = 0x8555; + public static final int GL_COMBINER6_NV = 0x8556; + public static final int GL_COMBINER7_NV = 0x8557; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_register_combiners) return; + ext.glCombinerParameterfvNV = load.invoke("glCombinerParameterfvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glCombinerParameterfNV = load.invoke("glCombinerParameterfNV", ofVoid(JAVA_INT, JAVA_FLOAT)); + ext.glCombinerParameterivNV = load.invoke("glCombinerParameterivNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glCombinerParameteriNV = load.invoke("glCombinerParameteriNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glCombinerInputNV = load.invoke("glCombinerInputNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glCombinerOutputNV = load.invoke("glCombinerOutputNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE)); + ext.glFinalCombinerInputNV = load.invoke("glFinalCombinerInputNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetCombinerInputParameterfvNV = load.invoke("glGetCombinerInputParameterfvNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetCombinerInputParameterivNV = load.invoke("glGetCombinerInputParameterivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetCombinerOutputParameterfvNV = load.invoke("glGetCombinerOutputParameterfvNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetCombinerOutputParameterivNV = load.invoke("glGetCombinerOutputParameterivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetFinalCombinerInputParameterfvNV = load.invoke("glGetFinalCombinerInputParameterfvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetFinalCombinerInputParameterivNV = load.invoke("glGetFinalCombinerInputParameterivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glCombinerParameterfvNV(int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glCombinerParameterfvNV).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCombinerParameterfNV(int pname, float param) { + final var ext = getExtCapabilities(); + try { + check(ext.glCombinerParameterfNV).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCombinerParameterivNV(int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glCombinerParameterivNV).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCombinerParameteriNV(int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glCombinerParameteriNV).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCombinerInputNV(int stage, int portion, int variable, int input, int mapping, int componentUsage) { + final var ext = getExtCapabilities(); + try { + check(ext.glCombinerInputNV).invokeExact(stage, portion, variable, input, mapping, componentUsage); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCombinerOutputNV(int stage, int portion, int abOutput, int cdOutput, int sumOutput, int scale, int bias, boolean abDotProduct, boolean cdDotProduct, boolean muxSum) { + final var ext = getExtCapabilities(); + try { + check(ext.glCombinerOutputNV).invokeExact(stage, portion, abOutput, cdOutput, sumOutput, scale, bias, abDotProduct, cdDotProduct, muxSum); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFinalCombinerInputNV(int variable, int input, int mapping, int componentUsage) { + final var ext = getExtCapabilities(); + try { + check(ext.glFinalCombinerInputNV).invokeExact(variable, input, mapping, componentUsage); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetCombinerInputParameterfvNV(int stage, int portion, int variable, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetCombinerInputParameterfvNV).invokeExact(stage, portion, variable, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetCombinerInputParameterivNV(int stage, int portion, int variable, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetCombinerInputParameterivNV).invokeExact(stage, portion, variable, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetCombinerOutputParameterfvNV(int stage, int portion, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetCombinerOutputParameterfvNV).invokeExact(stage, portion, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetCombinerOutputParameterivNV(int stage, int portion, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetCombinerOutputParameterivNV).invokeExact(stage, portion, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetFinalCombinerInputParameterfvNV(int variable, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetFinalCombinerInputParameterfvNV).invokeExact(variable, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetFinalCombinerInputParameterivNV(int variable, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetFinalCombinerInputParameterivNV).invokeExact(variable, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVRegisterCombiners2.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVRegisterCombiners2.java new file mode 100644 index 00000000..3b2add9c --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVRegisterCombiners2.java @@ -0,0 +1,52 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_register_combiners2} + */ +public final class GLNVRegisterCombiners2 { + public static final int GL_PER_STAGE_CONSTANTS_NV = 0x8535; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_register_combiners2) return; + ext.glCombinerStageParameterfvNV = load.invoke("glCombinerStageParameterfvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetCombinerStageParameterfvNV = load.invoke("glGetCombinerStageParameterfvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glCombinerStageParameterfvNV(int stage, int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glCombinerStageParameterfvNV).invokeExact(stage, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetCombinerStageParameterfvNV(int stage, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetCombinerStageParameterfvNV).invokeExact(stage, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVRepresentativeFragmentTest.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVRepresentativeFragmentTest.java new file mode 100644 index 00000000..b951deb0 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVRepresentativeFragmentTest.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_representative_fragment_test} + */ +public final class GLNVRepresentativeFragmentTest { + public static final int GL_REPRESENTATIVE_FRAGMENT_TEST_NV = 0x937F; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVRobustnessVideoMemoryPurge.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVRobustnessVideoMemoryPurge.java new file mode 100644 index 00000000..d8cfd7b5 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVRobustnessVideoMemoryPurge.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_robustness_video_memory_purge} + */ +public final class GLNVRobustnessVideoMemoryPurge { + public static final int GL_PURGED_CONTEXT_RESET_NV = 0x92BB; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVSampleLocations.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVSampleLocations.java new file mode 100644 index 00000000..9edb09fe --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVSampleLocations.java @@ -0,0 +1,67 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_sample_locations} + */ +public final class GLNVSampleLocations { + public static final int GL_SAMPLE_LOCATION_SUBPIXEL_BITS_NV = 0x933D; + public static final int GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_NV = 0x933E; + public static final int GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_NV = 0x933F; + public static final int GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_NV = 0x9340; + public static final int GL_SAMPLE_LOCATION_NV = 0x8E50; + public static final int GL_PROGRAMMABLE_SAMPLE_LOCATION_NV = 0x9341; + public static final int GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_NV = 0x9342; + public static final int GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_NV = 0x9343; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_sample_locations) return; + ext.glFramebufferSampleLocationsfvNV = load.invoke("glFramebufferSampleLocationsfvNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glNamedFramebufferSampleLocationsfvNV = load.invoke("glNamedFramebufferSampleLocationsfvNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glResolveDepthValuesNV = load.invoke("glResolveDepthValuesNV", ofVoid()); + } + + public static void glFramebufferSampleLocationsfvNV(int target, int start, int count, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glFramebufferSampleLocationsfvNV).invokeExact(target, start, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedFramebufferSampleLocationsfvNV(int framebuffer, int start, int count, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedFramebufferSampleLocationsfvNV).invokeExact(framebuffer, start, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glResolveDepthValuesNV() { + final var ext = getExtCapabilities(); + try { + check(ext.glResolveDepthValuesNV).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVScissorExclusive.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVScissorExclusive.java new file mode 100644 index 00000000..f3688775 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVScissorExclusive.java @@ -0,0 +1,53 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_scissor_exclusive} + */ +public final class GLNVScissorExclusive { + public static final int GL_SCISSOR_TEST_EXCLUSIVE_NV = 0x9555; + public static final int GL_SCISSOR_BOX_EXCLUSIVE_NV = 0x9556; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_scissor_exclusive) return; + ext.glScissorExclusiveNV = load.invoke("glScissorExclusiveNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glScissorExclusiveArrayvNV = load.invoke("glScissorExclusiveArrayvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glScissorExclusiveNV(int x, int y, int width, int height) { + final var ext = getExtCapabilities(); + try { + check(ext.glScissorExclusiveNV).invokeExact(x, y, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glScissorExclusiveArrayvNV(int first, int count, @NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glScissorExclusiveArrayvNV).invokeExact(first, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShaderBufferLoad.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShaderBufferLoad.java new file mode 100644 index 00000000..3983228f --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShaderBufferLoad.java @@ -0,0 +1,144 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_shader_buffer_load} + */ +public final class GLNVShaderBufferLoad { + public static final int GL_BUFFER_GPU_ADDRESS_NV = 0x8F1D; + public static final int GL_GPU_ADDRESS_NV = 0x8F34; + public static final int GL_MAX_SHADER_BUFFER_ADDRESS_NV = 0x8F35; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_shader_buffer_load) return; + ext.glMakeBufferResidentNV = load.invoke("glMakeBufferResidentNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glMakeBufferNonResidentNV = load.invoke("glMakeBufferNonResidentNV", ofVoid(JAVA_INT)); + ext.glIsBufferResidentNV = load.invoke("glIsBufferResidentNV", of(JAVA_BYTE, JAVA_INT)); + ext.glMakeNamedBufferResidentNV = load.invoke("glMakeNamedBufferResidentNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glMakeNamedBufferNonResidentNV = load.invoke("glMakeNamedBufferNonResidentNV", ofVoid(JAVA_INT)); + ext.glIsNamedBufferResidentNV = load.invoke("glIsNamedBufferResidentNV", of(JAVA_BYTE, JAVA_INT)); + ext.glGetBufferParameterui64vNV = load.invoke("glGetBufferParameterui64vNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetNamedBufferParameterui64vNV = load.invoke("glGetNamedBufferParameterui64vNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetIntegerui64vNV = load.invoke("glGetIntegerui64vNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glUniformui64NV = load.invoke("glUniformui64NV", ofVoid(JAVA_INT, JAVA_LONG)); + ext.glUniformui64vNV = load.invoke("glUniformui64vNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniformui64NV = load.invoke("glProgramUniformui64NV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glProgramUniformui64vNV = load.invoke("glProgramUniformui64vNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glMakeBufferResidentNV(int target, int access) { + final var ext = getExtCapabilities(); + try { + check(ext.glMakeBufferResidentNV).invokeExact(target, access); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMakeBufferNonResidentNV(int target) { + final var ext = getExtCapabilities(); + try { + check(ext.glMakeBufferNonResidentNV).invokeExact(target); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsBufferResidentNV(int target) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsBufferResidentNV).invokeExact(target); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMakeNamedBufferResidentNV(int buffer, int access) { + final var ext = getExtCapabilities(); + try { + check(ext.glMakeNamedBufferResidentNV).invokeExact(buffer, access); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMakeNamedBufferNonResidentNV(int buffer) { + final var ext = getExtCapabilities(); + try { + check(ext.glMakeNamedBufferNonResidentNV).invokeExact(buffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsNamedBufferResidentNV(int buffer) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsNamedBufferResidentNV).invokeExact(buffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetBufferParameterui64vNV(int target, int pname, @NativeType("GLuint64EXT *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetBufferParameterui64vNV).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetNamedBufferParameterui64vNV(int buffer, int pname, @NativeType("GLuint64EXT *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetNamedBufferParameterui64vNV).invokeExact(buffer, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetIntegerui64vNV(int value, @NativeType("GLuint64EXT *") MemorySegment result) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetIntegerui64vNV).invokeExact(value, result); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniformui64NV(int location, long value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniformui64NV).invokeExact(location, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniformui64vNV(int location, int count, @NativeType("const GLuint64EXT *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniformui64vNV).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformui64NV(int program, int location, long value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformui64NV).invokeExact(program, location, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformui64vNV(int program, int location, int count, @NativeType("const GLuint64EXT *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformui64vNV).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShaderBufferStore.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShaderBufferStore.java new file mode 100644 index 00000000..749f3776 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShaderBufferStore.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_shader_buffer_store} + */ +public final class GLNVShaderBufferStore { + public static final int GL_SHADER_GLOBAL_ACCESS_BARRIER_BIT_NV = 0x00000010; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShaderSubgroupPartitioned.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShaderSubgroupPartitioned.java new file mode 100644 index 00000000..89e25d92 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShaderSubgroupPartitioned.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_shader_subgroup_partitioned} + */ +public final class GLNVShaderSubgroupPartitioned { + public static final int GL_SUBGROUP_FEATURE_PARTITIONED_BIT_NV = 0x00000100; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShaderThreadGroup.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShaderThreadGroup.java new file mode 100644 index 00000000..98bfbf57 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShaderThreadGroup.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_shader_thread_group} + */ +public final class GLNVShaderThreadGroup { + public static final int GL_WARP_SIZE_NV = 0x9339; + public static final int GL_WARPS_PER_SM_NV = 0x933A; + public static final int GL_SM_COUNT_NV = 0x933B; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShadingRateImage.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShadingRateImage.java new file mode 100644 index 00000000..5dd4a6ce --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVShadingRateImage.java @@ -0,0 +1,112 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_shading_rate_image} + */ +public final class GLNVShadingRateImage { + public static final int GL_SHADING_RATE_IMAGE_NV = 0x9563; + public static final int GL_SHADING_RATE_NO_INVOCATIONS_NV = 0x9564; + public static final int GL_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV = 0x9565; + public static final int GL_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV = 0x9566; + public static final int GL_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV = 0x9567; + public static final int GL_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV = 0x9568; + public static final int GL_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV = 0x9569; + public static final int GL_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV = 0x956A; + public static final int GL_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV = 0x956B; + public static final int GL_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV = 0x956C; + public static final int GL_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV = 0x956D; + public static final int GL_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV = 0x956E; + public static final int GL_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV = 0x956F; + public static final int GL_SHADING_RATE_IMAGE_BINDING_NV = 0x955B; + public static final int GL_SHADING_RATE_IMAGE_TEXEL_WIDTH_NV = 0x955C; + public static final int GL_SHADING_RATE_IMAGE_TEXEL_HEIGHT_NV = 0x955D; + public static final int GL_SHADING_RATE_IMAGE_PALETTE_SIZE_NV = 0x955E; + public static final int GL_MAX_COARSE_FRAGMENT_SAMPLES_NV = 0x955F; + public static final int GL_SHADING_RATE_SAMPLE_ORDER_DEFAULT_NV = 0x95AE; + public static final int GL_SHADING_RATE_SAMPLE_ORDER_PIXEL_MAJOR_NV = 0x95AF; + public static final int GL_SHADING_RATE_SAMPLE_ORDER_SAMPLE_MAJOR_NV = 0x95B0; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_shading_rate_image) return; + ext.glBindShadingRateImageNV = load.invoke("glBindShadingRateImageNV", ofVoid(JAVA_INT)); + ext.glGetShadingRateImagePaletteNV = load.invoke("glGetShadingRateImagePaletteNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetShadingRateSampleLocationivNV = load.invoke("glGetShadingRateSampleLocationivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glShadingRateImageBarrierNV = load.invoke("glShadingRateImageBarrierNV", ofVoid(JAVA_BYTE)); + ext.glShadingRateImagePaletteNV = load.invoke("glShadingRateImagePaletteNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glShadingRateSampleOrderNV = load.invoke("glShadingRateSampleOrderNV", ofVoid(JAVA_INT)); + ext.glShadingRateSampleOrderCustomNV = load.invoke("glShadingRateSampleOrderCustomNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glBindShadingRateImageNV(int texture) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindShadingRateImageNV).invokeExact(texture); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetShadingRateImagePaletteNV(int viewport, int entry, @NativeType("GLenum *") MemorySegment rate) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetShadingRateImagePaletteNV).invokeExact(viewport, entry, rate); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetShadingRateSampleLocationivNV(int rate, int samples, int index, @NativeType("GLint *") MemorySegment location) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetShadingRateSampleLocationivNV).invokeExact(rate, samples, index, location); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glShadingRateImageBarrierNV(boolean synchronize) { + final var ext = getExtCapabilities(); + try { + check(ext.glShadingRateImageBarrierNV).invokeExact(synchronize); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glShadingRateImagePaletteNV(int viewport, int first, int count, @NativeType("const GLenum *") MemorySegment rates) { + final var ext = getExtCapabilities(); + try { + check(ext.glShadingRateImagePaletteNV).invokeExact(viewport, first, count, rates); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glShadingRateSampleOrderNV(int order) { + final var ext = getExtCapabilities(); + try { + check(ext.glShadingRateSampleOrderNV).invokeExact(order); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glShadingRateSampleOrderCustomNV(int rate, int samples, @NativeType("const GLint *") MemorySegment locations) { + final var ext = getExtCapabilities(); + try { + check(ext.glShadingRateSampleOrderCustomNV).invokeExact(rate, samples, locations); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTessellationProgram5.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTessellationProgram5.java new file mode 100644 index 00000000..47bb0870 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTessellationProgram5.java @@ -0,0 +1,36 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_tessellation_program5} + */ +public final class GLNVTessellationProgram5 { + public static final int GL_MAX_PROGRAM_PATCH_ATTRIBS_NV = 0x86D8; + public static final int GL_TESS_CONTROL_PROGRAM_NV = 0x891E; + public static final int GL_TESS_EVALUATION_PROGRAM_NV = 0x891F; + public static final int GL_TESS_CONTROL_PROGRAM_PARAMETER_BUFFER_NV = 0x8C74; + public static final int GL_TESS_EVALUATION_PROGRAM_PARAMETER_BUFFER_NV = 0x8C75; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTexgenEmboss.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTexgenEmboss.java new file mode 100644 index 00000000..c43382bb --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTexgenEmboss.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_texgen_emboss} + */ +public final class GLNVTexgenEmboss { + public static final int GL_EMBOSS_LIGHT_NV = 0x855D; + public static final int GL_EMBOSS_CONSTANT_NV = 0x855E; + public static final int GL_EMBOSS_MAP_NV = 0x855F; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTexgenReflection.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTexgenReflection.java new file mode 100644 index 00000000..7b091106 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTexgenReflection.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_texgen_reflection} + */ +public final class GLNVTexgenReflection { + public static final int GL_NORMAL_MAP_NV = 0x8511; + public static final int GL_REFLECTION_MAP_NV = 0x8512; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureBarrier.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureBarrier.java new file mode 100644 index 00000000..8670511c --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureBarrier.java @@ -0,0 +1,43 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_texture_barrier} + */ +public final class GLNVTextureBarrier { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_texture_barrier) return; + ext.glTextureBarrierNV = load.invoke("glTextureBarrierNV", ofVoid()); + } + + public static void glTextureBarrierNV() { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureBarrierNV).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} From f927dbdcee9c53494c6bf3bdf82b3449e4ddb0c8 Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Sat, 2 Dec 2023 10:01:44 +0800 Subject: [PATCH 15/20] Update extensions --- build.gradle.kts | 3 +- gradle.properties | 1 + modules/overrungl.opengl/build.gradle.kts | 3 +- .../generator/kotlin/overrungl/opengl/GLNV.kt | 688 ++++++++++++++++++ .../overrungl/opengl/OpenGLGenerator.kt | 1 + .../main/java/overrungl/opengl/GLExtCaps.java | 41 +- .../main/java/overrungl/opengl/GLLoader.java | 14 +- .../opengl/ext/nv/GLNVTextureEnvCombine4.java | 36 + .../ext/nv/GLNVTextureExpandNormal.java | 32 + .../opengl/ext/nv/GLNVTextureMultisample.java | 85 +++ .../opengl/ext/nv/GLNVTextureRectangle.java | 35 + .../opengl/ext/nv/GLNVTextureShader.java | 104 +++ .../opengl/ext/nv/GLNVTextureShader2.java | 32 + .../opengl/ext/nv/GLNVTextureShader3.java | 48 ++ .../opengl/ext/nv/GLNVTimelineSemaphore.java | 64 ++ .../opengl/ext/nv/GLNVTransformFeedback.java | 163 +++++ .../opengl/ext/nv/GLNVTransformFeedback2.java | 96 +++ .../nv/GLNVUniformBufferUnifiedMemory.java | 34 + .../opengl/ext/nv/GLNVVDPAUInterop.java | 122 ++++ .../opengl/ext/nv/GLNVVDPAUInterop2.java | 44 ++ .../opengl/ext/nv/GLNVVertexArrayRange.java | 56 ++ .../opengl/ext/nv/GLNVVertexArrayRange2.java | 32 + .../ext/nv/GLNVVertexAttribInteger64bit.java | 187 +++++ .../ext/nv/GLNVVertexBufferUnifiedMemory.java | 156 ++++ .../opengl/ext/nv/GLNVVertexProgram.java | 632 ++++++++++++++++ .../opengl/ext/nv/GLNVVertexProgram4.java | 32 + .../opengl/ext/nv/GLNVVideoCapture.java | 161 ++++ .../opengl/ext/nv/GLNVViewportSwizzle.java | 55 ++ 28 files changed, 2944 insertions(+), 13 deletions(-) create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureEnvCombine4.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureExpandNormal.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureMultisample.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureRectangle.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureShader.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureShader2.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureShader3.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTimelineSemaphore.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTransformFeedback.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTransformFeedback2.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVUniformBufferUnifiedMemory.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVDPAUInterop.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVDPAUInterop2.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexArrayRange.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexArrayRange2.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexAttribInteger64bit.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexBufferUnifiedMemory.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexProgram.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexProgram4.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVideoCapture.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVViewportSwizzle.java diff --git a/build.gradle.kts b/build.gradle.kts index 8122b7e3..f6afbbbe 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -24,6 +24,7 @@ val developers: String by project val jdkVersion: String by rootProject val jdkEnablePreview: String by rootProject val jdkEarlyAccessDoc: String? by rootProject +val kotlinTargetJdkVersion: String by rootProject val targetJavaVersion = jdkVersion.toInt() @@ -155,7 +156,7 @@ subprojects { } tasks.withType { - kotlinOptions { jvmTarget = "20" } + kotlinOptions { jvmTarget = kotlinTargetJdkVersion } } tasks.withType { diff --git a/gradle.properties b/gradle.properties index 9ff50500..480434e8 100644 --- a/gradle.properties +++ b/gradle.properties @@ -15,5 +15,6 @@ orgUrl=https://over-run.github.io/ jdkVersion=21 jdkEnablePreview=true #jdkEarlyAccessDoc=jdk22 +kotlinTargetJdkVersion=21 projModules=core, glfw, nfd, joml, opengl, stb diff --git a/modules/overrungl.opengl/build.gradle.kts b/modules/overrungl.opengl/build.gradle.kts index b65b0a4a..e57ac47c 100644 --- a/modules/overrungl.opengl/build.gradle.kts +++ b/modules/overrungl.opengl/build.gradle.kts @@ -1,5 +1,6 @@ val jdkVersion: String by rootProject val jdkEnablePreview: String by rootProject +val kotlinTargetJdkVersion: String by rootProject sourceSets { create("generator") @@ -7,7 +8,7 @@ sourceSets { tasks.named("compileGeneratorJava") { javaCompiler.set(javaToolchains.compilerFor { - targetCompatibility = "20" + targetCompatibility = kotlinTargetJdkVersion languageVersion.set(JavaLanguageVersion.of(jdkVersion)) }) } diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLNV.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLNV.kt index c3938ce8..7b7e5441 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLNV.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLNV.kt @@ -1966,4 +1966,692 @@ fun nv() { file("TextureBarrier", NV, "GL_NV_texture_barrier") { "glTextureBarrierNV"(void) } + file( + "TextureEnvCombine4", NV, "GL_NV_texture_env_combine4", + "GL_COMBINE4_NV" to "0x8503", + "GL_SOURCE3_RGB_NV" to "0x8583", + "GL_SOURCE3_ALPHA_NV" to "0x858B", + "GL_OPERAND3_RGB_NV" to "0x8593", + "GL_OPERAND3_ALPHA_NV" to "0x859B" + ) + file("TextureExpandNormal", NV, "GL_NV_texture_expand_normal", "GL_TEXTURE_UNSIGNED_REMAP_MODE_NV" to "0x888F") + file("TextureMultisample", NV, "GL_NV_texture_multisample") { + "GL_TEXTURE_COVERAGE_SAMPLES_NV" ("0x9045") + "GL_TEXTURE_COLOR_SAMPLES_NV" ("0x9046") + "glTexImage2DMultisampleCoverageNV" (void, GLenum ("target"), GLsizei ("coverageSamples"), GLsizei ("colorSamples"), GLint ("internalFormat"), GLsizei ("width"), GLsizei ("height"), GLboolean ("fixedSampleLocations")) + "glTexImage3DMultisampleCoverageNV" (void, GLenum ("target"), GLsizei ("coverageSamples"), GLsizei ("colorSamples"), GLint ("internalFormat"), GLsizei ("width"), GLsizei ("height"), GLsizei ("depth"), GLboolean ("fixedSampleLocations")) + "glTextureImage2DMultisampleNV" (void, GLuint ("texture"), GLenum ("target"), GLsizei ("samples"), GLint ("internalFormat"), GLsizei ("width"), GLsizei ("height"), GLboolean ("fixedSampleLocations")) + "glTextureImage3DMultisampleNV" (void, GLuint ("texture"), GLenum ("target"), GLsizei ("samples"), GLint ("internalFormat"), GLsizei ("width"), GLsizei ("height"), GLsizei ("depth"), GLboolean ("fixedSampleLocations")) + "glTextureImage2DMultisampleCoverageNV" (void, GLuint ("texture"), GLenum ("target"), GLsizei ("coverageSamples"), GLsizei ("colorSamples"), GLint ("internalFormat"), GLsizei ("width"), GLsizei ("height"), GLboolean ("fixedSampleLocations")) + "glTextureImage3DMultisampleCoverageNV" (void, GLuint ("texture"), GLenum ("target"), GLsizei ("coverageSamples"), GLsizei ("colorSamples"), GLint ("internalFormat"), GLsizei ("width"), GLsizei ("height"), GLsizei ("depth"), GLboolean ("fixedSampleLocations")) + } + file( + "TextureRectangle", NV, "GL_NV_texture_rectangle", + "GL_TEXTURE_RECTANGLE_NV" to "0x84F5", + "GL_TEXTURE_BINDING_RECTANGLE_NV" to "0x84F6", + "GL_PROXY_TEXTURE_RECTANGLE_NV" to "0x84F7", + "GL_MAX_RECTANGLE_TEXTURE_SIZE_NV" to "0x84F8" + ) + file( + "TextureShader", NV, "GL_NV_texture_shader", + "GL_OFFSET_TEXTURE_RECTANGLE_NV" to "0x864C", + "GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV" to "0x864D", + "GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV" to "0x864E", + "GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV" to "0x86D9", + "GL_UNSIGNED_INT_S8_S8_8_8_NV" to "0x86DA", + "GL_UNSIGNED_INT_8_8_S8_S8_REV_NV" to "0x86DB", + "GL_DSDT_MAG_INTENSITY_NV" to "0x86DC", + "GL_SHADER_CONSISTENT_NV" to "0x86DD", + "GL_TEXTURE_SHADER_NV" to "0x86DE", + "GL_SHADER_OPERATION_NV" to "0x86DF", + "GL_CULL_MODES_NV" to "0x86E0", + "GL_OFFSET_TEXTURE_MATRIX_NV" to "0x86E1", + "GL_OFFSET_TEXTURE_SCALE_NV" to "0x86E2", + "GL_OFFSET_TEXTURE_BIAS_NV" to "0x86E3", + "GL_OFFSET_TEXTURE_2D_MATRIX_NV" to "0x86E1", + "GL_OFFSET_TEXTURE_2D_SCALE_NV" to "0x86E2", + "GL_OFFSET_TEXTURE_2D_BIAS_NV" to "0x86E3", + "GL_PREVIOUS_TEXTURE_INPUT_NV" to "0x86E4", + "GL_CONST_EYE_NV" to "0x86E5", + "GL_PASS_THROUGH_NV" to "0x86E6", + "GL_CULL_FRAGMENT_NV" to "0x86E7", + "GL_OFFSET_TEXTURE_2D_NV" to "0x86E8", + "GL_DEPENDENT_AR_TEXTURE_2D_NV" to "0x86E9", + "GL_DEPENDENT_GB_TEXTURE_2D_NV" to "0x86EA", + "GL_DOT_PRODUCT_NV" to "0x86EC", + "GL_DOT_PRODUCT_DEPTH_REPLACE_NV" to "0x86ED", + "GL_DOT_PRODUCT_TEXTURE_2D_NV" to "0x86EE", + "GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV" to "0x86F0", + "GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV" to "0x86F1", + "GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV" to "0x86F2", + "GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV" to "0x86F3", + "GL_HILO_NV" to "0x86F4", + "GL_DSDT_NV" to "0x86F5", + "GL_DSDT_MAG_NV" to "0x86F6", + "GL_DSDT_MAG_VIB_NV" to "0x86F7", + "GL_HILO16_NV" to "0x86F8", + "GL_SIGNED_HILO_NV" to "0x86F9", + "GL_SIGNED_HILO16_NV" to "0x86FA", + "GL_SIGNED_RGBA_NV" to "0x86FB", + "GL_SIGNED_RGBA8_NV" to "0x86FC", + "GL_SIGNED_RGB_NV" to "0x86FE", + "GL_SIGNED_RGB8_NV" to "0x86FF", + "GL_SIGNED_LUMINANCE_NV" to "0x8701", + "GL_SIGNED_LUMINANCE8_NV" to "0x8702", + "GL_SIGNED_LUMINANCE_ALPHA_NV" to "0x8703", + "GL_SIGNED_LUMINANCE8_ALPHA8_NV" to "0x8704", + "GL_SIGNED_ALPHA_NV" to "0x8705", + "GL_SIGNED_ALPHA8_NV" to "0x8706", + "GL_SIGNED_INTENSITY_NV" to "0x8707", + "GL_SIGNED_INTENSITY8_NV" to "0x8708", + "GL_DSDT8_NV" to "0x8709", + "GL_DSDT8_MAG8_NV" to "0x870A", + "GL_DSDT8_MAG8_INTENSITY8_NV" to "0x870B", + "GL_SIGNED_RGB_UNSIGNED_ALPHA_NV" to "0x870C", + "GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV" to "0x870D", + "GL_HI_SCALE_NV" to "0x870E", + "GL_LO_SCALE_NV" to "0x870F", + "GL_DS_SCALE_NV" to "0x8710", + "GL_DT_SCALE_NV" to "0x8711", + "GL_MAGNITUDE_SCALE_NV" to "0x8712", + "GL_VIBRANCE_SCALE_NV" to "0x8713", + "GL_HI_BIAS_NV" to "0x8714", + "GL_LO_BIAS_NV" to "0x8715", + "GL_DS_BIAS_NV" to "0x8716", + "GL_DT_BIAS_NV" to "0x8717", + "GL_MAGNITUDE_BIAS_NV" to "0x8718", + "GL_VIBRANCE_BIAS_NV" to "0x8719", + "GL_TEXTURE_BORDER_VALUES_NV" to "0x871A", + "GL_TEXTURE_HI_SIZE_NV" to "0x871B", + "GL_TEXTURE_LO_SIZE_NV" to "0x871C", + "GL_TEXTURE_DS_SIZE_NV" to "0x871D", + "GL_TEXTURE_DT_SIZE_NV" to "0x871E", + "GL_TEXTURE_MAG_SIZE_NV" to "0x871F" + ) + file("TextureShader2", NV, "GL_NV_texture_shader2", "GL_DOT_PRODUCT_TEXTURE_3D_NV" to "0x86EF") + file( + "TextureShader3", NV, "GL_NV_texture_shader3", + "GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV" to "0x8850", + "GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV" to "0x8851", + "GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV" to "0x8852", + "GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV" to "0x8853", + "GL_OFFSET_HILO_TEXTURE_2D_NV" to "0x8854", + "GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV" to "0x8855", + "GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV" to "0x8856", + "GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV" to "0x8857", + "GL_DEPENDENT_HILO_TEXTURE_2D_NV" to "0x8858", + "GL_DEPENDENT_RGB_TEXTURE_3D_NV" to "0x8859", + "GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV" to "0x885A", + "GL_DOT_PRODUCT_PASS_THROUGH_NV" to "0x885B", + "GL_DOT_PRODUCT_TEXTURE_1D_NV" to "0x885C", + "GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV" to "0x885D", + "GL_HILO8_NV" to "0x885E", + "GL_SIGNED_HILO8_NV" to "0x885F", + "GL_FORCE_BLUE_TO_ONE_NV" to "0x8860" + ) + file("TimelineSemaphore", NV, "GL_NV_timeline_semaphore") { + "GL_TIMELINE_SEMAPHORE_VALUE_NV"("0x9595") + "GL_SEMAPHORE_TYPE_NV"("0x95B3") + "GL_SEMAPHORE_TYPE_BINARY_NV"("0x95B4") + "GL_SEMAPHORE_TYPE_TIMELINE_NV"("0x95B5") + "GL_MAX_TIMELINE_SEMAPHORE_VALUE_DIFFERENCE_NV"("0x95B6") + "glCreateSemaphoresNV"(void, GLsizei("n"), address("semaphores", "GLuint *")) + "glSemaphoreParameterivNV"(void, GLuint("semaphore"), GLenum("pname"), address("params", "const GLint *")) + "glGetSemaphoreParameterivNV"(void, GLuint("semaphore"), GLenum("pname"), address("params", "GLint *")) + } + file("TransformFeedback", NV, "GL_NV_transform_feedback") { + "GL_BACK_PRIMARY_COLOR_NV"("0x8C77") + "GL_BACK_SECONDARY_COLOR_NV"("0x8C78") + "GL_TEXTURE_COORD_NV"("0x8C79") + "GL_CLIP_DISTANCE_NV"("0x8C7A") + "GL_VERTEX_ID_NV"("0x8C7B") + "GL_PRIMITIVE_ID_NV"("0x8C7C") + "GL_GENERIC_ATTRIB_NV"("0x8C7D") + "GL_TRANSFORM_FEEDBACK_ATTRIBS_NV"("0x8C7E") + "GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV"("0x8C7F") + "GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV"("0x8C80") + "GL_ACTIVE_VARYINGS_NV"("0x8C81") + "GL_ACTIVE_VARYING_MAX_LENGTH_NV"("0x8C82") + "GL_TRANSFORM_FEEDBACK_VARYINGS_NV"("0x8C83") + "GL_TRANSFORM_FEEDBACK_BUFFER_START_NV"("0x8C84") + "GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_NV"("0x8C85") + "GL_TRANSFORM_FEEDBACK_RECORD_NV"("0x8C86") + "GL_PRIMITIVES_GENERATED_NV"("0x8C87") + "GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV"("0x8C88") + "GL_RASTERIZER_DISCARD_NV"("0x8C89") + "GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_NV"("0x8C8A") + "GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV"("0x8C8B") + "GL_INTERLEAVED_ATTRIBS_NV"("0x8C8C") + "GL_SEPARATE_ATTRIBS_NV"("0x8C8D") + "GL_TRANSFORM_FEEDBACK_BUFFER_NV"("0x8C8E") + "GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV"("0x8C8F") + "GL_LAYER_NV"("0x8DAA") + "GL_NEXT_BUFFER_NV"("-2") + "GL_SKIP_COMPONENTS4_NV"("-3") + "GL_SKIP_COMPONENTS3_NV"("-4") + "GL_SKIP_COMPONENTS2_NV"("-5") + "GL_SKIP_COMPONENTS1_NV"("-6") + "glBeginTransformFeedbackNV"(void, GLenum("primitiveMode")) + "glEndTransformFeedbackNV"(void) + "glTransformFeedbackAttribsNV"( + void, + GLsizei("count"), + address("attribs", "const GLint *"), + GLenum("bufferMode") + ) + "glBindBufferRangeNV"( + void, + GLenum("target"), + GLuint("index"), + GLuint("buffer"), + GLintptr("offset"), + GLsizeiptr("size") + ) + "glBindBufferOffsetNV"(void, GLenum("target"), GLuint("index"), GLuint("buffer"), GLintptr("offset")) + "glBindBufferBaseNV"(void, GLenum("target"), GLuint("index"), GLuint("buffer")) + "glTransformFeedbackVaryingsNV"( + void, + GLuint("program"), + GLsizei("count"), + address("locations", "const GLint *"), + GLenum("bufferMode") + ) + "glActiveVaryingNV"(void, GLuint("program"), address("name", "const GLchar *")) + "glGetVaryingLocationNV"(GLint, GLuint("program"), address("name", "const GLchar *")) + "glGetActiveVaryingNV"( + void, + GLuint("program"), + GLuint("index"), + GLsizei("bufSize"), + address("length", "GLsizei *"), + address("size", "GLsizei *"), + address("type", "GLenum *"), + address("name", "GLchar *") + ) + "glGetTransformFeedbackVaryingNV"(void, GLuint("program"), GLuint("index"), address("location", "GLint *")) + "glTransformFeedbackStreamAttribsNV"( + void, + GLsizei("count"), + address("attribs", "const GLint *"), + GLsizei("nbuffers"), + address("bufstreams", "const GLint *"), + GLenum("bufferMode") + ) + } + file("TransformFeedback2", NV, "GL_NV_transform_feedback2") { + "GL_TRANSFORM_FEEDBACK_NV"("0x8E22") + "GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED_NV"("0x8E23") + "GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE_NV"("0x8E24") + "GL_TRANSFORM_FEEDBACK_BINDING_NV"("0x8E25") + "glBindTransformFeedbackNV"(void, GLenum("target"), GLuint("id")) + "glDeleteTransformFeedbacksNV"(void, GLsizei("n"), address("ids", "const GLuint *")) + "glGenTransformFeedbacksNV"(void, GLsizei("n"), address("ids", "GLuint *")) + "glIsTransformFeedbackNV"(GLboolean, GLuint("id")) + "glPauseTransformFeedbackNV"(void) + "glResumeTransformFeedbackNV"(void) + "glDrawTransformFeedbackNV"(void, GLenum("mode"), GLuint("id")) + } + file( + "UniformBufferUnifiedMemory", NV, "GL_NV_uniform_buffer_unified_memory", + "GL_UNIFORM_BUFFER_UNIFIED_NV" to "0x936E", + "GL_UNIFORM_BUFFER_ADDRESS_NV" to "0x936F", + "GL_UNIFORM_BUFFER_LENGTH_NV" to "0x9370" + ) + file("VDPAUInterop", NV, "GL_NV_vdpau_interop") { + "GL_SURFACE_STATE_NV"("0x86EB") + "GL_SURFACE_REGISTERED_NV"("0x86FD") + "GL_SURFACE_MAPPED_NV"("0x8700") + "GL_WRITE_DISCARD_NV"("0x88BE") + "glVDPAUInitNV"(void, address("vdpDevice", "const void *"), address("getProcAddress", "const void *")) + "glVDPAUFiniNV"(void) + "glVDPAURegisterVideoSurfaceNV"( + GLvdpauSurfaceNV, + address("vdpSurface", "const void *"), + GLenum("target"), + GLsizei("numTextureNames"), + address("textureNames", "const GLuint *") + ) + "glVDPAURegisterOutputSurfaceNV"( + GLvdpauSurfaceNV, + address("vdpSurface", "const void *"), + GLenum("target"), + GLsizei("numTextureNames"), + address("textureNames", "const GLuint *") + ) + "glVDPAUIsSurfaceNV"(GLboolean, GLvdpauSurfaceNV("surface")) + "glVDPAUUnregisterSurfaceNV"(void, GLvdpauSurfaceNV("surface")) + "glVDPAUGetSurfaceivNV"( + void, + GLvdpauSurfaceNV("surface"), + GLenum("pname"), + GLsizei("count"), + address("length", "GLsizei *"), + address("values", "GLint *") + ) + "glVDPAUSurfaceAccessNV"(void, GLvdpauSurfaceNV("surface"), GLenum("access")) + "glVDPAUMapSurfacesNV"(void, GLsizei("numSurfaces"), address("surfaces", "const GLvdpauSurfaceNV *")) + "glVDPAUUnmapSurfacesNV"(void, GLsizei("numSurface"), address("surfaces", "const GLvdpauSurfaceNV *")) + } + file("VDPAUInterop2", NV, "GL_NV_vdpau_interop2") { + "glVDPAURegisterVideoSurfaceWithPictureStructureNV"( + GLvdpauSurfaceNV, + address("vdpSurface", "const void *"), + GLenum("target"), + GLsizei("numTextureNames"), + address("textureNames", "const GLuint *"), + GLboolean("isFrameStructure") + ) + } + file("VertexArrayRange", NV, "GL_NV_vertex_array_range") { + "GL_VERTEX_ARRAY_RANGE_NV"("0x851D") + "GL_VERTEX_ARRAY_RANGE_LENGTH_NV"("0x851E") + "GL_VERTEX_ARRAY_RANGE_VALID_NV"("0x851F") + "GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV"("0x8520") + "GL_VERTEX_ARRAY_RANGE_POINTER_NV"("0x8521") + "glFlushVertexArrayRangeNV"(void) + "glVertexArrayRangeNV"(void, GLsizei("length"), address("pointer", "const void *")) + } + file("VertexArrayRange2", NV, "GL_NV_vertex_array_range2", "GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV" to "0x8533") + file("VertexAttribInteger64bit", NV, "GL_NV_vertex_attrib_integer_64bit") { + "glVertexAttribL1i64NV"(void, GLuint("index"), GLint64EXT("x")) + "glVertexAttribL2i64NV"(void, GLuint("index"), GLint64EXT("x"), GLint64EXT("y")) + "glVertexAttribL3i64NV"(void, GLuint("index"), GLint64EXT("x"), GLint64EXT("y"), GLint64EXT("z")) + "glVertexAttribL4i64NV"( + void, + GLuint("index"), + GLint64EXT("x"), + GLint64EXT("y"), + GLint64EXT("z"), + GLint64EXT("w") + ) + "glVertexAttribL1i64vNV"(void, GLuint("index"), address("v", "const GLint64EXT *")) + "glVertexAttribL2i64vNV"(void, GLuint("index"), address("v", "const GLint64EXT *")) + "glVertexAttribL3i64vNV"(void, GLuint("index"), address("v", "const GLint64EXT *")) + "glVertexAttribL4i64vNV"(void, GLuint("index"), address("v", "const GLint64EXT *")) + "glVertexAttribL1ui64NV"(void, GLuint("index"), GLuint64EXT("x")) + "glVertexAttribL2ui64NV"(void, GLuint("index"), GLuint64EXT("x"), GLuint64EXT("y")) + "glVertexAttribL3ui64NV"(void, GLuint("index"), GLuint64EXT("x"), GLuint64EXT("y"), GLuint64EXT("z")) + "glVertexAttribL4ui64NV"( + void, + GLuint("index"), + GLuint64EXT("x"), + GLuint64EXT("y"), + GLuint64EXT("z"), + GLuint64EXT("w") + ) + "glVertexAttribL1ui64vNV"(void, GLuint("index"), address("v", "const GLuint64EXT *")) + "glVertexAttribL2ui64vNV"(void, GLuint("index"), address("v", "const GLuint64EXT *")) + "glVertexAttribL3ui64vNV"(void, GLuint("index"), address("v", "const GLuint64EXT *")) + "glVertexAttribL4ui64vNV"(void, GLuint("index"), address("v", "const GLuint64EXT *")) + "glGetVertexAttribLi64vNV"(void, GLuint("index"), GLenum("pname"), address("params", "GLint64EXT *")) + "glGetVertexAttribLui64vNV"(void, GLuint("index"), GLenum("pname"), address("params", "GLuint64EXT *")) + "glVertexAttribLFormatNV"(void, GLuint("index"), GLint("size"), GLenum("type"), GLsizei("stride")) + } + file("VertexBufferUnifiedMemory", NV, "GL_NV_vertex_buffer_unified_memory") { + "GL_VERTEX_ATTRIB_ARRAY_UNIFIED_NV"("0x8F1E") + "GL_ELEMENT_ARRAY_UNIFIED_NV"("0x8F1F") + "GL_VERTEX_ATTRIB_ARRAY_ADDRESS_NV"("0x8F20") + "GL_VERTEX_ARRAY_ADDRESS_NV"("0x8F21") + "GL_NORMAL_ARRAY_ADDRESS_NV"("0x8F22") + "GL_COLOR_ARRAY_ADDRESS_NV"("0x8F23") + "GL_INDEX_ARRAY_ADDRESS_NV"("0x8F24") + "GL_TEXTURE_COORD_ARRAY_ADDRESS_NV"("0x8F25") + "GL_EDGE_FLAG_ARRAY_ADDRESS_NV"("0x8F26") + "GL_SECONDARY_COLOR_ARRAY_ADDRESS_NV"("0x8F27") + "GL_FOG_COORD_ARRAY_ADDRESS_NV"("0x8F28") + "GL_ELEMENT_ARRAY_ADDRESS_NV"("0x8F29") + "GL_VERTEX_ATTRIB_ARRAY_LENGTH_NV"("0x8F2A") + "GL_VERTEX_ARRAY_LENGTH_NV"("0x8F2B") + "GL_NORMAL_ARRAY_LENGTH_NV"("0x8F2C") + "GL_COLOR_ARRAY_LENGTH_NV"("0x8F2D") + "GL_INDEX_ARRAY_LENGTH_NV"("0x8F2E") + "GL_TEXTURE_COORD_ARRAY_LENGTH_NV"("0x8F2F") + "GL_EDGE_FLAG_ARRAY_LENGTH_NV"("0x8F30") + "GL_SECONDARY_COLOR_ARRAY_LENGTH_NV"("0x8F31") + "GL_FOG_COORD_ARRAY_LENGTH_NV"("0x8F32") + "GL_ELEMENT_ARRAY_LENGTH_NV"("0x8F33") + "GL_DRAW_INDIRECT_UNIFIED_NV"("0x8F40") + "GL_DRAW_INDIRECT_ADDRESS_NV"("0x8F41") + "GL_DRAW_INDIRECT_LENGTH_NV"("0x8F42") + "glBufferAddressRangeNV"(void, GLenum("pname"), GLuint("index"), GLuint64EXT("address"), GLsizeiptr("length")) + "glVertexFormatNV"(void, GLint("size"), GLenum("type"), GLsizei("stride")) + "glNormalFormatNV"(void, GLenum("type"), GLsizei("stride")) + "glColorFormatNV"(void, GLint("size"), GLenum("type"), GLsizei("stride")) + "glIndexFormatNV"(void, GLenum("type"), GLsizei("stride")) + "glTexCoordFormatNV"(void, GLint("size"), GLenum("type"), GLsizei("stride")) + "glEdgeFlagFormatNV"(void, GLsizei("stride")) + "glSecondaryColorFormatNV"(void, GLint("size"), GLenum("type"), GLsizei("stride")) + "glFogCoordFormatNV"(void, GLenum("type"), GLsizei("stride")) + "glVertexAttribFormatNV"( + void, + GLuint("index"), + GLint("size"), + GLenum("type"), + GLboolean("normalized"), + GLsizei("stride") + ) + "glVertexAttribIFormatNV"(void, GLuint("index"), GLint("size"), GLenum("type"), GLsizei("stride")) + "glGetIntegerui64i_vNV"(void, GLenum("value"), GLuint("index"), address("result", "GLuint64EXT *")) + } + file("VertexProgram", NV, "GL_NV_vertex_program") { + "GL_VERTEX_PROGRAM_NV"("0x8620") + "GL_VERTEX_STATE_PROGRAM_NV"("0x8621") + "GL_ATTRIB_ARRAY_SIZE_NV"("0x8623") + "GL_ATTRIB_ARRAY_STRIDE_NV"("0x8624") + "GL_ATTRIB_ARRAY_TYPE_NV"("0x8625") + "GL_CURRENT_ATTRIB_NV"("0x8626") + "GL_PROGRAM_LENGTH_NV"("0x8627") + "GL_PROGRAM_STRING_NV"("0x8628") + "GL_MODELVIEW_PROJECTION_NV"("0x8629") + "GL_IDENTITY_NV"("0x862A") + "GL_INVERSE_NV"("0x862B") + "GL_TRANSPOSE_NV"("0x862C") + "GL_INVERSE_TRANSPOSE_NV"("0x862D") + "GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV"("0x862E") + "GL_MAX_TRACK_MATRICES_NV"("0x862F") + "GL_MATRIX0_NV"("0x8630") + "GL_MATRIX1_NV"("0x8631") + "GL_MATRIX2_NV"("0x8632") + "GL_MATRIX3_NV"("0x8633") + "GL_MATRIX4_NV"("0x8634") + "GL_MATRIX5_NV"("0x8635") + "GL_MATRIX6_NV"("0x8636") + "GL_MATRIX7_NV"("0x8637") + "GL_CURRENT_MATRIX_STACK_DEPTH_NV"("0x8640") + "GL_CURRENT_MATRIX_NV"("0x8641") + "GL_VERTEX_PROGRAM_POINT_SIZE_NV"("0x8642") + "GL_VERTEX_PROGRAM_TWO_SIDE_NV"("0x8643") + "GL_PROGRAM_PARAMETER_NV"("0x8644") + "GL_ATTRIB_ARRAY_POINTER_NV"("0x8645") + "GL_PROGRAM_TARGET_NV"("0x8646") + "GL_PROGRAM_RESIDENT_NV"("0x8647") + "GL_TRACK_MATRIX_NV"("0x8648") + "GL_TRACK_MATRIX_TRANSFORM_NV"("0x8649") + "GL_VERTEX_PROGRAM_BINDING_NV"("0x864A") + "GL_PROGRAM_ERROR_POSITION_NV"("0x864B") + "GL_VERTEX_ATTRIB_ARRAY0_NV"("0x8650") + "GL_VERTEX_ATTRIB_ARRAY1_NV"("0x8651") + "GL_VERTEX_ATTRIB_ARRAY2_NV"("0x8652") + "GL_VERTEX_ATTRIB_ARRAY3_NV"("0x8653") + "GL_VERTEX_ATTRIB_ARRAY4_NV"("0x8654") + "GL_VERTEX_ATTRIB_ARRAY5_NV"("0x8655") + "GL_VERTEX_ATTRIB_ARRAY6_NV"("0x8656") + "GL_VERTEX_ATTRIB_ARRAY7_NV"("0x8657") + "GL_VERTEX_ATTRIB_ARRAY8_NV"("0x8658") + "GL_VERTEX_ATTRIB_ARRAY9_NV"("0x8659") + "GL_VERTEX_ATTRIB_ARRAY10_NV"("0x865A") + "GL_VERTEX_ATTRIB_ARRAY11_NV"("0x865B") + "GL_VERTEX_ATTRIB_ARRAY12_NV"("0x865C") + "GL_VERTEX_ATTRIB_ARRAY13_NV"("0x865D") + "GL_VERTEX_ATTRIB_ARRAY14_NV"("0x865E") + "GL_VERTEX_ATTRIB_ARRAY15_NV"("0x865F") + "GL_MAP1_VERTEX_ATTRIB0_4_NV"("0x8660") + "GL_MAP1_VERTEX_ATTRIB1_4_NV"("0x8661") + "GL_MAP1_VERTEX_ATTRIB2_4_NV"("0x8662") + "GL_MAP1_VERTEX_ATTRIB3_4_NV"("0x8663") + "GL_MAP1_VERTEX_ATTRIB4_4_NV"("0x8664") + "GL_MAP1_VERTEX_ATTRIB5_4_NV"("0x8665") + "GL_MAP1_VERTEX_ATTRIB6_4_NV"("0x8666") + "GL_MAP1_VERTEX_ATTRIB7_4_NV"("0x8667") + "GL_MAP1_VERTEX_ATTRIB8_4_NV"("0x8668") + "GL_MAP1_VERTEX_ATTRIB9_4_NV"("0x8669") + "GL_MAP1_VERTEX_ATTRIB10_4_NV"("0x866A") + "GL_MAP1_VERTEX_ATTRIB11_4_NV"("0x866B") + "GL_MAP1_VERTEX_ATTRIB12_4_NV"("0x866C") + "GL_MAP1_VERTEX_ATTRIB13_4_NV"("0x866D") + "GL_MAP1_VERTEX_ATTRIB14_4_NV"("0x866E") + "GL_MAP1_VERTEX_ATTRIB15_4_NV"("0x866F") + "GL_MAP2_VERTEX_ATTRIB0_4_NV"("0x8670") + "GL_MAP2_VERTEX_ATTRIB1_4_NV"("0x8671") + "GL_MAP2_VERTEX_ATTRIB2_4_NV"("0x8672") + "GL_MAP2_VERTEX_ATTRIB3_4_NV"("0x8673") + "GL_MAP2_VERTEX_ATTRIB4_4_NV"("0x8674") + "GL_MAP2_VERTEX_ATTRIB5_4_NV"("0x8675") + "GL_MAP2_VERTEX_ATTRIB6_4_NV"("0x8676") + "GL_MAP2_VERTEX_ATTRIB7_4_NV"("0x8677") + "GL_MAP2_VERTEX_ATTRIB8_4_NV"("0x8678") + "GL_MAP2_VERTEX_ATTRIB9_4_NV"("0x8679") + "GL_MAP2_VERTEX_ATTRIB10_4_NV"("0x867A") + "GL_MAP2_VERTEX_ATTRIB11_4_NV"("0x867B") + "GL_MAP2_VERTEX_ATTRIB12_4_NV"("0x867C") + "GL_MAP2_VERTEX_ATTRIB13_4_NV"("0x867D") + "GL_MAP2_VERTEX_ATTRIB14_4_NV"("0x867E") + "GL_MAP2_VERTEX_ATTRIB15_4_NV"("0x867F") + "glAreProgramsResidentNV"( + GLboolean, + GLsizei("n"), + address("programs", "const GLuint *"), + address("residences", "GLboolean *") + ) + "glBindProgramNV"(void, GLenum("target"), GLuint("id")) + "glDeleteProgramsNV"(void, GLsizei("n"), address("programs", "const GLuint *")) + "glExecuteProgramNV"(void, GLenum("target"), GLuint("id"), address("params", "const GLfloat *")) + "glGenProgramsNV"(void, GLsizei("n"), address("programs", "GLuint *")) + "glGetProgramParameterdvNV"( + void, + GLenum("target"), + GLuint("index"), + GLenum("pname"), + address("params", "GLdouble *") + ) + "glGetProgramParameterfvNV"( + void, + GLenum("target"), + GLuint("index"), + GLenum("pname"), + address("params", "GLfloat *") + ) + "glGetProgramivNV"(void, GLuint("id"), GLenum("pname"), address("params", "GLint *")) + "glGetProgramStringNV"(void, GLuint("id"), GLenum("pname"), address("program", "GLubyte *")) + "glGetTrackMatrixivNV"(void, GLenum("target"), GLuint("address"), GLenum("pname"), address("params", "GLint *")) + "glGetVertexAttribdvNV"(void, GLuint("index"), GLenum("pname"), address("params", "GLdouble *")) + "glGetVertexAttribfvNV"(void, GLuint("index"), GLenum("pname"), address("params", "GLfloat *")) + "glGetVertexAttribivNV"(void, GLuint("index"), GLenum("pname"), address("params", "GLint *")) + "glGetVertexAttribPointervNV"(void, GLuint("index"), GLenum("pname"), address("pointer", "void **")) + "glIsProgramNV"(GLboolean, GLuint("id")) + "glLoadProgramNV"(void, GLenum("target"), GLuint("id"), GLsizei("len"), address("program", "const GLubyte *")) + "glProgramParameter4dNV"( + void, + GLenum("target"), + GLuint("index"), + GLdouble("x"), + GLdouble("y"), + GLdouble("z"), + GLdouble("w") + ) + "glProgramParameter4dvNV"(void, GLenum("target"), GLuint("index"), address("v", "const GLdouble *")) + "glProgramParameter4fNV"( + void, + GLenum("target"), + GLuint("index"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z"), + GLfloat("w") + ) + "glProgramParameter4fvNV"(void, GLenum("target"), GLuint("index"), address("v", "const GLfloat *")) + "glProgramParameters4dvNV"( + void, + GLenum("target"), + GLuint("index"), + GLsizei("count"), + address("v", "const GLdouble *") + ) + "glProgramParameters4fvNV"( + void, + GLenum("target"), + GLuint("index"), + GLsizei("count"), + address("v", "const GLfloat *") + ) + "glRequestResidentProgramsNV"(void, GLsizei("n"), address("programs", "const GLuint *")) + "glTrackMatrixNV"(void, GLenum("target"), GLuint("address"), GLenum("matrix"), GLenum("transform")) + "glVertexAttribPointerNV"( + void, + GLuint("index"), + GLint("fsize"), + GLenum("type"), + GLsizei("stride"), + address("pointer", "const void *") + ) + "glVertexAttrib1dNV"(void, GLuint("index"), GLdouble("x")) + "glVertexAttrib1dvNV"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttrib1fNV"(void, GLuint("index"), GLfloat("x")) + "glVertexAttrib1fvNV"(void, GLuint("index"), address("v", "const GLfloat *")) + "glVertexAttrib1sNV"(void, GLuint("index"), GLshort("x")) + "glVertexAttrib1svNV"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttrib2dNV"(void, GLuint("index"), GLdouble("x"), GLdouble("y")) + "glVertexAttrib2dvNV"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttrib2fNV"(void, GLuint("index"), GLfloat("x"), GLfloat("y")) + "glVertexAttrib2fvNV"(void, GLuint("index"), address("v", "const GLfloat *")) + "glVertexAttrib2sNV"(void, GLuint("index"), GLshort("x"), GLshort("y")) + "glVertexAttrib2svNV"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttrib3dNV"(void, GLuint("index"), GLdouble("x"), GLdouble("y"), GLdouble("z")) + "glVertexAttrib3dvNV"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttrib3fNV"(void, GLuint("index"), GLfloat("x"), GLfloat("y"), GLfloat("z")) + "glVertexAttrib3fvNV"(void, GLuint("index"), address("v", "const GLfloat *")) + "glVertexAttrib3sNV"(void, GLuint("index"), GLshort("x"), GLshort("y"), GLshort("z")) + "glVertexAttrib3svNV"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttrib4dNV"(void, GLuint("index"), GLdouble("x"), GLdouble("y"), GLdouble("z"), GLdouble("w")) + "glVertexAttrib4dvNV"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttrib4fNV"(void, GLuint("index"), GLfloat("x"), GLfloat("y"), GLfloat("z"), GLfloat("w")) + "glVertexAttrib4fvNV"(void, GLuint("index"), address("v", "const GLfloat *")) + "glVertexAttrib4sNV"(void, GLuint("index"), GLshort("x"), GLshort("y"), GLshort("z"), GLshort("w")) + "glVertexAttrib4svNV"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttrib4ubNV"(void, GLuint("index"), GLubyte("x"), GLubyte("y"), GLubyte("z"), GLubyte("w")) + "glVertexAttrib4ubvNV"(void, GLuint("index"), address("v", "const GLubyte *")) + "glVertexAttribs1dvNV"(void, GLuint("index"), GLsizei("count"), address("v", "const GLdouble *")) + "glVertexAttribs1fvNV"(void, GLuint("index"), GLsizei("count"), address("v", "const GLfloat *")) + "glVertexAttribs1svNV"(void, GLuint("index"), GLsizei("count"), address("v", "const GLshort *")) + "glVertexAttribs2dvNV"(void, GLuint("index"), GLsizei("count"), address("v", "const GLdouble *")) + "glVertexAttribs2fvNV"(void, GLuint("index"), GLsizei("count"), address("v", "const GLfloat *")) + "glVertexAttribs2svNV"(void, GLuint("index"), GLsizei("count"), address("v", "const GLshort *")) + "glVertexAttribs3dvNV"(void, GLuint("index"), GLsizei("count"), address("v", "const GLdouble *")) + "glVertexAttribs3fvNV"(void, GLuint("index"), GLsizei("count"), address("v", "const GLfloat *")) + "glVertexAttribs3svNV"(void, GLuint("index"), GLsizei("count"), address("v", "const GLshort *")) + "glVertexAttribs4dvNV"(void, GLuint("index"), GLsizei("count"), address("v", "const GLdouble *")) + "glVertexAttribs4fvNV"(void, GLuint("index"), GLsizei("count"), address("v", "const GLfloat *")) + "glVertexAttribs4svNV"(void, GLuint("index"), GLsizei("count"), address("v", "const GLshort *")) + "glVertexAttribs4ubvNV"(void, GLuint("index"), GLsizei("count"), address("v", "const GLubyte *")) + } + file("VertexProgram4", NV, "GL_NV_vertex_program4", "GL_VERTEX_ATTRIB_ARRAY_INTEGER_NV" to "0x88FD") + file("VideoCapture", NV, "GL_NV_video_capture") { + "GL_VIDEO_BUFFER_NV"("0x9020") + "GL_VIDEO_BUFFER_BINDING_NV"("0x9021") + "GL_FIELD_UPPER_NV"("0x9022") + "GL_FIELD_LOWER_NV"("0x9023") + "GL_NUM_VIDEO_CAPTURE_STREAMS_NV"("0x9024") + "GL_NEXT_VIDEO_CAPTURE_BUFFER_STATUS_NV"("0x9025") + "GL_VIDEO_CAPTURE_TO_422_SUPPORTED_NV"("0x9026") + "GL_LAST_VIDEO_CAPTURE_STATUS_NV"("0x9027") + "GL_VIDEO_BUFFER_PITCH_NV"("0x9028") + "GL_VIDEO_COLOR_CONVERSION_MATRIX_NV"("0x9029") + "GL_VIDEO_COLOR_CONVERSION_MAX_NV"("0x902A") + "GL_VIDEO_COLOR_CONVERSION_MIN_NV"("0x902B") + "GL_VIDEO_COLOR_CONVERSION_OFFSET_NV"("0x902C") + "GL_VIDEO_BUFFER_INTERNAL_FORMAT_NV"("0x902D") + "GL_PARTIAL_SUCCESS_NV"("0x902E") + "GL_SUCCESS_NV"("0x902F") + "GL_FAILURE_NV"("0x9030") + "GL_YCBYCR8_422_NV"("0x9031") + "GL_YCBAYCR8A_4224_NV"("0x9032") + "GL_Z6Y10Z6CB10Z6Y10Z6CR10_422_NV"("0x9033") + "GL_Z6Y10Z6CB10Z6A10Z6Y10Z6CR10Z6A10_4224_NV"("0x9034") + "GL_Z4Y12Z4CB12Z4Y12Z4CR12_422_NV"("0x9035") + "GL_Z4Y12Z4CB12Z4A12Z4Y12Z4CR12Z4A12_4224_NV"("0x9036") + "GL_Z4Y12Z4CB12Z4CR12_444_NV"("0x9037") + "GL_VIDEO_CAPTURE_FRAME_WIDTH_NV"("0x9038") + "GL_VIDEO_CAPTURE_FRAME_HEIGHT_NV"("0x9039") + "GL_VIDEO_CAPTURE_FIELD_UPPER_HEIGHT_NV"("0x903A") + "GL_VIDEO_CAPTURE_FIELD_LOWER_HEIGHT_NV"("0x903B") + "GL_VIDEO_CAPTURE_SURFACE_ORIGIN_NV"("0x903C") + "glBeginVideoCaptureNV"(void, GLuint("video_capture_slot")) + "glBindVideoCaptureStreamBufferNV"( + void, + GLuint("video_capture_slot"), + GLuint("stream"), + GLenum("frame_region"), + GLintptrARB("offset") + ) + "glBindVideoCaptureStreamTextureNV"( + void, + GLuint("video_capture_slot"), + GLuint("stream"), + GLenum("frame_region"), + GLenum("target"), + GLuint("texture") + ) + "glEndVideoCaptureNV"(void, GLuint("video_capture_slot")) + "glGetVideoCaptureivNV"(void, GLuint("video_capture_slot"), GLenum("pname"), address("params", "GLint *")) + "glGetVideoCaptureStreamivNV"( + void, + GLuint("video_capture_slot"), + GLuint("stream"), + GLenum("pname"), + address("params", "GLint *") + ) + "glGetVideoCaptureStreamfvNV"( + void, + GLuint("video_capture_slot"), + GLuint("stream"), + GLenum("pname"), + address("params", "GLfloat *") + ) + "glGetVideoCaptureStreamdvNV"( + void, + GLuint("video_capture_slot"), + GLuint("stream"), + GLenum("pname"), + address("params", "GLdouble *") + ) + "glVideoCaptureNV"( + GLenum, + GLuint("video_capture_slot"), + address("sequence_num", "GLuint *"), + address("capture_time", "GLuint64EXT *") + ) + "glVideoCaptureStreamParameterivNV"( + void, + GLuint("video_capture_slot"), + GLuint("stream"), + GLenum("pname"), + address("params", "const GLint *") + ) + "glVideoCaptureStreamParameterfvNV"( + void, + GLuint("video_capture_slot"), + GLuint("stream"), + GLenum("pname"), + address("params", "const GLfloat *") + ) + "glVideoCaptureStreamParameterdvNV"( + void, + GLuint("video_capture_slot"), + GLuint("stream"), + GLenum("pname"), + address("params", "const GLdouble *") + ) + } + file("ViewportSwizzle", NV, "GL_NV_viewport_swizzle") { + "GL_VIEWPORT_SWIZZLE_POSITIVE_X_NV"("0x9350") + "GL_VIEWPORT_SWIZZLE_NEGATIVE_X_NV"("0x9351") + "GL_VIEWPORT_SWIZZLE_POSITIVE_Y_NV"("0x9352") + "GL_VIEWPORT_SWIZZLE_NEGATIVE_Y_NV"("0x9353") + "GL_VIEWPORT_SWIZZLE_POSITIVE_Z_NV"("0x9354") + "GL_VIEWPORT_SWIZZLE_NEGATIVE_Z_NV"("0x9355") + "GL_VIEWPORT_SWIZZLE_POSITIVE_W_NV"("0x9356") + "GL_VIEWPORT_SWIZZLE_NEGATIVE_W_NV"("0x9357") + "GL_VIEWPORT_SWIZZLE_X_NV"("0x9358") + "GL_VIEWPORT_SWIZZLE_Y_NV"("0x9359") + "GL_VIEWPORT_SWIZZLE_Z_NV"("0x935A") + "GL_VIEWPORT_SWIZZLE_W_NV"("0x935B") + "glViewportSwizzleNV"( + void, + GLuint("index"), + GLenum("swizzlex"), + GLenum("swizzley"), + GLenum("swizzlez"), + GLenum("swizzlew") + ) + } } diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt index 8e23425e..10ae12f3 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt @@ -124,6 +124,7 @@ val GLcharARB = byte val GLint64EXT = long val GLuint64EXT = long val GLhalfNV = short +val GLvdpauSurfaceNV = GLintptr data class Parameter( val type: Type, diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java index 819a2286..f3b9985a 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java @@ -127,16 +127,25 @@ public GLExtCaps(GLCapabilities caps) { glGetPathColorGenfvNV, glGetPathTexGenivNV, glGetPathTexGenfvNV, glPixelDataRangeNV, glFlushPixelDataRangeNV, glPointParameteriNV, glPointParameterivNV, glPresentFrameKeyedNV, glPresentFrameDualFillNV, glGetVideoivNV, glGetVideouivNV, glGetVideoi64vNV, glGetVideoui64vNV, glPrimitiveRestartNV, glPrimitiveRestartIndexNV, glQueryResourceNV, glGenQueryResourceTagNV, glDeleteQueryResourceTagNV, glQueryResourceTagNV, glCombinerParameterfvNV, glCombinerParameterfNV, glCombinerParameterivNV, glCombinerParameteriNV, glCombinerInputNV, glCombinerOutputNV, glFinalCombinerInputNV, glGetCombinerInputParameterfvNV, glGetCombinerInputParameterivNV, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterivNV, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterivNV, glCombinerStageParameterfvNV, glGetCombinerStageParameterfvNV, glFramebufferSampleLocationsfvNV, glNamedFramebufferSampleLocationsfvNV, glResolveDepthValuesNV, glScissorExclusiveNV, glScissorExclusiveArrayvNV, glMakeBufferResidentNV, glMakeBufferNonResidentNV, glIsBufferResidentNV, glMakeNamedBufferResidentNV, glMakeNamedBufferNonResidentNV, glIsNamedBufferResidentNV, glGetBufferParameterui64vNV, glGetNamedBufferParameterui64vNV, glGetIntegerui64vNV, - glUniformui64NV, glUniformui64vNV, glProgramUniformui64NV, glProgramUniformui64vNV, glBindShadingRateImageNV, glGetShadingRateImagePaletteNV, glGetShadingRateSampleLocationivNV, glShadingRateImageBarrierNV, glShadingRateImagePaletteNV, glShadingRateSampleOrderNV, glShadingRateSampleOrderCustomNV, glTextureBarrierNV, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, - glFogFuncSGIS, glGetFogFuncSGIS, glSampleMaskSGIS, glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, glTexSubImage4DSGIS, - glTextureColorMaskSGIS, glGetTexFilterFuncSGIS, glTexFilterFuncSGIS, glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, glFlushRasterSGIX, glFragmentColorMaterialSGIX, glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, glFragmentLightModelfSGIX, - glFragmentLightModelfvSGIX, glFragmentLightModeliSGIX, glFragmentLightModelivSGIX, glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, glInstrumentsBufferSGIX, - glPollInstrumentsSGIX, glReadInstrumentsSGIX, glStartInstrumentsSGIX, glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, glListParameterivSGIX, glPixelTexGenSGIX, glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, glReferencePlaneSGIX, - glSpriteParameterfSGIX, glSpriteParameterfvSGIX, glSpriteParameteriSGIX, glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, glGetColorTableSGI, glGetColorTableParameterfvSGI, glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, - glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, - glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, - glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, - glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; + glUniformui64NV, glUniformui64vNV, glProgramUniformui64NV, glProgramUniformui64vNV, glBindShadingRateImageNV, glGetShadingRateImagePaletteNV, glGetShadingRateSampleLocationivNV, glShadingRateImageBarrierNV, glShadingRateImagePaletteNV, glShadingRateSampleOrderNV, glShadingRateSampleOrderCustomNV, glTextureBarrierNV, glTexImage2DMultisampleCoverageNV, glTexImage3DMultisampleCoverageNV, glTextureImage2DMultisampleNV, glTextureImage3DMultisampleNV, + glTextureImage2DMultisampleCoverageNV, glTextureImage3DMultisampleCoverageNV, glCreateSemaphoresNV, glSemaphoreParameterivNV, glGetSemaphoreParameterivNV, glBeginTransformFeedbackNV, glEndTransformFeedbackNV, glTransformFeedbackAttribsNV, glBindBufferRangeNV, glBindBufferOffsetNV, glBindBufferBaseNV, glTransformFeedbackVaryingsNV, glActiveVaryingNV, glGetVaryingLocationNV, glGetActiveVaryingNV, glGetTransformFeedbackVaryingNV, + glTransformFeedbackStreamAttribsNV, glBindTransformFeedbackNV, glDeleteTransformFeedbacksNV, glGenTransformFeedbacksNV, glIsTransformFeedbackNV, glPauseTransformFeedbackNV, glResumeTransformFeedbackNV, glDrawTransformFeedbackNV, glVDPAUInitNV, glVDPAUFiniNV, glVDPAURegisterVideoSurfaceNV, glVDPAURegisterOutputSurfaceNV, glVDPAUIsSurfaceNV, glVDPAUUnregisterSurfaceNV, glVDPAUGetSurfaceivNV, glVDPAUSurfaceAccessNV, + glVDPAUMapSurfacesNV, glVDPAUUnmapSurfacesNV, glVDPAURegisterVideoSurfaceWithPictureStructureNV, glFlushVertexArrayRangeNV, glVertexArrayRangeNV, glVertexAttribL1i64NV, glVertexAttribL2i64NV, glVertexAttribL3i64NV, glVertexAttribL4i64NV, glVertexAttribL1i64vNV, glVertexAttribL2i64vNV, glVertexAttribL3i64vNV, glVertexAttribL4i64vNV, glVertexAttribL1ui64NV, glVertexAttribL2ui64NV, glVertexAttribL3ui64NV, + glVertexAttribL4ui64NV, glVertexAttribL1ui64vNV, glVertexAttribL2ui64vNV, glVertexAttribL3ui64vNV, glVertexAttribL4ui64vNV, glGetVertexAttribLi64vNV, glGetVertexAttribLui64vNV, glVertexAttribLFormatNV, glBufferAddressRangeNV, glVertexFormatNV, glNormalFormatNV, glColorFormatNV, glIndexFormatNV, glTexCoordFormatNV, glEdgeFlagFormatNV, glSecondaryColorFormatNV, + glFogCoordFormatNV, glVertexAttribFormatNV, glVertexAttribIFormatNV, glGetIntegerui64i_vNV, glAreProgramsResidentNV, glBindProgramNV, glDeleteProgramsNV, glExecuteProgramNV, glGenProgramsNV, glGetProgramParameterdvNV, glGetProgramParameterfvNV, glGetProgramivNV, glGetProgramStringNV, glGetTrackMatrixivNV, glGetVertexAttribdvNV, glGetVertexAttribfvNV, + glGetVertexAttribivNV, glGetVertexAttribPointervNV, glIsProgramNV, glLoadProgramNV, glProgramParameter4dNV, glProgramParameter4dvNV, glProgramParameter4fNV, glProgramParameter4fvNV, glProgramParameters4dvNV, glProgramParameters4fvNV, glRequestResidentProgramsNV, glTrackMatrixNV, glVertexAttribPointerNV, glVertexAttrib1dNV, glVertexAttrib1dvNV, glVertexAttrib1fNV, + glVertexAttrib1fvNV, glVertexAttrib1sNV, glVertexAttrib1svNV, glVertexAttrib2dNV, glVertexAttrib2dvNV, glVertexAttrib2fNV, glVertexAttrib2fvNV, glVertexAttrib2sNV, glVertexAttrib2svNV, glVertexAttrib3dNV, glVertexAttrib3dvNV, glVertexAttrib3fNV, glVertexAttrib3fvNV, glVertexAttrib3sNV, glVertexAttrib3svNV, glVertexAttrib4dNV, + glVertexAttrib4dvNV, glVertexAttrib4fNV, glVertexAttrib4fvNV, glVertexAttrib4sNV, glVertexAttrib4svNV, glVertexAttrib4ubNV, glVertexAttrib4ubvNV, glVertexAttribs1dvNV, glVertexAttribs1fvNV, glVertexAttribs1svNV, glVertexAttribs2dvNV, glVertexAttribs2fvNV, glVertexAttribs2svNV, glVertexAttribs3dvNV, glVertexAttribs3fvNV, glVertexAttribs3svNV, + glVertexAttribs4dvNV, glVertexAttribs4fvNV, glVertexAttribs4svNV, glVertexAttribs4ubvNV, glBeginVideoCaptureNV, glBindVideoCaptureStreamBufferNV, glBindVideoCaptureStreamTextureNV, glEndVideoCaptureNV, glGetVideoCaptureivNV, glGetVideoCaptureStreamivNV, glGetVideoCaptureStreamfvNV, glGetVideoCaptureStreamdvNV, glVideoCaptureNV, glVideoCaptureStreamParameterivNV, glVideoCaptureStreamParameterfvNV, glVideoCaptureStreamParameterdvNV, + glViewportSwizzleNV, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, glFogFuncSGIS, glGetFogFuncSGIS, glSampleMaskSGIS, glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, + glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, glTexSubImage4DSGIS, glTextureColorMaskSGIS, glGetTexFilterFuncSGIS, glTexFilterFuncSGIS, glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, glFlushRasterSGIX, glFragmentColorMaterialSGIX, + glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, glFragmentLightModelfSGIX, glFragmentLightModelfvSGIX, glFragmentLightModeliSGIX, glFragmentLightModelivSGIX, glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, + glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, glInstrumentsBufferSGIX, glPollInstrumentsSGIX, glReadInstrumentsSGIX, glStartInstrumentsSGIX, glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, glListParameterivSGIX, glPixelTexGenSGIX, + glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, glReferencePlaneSGIX, glSpriteParameterfSGIX, glSpriteParameterfvSGIX, glSpriteParameteriSGIX, glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, glGetColorTableSGI, glGetColorTableParameterfvSGI, + glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, + glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, + glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, + glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; void load(GLLoadFunc load) { GLARBES32Compatibility.load(this, load); @@ -281,6 +290,18 @@ void load(GLLoadFunc load) { GLNVShaderBufferLoad.load(this, load); GLNVShadingRateImage.load(this, load); GLNVTextureBarrier.load(this, load); + GLNVTextureMultisample.load(this, load); + GLNVTimelineSemaphore.load(this, load); + GLNVTransformFeedback.load(this, load); + GLNVTransformFeedback2.load(this, load); + GLNVVDPAUInterop.load(this, load); + GLNVVDPAUInterop2.load(this, load); + GLNVVertexArrayRange.load(this, load); + GLNVVertexAttribInteger64bit.load(this, load); + GLNVVertexBufferUnifiedMemory.load(this, load); + GLNVVertexProgram.load(this, load); + GLNVVideoCapture.load(this, load); + GLNVViewportSwizzle.load(this, load); GLOVRMultiview.load(this, load); GLPGIMiscHints.load(this, load); GLSGISDetailTexture.load(this, load); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLLoader.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLLoader.java index 0d1e4d74..f1ece98f 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLLoader.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLLoader.java @@ -65,9 +65,21 @@ public static void setCapabilities(@Nullable GLCapabilities caps) { } /** - * {@return the {@link GLCapabilities} of the OpenGL context that is current in the current thread}. + * {@return the {@link GLCapabilities} of the OpenGL context that is current in the current thread} + *

    + * This method doesn't throw an exception when the capabilities are null. + * + * @see #getCapabilities() + */ + public static GLCapabilities getCapabilitiesSafe() { + return capabilitiesTLS.get(); + } + + /** + * {@return the {@link GLCapabilities} of the OpenGL context that is current in the current thread} * * @throws IllegalStateException if {@link #setCapabilities} has never been called in the current thread or was last called with a {@code null} value + * @see #getCapabilitiesSafe() */ public static GLCapabilities getCapabilities() { return checkCapabilities(capabilitiesTLS.get()); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureEnvCombine4.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureEnvCombine4.java new file mode 100644 index 00000000..c6eb7080 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureEnvCombine4.java @@ -0,0 +1,36 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_texture_env_combine4} + */ +public final class GLNVTextureEnvCombine4 { + public static final int GL_COMBINE4_NV = 0x8503; + public static final int GL_SOURCE3_RGB_NV = 0x8583; + public static final int GL_SOURCE3_ALPHA_NV = 0x858B; + public static final int GL_OPERAND3_RGB_NV = 0x8593; + public static final int GL_OPERAND3_ALPHA_NV = 0x859B; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureExpandNormal.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureExpandNormal.java new file mode 100644 index 00000000..2df5e36e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureExpandNormal.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_texture_expand_normal} + */ +public final class GLNVTextureExpandNormal { + public static final int GL_TEXTURE_UNSIGNED_REMAP_MODE_NV = 0x888F; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureMultisample.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureMultisample.java new file mode 100644 index 00000000..b200a9bd --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureMultisample.java @@ -0,0 +1,85 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_texture_multisample} + */ +public final class GLNVTextureMultisample { + public static final int GL_TEXTURE_COVERAGE_SAMPLES_NV = 0x9045; + public static final int GL_TEXTURE_COLOR_SAMPLES_NV = 0x9046; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_texture_multisample) return; + ext.glTexImage2DMultisampleCoverageNV = load.invoke("glTexImage2DMultisampleCoverageNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE)); + ext.glTexImage3DMultisampleCoverageNV = load.invoke("glTexImage3DMultisampleCoverageNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE)); + ext.glTextureImage2DMultisampleNV = load.invoke("glTextureImage2DMultisampleNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE)); + ext.glTextureImage3DMultisampleNV = load.invoke("glTextureImage3DMultisampleNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE)); + ext.glTextureImage2DMultisampleCoverageNV = load.invoke("glTextureImage2DMultisampleCoverageNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE)); + ext.glTextureImage3DMultisampleCoverageNV = load.invoke("glTextureImage3DMultisampleCoverageNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE)); + } + + public static void glTexImage2DMultisampleCoverageNV(int target, int coverageSamples, int colorSamples, int internalFormat, int width, int height, boolean fixedSampleLocations) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexImage2DMultisampleCoverageNV).invokeExact(target, coverageSamples, colorSamples, internalFormat, width, height, fixedSampleLocations); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexImage3DMultisampleCoverageNV(int target, int coverageSamples, int colorSamples, int internalFormat, int width, int height, int depth, boolean fixedSampleLocations) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexImage3DMultisampleCoverageNV).invokeExact(target, coverageSamples, colorSamples, internalFormat, width, height, depth, fixedSampleLocations); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureImage2DMultisampleNV(int texture, int target, int samples, int internalFormat, int width, int height, boolean fixedSampleLocations) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureImage2DMultisampleNV).invokeExact(texture, target, samples, internalFormat, width, height, fixedSampleLocations); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureImage3DMultisampleNV(int texture, int target, int samples, int internalFormat, int width, int height, int depth, boolean fixedSampleLocations) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureImage3DMultisampleNV).invokeExact(texture, target, samples, internalFormat, width, height, depth, fixedSampleLocations); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureImage2DMultisampleCoverageNV(int texture, int target, int coverageSamples, int colorSamples, int internalFormat, int width, int height, boolean fixedSampleLocations) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureImage2DMultisampleCoverageNV).invokeExact(texture, target, coverageSamples, colorSamples, internalFormat, width, height, fixedSampleLocations); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureImage3DMultisampleCoverageNV(int texture, int target, int coverageSamples, int colorSamples, int internalFormat, int width, int height, int depth, boolean fixedSampleLocations) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureImage3DMultisampleCoverageNV).invokeExact(texture, target, coverageSamples, colorSamples, internalFormat, width, height, depth, fixedSampleLocations); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureRectangle.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureRectangle.java new file mode 100644 index 00000000..b46ba94f --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureRectangle.java @@ -0,0 +1,35 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_texture_rectangle} + */ +public final class GLNVTextureRectangle { + public static final int GL_TEXTURE_RECTANGLE_NV = 0x84F5; + public static final int GL_TEXTURE_BINDING_RECTANGLE_NV = 0x84F6; + public static final int GL_PROXY_TEXTURE_RECTANGLE_NV = 0x84F7; + public static final int GL_MAX_RECTANGLE_TEXTURE_SIZE_NV = 0x84F8; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureShader.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureShader.java new file mode 100644 index 00000000..02e60038 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureShader.java @@ -0,0 +1,104 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_texture_shader} + */ +public final class GLNVTextureShader { + public static final int GL_OFFSET_TEXTURE_RECTANGLE_NV = 0x864C; + public static final int GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV = 0x864D; + public static final int GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV = 0x864E; + public static final int GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV = 0x86D9; + public static final int GL_UNSIGNED_INT_S8_S8_8_8_NV = 0x86DA; + public static final int GL_UNSIGNED_INT_8_8_S8_S8_REV_NV = 0x86DB; + public static final int GL_DSDT_MAG_INTENSITY_NV = 0x86DC; + public static final int GL_SHADER_CONSISTENT_NV = 0x86DD; + public static final int GL_TEXTURE_SHADER_NV = 0x86DE; + public static final int GL_SHADER_OPERATION_NV = 0x86DF; + public static final int GL_CULL_MODES_NV = 0x86E0; + public static final int GL_OFFSET_TEXTURE_MATRIX_NV = 0x86E1; + public static final int GL_OFFSET_TEXTURE_SCALE_NV = 0x86E2; + public static final int GL_OFFSET_TEXTURE_BIAS_NV = 0x86E3; + public static final int GL_OFFSET_TEXTURE_2D_MATRIX_NV = 0x86E1; + public static final int GL_OFFSET_TEXTURE_2D_SCALE_NV = 0x86E2; + public static final int GL_OFFSET_TEXTURE_2D_BIAS_NV = 0x86E3; + public static final int GL_PREVIOUS_TEXTURE_INPUT_NV = 0x86E4; + public static final int GL_CONST_EYE_NV = 0x86E5; + public static final int GL_PASS_THROUGH_NV = 0x86E6; + public static final int GL_CULL_FRAGMENT_NV = 0x86E7; + public static final int GL_OFFSET_TEXTURE_2D_NV = 0x86E8; + public static final int GL_DEPENDENT_AR_TEXTURE_2D_NV = 0x86E9; + public static final int GL_DEPENDENT_GB_TEXTURE_2D_NV = 0x86EA; + public static final int GL_DOT_PRODUCT_NV = 0x86EC; + public static final int GL_DOT_PRODUCT_DEPTH_REPLACE_NV = 0x86ED; + public static final int GL_DOT_PRODUCT_TEXTURE_2D_NV = 0x86EE; + public static final int GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV = 0x86F0; + public static final int GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV = 0x86F1; + public static final int GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV = 0x86F2; + public static final int GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV = 0x86F3; + public static final int GL_HILO_NV = 0x86F4; + public static final int GL_DSDT_NV = 0x86F5; + public static final int GL_DSDT_MAG_NV = 0x86F6; + public static final int GL_DSDT_MAG_VIB_NV = 0x86F7; + public static final int GL_HILO16_NV = 0x86F8; + public static final int GL_SIGNED_HILO_NV = 0x86F9; + public static final int GL_SIGNED_HILO16_NV = 0x86FA; + public static final int GL_SIGNED_RGBA_NV = 0x86FB; + public static final int GL_SIGNED_RGBA8_NV = 0x86FC; + public static final int GL_SIGNED_RGB_NV = 0x86FE; + public static final int GL_SIGNED_RGB8_NV = 0x86FF; + public static final int GL_SIGNED_LUMINANCE_NV = 0x8701; + public static final int GL_SIGNED_LUMINANCE8_NV = 0x8702; + public static final int GL_SIGNED_LUMINANCE_ALPHA_NV = 0x8703; + public static final int GL_SIGNED_LUMINANCE8_ALPHA8_NV = 0x8704; + public static final int GL_SIGNED_ALPHA_NV = 0x8705; + public static final int GL_SIGNED_ALPHA8_NV = 0x8706; + public static final int GL_SIGNED_INTENSITY_NV = 0x8707; + public static final int GL_SIGNED_INTENSITY8_NV = 0x8708; + public static final int GL_DSDT8_NV = 0x8709; + public static final int GL_DSDT8_MAG8_NV = 0x870A; + public static final int GL_DSDT8_MAG8_INTENSITY8_NV = 0x870B; + public static final int GL_SIGNED_RGB_UNSIGNED_ALPHA_NV = 0x870C; + public static final int GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV = 0x870D; + public static final int GL_HI_SCALE_NV = 0x870E; + public static final int GL_LO_SCALE_NV = 0x870F; + public static final int GL_DS_SCALE_NV = 0x8710; + public static final int GL_DT_SCALE_NV = 0x8711; + public static final int GL_MAGNITUDE_SCALE_NV = 0x8712; + public static final int GL_VIBRANCE_SCALE_NV = 0x8713; + public static final int GL_HI_BIAS_NV = 0x8714; + public static final int GL_LO_BIAS_NV = 0x8715; + public static final int GL_DS_BIAS_NV = 0x8716; + public static final int GL_DT_BIAS_NV = 0x8717; + public static final int GL_MAGNITUDE_BIAS_NV = 0x8718; + public static final int GL_VIBRANCE_BIAS_NV = 0x8719; + public static final int GL_TEXTURE_BORDER_VALUES_NV = 0x871A; + public static final int GL_TEXTURE_HI_SIZE_NV = 0x871B; + public static final int GL_TEXTURE_LO_SIZE_NV = 0x871C; + public static final int GL_TEXTURE_DS_SIZE_NV = 0x871D; + public static final int GL_TEXTURE_DT_SIZE_NV = 0x871E; + public static final int GL_TEXTURE_MAG_SIZE_NV = 0x871F; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureShader2.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureShader2.java new file mode 100644 index 00000000..ea726fd6 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureShader2.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_texture_shader2} + */ +public final class GLNVTextureShader2 { + public static final int GL_DOT_PRODUCT_TEXTURE_3D_NV = 0x86EF; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureShader3.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureShader3.java new file mode 100644 index 00000000..6f6a10dc --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTextureShader3.java @@ -0,0 +1,48 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_texture_shader3} + */ +public final class GLNVTextureShader3 { + public static final int GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV = 0x8850; + public static final int GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV = 0x8851; + public static final int GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV = 0x8852; + public static final int GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV = 0x8853; + public static final int GL_OFFSET_HILO_TEXTURE_2D_NV = 0x8854; + public static final int GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV = 0x8855; + public static final int GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV = 0x8856; + public static final int GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV = 0x8857; + public static final int GL_DEPENDENT_HILO_TEXTURE_2D_NV = 0x8858; + public static final int GL_DEPENDENT_RGB_TEXTURE_3D_NV = 0x8859; + public static final int GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV = 0x885A; + public static final int GL_DOT_PRODUCT_PASS_THROUGH_NV = 0x885B; + public static final int GL_DOT_PRODUCT_TEXTURE_1D_NV = 0x885C; + public static final int GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV = 0x885D; + public static final int GL_HILO8_NV = 0x885E; + public static final int GL_SIGNED_HILO8_NV = 0x885F; + public static final int GL_FORCE_BLUE_TO_ONE_NV = 0x8860; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTimelineSemaphore.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTimelineSemaphore.java new file mode 100644 index 00000000..488a483b --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTimelineSemaphore.java @@ -0,0 +1,64 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_timeline_semaphore} + */ +public final class GLNVTimelineSemaphore { + public static final int GL_TIMELINE_SEMAPHORE_VALUE_NV = 0x9595; + public static final int GL_SEMAPHORE_TYPE_NV = 0x95B3; + public static final int GL_SEMAPHORE_TYPE_BINARY_NV = 0x95B4; + public static final int GL_SEMAPHORE_TYPE_TIMELINE_NV = 0x95B5; + public static final int GL_MAX_TIMELINE_SEMAPHORE_VALUE_DIFFERENCE_NV = 0x95B6; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_timeline_semaphore) return; + ext.glCreateSemaphoresNV = load.invoke("glCreateSemaphoresNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glSemaphoreParameterivNV = load.invoke("glSemaphoreParameterivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetSemaphoreParameterivNV = load.invoke("glGetSemaphoreParameterivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glCreateSemaphoresNV(int n, @NativeType("GLuint *") MemorySegment semaphores) { + final var ext = getExtCapabilities(); + try { + check(ext.glCreateSemaphoresNV).invokeExact(n, semaphores); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSemaphoreParameterivNV(int semaphore, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glSemaphoreParameterivNV).invokeExact(semaphore, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetSemaphoreParameterivNV(int semaphore, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetSemaphoreParameterivNV).invokeExact(semaphore, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTransformFeedback.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTransformFeedback.java new file mode 100644 index 00000000..72367cb4 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTransformFeedback.java @@ -0,0 +1,163 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_transform_feedback} + */ +public final class GLNVTransformFeedback { + public static final int GL_BACK_PRIMARY_COLOR_NV = 0x8C77; + public static final int GL_BACK_SECONDARY_COLOR_NV = 0x8C78; + public static final int GL_TEXTURE_COORD_NV = 0x8C79; + public static final int GL_CLIP_DISTANCE_NV = 0x8C7A; + public static final int GL_VERTEX_ID_NV = 0x8C7B; + public static final int GL_PRIMITIVE_ID_NV = 0x8C7C; + public static final int GL_GENERIC_ATTRIB_NV = 0x8C7D; + public static final int GL_TRANSFORM_FEEDBACK_ATTRIBS_NV = 0x8C7E; + public static final int GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV = 0x8C7F; + public static final int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV = 0x8C80; + public static final int GL_ACTIVE_VARYINGS_NV = 0x8C81; + public static final int GL_ACTIVE_VARYING_MAX_LENGTH_NV = 0x8C82; + public static final int GL_TRANSFORM_FEEDBACK_VARYINGS_NV = 0x8C83; + public static final int GL_TRANSFORM_FEEDBACK_BUFFER_START_NV = 0x8C84; + public static final int GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_NV = 0x8C85; + public static final int GL_TRANSFORM_FEEDBACK_RECORD_NV = 0x8C86; + public static final int GL_PRIMITIVES_GENERATED_NV = 0x8C87; + public static final int GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV = 0x8C88; + public static final int GL_RASTERIZER_DISCARD_NV = 0x8C89; + public static final int GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_NV = 0x8C8A; + public static final int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV = 0x8C8B; + public static final int GL_INTERLEAVED_ATTRIBS_NV = 0x8C8C; + public static final int GL_SEPARATE_ATTRIBS_NV = 0x8C8D; + public static final int GL_TRANSFORM_FEEDBACK_BUFFER_NV = 0x8C8E; + public static final int GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV = 0x8C8F; + public static final int GL_LAYER_NV = 0x8DAA; + public static final int GL_NEXT_BUFFER_NV = -2; + public static final int GL_SKIP_COMPONENTS4_NV = -3; + public static final int GL_SKIP_COMPONENTS3_NV = -4; + public static final int GL_SKIP_COMPONENTS2_NV = -5; + public static final int GL_SKIP_COMPONENTS1_NV = -6; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_transform_feedback) return; + ext.glBeginTransformFeedbackNV = load.invoke("glBeginTransformFeedbackNV", ofVoid(JAVA_INT)); + ext.glEndTransformFeedbackNV = load.invoke("glEndTransformFeedbackNV", ofVoid()); + ext.glTransformFeedbackAttribsNV = load.invoke("glTransformFeedbackAttribsNV", ofVoid(JAVA_INT, ADDRESS, JAVA_INT)); + ext.glBindBufferRangeNV = load.invoke("glBindBufferRangeNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG)); + ext.glBindBufferOffsetNV = load.invoke("glBindBufferOffsetNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glBindBufferBaseNV = load.invoke("glBindBufferBaseNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glTransformFeedbackVaryingsNV = load.invoke("glTransformFeedbackVaryingsNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT)); + ext.glActiveVaryingNV = load.invoke("glActiveVaryingNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetVaryingLocationNV = load.invoke("glGetVaryingLocationNV", of(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetActiveVaryingNV = load.invoke("glGetActiveVaryingNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, ADDRESS, ADDRESS, ADDRESS)); + ext.glGetTransformFeedbackVaryingNV = load.invoke("glGetTransformFeedbackVaryingNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glTransformFeedbackStreamAttribsNV = load.invoke("glTransformFeedbackStreamAttribsNV", ofVoid(JAVA_INT, ADDRESS, JAVA_INT, ADDRESS, JAVA_INT)); + } + + public static void glBeginTransformFeedbackNV(int primitiveMode) { + final var ext = getExtCapabilities(); + try { + check(ext.glBeginTransformFeedbackNV).invokeExact(primitiveMode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEndTransformFeedbackNV() { + final var ext = getExtCapabilities(); + try { + check(ext.glEndTransformFeedbackNV).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTransformFeedbackAttribsNV(int count, @NativeType("const GLint *") MemorySegment attribs, int bufferMode) { + final var ext = getExtCapabilities(); + try { + check(ext.glTransformFeedbackAttribsNV).invokeExact(count, attribs, bufferMode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBindBufferRangeNV(int target, int index, int buffer, long offset, long size) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindBufferRangeNV).invokeExact(target, index, buffer, offset, size); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBindBufferOffsetNV(int target, int index, int buffer, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindBufferOffsetNV).invokeExact(target, index, buffer, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBindBufferBaseNV(int target, int index, int buffer) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindBufferBaseNV).invokeExact(target, index, buffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTransformFeedbackVaryingsNV(int program, int count, @NativeType("const GLint *") MemorySegment locations, int bufferMode) { + final var ext = getExtCapabilities(); + try { + check(ext.glTransformFeedbackVaryingsNV).invokeExact(program, count, locations, bufferMode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glActiveVaryingNV(int program, @NativeType("const GLchar *") MemorySegment name) { + final var ext = getExtCapabilities(); + try { + check(ext.glActiveVaryingNV).invokeExact(program, name); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glGetVaryingLocationNV(int program, @NativeType("const GLchar *") MemorySegment name) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glGetVaryingLocationNV).invokeExact(program, name); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetActiveVaryingNV(int program, int index, int bufSize, @NativeType("GLsizei *") MemorySegment length, @NativeType("GLsizei *") MemorySegment size, @NativeType("GLenum *") MemorySegment type, @NativeType("GLchar *") MemorySegment name) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetActiveVaryingNV).invokeExact(program, index, bufSize, length, size, type, name); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetTransformFeedbackVaryingNV(int program, int index, @NativeType("GLint *") MemorySegment location) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetTransformFeedbackVaryingNV).invokeExact(program, index, location); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTransformFeedbackStreamAttribsNV(int count, @NativeType("const GLint *") MemorySegment attribs, int nbuffers, @NativeType("const GLint *") MemorySegment bufstreams, int bufferMode) { + final var ext = getExtCapabilities(); + try { + check(ext.glTransformFeedbackStreamAttribsNV).invokeExact(count, attribs, nbuffers, bufstreams, bufferMode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTransformFeedback2.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTransformFeedback2.java new file mode 100644 index 00000000..2fd3afd2 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVTransformFeedback2.java @@ -0,0 +1,96 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_transform_feedback2} + */ +public final class GLNVTransformFeedback2 { + public static final int GL_TRANSFORM_FEEDBACK_NV = 0x8E22; + public static final int GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED_NV = 0x8E23; + public static final int GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE_NV = 0x8E24; + public static final int GL_TRANSFORM_FEEDBACK_BINDING_NV = 0x8E25; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_transform_feedback2) return; + ext.glBindTransformFeedbackNV = load.invoke("glBindTransformFeedbackNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glDeleteTransformFeedbacksNV = load.invoke("glDeleteTransformFeedbacksNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glGenTransformFeedbacksNV = load.invoke("glGenTransformFeedbacksNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glIsTransformFeedbackNV = load.invoke("glIsTransformFeedbackNV", of(JAVA_BYTE, JAVA_INT)); + ext.glPauseTransformFeedbackNV = load.invoke("glPauseTransformFeedbackNV", ofVoid()); + ext.glResumeTransformFeedbackNV = load.invoke("glResumeTransformFeedbackNV", ofVoid()); + ext.glDrawTransformFeedbackNV = load.invoke("glDrawTransformFeedbackNV", ofVoid(JAVA_INT, JAVA_INT)); + } + + public static void glBindTransformFeedbackNV(int target, int id) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindTransformFeedbackNV).invokeExact(target, id); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeleteTransformFeedbacksNV(int n, @NativeType("const GLuint *") MemorySegment ids) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeleteTransformFeedbacksNV).invokeExact(n, ids); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGenTransformFeedbacksNV(int n, @NativeType("GLuint *") MemorySegment ids) { + final var ext = getExtCapabilities(); + try { + check(ext.glGenTransformFeedbacksNV).invokeExact(n, ids); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsTransformFeedbackNV(int id) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsTransformFeedbackNV).invokeExact(id); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPauseTransformFeedbackNV() { + final var ext = getExtCapabilities(); + try { + check(ext.glPauseTransformFeedbackNV).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glResumeTransformFeedbackNV() { + final var ext = getExtCapabilities(); + try { + check(ext.glResumeTransformFeedbackNV).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDrawTransformFeedbackNV(int mode, int id) { + final var ext = getExtCapabilities(); + try { + check(ext.glDrawTransformFeedbackNV).invokeExact(mode, id); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVUniformBufferUnifiedMemory.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVUniformBufferUnifiedMemory.java new file mode 100644 index 00000000..fe248618 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVUniformBufferUnifiedMemory.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_uniform_buffer_unified_memory} + */ +public final class GLNVUniformBufferUnifiedMemory { + public static final int GL_UNIFORM_BUFFER_UNIFIED_NV = 0x936E; + public static final int GL_UNIFORM_BUFFER_ADDRESS_NV = 0x936F; + public static final int GL_UNIFORM_BUFFER_LENGTH_NV = 0x9370; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVDPAUInterop.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVDPAUInterop.java new file mode 100644 index 00000000..6737f5f8 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVDPAUInterop.java @@ -0,0 +1,122 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_vdpau_interop} + */ +public final class GLNVVDPAUInterop { + public static final int GL_SURFACE_STATE_NV = 0x86EB; + public static final int GL_SURFACE_REGISTERED_NV = 0x86FD; + public static final int GL_SURFACE_MAPPED_NV = 0x8700; + public static final int GL_WRITE_DISCARD_NV = 0x88BE; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_vdpau_interop) return; + ext.glVDPAUInitNV = load.invoke("glVDPAUInitNV", ofVoid(ADDRESS, ADDRESS)); + ext.glVDPAUFiniNV = load.invoke("glVDPAUFiniNV", ofVoid()); + ext.glVDPAURegisterVideoSurfaceNV = load.invoke("glVDPAURegisterVideoSurfaceNV", of(JAVA_LONG, ADDRESS, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVDPAURegisterOutputSurfaceNV = load.invoke("glVDPAURegisterOutputSurfaceNV", of(JAVA_LONG, ADDRESS, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVDPAUIsSurfaceNV = load.invoke("glVDPAUIsSurfaceNV", of(JAVA_BYTE, JAVA_LONG)); + ext.glVDPAUUnregisterSurfaceNV = load.invoke("glVDPAUUnregisterSurfaceNV", ofVoid(JAVA_LONG)); + ext.glVDPAUGetSurfaceivNV = load.invoke("glVDPAUGetSurfaceivNV", ofVoid(JAVA_LONG, JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glVDPAUSurfaceAccessNV = load.invoke("glVDPAUSurfaceAccessNV", ofVoid(JAVA_LONG, JAVA_INT)); + ext.glVDPAUMapSurfacesNV = load.invoke("glVDPAUMapSurfacesNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVDPAUUnmapSurfacesNV = load.invoke("glVDPAUUnmapSurfacesNV", ofVoid(JAVA_INT, ADDRESS)); + } + + public static void glVDPAUInitNV(@NativeType("const void *") MemorySegment vdpDevice, @NativeType("const void *") MemorySegment getProcAddress) { + final var ext = getExtCapabilities(); + try { + check(ext.glVDPAUInitNV).invokeExact(vdpDevice, getProcAddress); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVDPAUFiniNV() { + final var ext = getExtCapabilities(); + try { + check(ext.glVDPAUFiniNV).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static long glVDPAURegisterVideoSurfaceNV(@NativeType("const void *") MemorySegment vdpSurface, int target, int numTextureNames, @NativeType("const GLuint *") MemorySegment textureNames) { + final var ext = getExtCapabilities(); + try { + return (long) + check(ext.glVDPAURegisterVideoSurfaceNV).invokeExact(vdpSurface, target, numTextureNames, textureNames); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static long glVDPAURegisterOutputSurfaceNV(@NativeType("const void *") MemorySegment vdpSurface, int target, int numTextureNames, @NativeType("const GLuint *") MemorySegment textureNames) { + final var ext = getExtCapabilities(); + try { + return (long) + check(ext.glVDPAURegisterOutputSurfaceNV).invokeExact(vdpSurface, target, numTextureNames, textureNames); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glVDPAUIsSurfaceNV(long surface) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glVDPAUIsSurfaceNV).invokeExact(surface); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVDPAUUnregisterSurfaceNV(long surface) { + final var ext = getExtCapabilities(); + try { + check(ext.glVDPAUUnregisterSurfaceNV).invokeExact(surface); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVDPAUGetSurfaceivNV(long surface, int pname, int count, @NativeType("GLsizei *") MemorySegment length, @NativeType("GLint *") MemorySegment values) { + final var ext = getExtCapabilities(); + try { + check(ext.glVDPAUGetSurfaceivNV).invokeExact(surface, pname, count, length, values); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVDPAUSurfaceAccessNV(long surface, int access) { + final var ext = getExtCapabilities(); + try { + check(ext.glVDPAUSurfaceAccessNV).invokeExact(surface, access); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVDPAUMapSurfacesNV(int numSurfaces, @NativeType("const GLvdpauSurfaceNV *") MemorySegment surfaces) { + final var ext = getExtCapabilities(); + try { + check(ext.glVDPAUMapSurfacesNV).invokeExact(numSurfaces, surfaces); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVDPAUUnmapSurfacesNV(int numSurface, @NativeType("const GLvdpauSurfaceNV *") MemorySegment surfaces) { + final var ext = getExtCapabilities(); + try { + check(ext.glVDPAUUnmapSurfacesNV).invokeExact(numSurface, surfaces); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVDPAUInterop2.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVDPAUInterop2.java new file mode 100644 index 00000000..20bd85f5 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVDPAUInterop2.java @@ -0,0 +1,44 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_vdpau_interop2} + */ +public final class GLNVVDPAUInterop2 { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_vdpau_interop2) return; + ext.glVDPAURegisterVideoSurfaceWithPictureStructureNV = load.invoke("glVDPAURegisterVideoSurfaceWithPictureStructureNV", of(JAVA_LONG, ADDRESS, JAVA_INT, JAVA_INT, ADDRESS, JAVA_BYTE)); + } + + public static long glVDPAURegisterVideoSurfaceWithPictureStructureNV(@NativeType("const void *") MemorySegment vdpSurface, int target, int numTextureNames, @NativeType("const GLuint *") MemorySegment textureNames, boolean isFrameStructure) { + final var ext = getExtCapabilities(); + try { + return (long) + check(ext.glVDPAURegisterVideoSurfaceWithPictureStructureNV).invokeExact(vdpSurface, target, numTextureNames, textureNames, isFrameStructure); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexArrayRange.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexArrayRange.java new file mode 100644 index 00000000..ece609da --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexArrayRange.java @@ -0,0 +1,56 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_vertex_array_range} + */ +public final class GLNVVertexArrayRange { + public static final int GL_VERTEX_ARRAY_RANGE_NV = 0x851D; + public static final int GL_VERTEX_ARRAY_RANGE_LENGTH_NV = 0x851E; + public static final int GL_VERTEX_ARRAY_RANGE_VALID_NV = 0x851F; + public static final int GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV = 0x8520; + public static final int GL_VERTEX_ARRAY_RANGE_POINTER_NV = 0x8521; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_vertex_array_range) return; + ext.glFlushVertexArrayRangeNV = load.invoke("glFlushVertexArrayRangeNV", ofVoid()); + ext.glVertexArrayRangeNV = load.invoke("glVertexArrayRangeNV", ofVoid(JAVA_INT, ADDRESS)); + } + + public static void glFlushVertexArrayRangeNV() { + final var ext = getExtCapabilities(); + try { + check(ext.glFlushVertexArrayRangeNV).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArrayRangeNV(int length, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArrayRangeNV).invokeExact(length, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexArrayRange2.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexArrayRange2.java new file mode 100644 index 00000000..2b2dcb41 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexArrayRange2.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_vertex_array_range2} + */ +public final class GLNVVertexArrayRange2 { + public static final int GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV = 0x8533; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexAttribInteger64bit.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexAttribInteger64bit.java new file mode 100644 index 00000000..59b9ad8f --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexAttribInteger64bit.java @@ -0,0 +1,187 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_vertex_attrib_integer_64bit} + */ +public final class GLNVVertexAttribInteger64bit { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_vertex_attrib_integer_64bit) return; + ext.glVertexAttribL1i64NV = load.invoke("glVertexAttribL1i64NV", ofVoid(JAVA_INT, JAVA_LONG)); + ext.glVertexAttribL2i64NV = load.invoke("glVertexAttribL2i64NV", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG)); + ext.glVertexAttribL3i64NV = load.invoke("glVertexAttribL3i64NV", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glVertexAttribL4i64NV = load.invoke("glVertexAttribL4i64NV", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glVertexAttribL1i64vNV = load.invoke("glVertexAttribL1i64vNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribL2i64vNV = load.invoke("glVertexAttribL2i64vNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribL3i64vNV = load.invoke("glVertexAttribL3i64vNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribL4i64vNV = load.invoke("glVertexAttribL4i64vNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribL1ui64NV = load.invoke("glVertexAttribL1ui64NV", ofVoid(JAVA_INT, JAVA_LONG)); + ext.glVertexAttribL2ui64NV = load.invoke("glVertexAttribL2ui64NV", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG)); + ext.glVertexAttribL3ui64NV = load.invoke("glVertexAttribL3ui64NV", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glVertexAttribL4ui64NV = load.invoke("glVertexAttribL4ui64NV", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glVertexAttribL1ui64vNV = load.invoke("glVertexAttribL1ui64vNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribL2ui64vNV = load.invoke("glVertexAttribL2ui64vNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribL3ui64vNV = load.invoke("glVertexAttribL3ui64vNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribL4ui64vNV = load.invoke("glVertexAttribL4ui64vNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetVertexAttribLi64vNV = load.invoke("glGetVertexAttribLi64vNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVertexAttribLui64vNV = load.invoke("glGetVertexAttribLui64vNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribLFormatNV = load.invoke("glVertexAttribLFormatNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glVertexAttribL1i64NV(int index, long x) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL1i64NV).invokeExact(index, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL2i64NV(int index, long x, long y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL2i64NV).invokeExact(index, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL3i64NV(int index, long x, long y, long z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL3i64NV).invokeExact(index, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL4i64NV(int index, long x, long y, long z, long w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL4i64NV).invokeExact(index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL1i64vNV(int index, @NativeType("const GLint64EXT *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL1i64vNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL2i64vNV(int index, @NativeType("const GLint64EXT *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL2i64vNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL3i64vNV(int index, @NativeType("const GLint64EXT *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL3i64vNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL4i64vNV(int index, @NativeType("const GLint64EXT *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL4i64vNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL1ui64NV(int index, long x) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL1ui64NV).invokeExact(index, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL2ui64NV(int index, long x, long y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL2ui64NV).invokeExact(index, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL3ui64NV(int index, long x, long y, long z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL3ui64NV).invokeExact(index, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL4ui64NV(int index, long x, long y, long z, long w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL4ui64NV).invokeExact(index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL1ui64vNV(int index, @NativeType("const GLuint64EXT *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL1ui64vNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL2ui64vNV(int index, @NativeType("const GLuint64EXT *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL2ui64vNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL3ui64vNV(int index, @NativeType("const GLuint64EXT *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL3ui64vNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL4ui64vNV(int index, @NativeType("const GLuint64EXT *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL4ui64vNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVertexAttribLi64vNV(int index, int pname, @NativeType("GLint64EXT *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexAttribLi64vNV).invokeExact(index, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVertexAttribLui64vNV(int index, int pname, @NativeType("GLuint64EXT *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexAttribLui64vNV).invokeExact(index, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribLFormatNV(int index, int size, int type, int stride) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribLFormatNV).invokeExact(index, size, type, stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexBufferUnifiedMemory.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexBufferUnifiedMemory.java new file mode 100644 index 00000000..2989fad7 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexBufferUnifiedMemory.java @@ -0,0 +1,156 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_vertex_buffer_unified_memory} + */ +public final class GLNVVertexBufferUnifiedMemory { + public static final int GL_VERTEX_ATTRIB_ARRAY_UNIFIED_NV = 0x8F1E; + public static final int GL_ELEMENT_ARRAY_UNIFIED_NV = 0x8F1F; + public static final int GL_VERTEX_ATTRIB_ARRAY_ADDRESS_NV = 0x8F20; + public static final int GL_VERTEX_ARRAY_ADDRESS_NV = 0x8F21; + public static final int GL_NORMAL_ARRAY_ADDRESS_NV = 0x8F22; + public static final int GL_COLOR_ARRAY_ADDRESS_NV = 0x8F23; + public static final int GL_INDEX_ARRAY_ADDRESS_NV = 0x8F24; + public static final int GL_TEXTURE_COORD_ARRAY_ADDRESS_NV = 0x8F25; + public static final int GL_EDGE_FLAG_ARRAY_ADDRESS_NV = 0x8F26; + public static final int GL_SECONDARY_COLOR_ARRAY_ADDRESS_NV = 0x8F27; + public static final int GL_FOG_COORD_ARRAY_ADDRESS_NV = 0x8F28; + public static final int GL_ELEMENT_ARRAY_ADDRESS_NV = 0x8F29; + public static final int GL_VERTEX_ATTRIB_ARRAY_LENGTH_NV = 0x8F2A; + public static final int GL_VERTEX_ARRAY_LENGTH_NV = 0x8F2B; + public static final int GL_NORMAL_ARRAY_LENGTH_NV = 0x8F2C; + public static final int GL_COLOR_ARRAY_LENGTH_NV = 0x8F2D; + public static final int GL_INDEX_ARRAY_LENGTH_NV = 0x8F2E; + public static final int GL_TEXTURE_COORD_ARRAY_LENGTH_NV = 0x8F2F; + public static final int GL_EDGE_FLAG_ARRAY_LENGTH_NV = 0x8F30; + public static final int GL_SECONDARY_COLOR_ARRAY_LENGTH_NV = 0x8F31; + public static final int GL_FOG_COORD_ARRAY_LENGTH_NV = 0x8F32; + public static final int GL_ELEMENT_ARRAY_LENGTH_NV = 0x8F33; + public static final int GL_DRAW_INDIRECT_UNIFIED_NV = 0x8F40; + public static final int GL_DRAW_INDIRECT_ADDRESS_NV = 0x8F41; + public static final int GL_DRAW_INDIRECT_LENGTH_NV = 0x8F42; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_vertex_buffer_unified_memory) return; + ext.glBufferAddressRangeNV = load.invoke("glBufferAddressRangeNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG)); + ext.glVertexFormatNV = load.invoke("glVertexFormatNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glNormalFormatNV = load.invoke("glNormalFormatNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glColorFormatNV = load.invoke("glColorFormatNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glIndexFormatNV = load.invoke("glIndexFormatNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glTexCoordFormatNV = load.invoke("glTexCoordFormatNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glEdgeFlagFormatNV = load.invoke("glEdgeFlagFormatNV", ofVoid(JAVA_INT)); + ext.glSecondaryColorFormatNV = load.invoke("glSecondaryColorFormatNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glFogCoordFormatNV = load.invoke("glFogCoordFormatNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glVertexAttribFormatNV = load.invoke("glVertexAttribFormatNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, JAVA_INT)); + ext.glVertexAttribIFormatNV = load.invoke("glVertexAttribIFormatNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetIntegerui64i_vNV = load.invoke("glGetIntegerui64i_vNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glBufferAddressRangeNV(int pname, int index, long address, long length) { + final var ext = getExtCapabilities(); + try { + check(ext.glBufferAddressRangeNV).invokeExact(pname, index, address, length); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexFormatNV(int size, int type, int stride) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexFormatNV).invokeExact(size, type, stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormalFormatNV(int type, int stride) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormalFormatNV).invokeExact(type, stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColorFormatNV(int size, int type, int stride) { + final var ext = getExtCapabilities(); + try { + check(ext.glColorFormatNV).invokeExact(size, type, stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glIndexFormatNV(int type, int stride) { + final var ext = getExtCapabilities(); + try { + check(ext.glIndexFormatNV).invokeExact(type, stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoordFormatNV(int size, int type, int stride) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoordFormatNV).invokeExact(size, type, stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEdgeFlagFormatNV(int stride) { + final var ext = getExtCapabilities(); + try { + check(ext.glEdgeFlagFormatNV).invokeExact(stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColorFormatNV(int size, int type, int stride) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColorFormatNV).invokeExact(size, type, stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFogCoordFormatNV(int type, int stride) { + final var ext = getExtCapabilities(); + try { + check(ext.glFogCoordFormatNV).invokeExact(type, stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribFormatNV(int index, int size, int type, boolean normalized, int stride) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribFormatNV).invokeExact(index, size, type, normalized, stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribIFormatNV(int index, int size, int type, int stride) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribIFormatNV).invokeExact(index, size, type, stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetIntegerui64i_vNV(int value, int index, @NativeType("GLuint64EXT *") MemorySegment result) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetIntegerui64i_vNV).invokeExact(value, index, result); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexProgram.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexProgram.java new file mode 100644 index 00000000..529aad74 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexProgram.java @@ -0,0 +1,632 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_vertex_program} + */ +public final class GLNVVertexProgram { + public static final int GL_VERTEX_PROGRAM_NV = 0x8620; + public static final int GL_VERTEX_STATE_PROGRAM_NV = 0x8621; + public static final int GL_ATTRIB_ARRAY_SIZE_NV = 0x8623; + public static final int GL_ATTRIB_ARRAY_STRIDE_NV = 0x8624; + public static final int GL_ATTRIB_ARRAY_TYPE_NV = 0x8625; + public static final int GL_CURRENT_ATTRIB_NV = 0x8626; + public static final int GL_PROGRAM_LENGTH_NV = 0x8627; + public static final int GL_PROGRAM_STRING_NV = 0x8628; + public static final int GL_MODELVIEW_PROJECTION_NV = 0x8629; + public static final int GL_IDENTITY_NV = 0x862A; + public static final int GL_INVERSE_NV = 0x862B; + public static final int GL_TRANSPOSE_NV = 0x862C; + public static final int GL_INVERSE_TRANSPOSE_NV = 0x862D; + public static final int GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV = 0x862E; + public static final int GL_MAX_TRACK_MATRICES_NV = 0x862F; + public static final int GL_MATRIX0_NV = 0x8630; + public static final int GL_MATRIX1_NV = 0x8631; + public static final int GL_MATRIX2_NV = 0x8632; + public static final int GL_MATRIX3_NV = 0x8633; + public static final int GL_MATRIX4_NV = 0x8634; + public static final int GL_MATRIX5_NV = 0x8635; + public static final int GL_MATRIX6_NV = 0x8636; + public static final int GL_MATRIX7_NV = 0x8637; + public static final int GL_CURRENT_MATRIX_STACK_DEPTH_NV = 0x8640; + public static final int GL_CURRENT_MATRIX_NV = 0x8641; + public static final int GL_VERTEX_PROGRAM_POINT_SIZE_NV = 0x8642; + public static final int GL_VERTEX_PROGRAM_TWO_SIDE_NV = 0x8643; + public static final int GL_PROGRAM_PARAMETER_NV = 0x8644; + public static final int GL_ATTRIB_ARRAY_POINTER_NV = 0x8645; + public static final int GL_PROGRAM_TARGET_NV = 0x8646; + public static final int GL_PROGRAM_RESIDENT_NV = 0x8647; + public static final int GL_TRACK_MATRIX_NV = 0x8648; + public static final int GL_TRACK_MATRIX_TRANSFORM_NV = 0x8649; + public static final int GL_VERTEX_PROGRAM_BINDING_NV = 0x864A; + public static final int GL_PROGRAM_ERROR_POSITION_NV = 0x864B; + public static final int GL_VERTEX_ATTRIB_ARRAY0_NV = 0x8650; + public static final int GL_VERTEX_ATTRIB_ARRAY1_NV = 0x8651; + public static final int GL_VERTEX_ATTRIB_ARRAY2_NV = 0x8652; + public static final int GL_VERTEX_ATTRIB_ARRAY3_NV = 0x8653; + public static final int GL_VERTEX_ATTRIB_ARRAY4_NV = 0x8654; + public static final int GL_VERTEX_ATTRIB_ARRAY5_NV = 0x8655; + public static final int GL_VERTEX_ATTRIB_ARRAY6_NV = 0x8656; + public static final int GL_VERTEX_ATTRIB_ARRAY7_NV = 0x8657; + public static final int GL_VERTEX_ATTRIB_ARRAY8_NV = 0x8658; + public static final int GL_VERTEX_ATTRIB_ARRAY9_NV = 0x8659; + public static final int GL_VERTEX_ATTRIB_ARRAY10_NV = 0x865A; + public static final int GL_VERTEX_ATTRIB_ARRAY11_NV = 0x865B; + public static final int GL_VERTEX_ATTRIB_ARRAY12_NV = 0x865C; + public static final int GL_VERTEX_ATTRIB_ARRAY13_NV = 0x865D; + public static final int GL_VERTEX_ATTRIB_ARRAY14_NV = 0x865E; + public static final int GL_VERTEX_ATTRIB_ARRAY15_NV = 0x865F; + public static final int GL_MAP1_VERTEX_ATTRIB0_4_NV = 0x8660; + public static final int GL_MAP1_VERTEX_ATTRIB1_4_NV = 0x8661; + public static final int GL_MAP1_VERTEX_ATTRIB2_4_NV = 0x8662; + public static final int GL_MAP1_VERTEX_ATTRIB3_4_NV = 0x8663; + public static final int GL_MAP1_VERTEX_ATTRIB4_4_NV = 0x8664; + public static final int GL_MAP1_VERTEX_ATTRIB5_4_NV = 0x8665; + public static final int GL_MAP1_VERTEX_ATTRIB6_4_NV = 0x8666; + public static final int GL_MAP1_VERTEX_ATTRIB7_4_NV = 0x8667; + public static final int GL_MAP1_VERTEX_ATTRIB8_4_NV = 0x8668; + public static final int GL_MAP1_VERTEX_ATTRIB9_4_NV = 0x8669; + public static final int GL_MAP1_VERTEX_ATTRIB10_4_NV = 0x866A; + public static final int GL_MAP1_VERTEX_ATTRIB11_4_NV = 0x866B; + public static final int GL_MAP1_VERTEX_ATTRIB12_4_NV = 0x866C; + public static final int GL_MAP1_VERTEX_ATTRIB13_4_NV = 0x866D; + public static final int GL_MAP1_VERTEX_ATTRIB14_4_NV = 0x866E; + public static final int GL_MAP1_VERTEX_ATTRIB15_4_NV = 0x866F; + public static final int GL_MAP2_VERTEX_ATTRIB0_4_NV = 0x8670; + public static final int GL_MAP2_VERTEX_ATTRIB1_4_NV = 0x8671; + public static final int GL_MAP2_VERTEX_ATTRIB2_4_NV = 0x8672; + public static final int GL_MAP2_VERTEX_ATTRIB3_4_NV = 0x8673; + public static final int GL_MAP2_VERTEX_ATTRIB4_4_NV = 0x8674; + public static final int GL_MAP2_VERTEX_ATTRIB5_4_NV = 0x8675; + public static final int GL_MAP2_VERTEX_ATTRIB6_4_NV = 0x8676; + public static final int GL_MAP2_VERTEX_ATTRIB7_4_NV = 0x8677; + public static final int GL_MAP2_VERTEX_ATTRIB8_4_NV = 0x8678; + public static final int GL_MAP2_VERTEX_ATTRIB9_4_NV = 0x8679; + public static final int GL_MAP2_VERTEX_ATTRIB10_4_NV = 0x867A; + public static final int GL_MAP2_VERTEX_ATTRIB11_4_NV = 0x867B; + public static final int GL_MAP2_VERTEX_ATTRIB12_4_NV = 0x867C; + public static final int GL_MAP2_VERTEX_ATTRIB13_4_NV = 0x867D; + public static final int GL_MAP2_VERTEX_ATTRIB14_4_NV = 0x867E; + public static final int GL_MAP2_VERTEX_ATTRIB15_4_NV = 0x867F; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_vertex_program) return; + ext.glAreProgramsResidentNV = load.invoke("glAreProgramsResidentNV", of(JAVA_BYTE, JAVA_INT, ADDRESS, ADDRESS)); + ext.glBindProgramNV = load.invoke("glBindProgramNV", ofVoid(JAVA_INT, JAVA_INT)); + ext.glDeleteProgramsNV = load.invoke("glDeleteProgramsNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glExecuteProgramNV = load.invoke("glExecuteProgramNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGenProgramsNV = load.invoke("glGenProgramsNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetProgramParameterdvNV = load.invoke("glGetProgramParameterdvNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramParameterfvNV = load.invoke("glGetProgramParameterfvNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramivNV = load.invoke("glGetProgramivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetProgramStringNV = load.invoke("glGetProgramStringNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetTrackMatrixivNV = load.invoke("glGetTrackMatrixivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVertexAttribdvNV = load.invoke("glGetVertexAttribdvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVertexAttribfvNV = load.invoke("glGetVertexAttribfvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVertexAttribivNV = load.invoke("glGetVertexAttribivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVertexAttribPointervNV = load.invoke("glGetVertexAttribPointervNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glIsProgramNV = load.invoke("glIsProgramNV", of(JAVA_BYTE, JAVA_INT)); + ext.glLoadProgramNV = load.invoke("glLoadProgramNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramParameter4dNV = load.invoke("glProgramParameter4dNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glProgramParameter4dvNV = load.invoke("glProgramParameter4dvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramParameter4fNV = load.invoke("glProgramParameter4fNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glProgramParameter4fvNV = load.invoke("glProgramParameter4fvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramParameters4dvNV = load.invoke("glProgramParameters4dvNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramParameters4fvNV = load.invoke("glProgramParameters4fvNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glRequestResidentProgramsNV = load.invoke("glRequestResidentProgramsNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glTrackMatrixNV = load.invoke("glTrackMatrixNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glVertexAttribPointerNV = load.invoke("glVertexAttribPointerNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttrib1dNV = load.invoke("glVertexAttrib1dNV", ofVoid(JAVA_INT, JAVA_DOUBLE)); + ext.glVertexAttrib1dvNV = load.invoke("glVertexAttrib1dvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib1fNV = load.invoke("glVertexAttrib1fNV", ofVoid(JAVA_INT, JAVA_FLOAT)); + ext.glVertexAttrib1fvNV = load.invoke("glVertexAttrib1fvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib1sNV = load.invoke("glVertexAttrib1sNV", ofVoid(JAVA_INT, JAVA_SHORT)); + ext.glVertexAttrib1svNV = load.invoke("glVertexAttrib1svNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib2dNV = load.invoke("glVertexAttrib2dNV", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glVertexAttrib2dvNV = load.invoke("glVertexAttrib2dvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib2fNV = load.invoke("glVertexAttrib2fNV", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glVertexAttrib2fvNV = load.invoke("glVertexAttrib2fvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib2sNV = load.invoke("glVertexAttrib2sNV", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT)); + ext.glVertexAttrib2svNV = load.invoke("glVertexAttrib2svNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib3dNV = load.invoke("glVertexAttrib3dNV", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glVertexAttrib3dvNV = load.invoke("glVertexAttrib3dvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib3fNV = load.invoke("glVertexAttrib3fNV", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glVertexAttrib3fvNV = load.invoke("glVertexAttrib3fvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib3sNV = load.invoke("glVertexAttrib3sNV", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glVertexAttrib3svNV = load.invoke("glVertexAttrib3svNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4dNV = load.invoke("glVertexAttrib4dNV", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glVertexAttrib4dvNV = load.invoke("glVertexAttrib4dvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4fNV = load.invoke("glVertexAttrib4fNV", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glVertexAttrib4fvNV = load.invoke("glVertexAttrib4fvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4sNV = load.invoke("glVertexAttrib4sNV", ofVoid(JAVA_INT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glVertexAttrib4svNV = load.invoke("glVertexAttrib4svNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttrib4ubNV = load.invoke("glVertexAttrib4ubNV", ofVoid(JAVA_INT, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE)); + ext.glVertexAttrib4ubvNV = load.invoke("glVertexAttrib4ubvNV", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribs1dvNV = load.invoke("glVertexAttribs1dvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribs1fvNV = load.invoke("glVertexAttribs1fvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribs1svNV = load.invoke("glVertexAttribs1svNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribs2dvNV = load.invoke("glVertexAttribs2dvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribs2fvNV = load.invoke("glVertexAttribs2fvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribs2svNV = load.invoke("glVertexAttribs2svNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribs3dvNV = load.invoke("glVertexAttribs3dvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribs3fvNV = load.invoke("glVertexAttribs3fvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribs3svNV = load.invoke("glVertexAttribs3svNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribs4dvNV = load.invoke("glVertexAttribs4dvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribs4fvNV = load.invoke("glVertexAttribs4fvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribs4svNV = load.invoke("glVertexAttribs4svNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribs4ubvNV = load.invoke("glVertexAttribs4ubvNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static boolean glAreProgramsResidentNV(int n, @NativeType("const GLuint *") MemorySegment programs, @NativeType("GLboolean *") MemorySegment residences) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glAreProgramsResidentNV).invokeExact(n, programs, residences); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBindProgramNV(int target, int id) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindProgramNV).invokeExact(target, id); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeleteProgramsNV(int n, @NativeType("const GLuint *") MemorySegment programs) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeleteProgramsNV).invokeExact(n, programs); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glExecuteProgramNV(int target, int id, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glExecuteProgramNV).invokeExact(target, id, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGenProgramsNV(int n, @NativeType("GLuint *") MemorySegment programs) { + final var ext = getExtCapabilities(); + try { + check(ext.glGenProgramsNV).invokeExact(n, programs); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramParameterdvNV(int target, int index, int pname, @NativeType("GLdouble *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramParameterdvNV).invokeExact(target, index, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramParameterfvNV(int target, int index, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramParameterfvNV).invokeExact(target, index, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramivNV(int id, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramivNV).invokeExact(id, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetProgramStringNV(int id, int pname, @NativeType("GLubyte *") MemorySegment program) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetProgramStringNV).invokeExact(id, pname, program); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetTrackMatrixivNV(int target, int address, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetTrackMatrixivNV).invokeExact(target, address, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVertexAttribdvNV(int index, int pname, @NativeType("GLdouble *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexAttribdvNV).invokeExact(index, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVertexAttribfvNV(int index, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexAttribfvNV).invokeExact(index, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVertexAttribivNV(int index, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexAttribivNV).invokeExact(index, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVertexAttribPointervNV(int index, int pname, @NativeType("void **") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexAttribPointervNV).invokeExact(index, pname, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsProgramNV(int id) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsProgramNV).invokeExact(id); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glLoadProgramNV(int target, int id, int len, @NativeType("const GLubyte *") MemorySegment program) { + final var ext = getExtCapabilities(); + try { + check(ext.glLoadProgramNV).invokeExact(target, id, len, program); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramParameter4dNV(int target, int index, double x, double y, double z, double w) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramParameter4dNV).invokeExact(target, index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramParameter4dvNV(int target, int index, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramParameter4dvNV).invokeExact(target, index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramParameter4fNV(int target, int index, float x, float y, float z, float w) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramParameter4fNV).invokeExact(target, index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramParameter4fvNV(int target, int index, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramParameter4fvNV).invokeExact(target, index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramParameters4dvNV(int target, int index, int count, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramParameters4dvNV).invokeExact(target, index, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramParameters4fvNV(int target, int index, int count, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramParameters4fvNV).invokeExact(target, index, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glRequestResidentProgramsNV(int n, @NativeType("const GLuint *") MemorySegment programs) { + final var ext = getExtCapabilities(); + try { + check(ext.glRequestResidentProgramsNV).invokeExact(n, programs); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTrackMatrixNV(int target, int address, int matrix, int transform) { + final var ext = getExtCapabilities(); + try { + check(ext.glTrackMatrixNV).invokeExact(target, address, matrix, transform); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribPointerNV(int index, int fsize, int type, int stride, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribPointerNV).invokeExact(index, fsize, type, stride, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib1dNV(int index, double x) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib1dNV).invokeExact(index, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib1dvNV(int index, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib1dvNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib1fNV(int index, float x) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib1fNV).invokeExact(index, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib1fvNV(int index, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib1fvNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib1sNV(int index, short x) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib1sNV).invokeExact(index, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib1svNV(int index, @NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib1svNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib2dNV(int index, double x, double y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib2dNV).invokeExact(index, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib2dvNV(int index, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib2dvNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib2fNV(int index, float x, float y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib2fNV).invokeExact(index, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib2fvNV(int index, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib2fvNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib2sNV(int index, short x, short y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib2sNV).invokeExact(index, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib2svNV(int index, @NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib2svNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib3dNV(int index, double x, double y, double z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib3dNV).invokeExact(index, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib3dvNV(int index, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib3dvNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib3fNV(int index, float x, float y, float z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib3fNV).invokeExact(index, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib3fvNV(int index, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib3fvNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib3sNV(int index, short x, short y, short z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib3sNV).invokeExact(index, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib3svNV(int index, @NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib3svNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4dNV(int index, double x, double y, double z, double w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4dNV).invokeExact(index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4dvNV(int index, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4dvNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4fNV(int index, float x, float y, float z, float w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4fNV).invokeExact(index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4fvNV(int index, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4fvNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4sNV(int index, short x, short y, short z, short w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4sNV).invokeExact(index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4svNV(int index, @NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4svNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4ubNV(int index, byte x, byte y, byte z, byte w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4ubNV).invokeExact(index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttrib4ubvNV(int index, @NativeType("const GLubyte *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttrib4ubvNV).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs1dvNV(int index, int count, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs1dvNV).invokeExact(index, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs1fvNV(int index, int count, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs1fvNV).invokeExact(index, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs1svNV(int index, int count, @NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs1svNV).invokeExact(index, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs2dvNV(int index, int count, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs2dvNV).invokeExact(index, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs2fvNV(int index, int count, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs2fvNV).invokeExact(index, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs2svNV(int index, int count, @NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs2svNV).invokeExact(index, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs3dvNV(int index, int count, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs3dvNV).invokeExact(index, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs3fvNV(int index, int count, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs3fvNV).invokeExact(index, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs3svNV(int index, int count, @NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs3svNV).invokeExact(index, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs4dvNV(int index, int count, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs4dvNV).invokeExact(index, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs4fvNV(int index, int count, @NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs4fvNV).invokeExact(index, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs4svNV(int index, int count, @NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs4svNV).invokeExact(index, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribs4ubvNV(int index, int count, @NativeType("const GLubyte *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribs4ubvNV).invokeExact(index, count, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexProgram4.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexProgram4.java new file mode 100644 index 00000000..775ada27 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVertexProgram4.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_vertex_program4} + */ +public final class GLNVVertexProgram4 { + public static final int GL_VERTEX_ATTRIB_ARRAY_INTEGER_NV = 0x88FD; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVideoCapture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVideoCapture.java new file mode 100644 index 00000000..5a46913e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVVideoCapture.java @@ -0,0 +1,161 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_video_capture} + */ +public final class GLNVVideoCapture { + public static final int GL_VIDEO_BUFFER_NV = 0x9020; + public static final int GL_VIDEO_BUFFER_BINDING_NV = 0x9021; + public static final int GL_FIELD_UPPER_NV = 0x9022; + public static final int GL_FIELD_LOWER_NV = 0x9023; + public static final int GL_NUM_VIDEO_CAPTURE_STREAMS_NV = 0x9024; + public static final int GL_NEXT_VIDEO_CAPTURE_BUFFER_STATUS_NV = 0x9025; + public static final int GL_VIDEO_CAPTURE_TO_422_SUPPORTED_NV = 0x9026; + public static final int GL_LAST_VIDEO_CAPTURE_STATUS_NV = 0x9027; + public static final int GL_VIDEO_BUFFER_PITCH_NV = 0x9028; + public static final int GL_VIDEO_COLOR_CONVERSION_MATRIX_NV = 0x9029; + public static final int GL_VIDEO_COLOR_CONVERSION_MAX_NV = 0x902A; + public static final int GL_VIDEO_COLOR_CONVERSION_MIN_NV = 0x902B; + public static final int GL_VIDEO_COLOR_CONVERSION_OFFSET_NV = 0x902C; + public static final int GL_VIDEO_BUFFER_INTERNAL_FORMAT_NV = 0x902D; + public static final int GL_PARTIAL_SUCCESS_NV = 0x902E; + public static final int GL_SUCCESS_NV = 0x902F; + public static final int GL_FAILURE_NV = 0x9030; + public static final int GL_YCBYCR8_422_NV = 0x9031; + public static final int GL_YCBAYCR8A_4224_NV = 0x9032; + public static final int GL_Z6Y10Z6CB10Z6Y10Z6CR10_422_NV = 0x9033; + public static final int GL_Z6Y10Z6CB10Z6A10Z6Y10Z6CR10Z6A10_4224_NV = 0x9034; + public static final int GL_Z4Y12Z4CB12Z4Y12Z4CR12_422_NV = 0x9035; + public static final int GL_Z4Y12Z4CB12Z4A12Z4Y12Z4CR12Z4A12_4224_NV = 0x9036; + public static final int GL_Z4Y12Z4CB12Z4CR12_444_NV = 0x9037; + public static final int GL_VIDEO_CAPTURE_FRAME_WIDTH_NV = 0x9038; + public static final int GL_VIDEO_CAPTURE_FRAME_HEIGHT_NV = 0x9039; + public static final int GL_VIDEO_CAPTURE_FIELD_UPPER_HEIGHT_NV = 0x903A; + public static final int GL_VIDEO_CAPTURE_FIELD_LOWER_HEIGHT_NV = 0x903B; + public static final int GL_VIDEO_CAPTURE_SURFACE_ORIGIN_NV = 0x903C; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_video_capture) return; + ext.glBeginVideoCaptureNV = load.invoke("glBeginVideoCaptureNV", ofVoid(JAVA_INT)); + ext.glBindVideoCaptureStreamBufferNV = load.invoke("glBindVideoCaptureStreamBufferNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glBindVideoCaptureStreamTextureNV = load.invoke("glBindVideoCaptureStreamTextureNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glEndVideoCaptureNV = load.invoke("glEndVideoCaptureNV", ofVoid(JAVA_INT)); + ext.glGetVideoCaptureivNV = load.invoke("glGetVideoCaptureivNV", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVideoCaptureStreamivNV = load.invoke("glGetVideoCaptureStreamivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVideoCaptureStreamfvNV = load.invoke("glGetVideoCaptureStreamfvNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVideoCaptureStreamdvNV = load.invoke("glGetVideoCaptureStreamdvNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVideoCaptureNV = load.invoke("glVideoCaptureNV", of(JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + ext.glVideoCaptureStreamParameterivNV = load.invoke("glVideoCaptureStreamParameterivNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVideoCaptureStreamParameterfvNV = load.invoke("glVideoCaptureStreamParameterfvNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVideoCaptureStreamParameterdvNV = load.invoke("glVideoCaptureStreamParameterdvNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glBeginVideoCaptureNV(int video_capture_slot) { + final var ext = getExtCapabilities(); + try { + check(ext.glBeginVideoCaptureNV).invokeExact(video_capture_slot); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBindVideoCaptureStreamBufferNV(int video_capture_slot, int stream, int frame_region, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindVideoCaptureStreamBufferNV).invokeExact(video_capture_slot, stream, frame_region, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBindVideoCaptureStreamTextureNV(int video_capture_slot, int stream, int frame_region, int target, int texture) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindVideoCaptureStreamTextureNV).invokeExact(video_capture_slot, stream, frame_region, target, texture); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEndVideoCaptureNV(int video_capture_slot) { + final var ext = getExtCapabilities(); + try { + check(ext.glEndVideoCaptureNV).invokeExact(video_capture_slot); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVideoCaptureivNV(int video_capture_slot, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVideoCaptureivNV).invokeExact(video_capture_slot, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVideoCaptureStreamivNV(int video_capture_slot, int stream, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVideoCaptureStreamivNV).invokeExact(video_capture_slot, stream, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVideoCaptureStreamfvNV(int video_capture_slot, int stream, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVideoCaptureStreamfvNV).invokeExact(video_capture_slot, stream, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVideoCaptureStreamdvNV(int video_capture_slot, int stream, int pname, @NativeType("GLdouble *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVideoCaptureStreamdvNV).invokeExact(video_capture_slot, stream, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glVideoCaptureNV(int video_capture_slot, @NativeType("GLuint *") MemorySegment sequence_num, @NativeType("GLuint64EXT *") MemorySegment capture_time) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glVideoCaptureNV).invokeExact(video_capture_slot, sequence_num, capture_time); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVideoCaptureStreamParameterivNV(int video_capture_slot, int stream, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glVideoCaptureStreamParameterivNV).invokeExact(video_capture_slot, stream, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVideoCaptureStreamParameterfvNV(int video_capture_slot, int stream, int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glVideoCaptureStreamParameterfvNV).invokeExact(video_capture_slot, stream, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVideoCaptureStreamParameterdvNV(int video_capture_slot, int stream, int pname, @NativeType("const GLdouble *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glVideoCaptureStreamParameterdvNV).invokeExact(video_capture_slot, stream, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVViewportSwizzle.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVViewportSwizzle.java new file mode 100644 index 00000000..c3b1a994 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/nv/GLNVViewportSwizzle.java @@ -0,0 +1,55 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.nv; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_NV_viewport_swizzle} + */ +public final class GLNVViewportSwizzle { + public static final int GL_VIEWPORT_SWIZZLE_POSITIVE_X_NV = 0x9350; + public static final int GL_VIEWPORT_SWIZZLE_NEGATIVE_X_NV = 0x9351; + public static final int GL_VIEWPORT_SWIZZLE_POSITIVE_Y_NV = 0x9352; + public static final int GL_VIEWPORT_SWIZZLE_NEGATIVE_Y_NV = 0x9353; + public static final int GL_VIEWPORT_SWIZZLE_POSITIVE_Z_NV = 0x9354; + public static final int GL_VIEWPORT_SWIZZLE_NEGATIVE_Z_NV = 0x9355; + public static final int GL_VIEWPORT_SWIZZLE_POSITIVE_W_NV = 0x9356; + public static final int GL_VIEWPORT_SWIZZLE_NEGATIVE_W_NV = 0x9357; + public static final int GL_VIEWPORT_SWIZZLE_X_NV = 0x9358; + public static final int GL_VIEWPORT_SWIZZLE_Y_NV = 0x9359; + public static final int GL_VIEWPORT_SWIZZLE_Z_NV = 0x935A; + public static final int GL_VIEWPORT_SWIZZLE_W_NV = 0x935B; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_NV_viewport_swizzle) return; + ext.glViewportSwizzleNV = load.invoke("glViewportSwizzleNV", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glViewportSwizzleNV(int index, int swizzlex, int swizzley, int swizzlez, int swizzlew) { + final var ext = getExtCapabilities(); + try { + check(ext.glViewportSwizzleNV).invokeExact(index, swizzlex, swizzley, swizzlez, swizzlew); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} From 471be64a8ec1912bf0e3131751dd84e201b669e8 Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Sat, 9 Dec 2023 11:31:32 +0800 Subject: [PATCH 16/20] [OpenGL] Update extensions --- .../kotlin/overrungl/opengl/GLEXT.kt | 2176 +++++++++++++++++ .../overrungl/opengl/OpenGLGenerator.kt | 10 - .../main/java/overrungl/opengl/GLExtCaps.java | 133 +- .../overrungl/opengl/ext/ext/GLEXTAbgr.java | 32 + .../overrungl/opengl/ext/ext/GLEXTBgra.java | 33 + .../opengl/ext/ext/GLEXTBindableUniform.java | 67 + .../opengl/ext/ext/GLEXTBlendColor.java | 48 + .../ext/ext/GLEXTBlendEquationSeparate.java | 45 + .../ext/ext/GLEXTBlendFuncSeparate.java | 47 + .../opengl/ext/ext/GLEXTBlendMinmax.java | 47 + .../opengl/ext/ext/GLEXTBlendSubtract.java | 33 + .../opengl/ext/ext/GLEXTClipVolumeHint.java | 32 + .../overrungl/opengl/ext/ext/GLEXTCmyka.java | 35 + .../opengl/ext/ext/GLEXTColorSubtable.java | 51 + .../ext/ext/GLEXTCompiledVertexArray.java | 53 + .../opengl/ext/ext/GLEXTConvolution.java | 159 ++ .../opengl/ext/ext/GLEXTCoordinateFrame.java | 225 ++ .../opengl/ext/ext/GLEXTCopyTexture.java | 75 + .../opengl/ext/ext/GLEXTCullVertex.java | 54 + .../opengl/ext/ext/GLEXTDebugLabel.java | 57 + .../opengl/ext/ext/GLEXTDebugMarker.java | 59 + .../opengl/ext/ext/GLEXTDepthBoundsTest.java | 45 + .../ext/ext/GLEXTDirectStateAccess.java | 2082 ++++++++++++++++ .../opengl/ext/ext/GLEXTDrawBuffers2.java | 43 + .../opengl/ext/ext/GLEXTDrawInstanced.java | 51 + .../ext/ext/GLEXTDrawRangedElements.java | 45 + .../opengl/ext/ext/GLEXTEGLImageStorage.java | 51 + .../opengl/ext/ext/GLEXTExternalBuffer.java | 51 + .../opengl/ext/ext/GLEXTFogCoord.java | 83 + .../opengl/ext/ext/GLEXTFramebufferBlit.java | 47 + .../ext/ext/GLEXTFramebufferBlitLayers.java | 51 + .../ext/ext/GLEXTFramebufferMultisample.java | 46 + ...GLEXTFramebufferMultisampleBlitScaled.java | 33 + .../ext/ext/GLEXTFramebufferObject.java | 225 ++ .../overrungl/opengl/ext/ext/GLEXTSrgb.java | 33 + 35 files changed, 6304 insertions(+), 53 deletions(-) create mode 100644 modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLEXT.kt create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTAbgr.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBgra.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBindableUniform.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendColor.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendEquationSeparate.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendFuncSeparate.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendMinmax.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendSubtract.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTClipVolumeHint.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCmyka.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTColorSubtable.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCompiledVertexArray.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTConvolution.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCoordinateFrame.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCopyTexture.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCullVertex.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDebugLabel.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDebugMarker.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDepthBoundsTest.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDirectStateAccess.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDrawBuffers2.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDrawInstanced.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDrawRangedElements.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTEGLImageStorage.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTExternalBuffer.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFogCoord.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferBlit.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferBlitLayers.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferMultisample.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferMultisampleBlitScaled.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferObject.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSrgb.java diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLEXT.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLEXT.kt new file mode 100644 index 00000000..2c15a919 --- /dev/null +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLEXT.kt @@ -0,0 +1,2176 @@ +/* + * MIT License + * + * Copyright (c) 2023 Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +package overrungl.opengl + +import overrungl.opengl.OpenGLExt.EXT + +/** + * @author squid233 + * @since 0.1.0 + */ +fun ext() { + file( + "422Pixels", EXT, "GL_EXT_422_pixels", + "GL_422_EXT" to "0x80CC", + "GL_422_REV_EXT" to "0x80CD", + "GL_422_AVERAGE_EXT" to "0x80CE", + "GL_422_REV_AVERAGE_EXT" to "0x80CF" + ) + file("EGLImageStorage", EXT, "GL_EXT_EGL_image_storage") { + "glEGLImageTargetTexStorageEXT"( + void, + GLenum("target"), + address("image", "GLeglImageOES"), + address("attrib_list", "const GLint*") + ) + "glEGLImageTargetTextureStorageEXT"( + void, + GLuint("texture"), + address("image", "GLeglImageOES"), + address("attrib_list", "const GLint*") + ) + } + file("Abgr", EXT, "GL_EXT_abgr", "GL_ABGR_EXT" to "0x8000") + file( + "Bgra", EXT, "GL_EXT_bgra", + "GL_BGR_EXT" to "0x80E0", + "GL_BGRA_EXT" to "0x80E1" + ) + file("BindableUniform", EXT, "GL_EXT_bindable_uniform") { + "GL_MAX_VERTEX_BINDABLE_UNIFORMS_EXT"("0x8DE2") + "GL_MAX_FRAGMENT_BINDABLE_UNIFORMS_EXT"("0x8DE3") + "GL_MAX_GEOMETRY_BINDABLE_UNIFORMS_EXT"("0x8DE4") + "GL_MAX_BINDABLE_UNIFORM_SIZE_EXT"("0x8DED") + "GL_UNIFORM_BUFFER_EXT"("0x8DEE") + "GL_UNIFORM_BUFFER_BINDING_EXT"("0x8DEF") + "glUniformBufferEXT"(void, GLuint("program"), GLint("location"), GLuint("buffer")) + "glGetUniformBufferSizeEXT"(GLint, GLuint("program"), GLint("location")) + "glGetUniformOffsetEXT"(GLintptr, GLuint("program"), GLint("location")) + } + file("BlendColor", EXT, "GL_EXT_blend_color") { + "GL_CONSTANT_COLOR_EXT"("0x8001") + "GL_ONE_MINUS_CONSTANT_COLOR_EXT"("0x8002") + "GL_CONSTANT_ALPHA_EXT"("0x8003") + "GL_ONE_MINUS_CONSTANT_ALPHA_EXT"("0x8004") + "GL_BLEND_COLOR_EXT"("0x8005") + "glBlendColorEXT"(void, GLfloat("red"), GLfloat("green"), GLfloat("blue"), GLfloat("alpha")) + } + file("BlendEquationSeparate", EXT, "GL_EXT_blend_equation_separate") { + "GL_BLEND_EQUATION_RGB_EXT"("0x8009") + "GL_BLEND_EQUATION_ALPHA_EXT"("0x883D") + "glBlendEquationSeparateEXT"(void, GLenum("modeRGB"), GLenum("modeAlpha")) + } + file("BlendFuncSeparate", EXT, "GL_EXT_blend_func_separate") { + "GL_BLEND_DST_RGB_EXT"("0x80C8") + "GL_BLEND_SRC_RGB_EXT"("0x80C9") + "GL_BLEND_DST_ALPHA_EXT"("0x80CA") + "GL_BLEND_SRC_ALPHA_EXT"("0x80CB") + "glBlendFuncSeparateEXT"( + void, + GLenum("sfactorRGB"), + GLenum("dfactorRGB"), + GLenum("sfactorAlpha"), + GLenum("dfactorAlpha") + ) + } + file("BlendMinmax", EXT, "GL_EXT_blend_minmax") { + "GL_MIN_EXT"("0x8007") + "GL_MAX_EXT"("0x8008") + "GL_FUNC_ADD_EXT"("0x8006") + "GL_BLEND_EQUATION_EXT"("0x8009") + "glBlendEquationEXT"(void, GLenum("mode")) + } + file( + "BlendSubtract", EXT, "GL_EXT_blend_subtract", + "GL_FUNC_SUBTRACT_EXT" to "0x800A", + "GL_FUNC_REVERSE_SUBTRACT_EXT" to "0x800B" + ) + file("ClipVolumeHint", EXT, "GL_EXT_clip_volume_hint", "GL_CLIP_VOLUME_CLIPPING_HINT_EXT" to "0x80F0") + file( + "Cmyka", EXT, "GL_EXT_cmyka", + "GL_CMYK_EXT" to "0x800C", + "GL_CMYKA_EXT" to "0x800D", + "GL_PACK_CMYK_HINT_EXT" to "0x800E", + "GL_UNPACK_CMYK_HINT_EXT" to "0x800F" + ) + file("ColorSubtable", EXT, "GL_EXT_color_subtable") { + "glColorSubTableEXT"( + void, + GLenum("target"), + GLsizei("start"), + GLsizei("count"), + GLenum("format"), + GLenum("type"), + address("data", "const void *") + ) + "glCopyColorSubTableEXT"(void, GLenum("target"), GLsizei("start"), GLint("x"), GLint("y"), GLsizei("width")) + } + file("CompiledVertexArray", EXT, "GL_EXT_compiled_vertex_array") { + "GL_ARRAY_ELEMENT_LOCK_FIRST_EXT"("0x81A8") + "GL_ARRAY_ELEMENT_LOCK_COUNT_EXT"("0x81A9") + "glLockArraysEXT"(void, GLint("first"), GLsizei("count")) + "glUnlockArraysEXT"(void) + } + file("Convolution", EXT, "GL_EXT_convolution") { + "GL_CONVOLUTION_1D_EXT"("0x8010") + "GL_CONVOLUTION_2D_EXT"("0x8011") + "GL_SEPARABLE_2D_EXT"("0x8012") + "GL_CONVOLUTION_BORDER_MODE_EXT"("0x8013") + "GL_CONVOLUTION_FILTER_SCALE_EXT"("0x8014") + "GL_CONVOLUTION_FILTER_BIAS_EXT"("0x8015") + "GL_REDUCE_EXT"("0x8016") + "GL_CONVOLUTION_FORMAT_EXT"("0x8017") + "GL_CONVOLUTION_WIDTH_EXT"("0x8018") + "GL_CONVOLUTION_HEIGHT_EXT"("0x8019") + "GL_MAX_CONVOLUTION_WIDTH_EXT"("0x801A") + "GL_MAX_CONVOLUTION_HEIGHT_EXT"("0x801B") + "GL_POST_CONVOLUTION_RED_SCALE_EXT"("0x801C") + "GL_POST_CONVOLUTION_GREEN_SCALE_EXT"("0x801D") + "GL_POST_CONVOLUTION_BLUE_SCALE_EXT"("0x801E") + "GL_POST_CONVOLUTION_ALPHA_SCALE_EXT"("0x801F") + "GL_POST_CONVOLUTION_RED_BIAS_EXT"("0x8020") + "GL_POST_CONVOLUTION_GREEN_BIAS_EXT"("0x8021") + "GL_POST_CONVOLUTION_BLUE_BIAS_EXT"("0x8022") + "GL_POST_CONVOLUTION_ALPHA_BIAS_EXT"("0x8023") + "glConvolutionFilter1DEXT"( + void, + GLenum("target"), + GLenum("internalformat"), + GLsizei("width"), + GLenum("format"), + GLenum("type"), + address("image", "const void *") + ) + "glConvolutionFilter2DEXT"( + void, + GLenum("target"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLenum("format"), + GLenum("type"), + address("image", "const void *") + ) + "glConvolutionParameterfEXT"(void, GLenum("target"), GLenum("pname"), GLfloat("params")) + "glConvolutionParameterfvEXT"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfloat *")) + "glConvolutionParameteriEXT"(void, GLenum("target"), GLenum("pname"), GLint("params")) + "glConvolutionParameterivEXT"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) + "glCopyConvolutionFilter1DEXT"( + void, + GLenum("target"), + GLenum("internalformat"), + GLint("x"), + GLint("y"), + GLsizei("width") + ) + "glCopyConvolutionFilter2DEXT"( + void, + GLenum("target"), + GLenum("internalformat"), + GLint("x"), + GLint("y"), + GLsizei("width"), + GLsizei("height") + ) + "glGetConvolutionFilterEXT"( + void, + GLenum("target"), + GLenum("format"), + GLenum("type"), + address("image", "void *") + ) + "glGetConvolutionParameterfvEXT"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + "glGetConvolutionParameterivEXT"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetSeparableFilterEXT"( + void, + GLenum("target"), + GLenum("format"), + GLenum("type"), + address("row", "void *"), + address("column", "void *"), + address("span", "void *") + ) + "glSeparableFilter2DEXT"( + void, + GLenum("target"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLenum("format"), + GLenum("type"), + address("row", "const void *"), + address("column", "const void *") + ) + } + file("CoordinateFrame", EXT, "GL_EXT_coordinate_frame") { + "GL_TANGENT_ARRAY_EXT"("0x8439") + "GL_BINORMAL_ARRAY_EXT"("0x843A") + "GL_CURRENT_TANGENT_EXT"("0x843B") + "GL_CURRENT_BINORMAL_EXT"("0x843C") + "GL_TANGENT_ARRAY_TYPE_EXT"("0x843E") + "GL_TANGENT_ARRAY_STRIDE_EXT"("0x843F") + "GL_BINORMAL_ARRAY_TYPE_EXT"("0x8440") + "GL_BINORMAL_ARRAY_STRIDE_EXT"("0x8441") + "GL_TANGENT_ARRAY_POINTER_EXT"("0x8442") + "GL_BINORMAL_ARRAY_POINTER_EXT"("0x8443") + "GL_MAP1_TANGENT_EXT"("0x8444") + "GL_MAP2_TANGENT_EXT"("0x8445") + "GL_MAP1_BINORMAL_EXT"("0x8446") + "GL_MAP2_BINORMAL_EXT"("0x8447") + "glTangent3bEXT"(void, GLbyte("tx"), GLbyte("ty"), GLbyte("tz")) + "glTangent3bvEXT"(void, address("v", "const GLbyte *")) + "glTangent3dEXT"(void, GLdouble("tx"), GLdouble("ty"), GLdouble("tz")) + "glTangent3dvEXT"(void, address("v", "const GLdouble *")) + "glTangent3fEXT"(void, GLfloat("tx"), GLfloat("ty"), GLfloat("tz")) + "glTangent3fvEXT"(void, address("v", "const GLfloat *")) + "glTangent3iEXT"(void, GLint("tx"), GLint("ty"), GLint("tz")) + "glTangent3ivEXT"(void, address("v", "const GLint *")) + "glTangent3sEXT"(void, GLshort("tx"), GLshort("ty"), GLshort("tz")) + "glTangent3svEXT"(void, address("v", "const GLshort *")) + "glBinormal3bEXT"(void, GLbyte("bx"), GLbyte("by"), GLbyte("bz")) + "glBinormal3bvEXT"(void, address("v", "const GLbyte *")) + "glBinormal3dEXT"(void, GLdouble("bx"), GLdouble("by"), GLdouble("bz")) + "glBinormal3dvEXT"(void, address("v", "const GLdouble *")) + "glBinormal3fEXT"(void, GLfloat("bx"), GLfloat("by"), GLfloat("bz")) + "glBinormal3fvEXT"(void, address("v", "const GLfloat *")) + "glBinormal3iEXT"(void, GLint("bx"), GLint("by"), GLint("bz")) + "glBinormal3ivEXT"(void, address("v", "const GLint *")) + "glBinormal3sEXT"(void, GLshort("bx"), GLshort("by"), GLshort("bz")) + "glBinormal3svEXT"(void, address("v", "const GLshort *")) + "glTangentPointerEXT"(void, GLenum("type"), GLsizei("stride"), address("pointer", "const void *")) + "glBinormalPointerEXT"(void, GLenum("type"), GLsizei("stride"), address("pointer", "const void *")) + } + file("CopyTexture", EXT, "GL_EXT_copy_texture") { + "glCopyTexImage1DEXT"( + void, + GLenum("target"), + GLint("level"), + GLenum("internalformat"), + GLint("x"), + GLint("y"), + GLsizei("width"), + GLint("border") + ) + "glCopyTexImage2DEXT"( + void, + GLenum("target"), + GLint("level"), + GLenum("internalformat"), + GLint("x"), + GLint("y"), + GLsizei("width"), + GLsizei("height"), + GLint("border") + ) + "glCopyTexSubImage1DEXT"( + void, + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("x"), + GLint("y"), + GLsizei("width") + ) + "glCopyTexSubImage2DEXT"( + void, + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLint("x"), + GLint("y"), + GLsizei("width"), + GLsizei("height") + ) + "glCopyTexSubImage3DEXT"( + void, + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLint("zoffset"), + GLint("x"), + GLint("y"), + GLsizei("width"), + GLsizei("height") + ) + } + file("CullVertex", EXT, "GL_EXT_cull_vertex") { + "GL_CULL_VERTEX_EXT"("0x81AA") + "GL_CULL_VERTEX_EYE_POSITION_EXT"("0x81AB") + "GL_CULL_VERTEX_OBJECT_POSITION_EXT"("0x81AC") + "glCullParameterdvEXT"(void, GLenum("pname"), address("params", "GLdouble *")) + "glCullParameterfvEXT"(void, GLenum("pname"), address("params", "GLfloat *")) + } + file("DebugLabel", EXT, "GL_EXT_debug_label") { + "GL_PROGRAM_PIPELINE_OBJECT_EXT"("0x8A4F") + "GL_PROGRAM_OBJECT_EXT"("0x8B40") + "GL_SHADER_OBJECT_EXT"("0x8B48") + "GL_BUFFER_OBJECT_EXT"("0x9151") + "GL_QUERY_OBJECT_EXT"("0x9153") + "GL_VERTEX_ARRAY_OBJECT_EXT"("0x9154") + "glLabelObjectEXT"( + void, + GLenum("type"), + GLuint("object"), + GLsizei("length"), + address("label", "const GLchar *") + ) + "glGetObjectLabelEXT"( + void, + GLenum("type"), + GLuint("object"), + GLsizei("bufSize"), + address("length", "GLsizei *"), + address("label", "GLchar *") + ) + } + file("DebugMarker", EXT, "GL_EXT_debug_marker") { + "glInsertEventMarkerEXT"(void, GLsizei("length"), address("marker", "const GLchar *")) + "glPushGroupMarkerEXT"(void, GLsizei("length"), address("marker", "const GLchar *")) + "glPopGroupMarkerEXT"(void) + } + file("DepthBoundsTest", EXT, "GL_EXT_depth_bounds_test") { + "GL_DEPTH_BOUNDS_TEST_EXT"("0x8890") + "GL_DEPTH_BOUNDS_EXT"("0x8891") + "glDepthBoundsEXT"(void, GLclampd("zmin"), GLclampd("zmax")) + } + file("DirectStateAccess", EXT, "GL_EXT_direct_state_access") { + "GL_PROGRAM_MATRIX_EXT"("0x8E2D") + "GL_TRANSPOSE_PROGRAM_MATRIX_EXT"("0x8E2E") + "GL_PROGRAM_MATRIX_STACK_DEPTH_EXT"("0x8E2F") + "glMatrixLoadfEXT"(void, GLenum("mode"), address("m", "const GLfloat *")) + "glMatrixLoaddEXT"(void, GLenum("mode"), address("m", "const GLdouble *")) + "glMatrixMultfEXT"(void, GLenum("mode"), address("m", "const GLfloat *")) + "glMatrixMultdEXT"(void, GLenum("mode"), address("m", "const GLdouble *")) + "glMatrixLoadIdentityEXT"(void, GLenum("mode")) + "glMatrixRotatefEXT"(void, GLenum("mode"), GLfloat("angle"), GLfloat("x"), GLfloat("y"), GLfloat("z")) + "glMatrixRotatedEXT"(void, GLenum("mode"), GLdouble("angle"), GLdouble("x"), GLdouble("y"), GLdouble("z")) + "glMatrixScalefEXT"(void, GLenum("mode"), GLfloat("x"), GLfloat("y"), GLfloat("z")) + "glMatrixScaledEXT"(void, GLenum("mode"), GLdouble("x"), GLdouble("y"), GLdouble("z")) + "glMatrixTranslatefEXT"(void, GLenum("mode"), GLfloat("x"), GLfloat("y"), GLfloat("z")) + "glMatrixTranslatedEXT"(void, GLenum("mode"), GLdouble("x"), GLdouble("y"), GLdouble("z")) + "glMatrixFrustumEXT"( + void, + GLenum("mode"), + GLdouble("left"), + GLdouble("right"), + GLdouble("bottom"), + GLdouble("top"), + GLdouble("zNear"), + GLdouble("zFar") + ) + "glMatrixOrthoEXT"( + void, + GLenum("mode"), + GLdouble("left"), + GLdouble("right"), + GLdouble("bottom"), + GLdouble("top"), + GLdouble("zNear"), + GLdouble("zFar") + ) + "glMatrixPopEXT"(void, GLenum("mode")) + "glMatrixPushEXT"(void, GLenum("mode")) + "glClientAttribDefaultEXT"(void, GLbitfield("mask")) + "glPushClientAttribDefaultEXT"(void, GLbitfield("mask")) + "glTextureParameterfEXT"(void, GLuint("texture"), GLenum("target"), GLenum("pname"), GLfloat("param")) + "glTextureParameterfvEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLenum("pname"), + address("params", "const GLfloat *") + ) + "glTextureParameteriEXT"(void, GLuint("texture"), GLenum("target"), GLenum("pname"), GLint("param")) + "glTextureParameterivEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLenum("pname"), + address("params", "const GLint *") + ) + "glTextureImage1DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLint("internalformat"), + GLsizei("width"), + GLint("border"), + GLenum("format"), + GLenum("type"), + address("pixels", "const void *") + ) + "glTextureImage2DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLint("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLint("border"), + GLenum("format"), + GLenum("type"), + address("pixels", "const void *") + ) + "glTextureSubImage1DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLsizei("width"), + GLenum("format"), + GLenum("type"), + address("pixels", "const void *") + ) + "glTextureSubImage2DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLsizei("width"), + GLsizei("height"), + GLenum("format"), + GLenum("type"), + address("pixels", "const void *") + ) + "glCopyTextureImage1DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLenum("internalformat"), + GLint("x"), + GLint("y"), + GLsizei("width"), + GLint("border") + ) + "glCopyTextureImage2DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLenum("internalformat"), + GLint("x"), + GLint("y"), + GLsizei("width"), + GLsizei("height"), + GLint("border") + ) + "glCopyTextureSubImage1DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("x"), + GLint("y"), + GLsizei("width") + ) + "glCopyTextureSubImage2DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLint("x"), + GLint("y"), + GLsizei("width"), + GLsizei("height") + ) + "glGetTextureImageEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLenum("format"), + GLenum("type"), + address("pixels", "void *") + ) + "glGetTextureParameterfvEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLenum("pname"), + address("params", "GLfloat *") + ) + "glGetTextureParameterivEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLenum("pname"), + address("params", "GLint *") + ) + "glGetTextureLevelParameterfvEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLenum("pname"), + address("params", "GLfloat *") + ) + "glGetTextureLevelParameterivEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLenum("pname"), + address("params", "GLint *") + ) + "glTextureImage3DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLint("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLint("border"), + GLenum("format"), + GLenum("type"), + address("pixels", "const void *") + ) + "glTextureSubImage3DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLint("zoffset"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLenum("format"), + GLenum("type"), + address("pixels", "const void *") + ) + "glCopyTextureSubImage3DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLint("zoffset"), + GLint("x"), + GLint("y"), + GLsizei("width"), + GLsizei("height") + ) + "glBindMultiTextureEXT"(void, GLenum("texunit"), GLenum("target"), GLuint("texture")) + "glMultiTexCoordPointerEXT"( + void, + GLenum("texunit"), + GLint("size"), + GLenum("type"), + GLsizei("stride"), + address("pointer", "const void *") + ) + "glMultiTexEnvfEXT"(void, GLenum("texunit"), GLenum("target"), GLenum("pname"), GLfloat("param")) + "glMultiTexEnvfvEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLenum("pname"), + address("params", "const GLfloat *") + ) + "glMultiTexEnviEXT"(void, GLenum("texunit"), GLenum("target"), GLenum("pname"), GLint("param")) + "glMultiTexEnvivEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLenum("pname"), + address("params", "const GLint *") + ) + "glMultiTexGendEXT"(void, GLenum("texunit"), GLenum("coord"), GLenum("pname"), GLdouble("param")) + "glMultiTexGendvEXT"( + void, + GLenum("texunit"), + GLenum("coord"), + GLenum("pname"), + address("params", "const GLdouble *") + ) + "glMultiTexGenfEXT"(void, GLenum("texunit"), GLenum("coord"), GLenum("pname"), GLfloat("param")) + "glMultiTexGenfvEXT"( + void, + GLenum("texunit"), + GLenum("coord"), + GLenum("pname"), + address("params", "const GLfloat *") + ) + "glMultiTexGeniEXT"(void, GLenum("texunit"), GLenum("coord"), GLenum("pname"), GLint("param")) + "glMultiTexGenivEXT"( + void, + GLenum("texunit"), + GLenum("coord"), + GLenum("pname"), + address("params", "const GLint *") + ) + "glGetMultiTexEnvfvEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLenum("pname"), + address("params", "GLfloat *") + ) + "glGetMultiTexEnvivEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLenum("pname"), + address("params", "GLint *") + ) + "glGetMultiTexGendvEXT"( + void, + GLenum("texunit"), + GLenum("coord"), + GLenum("pname"), + address("params", "GLdouble *") + ) + "glGetMultiTexGenfvEXT"( + void, + GLenum("texunit"), + GLenum("coord"), + GLenum("pname"), + address("params", "GLfloat *") + ) + "glGetMultiTexGenivEXT"(void, GLenum("texunit"), GLenum("coord"), GLenum("pname"), address("params", "GLint *")) + "glMultiTexParameteriEXT"(void, GLenum("texunit"), GLenum("target"), GLenum("pname"), GLint("param")) + "glMultiTexParameterivEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLenum("pname"), + address("params", "const GLint *") + ) + "glMultiTexParameterfEXT"(void, GLenum("texunit"), GLenum("target"), GLenum("pname"), GLfloat("param")) + "glMultiTexParameterfvEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLenum("pname"), + address("params", "const GLfloat *") + ) + "glMultiTexImage1DEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLint("internalformat"), + GLsizei("width"), + GLint("border"), + GLenum("format"), + GLenum("type"), + address("pixels", "const void *") + ) + "glMultiTexImage2DEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLint("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLint("border"), + GLenum("format"), + GLenum("type"), + address("pixels", "const void *") + ) + "glMultiTexSubImage1DEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLsizei("width"), + GLenum("format"), + GLenum("type"), + address("pixels", "const void *") + ) + "glMultiTexSubImage2DEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLsizei("width"), + GLsizei("height"), + GLenum("format"), + GLenum("type"), + address("pixels", "const void *") + ) + "glCopyMultiTexImage1DEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLenum("internalformat"), + GLint("x"), + GLint("y"), + GLsizei("width"), + GLint("border") + ) + "glCopyMultiTexImage2DEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLenum("internalformat"), + GLint("x"), + GLint("y"), + GLsizei("width"), + GLsizei("height"), + GLint("border") + ) + "glCopyMultiTexSubImage1DEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("x"), + GLint("y"), + GLsizei("width") + ) + "glCopyMultiTexSubImage2DEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLint("x"), + GLint("y"), + GLsizei("width"), + GLsizei("height") + ) + "glGetMultiTexImageEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLenum("format"), + GLenum("type"), + address("pixels", "void *") + ) + "glGetMultiTexParameterfvEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLenum("pname"), + address("params", "GLfloat *") + ) + "glGetMultiTexParameterivEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLenum("pname"), + address("params", "GLint *") + ) + "glGetMultiTexLevelParameterfvEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLenum("pname"), + address("params", "GLfloat *") + ) + "glGetMultiTexLevelParameterivEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLenum("pname"), + address("params", "GLint *") + ) + "glMultiTexImage3DEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLint("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLint("border"), + GLenum("format"), + GLenum("type"), + address("pixels", "const void *") + ) + "glMultiTexSubImage3DEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLint("zoffset"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLenum("format"), + GLenum("type"), + address("pixels", "const void *") + ) + "glCopyMultiTexSubImage3DEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLint("zoffset"), + GLint("x"), + GLint("y"), + GLsizei("width"), + GLsizei("height") + ) + "glEnableClientStateIndexedEXT"(void, GLenum("array"), GLuint("index")) + "glDisableClientStateIndexedEXT"(void, GLenum("array"), GLuint("index")) + "glGetFloatIndexedvEXT"(void, GLenum("target"), GLuint("index"), address("data", "GLfloat *")) + "glGetDoubleIndexedvEXT"(void, GLenum("target"), GLuint("index"), address("data", "GLdouble *")) + "glGetPointerIndexedvEXT"(void, GLenum("target"), GLuint("index"), address("data", "void **")) + "glEnableIndexedEXT"(void, GLenum("target"), GLuint("index")) + "glDisableIndexedEXT"(void, GLenum("target"), GLuint("index")) + "glIsEnabledIndexedEXT"(GLboolean, GLenum("target"), GLuint("index")) + "glGetIntegerIndexedvEXT"(void, GLenum("target"), GLuint("index"), address("data", "GLint *")) + "glGetBooleanIndexedvEXT"(void, GLenum("target"), GLuint("index"), address("data", "GLboolean *")) + "glCompressedTextureImage3DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLint("border"), + GLsizei("imageSize"), + address("bits", "const void *") + ) + "glCompressedTextureImage2DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLint("border"), + GLsizei("imageSize"), + address("bits", "const void *") + ) + "glCompressedTextureImage1DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLenum("internalformat"), + GLsizei("width"), + GLint("border"), + GLsizei("imageSize"), + address("bits", "const void *") + ) + "glCompressedTextureSubImage3DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLint("zoffset"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLenum("format"), + GLsizei("imageSize"), + address("bits", "const void *") + ) + "glCompressedTextureSubImage2DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLsizei("width"), + GLsizei("height"), + GLenum("format"), + GLsizei("imageSize"), + address("bits", "const void *") + ) + "glCompressedTextureSubImage1DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLsizei("width"), + GLenum("format"), + GLsizei("imageSize"), + address("bits", "const void *") + ) + "glGetCompressedTextureImageEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLint("lod"), + address("img", "void *") + ) + "glCompressedMultiTexImage3DEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLint("border"), + GLsizei("imageSize"), + address("bits", "const void *") + ) + "glCompressedMultiTexImage2DEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLint("border"), + GLsizei("imageSize"), + address("bits", "const void *") + ) + "glCompressedMultiTexImage1DEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLenum("internalformat"), + GLsizei("width"), + GLint("border"), + GLsizei("imageSize"), + address("bits", "const void *") + ) + "glCompressedMultiTexSubImage3DEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLint("zoffset"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLenum("format"), + GLsizei("imageSize"), + address("bits", "const void *") + ) + "glCompressedMultiTexSubImage2DEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLsizei("width"), + GLsizei("height"), + GLenum("format"), + GLsizei("imageSize"), + address("bits", "const void *") + ) + "glCompressedMultiTexSubImage1DEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLsizei("width"), + GLenum("format"), + GLsizei("imageSize"), + address("bits", "const void *") + ) + "glGetCompressedMultiTexImageEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLint("lod"), + address("img", "void *") + ) + "glMatrixLoadTransposefEXT"(void, GLenum("mode"), address("m", "const GLfloat *")) + "glMatrixLoadTransposedEXT"(void, GLenum("mode"), address("m", "const GLdouble *")) + "glMatrixMultTransposefEXT"(void, GLenum("mode"), address("m", "const GLfloat *")) + "glMatrixMultTransposedEXT"(void, GLenum("mode"), address("m", "const GLdouble *")) + "glNamedBufferDataEXT"( + void, + GLuint("buffer"), + GLsizeiptr("size"), + address("data", "const void *"), + GLenum("usage") + ) + "glNamedBufferSubDataEXT"( + void, + GLuint("buffer"), + GLintptr("offset"), + GLsizeiptr("size"), + address("data", "const void *") + ) + "glMapNamedBufferEXT"(address, GLuint("buffer"), GLenum("access"), nativeType = "void *") + "glUnmapNamedBufferEXT"(GLboolean, GLuint("buffer")) + "glGetNamedBufferParameterivEXT"(void, GLuint("buffer"), GLenum("pname"), address("params", "GLint *")) + "glGetNamedBufferPointervEXT"(void, GLuint("buffer"), GLenum("pname"), address("params", "void **")) + "glGetNamedBufferSubDataEXT"( + void, + GLuint("buffer"), + GLintptr("offset"), + GLsizeiptr("size"), + address("data", "void *") + ) + "glProgramUniform1fEXT"(void, GLuint("program"), GLint("location"), GLfloat("v0")) + "glProgramUniform2fEXT"(void, GLuint("program"), GLint("location"), GLfloat("v0"), GLfloat("v1")) + "glProgramUniform3fEXT"(void, GLuint("program"), GLint("location"), GLfloat("v0"), GLfloat("v1"), GLfloat("v2")) + "glProgramUniform4fEXT"( + void, + GLuint("program"), + GLint("location"), + GLfloat("v0"), + GLfloat("v1"), + GLfloat("v2"), + GLfloat("v3") + ) + "glProgramUniform1iEXT"(void, GLuint("program"), GLint("location"), GLint("v0")) + "glProgramUniform2iEXT"(void, GLuint("program"), GLint("location"), GLint("v0"), GLint("v1")) + "glProgramUniform3iEXT"(void, GLuint("program"), GLint("location"), GLint("v0"), GLint("v1"), GLint("v2")) + "glProgramUniform4iEXT"( + void, + GLuint("program"), + GLint("location"), + GLint("v0"), + GLint("v1"), + GLint("v2"), + GLint("v3") + ) + "glProgramUniform1fvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLfloat *") + ) + "glProgramUniform2fvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLfloat *") + ) + "glProgramUniform3fvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLfloat *") + ) + "glProgramUniform4fvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLfloat *") + ) + "glProgramUniform1ivEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint *") + ) + "glProgramUniform2ivEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint *") + ) + "glProgramUniform3ivEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint *") + ) + "glProgramUniform4ivEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLint *") + ) + "glProgramUniformMatrix2fvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + GLboolean("transpose"), + address("value", "const GLfloat *") + ) + "glProgramUniformMatrix3fvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + GLboolean("transpose"), + address("value", "const GLfloat *") + ) + "glProgramUniformMatrix4fvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + GLboolean("transpose"), + address("value", "const GLfloat *") + ) + "glProgramUniformMatrix2x3fvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + GLboolean("transpose"), + address("value", "const GLfloat *") + ) + "glProgramUniformMatrix3x2fvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + GLboolean("transpose"), + address("value", "const GLfloat *") + ) + "glProgramUniformMatrix2x4fvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + GLboolean("transpose"), + address("value", "const GLfloat *") + ) + "glProgramUniformMatrix4x2fvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + GLboolean("transpose"), + address("value", "const GLfloat *") + ) + "glProgramUniformMatrix3x4fvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + GLboolean("transpose"), + address("value", "const GLfloat *") + ) + "glProgramUniformMatrix4x3fvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + GLboolean("transpose"), + address("value", "const GLfloat *") + ) + "glTextureBufferEXT"(void, GLuint("texture"), GLenum("target"), GLenum("internalformat"), GLuint("buffer")) + "glMultiTexBufferEXT"(void, GLenum("texunit"), GLenum("target"), GLenum("internalformat"), GLuint("buffer")) + "glTextureParameterIivEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLenum("pname"), + address("params", "const GLint *") + ) + "glTextureParameterIuivEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLenum("pname"), + address("params", "const GLuint *") + ) + "glGetTextureParameterIivEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLenum("pname"), + address("params", "GLint *") + ) + "glGetTextureParameterIuivEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLenum("pname"), + address("params", "GLuint *") + ) + "glMultiTexParameterIivEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLenum("pname"), + address("params", "const GLint *") + ) + "glMultiTexParameterIuivEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLenum("pname"), + address("params", "const GLuint *") + ) + "glGetMultiTexParameterIivEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLenum("pname"), + address("params", "GLint *") + ) + "glGetMultiTexParameterIuivEXT"( + void, + GLenum("texunit"), + GLenum("target"), + GLenum("pname"), + address("params", "GLuint *") + ) + "glProgramUniform1uiEXT"(void, GLuint("program"), GLint("location"), GLuint("v0")) + "glProgramUniform2uiEXT"(void, GLuint("program"), GLint("location"), GLuint("v0"), GLuint("v1")) + "glProgramUniform3uiEXT"(void, GLuint("program"), GLint("location"), GLuint("v0"), GLuint("v1"), GLuint("v2")) + "glProgramUniform4uiEXT"( + void, + GLuint("program"), + GLint("location"), + GLuint("v0"), + GLuint("v1"), + GLuint("v2"), + GLuint("v3") + ) + "glProgramUniform1uivEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint *") + ) + "glProgramUniform2uivEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint *") + ) + "glProgramUniform3uivEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint *") + ) + "glProgramUniform4uivEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLuint *") + ) + "glNamedProgramLocalParameters4fvEXT"( + void, + GLuint("program"), + GLenum("target"), + GLuint("index"), + GLsizei("count"), + address("params", "const GLfloat *") + ) + "glNamedProgramLocalParameterI4iEXT"( + void, + GLuint("program"), + GLenum("target"), + GLuint("index"), + GLint("x"), + GLint("y"), + GLint("z"), + GLint("w") + ) + "glNamedProgramLocalParameterI4ivEXT"( + void, + GLuint("program"), + GLenum("target"), + GLuint("index"), + address("params", "const GLint *") + ) + "glNamedProgramLocalParametersI4ivEXT"( + void, + GLuint("program"), + GLenum("target"), + GLuint("index"), + GLsizei("count"), + address("params", "const GLint *") + ) + "glNamedProgramLocalParameterI4uiEXT"( + void, + GLuint("program"), + GLenum("target"), + GLuint("index"), + GLuint("x"), + GLuint("y"), + GLuint("z"), + GLuint("w") + ) + "glNamedProgramLocalParameterI4uivEXT"( + void, + GLuint("program"), + GLenum("target"), + GLuint("index"), + address("params", "const GLuint *") + ) + "glNamedProgramLocalParametersI4uivEXT"( + void, + GLuint("program"), + GLenum("target"), + GLuint("index"), + GLsizei("count"), + address("params", "const GLuint *") + ) + "glGetNamedProgramLocalParameterIivEXT"( + void, + GLuint("program"), + GLenum("target"), + GLuint("index"), + address("params", "GLint *") + ) + "glGetNamedProgramLocalParameterIuivEXT"( + void, + GLuint("program"), + GLenum("target"), + GLuint("index"), + address("params", "GLuint *") + ) + "glEnableClientStateiEXT"(void, GLenum("array"), GLuint("index")) + "glDisableClientStateiEXT"(void, GLenum("array"), GLuint("index")) + "glGetFloati_vEXT"(void, GLenum("pname"), GLuint("index"), address("params", "GLfloat *")) + "glGetDoublei_vEXT"(void, GLenum("pname"), GLuint("index"), address("params", "GLdouble *")) + "glGetPointeri_vEXT"(void, GLenum("pname"), GLuint("index"), address("params", "void **")) + "glNamedProgramStringEXT"( + void, + GLuint("program"), + GLenum("target"), + GLenum("format"), + GLsizei("len"), + address("string", "const void *") + ) + "glNamedProgramLocalParameter4dEXT"( + void, + GLuint("program"), + GLenum("target"), + GLuint("index"), + GLdouble("x"), + GLdouble("y"), + GLdouble("z"), + GLdouble("w") + ) + "glNamedProgramLocalParameter4dvEXT"( + void, + GLuint("program"), + GLenum("target"), + GLuint("index"), + address("params", "const GLdouble *") + ) + "glNamedProgramLocalParameter4fEXT"( + void, + GLuint("program"), + GLenum("target"), + GLuint("index"), + GLfloat("x"), + GLfloat("y"), + GLfloat("z"), + GLfloat("w") + ) + "glNamedProgramLocalParameter4fvEXT"( + void, + GLuint("program"), + GLenum("target"), + GLuint("index"), + address("params", "const GLfloat *") + ) + "glGetNamedProgramLocalParameterdvEXT"( + void, + GLuint("program"), + GLenum("target"), + GLuint("index"), + address("params", "GLdouble *") + ) + "glGetNamedProgramLocalParameterfvEXT"( + void, + GLuint("program"), + GLenum("target"), + GLuint("index"), + address("params", "GLfloat *") + ) + "glGetNamedProgramivEXT"( + void, + GLuint("program"), + GLenum("target"), + GLenum("pname"), + address("params", "GLint *") + ) + "glGetNamedProgramStringEXT"( + void, + GLuint("program"), + GLenum("target"), + GLenum("pname"), + address("string", "void *") + ) + "glNamedRenderbufferStorageEXT"( + void, + GLuint("renderbuffer"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height") + ) + "glGetNamedRenderbufferParameterivEXT"( + void, + GLuint("renderbuffer"), + GLenum("pname"), + address("params", "GLint *") + ) + "glNamedRenderbufferStorageMultisampleEXT"( + void, + GLuint("renderbuffer"), + GLsizei("samples"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height") + ) + "glNamedRenderbufferStorageMultisampleCoverageEXT"( + void, + GLuint("renderbuffer"), + GLsizei("coverageSamples"), + GLsizei("colorSamples"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height") + ) + "glCheckNamedFramebufferStatusEXT"(GLenum, GLuint("framebuffer"), GLenum("target")) + "glNamedFramebufferTexture1DEXT"( + void, + GLuint("framebuffer"), + GLenum("attachment"), + GLenum("textarget"), + GLuint("texture"), + GLint("level") + ) + "glNamedFramebufferTexture2DEXT"( + void, + GLuint("framebuffer"), + GLenum("attachment"), + GLenum("textarget"), + GLuint("texture"), + GLint("level") + ) + "glNamedFramebufferTexture3DEXT"( + void, + GLuint("framebuffer"), + GLenum("attachment"), + GLenum("textarget"), + GLuint("texture"), + GLint("level"), + GLint("zoffset") + ) + "glNamedFramebufferRenderbufferEXT"( + void, + GLuint("framebuffer"), + GLenum("attachment"), + GLenum("renderbuffertarget"), + GLuint("renderbuffer") + ) + "glGetNamedFramebufferAttachmentParameterivEXT"( + void, + GLuint("framebuffer"), + GLenum("attachment"), + GLenum("pname"), + address("params", "GLint *") + ) + "glGenerateTextureMipmapEXT"(void, GLuint("texture"), GLenum("target")) + "glGenerateMultiTexMipmapEXT"(void, GLenum("texunit"), GLenum("target")) + "glFramebufferDrawBufferEXT"(void, GLuint("framebuffer"), GLenum("mode")) + "glFramebufferDrawBuffersEXT"(void, GLuint("framebuffer"), GLsizei("n"), address("bufs", "const GLenum *")) + "glFramebufferReadBufferEXT"(void, GLuint("framebuffer"), GLenum("mode")) + "glGetFramebufferParameterivEXT"(void, GLuint("framebuffer"), GLenum("pname"), address("params", "GLint *")) + "glNamedCopyBufferSubDataEXT"( + void, + GLuint("readBuffer"), + GLuint("writeBuffer"), + GLintptr("readOffset"), + GLintptr("writeOffset"), + GLsizeiptr("size") + ) + "glNamedFramebufferTextureEXT"( + void, + GLuint("framebuffer"), + GLenum("attachment"), + GLuint("texture"), + GLint("level") + ) + "glNamedFramebufferTextureLayerEXT"( + void, + GLuint("framebuffer"), + GLenum("attachment"), + GLuint("texture"), + GLint("level"), + GLint("layer") + ) + "glNamedFramebufferTextureFaceEXT"( + void, + GLuint("framebuffer"), + GLenum("attachment"), + GLuint("texture"), + GLint("level"), + GLenum("face") + ) + "glTextureRenderbufferEXT"(void, GLuint("texture"), GLenum("target"), GLuint("renderbuffer")) + "glMultiTexRenderbufferEXT"(void, GLenum("texunit"), GLenum("target"), GLuint("renderbuffer")) + "glVertexArrayVertexOffsetEXT"( + void, + GLuint("vaobj"), + GLuint("buffer"), + GLint("size"), + GLenum("type"), + GLsizei("stride"), + GLintptr("offset") + ) + "glVertexArrayColorOffsetEXT"( + void, + GLuint("vaobj"), + GLuint("buffer"), + GLint("size"), + GLenum("type"), + GLsizei("stride"), + GLintptr("offset") + ) + "glVertexArrayEdgeFlagOffsetEXT"(void, GLuint("vaobj"), GLuint("buffer"), GLsizei("stride"), GLintptr("offset")) + "glVertexArrayIndexOffsetEXT"( + void, + GLuint("vaobj"), + GLuint("buffer"), + GLenum("type"), + GLsizei("stride"), + GLintptr("offset") + ) + "glVertexArrayNormalOffsetEXT"( + void, + GLuint("vaobj"), + GLuint("buffer"), + GLenum("type"), + GLsizei("stride"), + GLintptr("offset") + ) + "glVertexArrayTexCoordOffsetEXT"( + void, + GLuint("vaobj"), + GLuint("buffer"), + GLint("size"), + GLenum("type"), + GLsizei("stride"), + GLintptr("offset") + ) + "glVertexArrayMultiTexCoordOffsetEXT"( + void, + GLuint("vaobj"), + GLuint("buffer"), + GLenum("texunit"), + GLint("size"), + GLenum("type"), + GLsizei("stride"), + GLintptr("offset") + ) + "glVertexArrayFogCoordOffsetEXT"( + void, + GLuint("vaobj"), + GLuint("buffer"), + GLenum("type"), + GLsizei("stride"), + GLintptr("offset") + ) + "glVertexArraySecondaryColorOffsetEXT"( + void, + GLuint("vaobj"), + GLuint("buffer"), + GLint("size"), + GLenum("type"), + GLsizei("stride"), + GLintptr("offset") + ) + "glVertexArrayVertexAttribOffsetEXT"( + void, + GLuint("vaobj"), + GLuint("buffer"), + GLuint("index"), + GLint("size"), + GLenum("type"), + GLboolean("normalized"), + GLsizei("stride"), + GLintptr("offset") + ) + "glVertexArrayVertexAttribIOffsetEXT"( + void, + GLuint("vaobj"), + GLuint("buffer"), + GLuint("index"), + GLint("size"), + GLenum("type"), + GLsizei("stride"), + GLintptr("offset") + ) + "glEnableVertexArrayEXT"(void, GLuint("vaobj"), GLenum("array")) + "glDisableVertexArrayEXT"(void, GLuint("vaobj"), GLenum("array")) + "glEnableVertexArrayAttribEXT"(void, GLuint("vaobj"), GLuint("index")) + "glDisableVertexArrayAttribEXT"(void, GLuint("vaobj"), GLuint("index")) + "glGetVertexArrayIntegervEXT"(void, GLuint("vaobj"), GLenum("pname"), address("param", "GLint *")) + "glGetVertexArrayPointervEXT"(void, GLuint("vaobj"), GLenum("pname"), address("param", "void **")) + "glGetVertexArrayIntegeri_vEXT"( + void, + GLuint("vaobj"), + GLuint("index"), + GLenum("pname"), + address("param", "GLint *") + ) + "glGetVertexArrayPointeri_vEXT"( + void, + GLuint("vaobj"), + GLuint("index"), + GLenum("pname"), + address("param", "void **") + ) + "glMapNamedBufferRangeEXT"( + void, + GLuint("buffer"), + GLintptr("offset"), + GLsizeiptr("length"), + GLbitfield("access") + ) + "glFlushMappedNamedBufferRangeEXT"(void, GLuint("buffer"), GLintptr("offset"), GLsizeiptr("length")) + "glNamedBufferStorageEXT"( + void, + GLuint("buffer"), + GLsizeiptr("size"), + address("data", "const void *"), + GLbitfield("flags") + ) + "glClearNamedBufferDataEXT"( + void, + GLuint("buffer"), + GLenum("internalformat"), + GLenum("format"), + GLenum("type"), + address("data", "const void *") + ) + "glClearNamedBufferSubDataEXT"( + void, + GLuint("buffer"), + GLenum("internalformat"), + GLsizeiptr("offset"), + GLsizeiptr("size"), + GLenum("format"), + GLenum("type"), + address("data", "const void *") + ) + "glNamedFramebufferParameteriEXT"(void, GLuint("framebuffer"), GLenum("pname"), GLint("param")) + "glGetNamedFramebufferParameterivEXT"( + void, + GLuint("framebuffer"), + GLenum("pname"), + address("params", "GLint *") + ) + "glProgramUniform1dEXT"(void, GLuint("program"), GLint("location"), GLdouble("x")) + "glProgramUniform2dEXT"(void, GLuint("program"), GLint("location"), GLdouble("x"), GLdouble("y")) + "glProgramUniform3dEXT"(void, GLuint("program"), GLint("location"), GLdouble("x"), GLdouble("y"), GLdouble("z")) + "glProgramUniform4dEXT"( + void, + GLuint("program"), + GLint("location"), + GLdouble("x"), + GLdouble("y"), + GLdouble("z"), + GLdouble("w") + ) + "glProgramUniform1dvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLdouble *") + ) + "glProgramUniform2dvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLdouble *") + ) + "glProgramUniform3dvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLdouble *") + ) + "glProgramUniform4dvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + address("value", "const GLdouble *") + ) + "glProgramUniformMatrix2dvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + GLboolean("transpose"), + address("value", "const GLdouble *") + ) + "glProgramUniformMatrix3dvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + GLboolean("transpose"), + address("value", "const GLdouble *") + ) + "glProgramUniformMatrix4dvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + GLboolean("transpose"), + address("value", "const GLdouble *") + ) + "glProgramUniformMatrix2x3dvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + GLboolean("transpose"), + address("value", "const GLdouble *") + ) + "glProgramUniformMatrix2x4dvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + GLboolean("transpose"), + address("value", "const GLdouble *") + ) + "glProgramUniformMatrix3x2dvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + GLboolean("transpose"), + address("value", "const GLdouble *") + ) + "glProgramUniformMatrix3x4dvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + GLboolean("transpose"), + address("value", "const GLdouble *") + ) + "glProgramUniformMatrix4x2dvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + GLboolean("transpose"), + address("value", "const GLdouble *") + ) + "glProgramUniformMatrix4x3dvEXT"( + void, + GLuint("program"), + GLint("location"), + GLsizei("count"), + GLboolean("transpose"), + address("value", "const GLdouble *") + ) + "glTextureBufferRangeEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLenum("internalformat"), + GLuint("buffer"), + GLintptr("offset"), + GLsizeiptr("size") + ) + "glTextureStorage1DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLsizei("levels"), + GLenum("internalformat"), + GLsizei("width") + ) + "glTextureStorage2DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLsizei("levels"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height") + ) + "glTextureStorage3DEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLsizei("levels"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth") + ) + "glTextureStorage2DMultisampleEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLsizei("samples"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLboolean("fixedsamplelocations") + ) + "glTextureStorage3DMultisampleEXT"( + void, + GLuint("texture"), + GLenum("target"), + GLsizei("samples"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLboolean("fixedsamplelocations") + ) + "glVertexArrayBindVertexBufferEXT"( + void, + GLuint("vaobj"), + GLuint("bindingindex"), + GLuint("buffer"), + GLintptr("offset"), + GLsizei("stride") + ) + "glVertexArrayVertexAttribFormatEXT"( + void, + GLuint("vaobj"), + GLuint("attribindex"), + GLint("size"), + GLenum("type"), + GLboolean("normalized"), + GLuint("relativeoffset") + ) + "glVertexArrayVertexAttribIFormatEXT"( + void, + GLuint("vaobj"), + GLuint("attribindex"), + GLint("size"), + GLenum("type"), + GLuint("relativeoffset") + ) + "glVertexArrayVertexAttribLFormatEXT"( + void, + GLuint("vaobj"), + GLuint("attribindex"), + GLint("size"), + GLenum("type"), + GLuint("relativeoffset") + ) + "glVertexArrayVertexAttribBindingEXT"(void, GLuint("vaobj"), GLuint("attribindex"), GLuint("bindingindex")) + "glVertexArrayVertexBindingDivisorEXT"(void, GLuint("vaobj"), GLuint("bindingindex"), GLuint("divisor")) + "glVertexArrayVertexAttribLOffsetEXT"( + void, + GLuint("vaobj"), + GLuint("buffer"), + GLuint("index"), + GLint("size"), + GLenum("type"), + GLsizei("stride"), + GLintptr("offset") + ) + "glTexturePageCommitmentEXT"( + void, + GLuint("texture"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLint("zoffset"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLboolean("commit") + ) + "glVertexArrayVertexAttribDivisorEXT"(void, GLuint("vaobj"), GLuint("index"), GLuint("divisor")) + } + file("DrawBuffers2", EXT, "GL_EXT_draw_buffers2") { + "glColorMaskIndexedEXT"(void, GLuint("index"), GLboolean("r"), GLboolean("g"), GLboolean("b"), GLboolean("a")) + } + file("DrawInstanced", EXT, "GL_EXT_draw_instanced") { + "glDrawArraysInstancedEXT"(void, GLenum("mode"), GLint("start"), GLsizei("count"), GLsizei("primcount")) + "glDrawElementsInstancedEXT"( + void, + GLenum("mode"), + GLsizei("count"), + GLenum("type"), + address("indices", "const void *"), + GLsizei("primcount") + ) + } + file("DrawRangedElements", EXT, "GL_EXT_draw_range_elements") { + "GL_MAX_ELEMENTS_VERTICES_EXT"("0x80E8") + "GL_MAX_ELEMENTS_INDICES_EXT"("0x80E9") + "glDrawRangeElementsEXT"( + void, + GLenum("mode"), + GLuint("start"), + GLuint("end"), + GLsizei("count"), + GLenum("type"), + address("indices", "const void *") + ) + } + file("ExternalBuffer", EXT, "GL_EXT_external_buffer") { + "glBufferStorageExternalEXT"( + void, + GLenum("target"), + GLintptr("offset"), + GLsizeiptr("size"), + address("clientBuffer", "GLeglClientBufferEXT"), + GLbitfield("flags") + ) + "glNamedBufferStorageExternalEXT"( + void, + GLuint("buffer"), + GLintptr("offset"), + GLsizeiptr("size"), + address("clientBuffer", "GLeglClientBufferEXT"), + GLbitfield("flags") + ) + } + file("FogCoord", EXT, "GL_EXT_fog_coord") { + "GL_FOG_COORDINATE_SOURCE_EXT"("0x8450") + "GL_FOG_COORDINATE_EXT"("0x8451") + "GL_FRAGMENT_DEPTH_EXT"("0x8452") + "GL_CURRENT_FOG_COORDINATE_EXT"("0x8453") + "GL_FOG_COORDINATE_ARRAY_TYPE_EXT"("0x8454") + "GL_FOG_COORDINATE_ARRAY_STRIDE_EXT"("0x8455") + "GL_FOG_COORDINATE_ARRAY_POINTER_EXT"("0x8456") + "GL_FOG_COORDINATE_ARRAY_EXT"("0x8457") + "glFogCoordfEXT"(void, GLfloat("coord")) + "glFogCoordfvEXT"(void, address("coord", "const GLfloat *")) + "glFogCoorddEXT"(void, GLdouble("coord")) + "glFogCoorddvEXT"(void, address("coord", "const GLdouble *")) + "glFogCoordPointerEXT"(void, GLenum("type"), GLsizei("stride"), address("pointer", "const void *")) + } + file("FramebufferBlit", EXT, "GL_EXT_framebuffer_blit") { + "GL_READ_FRAMEBUFFER_EXT"("0x8CA8") + "GL_DRAW_FRAMEBUFFER_EXT"("0x8CA9") + "GL_DRAW_FRAMEBUFFER_BINDING_EXT"("0x8CA6") + "GL_READ_FRAMEBUFFER_BINDING_EXT"("0x8CAA") + "glBlitFramebufferEXT"( + void, + GLint("srcX0"), + GLint("srcY0"), + GLint("srcX1"), + GLint("srcY1"), + GLint("dstX0"), + GLint("dstY0"), + GLint("dstX1"), + GLint("dstY1"), + GLbitfield("mask"), + GLenum("filter") + ) + } + file("FramebufferBlitLayers", EXT, "GL_EXT_framebuffer_blit_layers") { + "glBlitFramebufferLayersEXT"( + void, + GLint("srcX0"), + GLint("srcY0"), + GLint("srcX1"), + GLint("srcY1"), + GLint("dstX0"), + GLint("dstY0"), + GLint("dstX1"), + GLint("dstY1"), + GLbitfield("mask"), + GLenum("filter") + ) + "glBlitFramebufferLayerEXT"( + void, + GLint("srcX0"), + GLint("srcY0"), + GLint("srcX1"), + GLint("srcY1"), + GLint("srcLayer"), + GLint("dstX0"), + GLint("dstY0"), + GLint("dstX1"), + GLint("dstY1"), + GLint("dstLayer"), + GLbitfield("mask"), + GLenum("filter") + ) + } + file("FramebufferMultisample", EXT, "GL_EXT_framebuffer_multisample") { + "GL_RENDERBUFFER_SAMPLES_EXT"("0x8CAB") + "GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT"("0x8D56") + "GL_MAX_SAMPLES_EXT"("0x8D57") + "glRenderbufferStorageMultisampleEXT"( + void, + GLenum("target"), + GLsizei("samples"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height") + ) + } + file( + "FramebufferMultisampleBlitScaled", EXT, "GL_EXT_framebuffer_multisample_blit_scaled", + "GL_SCALED_RESOLVE_FASTEST_EXT" to "0x90BA", + "GL_SCALED_RESOLVE_NICEST_EXT" to "0x90BB" + ) + file("FramebufferObject", EXT, "GL_EXT_framebuffer_object") { + "GL_INVALID_FRAMEBUFFER_OPERATION_EXT"("0x0506") + "GL_MAX_RENDERBUFFER_SIZE_EXT"("0x84E8") + "GL_FRAMEBUFFER_BINDING_EXT"("0x8CA6") + "GL_RENDERBUFFER_BINDING_EXT"("0x8CA7") + "GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT"("0x8CD0") + "GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT"("0x8CD1") + "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT"("0x8CD2") + "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT"("0x8CD3") + "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT"("0x8CD4") + "GL_FRAMEBUFFER_COMPLETE_EXT"("0x8CD5") + "GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT"("0x8CD6") + "GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT"("0x8CD7") + "GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT"("0x8CD9") + "GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT"("0x8CDA") + "GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT"("0x8CDB") + "GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT"("0x8CDC") + "GL_FRAMEBUFFER_UNSUPPORTED_EXT"("0x8CDD") + "GL_MAX_COLOR_ATTACHMENTS_EXT"("0x8CDF") + "GL_COLOR_ATTACHMENT0_EXT"("0x8CE0") + "GL_COLOR_ATTACHMENT1_EXT"("0x8CE1") + "GL_COLOR_ATTACHMENT2_EXT"("0x8CE2") + "GL_COLOR_ATTACHMENT3_EXT"("0x8CE3") + "GL_COLOR_ATTACHMENT4_EXT"("0x8CE4") + "GL_COLOR_ATTACHMENT5_EXT"("0x8CE5") + "GL_COLOR_ATTACHMENT6_EXT"("0x8CE6") + "GL_COLOR_ATTACHMENT7_EXT"("0x8CE7") + "GL_COLOR_ATTACHMENT8_EXT"("0x8CE8") + "GL_COLOR_ATTACHMENT9_EXT"("0x8CE9") + "GL_COLOR_ATTACHMENT10_EXT"("0x8CEA") + "GL_COLOR_ATTACHMENT11_EXT"("0x8CEB") + "GL_COLOR_ATTACHMENT12_EXT"("0x8CEC") + "GL_COLOR_ATTACHMENT13_EXT"("0x8CED") + "GL_COLOR_ATTACHMENT14_EXT"("0x8CEE") + "GL_COLOR_ATTACHMENT15_EXT"("0x8CEF") + "GL_DEPTH_ATTACHMENT_EXT"("0x8D00") + "GL_STENCIL_ATTACHMENT_EXT"("0x8D20") + "GL_FRAMEBUFFER_EXT"("0x8D40") + "GL_RENDERBUFFER_EXT"("0x8D41") + "GL_RENDERBUFFER_WIDTH_EXT"("0x8D42") + "GL_RENDERBUFFER_HEIGHT_EXT"("0x8D43") + "GL_RENDERBUFFER_INTERNAL_FORMAT_EXT"("0x8D44") + "GL_STENCIL_INDEX1_EXT"("0x8D46") + "GL_STENCIL_INDEX4_EXT"("0x8D47") + "GL_STENCIL_INDEX8_EXT"("0x8D48") + "GL_STENCIL_INDEX16_EXT"("0x8D49") + "GL_RENDERBUFFER_RED_SIZE_EXT"("0x8D50") + "GL_RENDERBUFFER_GREEN_SIZE_EXT"("0x8D51") + "GL_RENDERBUFFER_BLUE_SIZE_EXT"("0x8D52") + "GL_RENDERBUFFER_ALPHA_SIZE_EXT"("0x8D53") + "GL_RENDERBUFFER_DEPTH_SIZE_EXT"("0x8D54") + "GL_RENDERBUFFER_STENCIL_SIZE_EXT"("0x8D55") + "glIsRenderbufferEXT"(GLboolean, GLuint("renderbuffer")) + "glBindRenderbufferEXT"(void, GLenum("target"), GLuint("renderbuffer")) + "glDeleteRenderbuffersEXT"(void, GLsizei("n"), address("renderbuffers", "const GLuint *")) + "glGenRenderbuffersEXT"(void, GLsizei("n"), address("renderbuffers", "GLuint *")) + "glRenderbufferStorageEXT"(void, GLenum("target"), GLenum("internalformat"), GLsizei("width"), GLsizei("height")) + "glGetRenderbufferParameterivEXT"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glIsFramebufferEXT"(GLboolean, GLuint("framebuffer")) + "glBindFramebufferEXT"(void, GLenum("target"), GLuint("framebuffer")) + "glDeleteFramebuffersEXT"(void, GLsizei("n"), address("framebuffers", "const GLuint *")) + "glGenFramebuffersEXT"(void, GLsizei("n"), address("framebuffers", "GLuint *")) + "glCheckFramebufferStatusEXT"(GLenum, GLenum("target")) + "glFramebufferTexture1DEXT"( + void, + GLenum("target"), + GLenum("attachment"), + GLenum("textarget"), + GLuint("texture"), + GLint("level") + ) + "glFramebufferTexture2DEXT"( + void, + GLenum("target"), + GLenum("attachment"), + GLenum("textarget"), + GLuint("texture"), + GLint("level") + ) + "glFramebufferTexture3DEXT"( + void, + GLenum("target"), + GLenum("attachment"), + GLenum("textarget"), + GLuint("texture"), + GLint("level"), + GLint("zoffset") + ) + "glFramebufferRenderbufferEXT"( + void, + GLenum("target"), + GLenum("attachment"), + GLenum("renderbuffertarget"), + GLuint("renderbuffer") + ) + "glGetFramebufferAttachmentParameterivEXT"( + void, + GLenum("target"), + GLenum("attachment"), + GLenum("pname"), + address("params", "GLint *") + ) + "glGenerateMipmapEXT"(void, GLenum("target")) + } + file( + "Srgb", EXT, "GL_EXT_framebuffer_sRGB", + "GL_FRAMEBUFFER_SRGB_EXT" to "0x8DB9", + "GL_FRAMEBUFFER_SRGB_CAPABLE_EXT" to "0x8DBA" + ) +} diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt index 10ae12f3..426e915e 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt @@ -1199,16 +1199,6 @@ fun ati() { } } -fun ext() { - file( - "422Pixels", EXT, "GL_EXT_422_pixels", - "GL_422_EXT" to "0x80CC", - "GL_422_REV_EXT" to "0x80CD", - "GL_422_AVERAGE_EXT" to "0x80CE", - "GL_422_REV_AVERAGE_EXT" to "0x80CF" - ) -} - fun gremedy() { file("FrameTerminator", GREMEDY, "GL_GREMEDY_frame_terminator") { "glFrameTerminatorGREMEDY"(void) diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java index f3b9985a..16b84e3c 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java @@ -103,49 +103,71 @@ public GLExtCaps(GLCapabilities caps) { glGetObjectBufferivATI, glFreeObjectBufferATI, glArrayObjectATI, glGetArrayObjectfvATI, glGetArrayObjectivATI, glVariantArrayObjectATI, glGetVariantArrayObjectfvATI, glGetVariantArrayObjectivATI, glVertexAttribArrayObjectATI, glGetVertexAttribArrayObjectfvATI, glGetVertexAttribArrayObjectivATI, glVertexStream1sATI, glVertexStream1svATI, glVertexStream1iATI, glVertexStream1ivATI, glVertexStream1fATI, glVertexStream1fvATI, glVertexStream1dATI, glVertexStream1dvATI, glVertexStream2sATI, glVertexStream2svATI, glVertexStream2iATI, glVertexStream2ivATI, glVertexStream2fATI, glVertexStream2fvATI, glVertexStream2dATI, glVertexStream2dvATI, glVertexStream3sATI, glVertexStream3svATI, glVertexStream3iATI, glVertexStream3ivATI, glVertexStream3fATI, glVertexStream3fvATI, glVertexStream3dATI, glVertexStream3dvATI, glVertexStream4sATI, glVertexStream4svATI, glVertexStream4iATI, glVertexStream4ivATI, glVertexStream4fATI, glVertexStream4fvATI, glVertexStream4dATI, glVertexStream4dvATI, glNormalStream3bATI, glNormalStream3bvATI, glNormalStream3sATI, glNormalStream3svATI, glNormalStream3iATI, - glNormalStream3ivATI, glNormalStream3fATI, glNormalStream3fvATI, glNormalStream3dATI, glNormalStream3dvATI, glClientActiveVertexStreamATI, glVertexBlendEnviATI, glVertexBlendEnvfATI, glFrameTerminatorGREMEDY, glStringMarkerGREMEDY, glImageTransformParameteriHP, glImageTransformParameterfHP, glImageTransformParameterivHP, glImageTransformParameterfvHP, glGetImageTransformParameterivHP, glGetImageTransformParameterfvHP, - glMultiModeDrawArraysIBM, glMultiModeDrawElementsIBM, glFlushStaticDataIBM, glColorPointerListIBM, glSecondaryColorPointerListIBM, glEdgeFlagPointerListIBM, glFogCoordPointerListIBM, glIndexPointerListIBM, glNormalPointerListIBM, glTexCoordPointerListIBM, glVertexPointerListIBM, glBlendFuncSeparateINGR, glApplyFramebufferAttachmentCMAAINTEL, glSyncTextureINTEL, glUnmapTexture2DINTEL, glMapTexture2DINTEL, - glVertexPointervINTEL, glNormalPointervINTEL, glColorPointervINTEL, glTexCoordPointervINTEL, glBeginPerfQueryINTEL, glCreatePerfQueryINTEL, glDeletePerfQueryINTEL, glEndPerfQueryINTEL, glGetFirstPerfQueryIdINTEL, glGetNextPerfQueryIdINTEL, glGetPerfCounterInfoINTEL, glGetPerfQueryDataINTEL, glGetPerfQueryIdByNameINTEL, glGetPerfQueryInfoINTEL, glFramebufferParameteriMESA, glGetFramebufferParameterivMESA, - glResizeBuffersMESA, glWindowPos2dMESA, glWindowPos2dvMESA, glWindowPos2fMESA, glWindowPos2fvMESA, glWindowPos2iMESA, glWindowPos2ivMESA, glWindowPos2sMESA, glWindowPos2svMESA, glWindowPos3dMESA, glWindowPos3dvMESA, glWindowPos3fMESA, glWindowPos3fvMESA, glWindowPos3iMESA, glWindowPos3ivMESA, glWindowPos3sMESA, - glWindowPos3svMESA, glWindowPos4dMESA, glWindowPos4dvMESA, glWindowPos4fMESA, glWindowPos4fvMESA, glWindowPos4iMESA, glWindowPos4ivMESA, glWindowPos4sMESA, glWindowPos4svMESA, glBeginConditionalRenderNVX, glEndConditionalRenderNVX, glUploadGpuMaskNVX, glMulticastViewportArrayvNVX, glMulticastViewportPositionWScaleNVX, glMulticastScissorArrayvNVX, glAsyncCopyBufferSubDataNVX, - glAsyncCopyImageSubDataNVX, glLGPUNamedBufferSubDataNVX, glLGPUCopyImageSubDataNVX, glLGPUInterlockNVX, glCreateProgressFenceNVX, glSignalSemaphoreui64NVX, glWaitSemaphoreui64NVX, glClientWaitSemaphoreui64NVX, glAlphaToCoverageDitherControlNV, glMultiDrawArraysIndirectBindlessNV, glMultiDrawElementsIndirectBindlessNV, glMultiDrawArraysIndirectBindlessCountNV, glMultiDrawElementsIndirectBindlessCountNV, glGetTextureHandleNV, glGetTextureSamplerHandleNV, glMakeTextureHandleResidentNV, - glMakeTextureHandleNonResidentNV, glGetImageHandleNV, glMakeImageHandleResidentNV, glMakeImageHandleNonResidentNV, glUniformHandleui64NV, glUniformHandleui64vNV, glProgramUniformHandleui64NV, glProgramUniformHandleui64vNV, glIsTextureHandleResidentNV, glIsImageHandleResidentNV, glBlendParameteriNV, glBlendBarrierNV, glViewportPositionWScaleNV, glCreateStatesNV, glDeleteStatesNV, glIsStateNV, - glStateCaptureNV, glGetCommandHeaderNV, glGetStageIndexNV, glDrawCommandsNV, glDrawCommandsAddressNV, glDrawCommandsStatesNV, glDrawCommandsStatesAddressNV, glCreateCommandListsNV, glDeleteCommandListsNV, glIsCommandListNV, glListDrawCommandsStatesClientNV, glCommandListSegmentsNV, glCompileCommandListNV, glCallCommandListNV, glBeginConditionalRenderNV, glEndConditionalRenderNV, - glSubpixelPrecisionBiasNV, glConservativeRasterParameterfNV, glConservativeRasterParameteriNV, glCopyImageSubDataNV, glDepthRangedNV, glClearDepthdNV, glDepthBoundsdNV, glDrawTextureNV, glDrawVkImageNV, glGetVkProcAddrNV, glWaitVkSemaphoreNV, glSignalVkSemaphoreNV, glSignalVkFenceNV, glMapControlPointsNV, glMapParameterivNV, glMapParameterfvNV, - glGetMapControlPointsNV, glGetMapParameterivNV, glGetMapParameterfvNV, glGetMapAttribParameterivNV, glGetMapAttribParameterfvNV, glEvalMapsNV, glGetMultisamplefvNV, glSampleMaskIndexedNV, glTexRenderbufferNV, glDeleteFencesNV, glGenFencesNV, glIsFenceNV, glTestFenceNV, glGetFenceivNV, glFinishFenceNV, glSetFenceNV, - glFragmentCoverageColorNV, glProgramNamedParameter4fNV, glProgramNamedParameter4fvNV, glProgramNamedParameter4dNV, glProgramNamedParameter4dvNV, glGetProgramNamedParameterfvNV, glGetProgramNamedParameterdvNV, glCoverageModulationTableNV, glGetCoverageModulationTableNV, glCoverageModulationNV, glRenderbufferStorageMultisampleCoverageNV, glProgramVertexLimitNV, glFramebufferTextureEXT, glFramebufferTextureFaceEXT, glRenderGpuMaskNV, glMulticastBufferSubDataNV, - glMulticastCopyBufferSubDataNV, glMulticastCopyImageSubDataNV, glMulticastBlitFramebufferNV, glMulticastFramebufferSampleLocationsfvNV, glMulticastBarrierNV, glMulticastWaitSyncNV, glMulticastGetQueryObjectivNV, glMulticastGetQueryObjectuivNV, glMulticastGetQueryObjecti64vNV, glMulticastGetQueryObjectui64vNV, glProgramLocalParameterI4iNV, glProgramLocalParameterI4ivNV, glProgramLocalParametersI4ivNV, glProgramLocalParameterI4uiNV, glProgramLocalParameterI4uivNV, glProgramLocalParametersI4uivNV, - glProgramEnvParameterI4iNV, glProgramEnvParameterI4ivNV, glProgramEnvParametersI4ivNV, glProgramEnvParameterI4uiNV, glProgramEnvParameterI4uivNV, glProgramEnvParametersI4uivNV, glGetProgramLocalParameterIivNV, glGetProgramLocalParameterIuivNV, glGetProgramEnvParameterIivNV, glGetProgramEnvParameterIuivNV, glProgramSubroutineParametersuivNV, glGetProgramSubroutineParameteruivNV, glVertex2hNV, glVertex2hvNV, glVertex3hNV, glVertex3hvNV, - glVertex4hNV, glVertex4hvNV, glNormal3hNV, glNormal3hvNV, glColor3hNV, glColor3hvNV, glColor4hNV, glColor4hvNV, glTexCoord1hNV, glTexCoord1hvNV, glTexCoord2hNV, glTexCoord2hvNV, glTexCoord3hNV, glTexCoord3hvNV, glTexCoord4hNV, glTexCoord4hvNV, - glMultiTexCoord1hNV, glMultiTexCoord1hvNV, glMultiTexCoord2hNV, glMultiTexCoord2hvNV, glMultiTexCoord3hNV, glMultiTexCoord3hvNV, glMultiTexCoord4hNV, glMultiTexCoord4hvNV, glVertexAttrib1hNV, glVertexAttrib1hvNV, glVertexAttrib2hNV, glVertexAttrib2hvNV, glVertexAttrib3hNV, glVertexAttrib3hvNV, glVertexAttrib4hNV, glVertexAttrib4hvNV, - glVertexAttribs1hvNV, glVertexAttribs2hvNV, glVertexAttribs3hvNV, glVertexAttribs4hvNV, glFogCoordhNV, glFogCoordhvNV, glSecondaryColor3hNV, glSecondaryColor3hvNV, glVertexWeighthNV, glVertexWeighthvNV, glGetInternalformatSampleivNV, glGetMemoryObjectDetachedResourcesuivNV, glResetMemoryObjectParameterNV, glTexAttachMemoryNV, glBufferAttachMemoryNV, glTextureAttachMemoryNV, - glNamedBufferAttachMemoryNV, glBufferPageCommitmentMemNV, glTexPageCommitmentMemNV, glNamedBufferPageCommitmentMemNV, glTexturePageCommitmentMemNV, glDrawMeshTasksNV, glDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectCountNV, glGenOcclusionQueriesNV, glDeleteOcclusionQueriesNV, glIsOcclusionQueryNV, glBeginOcclusionQueryNV, glEndOcclusionQueryNV, glGetOcclusionQueryivNV, glGetOcclusionQueryuivNV, - glProgramBufferParametersfvNV, glProgramBufferParametersIivNV, glProgramBufferParametersIuivNV, glGenPathsNV, glDeletePathsNV, glIsPathNV, glPathCommandsNV, glPathCoordsNV, glPathSubCommandsNV, glPathSubCoordsNV, glPathStringNV, glPathGlyphsNV, glPathGlyphRangeNV, glWeightPathsNV, glCopyPathNV, glInterpolatePathsNV, - glTransformPathNV, glPathParameterivNV, glPathParameteriNV, glPathParameterfvNV, glPathParameterfNV, glPathDashArrayNV, glPathStencilFuncNV, glPathStencilDepthOffsetNV, glStencilFillPathNV, glStencilStrokePathNV, glStencilFillPathInstancedNV, glStencilStrokePathInstancedNV, glPathCoverDepthFuncNV, glCoverFillPathNV, glCoverStrokePathNV, glCoverFillPathInstancedNV, - glCoverStrokePathInstancedNV, glGetPathParameterivNV, glGetPathParameterfvNV, glGetPathCommandsNV, glGetPathCoordsNV, glGetPathDashArrayNV, glGetPathMetricsNV, glGetPathMetricRangeNV, glGetPathSpacingNV, glIsPointInFillPathNV, glIsPointInStrokePathNV, glGetPathLengthNV, glPointAlongPathNV, glMatrixLoad3x2fNV, glMatrixLoad3x3fNV, glMatrixLoadTranspose3x3fNV, - glMatrixMult3x2fNV, glMatrixMult3x3fNV, glMatrixMultTranspose3x3fNV, glStencilThenCoverFillPathNV, glStencilThenCoverStrokePathNV, glStencilThenCoverFillPathInstancedNV, glStencilThenCoverStrokePathInstancedNV, glPathGlyphIndexRangeNV, glPathGlyphIndexArrayNV, glPathMemoryGlyphIndexArrayNV, glProgramPathFragmentInputGenNV, glGetProgramResourcefvNV, glPathColorGenNV, glPathTexGenNV, glPathFogGenNV, glGetPathColorGenivNV, - glGetPathColorGenfvNV, glGetPathTexGenivNV, glGetPathTexGenfvNV, glPixelDataRangeNV, glFlushPixelDataRangeNV, glPointParameteriNV, glPointParameterivNV, glPresentFrameKeyedNV, glPresentFrameDualFillNV, glGetVideoivNV, glGetVideouivNV, glGetVideoi64vNV, glGetVideoui64vNV, glPrimitiveRestartNV, glPrimitiveRestartIndexNV, glQueryResourceNV, - glGenQueryResourceTagNV, glDeleteQueryResourceTagNV, glQueryResourceTagNV, glCombinerParameterfvNV, glCombinerParameterfNV, glCombinerParameterivNV, glCombinerParameteriNV, glCombinerInputNV, glCombinerOutputNV, glFinalCombinerInputNV, glGetCombinerInputParameterfvNV, glGetCombinerInputParameterivNV, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterivNV, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterivNV, - glCombinerStageParameterfvNV, glGetCombinerStageParameterfvNV, glFramebufferSampleLocationsfvNV, glNamedFramebufferSampleLocationsfvNV, glResolveDepthValuesNV, glScissorExclusiveNV, glScissorExclusiveArrayvNV, glMakeBufferResidentNV, glMakeBufferNonResidentNV, glIsBufferResidentNV, glMakeNamedBufferResidentNV, glMakeNamedBufferNonResidentNV, glIsNamedBufferResidentNV, glGetBufferParameterui64vNV, glGetNamedBufferParameterui64vNV, glGetIntegerui64vNV, - glUniformui64NV, glUniformui64vNV, glProgramUniformui64NV, glProgramUniformui64vNV, glBindShadingRateImageNV, glGetShadingRateImagePaletteNV, glGetShadingRateSampleLocationivNV, glShadingRateImageBarrierNV, glShadingRateImagePaletteNV, glShadingRateSampleOrderNV, glShadingRateSampleOrderCustomNV, glTextureBarrierNV, glTexImage2DMultisampleCoverageNV, glTexImage3DMultisampleCoverageNV, glTextureImage2DMultisampleNV, glTextureImage3DMultisampleNV, - glTextureImage2DMultisampleCoverageNV, glTextureImage3DMultisampleCoverageNV, glCreateSemaphoresNV, glSemaphoreParameterivNV, glGetSemaphoreParameterivNV, glBeginTransformFeedbackNV, glEndTransformFeedbackNV, glTransformFeedbackAttribsNV, glBindBufferRangeNV, glBindBufferOffsetNV, glBindBufferBaseNV, glTransformFeedbackVaryingsNV, glActiveVaryingNV, glGetVaryingLocationNV, glGetActiveVaryingNV, glGetTransformFeedbackVaryingNV, - glTransformFeedbackStreamAttribsNV, glBindTransformFeedbackNV, glDeleteTransformFeedbacksNV, glGenTransformFeedbacksNV, glIsTransformFeedbackNV, glPauseTransformFeedbackNV, glResumeTransformFeedbackNV, glDrawTransformFeedbackNV, glVDPAUInitNV, glVDPAUFiniNV, glVDPAURegisterVideoSurfaceNV, glVDPAURegisterOutputSurfaceNV, glVDPAUIsSurfaceNV, glVDPAUUnregisterSurfaceNV, glVDPAUGetSurfaceivNV, glVDPAUSurfaceAccessNV, - glVDPAUMapSurfacesNV, glVDPAUUnmapSurfacesNV, glVDPAURegisterVideoSurfaceWithPictureStructureNV, glFlushVertexArrayRangeNV, glVertexArrayRangeNV, glVertexAttribL1i64NV, glVertexAttribL2i64NV, glVertexAttribL3i64NV, glVertexAttribL4i64NV, glVertexAttribL1i64vNV, glVertexAttribL2i64vNV, glVertexAttribL3i64vNV, glVertexAttribL4i64vNV, glVertexAttribL1ui64NV, glVertexAttribL2ui64NV, glVertexAttribL3ui64NV, - glVertexAttribL4ui64NV, glVertexAttribL1ui64vNV, glVertexAttribL2ui64vNV, glVertexAttribL3ui64vNV, glVertexAttribL4ui64vNV, glGetVertexAttribLi64vNV, glGetVertexAttribLui64vNV, glVertexAttribLFormatNV, glBufferAddressRangeNV, glVertexFormatNV, glNormalFormatNV, glColorFormatNV, glIndexFormatNV, glTexCoordFormatNV, glEdgeFlagFormatNV, glSecondaryColorFormatNV, - glFogCoordFormatNV, glVertexAttribFormatNV, glVertexAttribIFormatNV, glGetIntegerui64i_vNV, glAreProgramsResidentNV, glBindProgramNV, glDeleteProgramsNV, glExecuteProgramNV, glGenProgramsNV, glGetProgramParameterdvNV, glGetProgramParameterfvNV, glGetProgramivNV, glGetProgramStringNV, glGetTrackMatrixivNV, glGetVertexAttribdvNV, glGetVertexAttribfvNV, - glGetVertexAttribivNV, glGetVertexAttribPointervNV, glIsProgramNV, glLoadProgramNV, glProgramParameter4dNV, glProgramParameter4dvNV, glProgramParameter4fNV, glProgramParameter4fvNV, glProgramParameters4dvNV, glProgramParameters4fvNV, glRequestResidentProgramsNV, glTrackMatrixNV, glVertexAttribPointerNV, glVertexAttrib1dNV, glVertexAttrib1dvNV, glVertexAttrib1fNV, - glVertexAttrib1fvNV, glVertexAttrib1sNV, glVertexAttrib1svNV, glVertexAttrib2dNV, glVertexAttrib2dvNV, glVertexAttrib2fNV, glVertexAttrib2fvNV, glVertexAttrib2sNV, glVertexAttrib2svNV, glVertexAttrib3dNV, glVertexAttrib3dvNV, glVertexAttrib3fNV, glVertexAttrib3fvNV, glVertexAttrib3sNV, glVertexAttrib3svNV, glVertexAttrib4dNV, - glVertexAttrib4dvNV, glVertexAttrib4fNV, glVertexAttrib4fvNV, glVertexAttrib4sNV, glVertexAttrib4svNV, glVertexAttrib4ubNV, glVertexAttrib4ubvNV, glVertexAttribs1dvNV, glVertexAttribs1fvNV, glVertexAttribs1svNV, glVertexAttribs2dvNV, glVertexAttribs2fvNV, glVertexAttribs2svNV, glVertexAttribs3dvNV, glVertexAttribs3fvNV, glVertexAttribs3svNV, - glVertexAttribs4dvNV, glVertexAttribs4fvNV, glVertexAttribs4svNV, glVertexAttribs4ubvNV, glBeginVideoCaptureNV, glBindVideoCaptureStreamBufferNV, glBindVideoCaptureStreamTextureNV, glEndVideoCaptureNV, glGetVideoCaptureivNV, glGetVideoCaptureStreamivNV, glGetVideoCaptureStreamfvNV, glGetVideoCaptureStreamdvNV, glVideoCaptureNV, glVideoCaptureStreamParameterivNV, glVideoCaptureStreamParameterfvNV, glVideoCaptureStreamParameterdvNV, - glViewportSwizzleNV, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, glFogFuncSGIS, glGetFogFuncSGIS, glSampleMaskSGIS, glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, - glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, glTexSubImage4DSGIS, glTextureColorMaskSGIS, glGetTexFilterFuncSGIS, glTexFilterFuncSGIS, glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, glFlushRasterSGIX, glFragmentColorMaterialSGIX, - glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, glFragmentLightModelfSGIX, glFragmentLightModelfvSGIX, glFragmentLightModeliSGIX, glFragmentLightModelivSGIX, glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, - glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, glInstrumentsBufferSGIX, glPollInstrumentsSGIX, glReadInstrumentsSGIX, glStartInstrumentsSGIX, glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, glListParameterivSGIX, glPixelTexGenSGIX, - glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, glReferencePlaneSGIX, glSpriteParameterfSGIX, glSpriteParameterfvSGIX, glSpriteParameteriSGIX, glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, glGetColorTableSGI, glGetColorTableParameterfvSGI, - glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, - glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, - glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, - glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; + glNormalStream3ivATI, glNormalStream3fATI, glNormalStream3fvATI, glNormalStream3dATI, glNormalStream3dvATI, glClientActiveVertexStreamATI, glVertexBlendEnviATI, glVertexBlendEnvfATI, glEGLImageTargetTexStorageEXT, glEGLImageTargetTextureStorageEXT, glUniformBufferEXT, glGetUniformBufferSizeEXT, glGetUniformOffsetEXT, glBlendColorEXT, glBlendEquationSeparateEXT, glBlendFuncSeparateEXT, + glBlendEquationEXT, glColorSubTableEXT, glCopyColorSubTableEXT, glLockArraysEXT, glUnlockArraysEXT, glConvolutionFilter1DEXT, glConvolutionFilter2DEXT, glConvolutionParameterfEXT, glConvolutionParameterfvEXT, glConvolutionParameteriEXT, glConvolutionParameterivEXT, glCopyConvolutionFilter1DEXT, glCopyConvolutionFilter2DEXT, glGetConvolutionFilterEXT, glGetConvolutionParameterfvEXT, glGetConvolutionParameterivEXT, + glGetSeparableFilterEXT, glSeparableFilter2DEXT, glTangent3bEXT, glTangent3bvEXT, glTangent3dEXT, glTangent3dvEXT, glTangent3fEXT, glTangent3fvEXT, glTangent3iEXT, glTangent3ivEXT, glTangent3sEXT, glTangent3svEXT, glBinormal3bEXT, glBinormal3bvEXT, glBinormal3dEXT, glBinormal3dvEXT, + glBinormal3fEXT, glBinormal3fvEXT, glBinormal3iEXT, glBinormal3ivEXT, glBinormal3sEXT, glBinormal3svEXT, glTangentPointerEXT, glBinormalPointerEXT, glCopyTexImage1DEXT, glCopyTexImage2DEXT, glCopyTexSubImage1DEXT, glCopyTexSubImage2DEXT, glCopyTexSubImage3DEXT, glCullParameterdvEXT, glCullParameterfvEXT, glLabelObjectEXT, + glGetObjectLabelEXT, glInsertEventMarkerEXT, glPushGroupMarkerEXT, glPopGroupMarkerEXT, glDepthBoundsEXT, glMatrixLoadfEXT, glMatrixLoaddEXT, glMatrixMultfEXT, glMatrixMultdEXT, glMatrixLoadIdentityEXT, glMatrixRotatefEXT, glMatrixRotatedEXT, glMatrixScalefEXT, glMatrixScaledEXT, glMatrixTranslatefEXT, glMatrixTranslatedEXT, + glMatrixFrustumEXT, glMatrixOrthoEXT, glMatrixPopEXT, glMatrixPushEXT, glClientAttribDefaultEXT, glPushClientAttribDefaultEXT, glTextureParameterfEXT, glTextureParameterfvEXT, glTextureParameteriEXT, glTextureParameterivEXT, glTextureImage1DEXT, glTextureImage2DEXT, glTextureSubImage1DEXT, glTextureSubImage2DEXT, glCopyTextureImage1DEXT, glCopyTextureImage2DEXT, + glCopyTextureSubImage1DEXT, glCopyTextureSubImage2DEXT, glGetTextureImageEXT, glGetTextureParameterfvEXT, glGetTextureParameterivEXT, glGetTextureLevelParameterfvEXT, glGetTextureLevelParameterivEXT, glTextureImage3DEXT, glTextureSubImage3DEXT, glCopyTextureSubImage3DEXT, glBindMultiTextureEXT, glMultiTexCoordPointerEXT, glMultiTexEnvfEXT, glMultiTexEnvfvEXT, glMultiTexEnviEXT, glMultiTexEnvivEXT, + glMultiTexGendEXT, glMultiTexGendvEXT, glMultiTexGenfEXT, glMultiTexGenfvEXT, glMultiTexGeniEXT, glMultiTexGenivEXT, glGetMultiTexEnvfvEXT, glGetMultiTexEnvivEXT, glGetMultiTexGendvEXT, glGetMultiTexGenfvEXT, glGetMultiTexGenivEXT, glMultiTexParameteriEXT, glMultiTexParameterivEXT, glMultiTexParameterfEXT, glMultiTexParameterfvEXT, glMultiTexImage1DEXT, + glMultiTexImage2DEXT, glMultiTexSubImage1DEXT, glMultiTexSubImage2DEXT, glCopyMultiTexImage1DEXT, glCopyMultiTexImage2DEXT, glCopyMultiTexSubImage1DEXT, glCopyMultiTexSubImage2DEXT, glGetMultiTexImageEXT, glGetMultiTexParameterfvEXT, glGetMultiTexParameterivEXT, glGetMultiTexLevelParameterfvEXT, glGetMultiTexLevelParameterivEXT, glMultiTexImage3DEXT, glMultiTexSubImage3DEXT, glCopyMultiTexSubImage3DEXT, glEnableClientStateIndexedEXT, + glDisableClientStateIndexedEXT, glGetFloatIndexedvEXT, glGetDoubleIndexedvEXT, glGetPointerIndexedvEXT, glEnableIndexedEXT, glDisableIndexedEXT, glIsEnabledIndexedEXT, glGetIntegerIndexedvEXT, glGetBooleanIndexedvEXT, glCompressedTextureImage3DEXT, glCompressedTextureImage2DEXT, glCompressedTextureImage1DEXT, glCompressedTextureSubImage3DEXT, glCompressedTextureSubImage2DEXT, glCompressedTextureSubImage1DEXT, glGetCompressedTextureImageEXT, + glCompressedMultiTexImage3DEXT, glCompressedMultiTexImage2DEXT, glCompressedMultiTexImage1DEXT, glCompressedMultiTexSubImage3DEXT, glCompressedMultiTexSubImage2DEXT, glCompressedMultiTexSubImage1DEXT, glGetCompressedMultiTexImageEXT, glMatrixLoadTransposefEXT, glMatrixLoadTransposedEXT, glMatrixMultTransposefEXT, glMatrixMultTransposedEXT, glNamedBufferDataEXT, glNamedBufferSubDataEXT, glMapNamedBufferEXT, glUnmapNamedBufferEXT, glGetNamedBufferParameterivEXT, + glGetNamedBufferPointervEXT, glGetNamedBufferSubDataEXT, glProgramUniform1fEXT, glProgramUniform2fEXT, glProgramUniform3fEXT, glProgramUniform4fEXT, glProgramUniform1iEXT, glProgramUniform2iEXT, glProgramUniform3iEXT, glProgramUniform4iEXT, glProgramUniform1fvEXT, glProgramUniform2fvEXT, glProgramUniform3fvEXT, glProgramUniform4fvEXT, glProgramUniform1ivEXT, glProgramUniform2ivEXT, + glProgramUniform3ivEXT, glProgramUniform4ivEXT, glProgramUniformMatrix2fvEXT, glProgramUniformMatrix3fvEXT, glProgramUniformMatrix4fvEXT, glProgramUniformMatrix2x3fvEXT, glProgramUniformMatrix3x2fvEXT, glProgramUniformMatrix2x4fvEXT, glProgramUniformMatrix4x2fvEXT, glProgramUniformMatrix3x4fvEXT, glProgramUniformMatrix4x3fvEXT, glTextureBufferEXT, glMultiTexBufferEXT, glTextureParameterIivEXT, glTextureParameterIuivEXT, glGetTextureParameterIivEXT, + glGetTextureParameterIuivEXT, glMultiTexParameterIivEXT, glMultiTexParameterIuivEXT, glGetMultiTexParameterIivEXT, glGetMultiTexParameterIuivEXT, glProgramUniform1uiEXT, glProgramUniform2uiEXT, glProgramUniform3uiEXT, glProgramUniform4uiEXT, glProgramUniform1uivEXT, glProgramUniform2uivEXT, glProgramUniform3uivEXT, glProgramUniform4uivEXT, glNamedProgramLocalParameters4fvEXT, glNamedProgramLocalParameterI4iEXT, glNamedProgramLocalParameterI4ivEXT, + glNamedProgramLocalParametersI4ivEXT, glNamedProgramLocalParameterI4uiEXT, glNamedProgramLocalParameterI4uivEXT, glNamedProgramLocalParametersI4uivEXT, glGetNamedProgramLocalParameterIivEXT, glGetNamedProgramLocalParameterIuivEXT, glEnableClientStateiEXT, glDisableClientStateiEXT, glGetFloati_vEXT, glGetDoublei_vEXT, glGetPointeri_vEXT, glNamedProgramStringEXT, glNamedProgramLocalParameter4dEXT, glNamedProgramLocalParameter4dvEXT, glNamedProgramLocalParameter4fEXT, glNamedProgramLocalParameter4fvEXT, + glGetNamedProgramLocalParameterdvEXT, glGetNamedProgramLocalParameterfvEXT, glGetNamedProgramivEXT, glGetNamedProgramStringEXT, glNamedRenderbufferStorageEXT, glGetNamedRenderbufferParameterivEXT, glNamedRenderbufferStorageMultisampleEXT, glNamedRenderbufferStorageMultisampleCoverageEXT, glCheckNamedFramebufferStatusEXT, glNamedFramebufferTexture1DEXT, glNamedFramebufferTexture2DEXT, glNamedFramebufferTexture3DEXT, glNamedFramebufferRenderbufferEXT, glGetNamedFramebufferAttachmentParameterivEXT, glGenerateTextureMipmapEXT, glGenerateMultiTexMipmapEXT, + glFramebufferDrawBufferEXT, glFramebufferDrawBuffersEXT, glFramebufferReadBufferEXT, glGetFramebufferParameterivEXT, glNamedCopyBufferSubDataEXT, glNamedFramebufferTextureEXT, glNamedFramebufferTextureLayerEXT, glNamedFramebufferTextureFaceEXT, glTextureRenderbufferEXT, glMultiTexRenderbufferEXT, glVertexArrayVertexOffsetEXT, glVertexArrayColorOffsetEXT, glVertexArrayEdgeFlagOffsetEXT, glVertexArrayIndexOffsetEXT, glVertexArrayNormalOffsetEXT, glVertexArrayTexCoordOffsetEXT, + glVertexArrayMultiTexCoordOffsetEXT, glVertexArrayFogCoordOffsetEXT, glVertexArraySecondaryColorOffsetEXT, glVertexArrayVertexAttribOffsetEXT, glVertexArrayVertexAttribIOffsetEXT, glEnableVertexArrayEXT, glDisableVertexArrayEXT, glEnableVertexArrayAttribEXT, glDisableVertexArrayAttribEXT, glGetVertexArrayIntegervEXT, glGetVertexArrayPointervEXT, glGetVertexArrayIntegeri_vEXT, glGetVertexArrayPointeri_vEXT, glMapNamedBufferRangeEXT, glFlushMappedNamedBufferRangeEXT, glNamedBufferStorageEXT, + glClearNamedBufferDataEXT, glClearNamedBufferSubDataEXT, glNamedFramebufferParameteriEXT, glGetNamedFramebufferParameterivEXT, glProgramUniform1dEXT, glProgramUniform2dEXT, glProgramUniform3dEXT, glProgramUniform4dEXT, glProgramUniform1dvEXT, glProgramUniform2dvEXT, glProgramUniform3dvEXT, glProgramUniform4dvEXT, glProgramUniformMatrix2dvEXT, glProgramUniformMatrix3dvEXT, glProgramUniformMatrix4dvEXT, glProgramUniformMatrix2x3dvEXT, + glProgramUniformMatrix2x4dvEXT, glProgramUniformMatrix3x2dvEXT, glProgramUniformMatrix3x4dvEXT, glProgramUniformMatrix4x2dvEXT, glProgramUniformMatrix4x3dvEXT, glTextureBufferRangeEXT, glTextureStorage1DEXT, glTextureStorage2DEXT, glTextureStorage3DEXT, glTextureStorage2DMultisampleEXT, glTextureStorage3DMultisampleEXT, glVertexArrayBindVertexBufferEXT, glVertexArrayVertexAttribFormatEXT, glVertexArrayVertexAttribIFormatEXT, glVertexArrayVertexAttribLFormatEXT, glVertexArrayVertexAttribBindingEXT, + glVertexArrayVertexBindingDivisorEXT, glVertexArrayVertexAttribLOffsetEXT, glTexturePageCommitmentEXT, glVertexArrayVertexAttribDivisorEXT, glColorMaskIndexedEXT, glDrawArraysInstancedEXT, glDrawElementsInstancedEXT, glDrawRangeElementsEXT, glBufferStorageExternalEXT, glNamedBufferStorageExternalEXT, glFogCoordfEXT, glFogCoordfvEXT, glFogCoorddEXT, glFogCoorddvEXT, glFogCoordPointerEXT, glBlitFramebufferEXT, + glBlitFramebufferLayersEXT, glBlitFramebufferLayerEXT, glRenderbufferStorageMultisampleEXT, glIsRenderbufferEXT, glBindRenderbufferEXT, glDeleteRenderbuffersEXT, glGenRenderbuffersEXT, glRenderbufferStorageEXT, glGetRenderbufferParameterivEXT, glIsFramebufferEXT, glBindFramebufferEXT, glDeleteFramebuffersEXT, glGenFramebuffersEXT, glCheckFramebufferStatusEXT, glFramebufferTexture1DEXT, glFramebufferTexture2DEXT, + glFramebufferTexture3DEXT, glFramebufferRenderbufferEXT, glGetFramebufferAttachmentParameterivEXT, glGenerateMipmapEXT, glFrameTerminatorGREMEDY, glStringMarkerGREMEDY, glImageTransformParameteriHP, glImageTransformParameterfHP, glImageTransformParameterivHP, glImageTransformParameterfvHP, glGetImageTransformParameterivHP, glGetImageTransformParameterfvHP, glMultiModeDrawArraysIBM, glMultiModeDrawElementsIBM, glFlushStaticDataIBM, glColorPointerListIBM, + glSecondaryColorPointerListIBM, glEdgeFlagPointerListIBM, glFogCoordPointerListIBM, glIndexPointerListIBM, glNormalPointerListIBM, glTexCoordPointerListIBM, glVertexPointerListIBM, glBlendFuncSeparateINGR, glApplyFramebufferAttachmentCMAAINTEL, glSyncTextureINTEL, glUnmapTexture2DINTEL, glMapTexture2DINTEL, glVertexPointervINTEL, glNormalPointervINTEL, glColorPointervINTEL, glTexCoordPointervINTEL, + glBeginPerfQueryINTEL, glCreatePerfQueryINTEL, glDeletePerfQueryINTEL, glEndPerfQueryINTEL, glGetFirstPerfQueryIdINTEL, glGetNextPerfQueryIdINTEL, glGetPerfCounterInfoINTEL, glGetPerfQueryDataINTEL, glGetPerfQueryIdByNameINTEL, glGetPerfQueryInfoINTEL, glFramebufferParameteriMESA, glGetFramebufferParameterivMESA, glResizeBuffersMESA, glWindowPos2dMESA, glWindowPos2dvMESA, glWindowPos2fMESA, + glWindowPos2fvMESA, glWindowPos2iMESA, glWindowPos2ivMESA, glWindowPos2sMESA, glWindowPos2svMESA, glWindowPos3dMESA, glWindowPos3dvMESA, glWindowPos3fMESA, glWindowPos3fvMESA, glWindowPos3iMESA, glWindowPos3ivMESA, glWindowPos3sMESA, glWindowPos3svMESA, glWindowPos4dMESA, glWindowPos4dvMESA, glWindowPos4fMESA, + glWindowPos4fvMESA, glWindowPos4iMESA, glWindowPos4ivMESA, glWindowPos4sMESA, glWindowPos4svMESA, glBeginConditionalRenderNVX, glEndConditionalRenderNVX, glUploadGpuMaskNVX, glMulticastViewportArrayvNVX, glMulticastViewportPositionWScaleNVX, glMulticastScissorArrayvNVX, glAsyncCopyBufferSubDataNVX, glAsyncCopyImageSubDataNVX, glLGPUNamedBufferSubDataNVX, glLGPUCopyImageSubDataNVX, glLGPUInterlockNVX, + glCreateProgressFenceNVX, glSignalSemaphoreui64NVX, glWaitSemaphoreui64NVX, glClientWaitSemaphoreui64NVX, glAlphaToCoverageDitherControlNV, glMultiDrawArraysIndirectBindlessNV, glMultiDrawElementsIndirectBindlessNV, glMultiDrawArraysIndirectBindlessCountNV, glMultiDrawElementsIndirectBindlessCountNV, glGetTextureHandleNV, glGetTextureSamplerHandleNV, glMakeTextureHandleResidentNV, glMakeTextureHandleNonResidentNV, glGetImageHandleNV, glMakeImageHandleResidentNV, glMakeImageHandleNonResidentNV, + glUniformHandleui64NV, glUniformHandleui64vNV, glProgramUniformHandleui64NV, glProgramUniformHandleui64vNV, glIsTextureHandleResidentNV, glIsImageHandleResidentNV, glBlendParameteriNV, glBlendBarrierNV, glViewportPositionWScaleNV, glCreateStatesNV, glDeleteStatesNV, glIsStateNV, glStateCaptureNV, glGetCommandHeaderNV, glGetStageIndexNV, glDrawCommandsNV, + glDrawCommandsAddressNV, glDrawCommandsStatesNV, glDrawCommandsStatesAddressNV, glCreateCommandListsNV, glDeleteCommandListsNV, glIsCommandListNV, glListDrawCommandsStatesClientNV, glCommandListSegmentsNV, glCompileCommandListNV, glCallCommandListNV, glBeginConditionalRenderNV, glEndConditionalRenderNV, glSubpixelPrecisionBiasNV, glConservativeRasterParameterfNV, glConservativeRasterParameteriNV, glCopyImageSubDataNV, + glDepthRangedNV, glClearDepthdNV, glDepthBoundsdNV, glDrawTextureNV, glDrawVkImageNV, glGetVkProcAddrNV, glWaitVkSemaphoreNV, glSignalVkSemaphoreNV, glSignalVkFenceNV, glMapControlPointsNV, glMapParameterivNV, glMapParameterfvNV, glGetMapControlPointsNV, glGetMapParameterivNV, glGetMapParameterfvNV, glGetMapAttribParameterivNV, + glGetMapAttribParameterfvNV, glEvalMapsNV, glGetMultisamplefvNV, glSampleMaskIndexedNV, glTexRenderbufferNV, glDeleteFencesNV, glGenFencesNV, glIsFenceNV, glTestFenceNV, glGetFenceivNV, glFinishFenceNV, glSetFenceNV, glFragmentCoverageColorNV, glProgramNamedParameter4fNV, glProgramNamedParameter4fvNV, glProgramNamedParameter4dNV, + glProgramNamedParameter4dvNV, glGetProgramNamedParameterfvNV, glGetProgramNamedParameterdvNV, glCoverageModulationTableNV, glGetCoverageModulationTableNV, glCoverageModulationNV, glRenderbufferStorageMultisampleCoverageNV, glProgramVertexLimitNV, glFramebufferTextureEXT, glFramebufferTextureFaceEXT, glRenderGpuMaskNV, glMulticastBufferSubDataNV, glMulticastCopyBufferSubDataNV, glMulticastCopyImageSubDataNV, glMulticastBlitFramebufferNV, glMulticastFramebufferSampleLocationsfvNV, + glMulticastBarrierNV, glMulticastWaitSyncNV, glMulticastGetQueryObjectivNV, glMulticastGetQueryObjectuivNV, glMulticastGetQueryObjecti64vNV, glMulticastGetQueryObjectui64vNV, glProgramLocalParameterI4iNV, glProgramLocalParameterI4ivNV, glProgramLocalParametersI4ivNV, glProgramLocalParameterI4uiNV, glProgramLocalParameterI4uivNV, glProgramLocalParametersI4uivNV, glProgramEnvParameterI4iNV, glProgramEnvParameterI4ivNV, glProgramEnvParametersI4ivNV, glProgramEnvParameterI4uiNV, + glProgramEnvParameterI4uivNV, glProgramEnvParametersI4uivNV, glGetProgramLocalParameterIivNV, glGetProgramLocalParameterIuivNV, glGetProgramEnvParameterIivNV, glGetProgramEnvParameterIuivNV, glProgramSubroutineParametersuivNV, glGetProgramSubroutineParameteruivNV, glVertex2hNV, glVertex2hvNV, glVertex3hNV, glVertex3hvNV, glVertex4hNV, glVertex4hvNV, glNormal3hNV, glNormal3hvNV, + glColor3hNV, glColor3hvNV, glColor4hNV, glColor4hvNV, glTexCoord1hNV, glTexCoord1hvNV, glTexCoord2hNV, glTexCoord2hvNV, glTexCoord3hNV, glTexCoord3hvNV, glTexCoord4hNV, glTexCoord4hvNV, glMultiTexCoord1hNV, glMultiTexCoord1hvNV, glMultiTexCoord2hNV, glMultiTexCoord2hvNV, + glMultiTexCoord3hNV, glMultiTexCoord3hvNV, glMultiTexCoord4hNV, glMultiTexCoord4hvNV, glVertexAttrib1hNV, glVertexAttrib1hvNV, glVertexAttrib2hNV, glVertexAttrib2hvNV, glVertexAttrib3hNV, glVertexAttrib3hvNV, glVertexAttrib4hNV, glVertexAttrib4hvNV, glVertexAttribs1hvNV, glVertexAttribs2hvNV, glVertexAttribs3hvNV, glVertexAttribs4hvNV, + glFogCoordhNV, glFogCoordhvNV, glSecondaryColor3hNV, glSecondaryColor3hvNV, glVertexWeighthNV, glVertexWeighthvNV, glGetInternalformatSampleivNV, glGetMemoryObjectDetachedResourcesuivNV, glResetMemoryObjectParameterNV, glTexAttachMemoryNV, glBufferAttachMemoryNV, glTextureAttachMemoryNV, glNamedBufferAttachMemoryNV, glBufferPageCommitmentMemNV, glTexPageCommitmentMemNV, glNamedBufferPageCommitmentMemNV, + glTexturePageCommitmentMemNV, glDrawMeshTasksNV, glDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectCountNV, glGenOcclusionQueriesNV, glDeleteOcclusionQueriesNV, glIsOcclusionQueryNV, glBeginOcclusionQueryNV, glEndOcclusionQueryNV, glGetOcclusionQueryivNV, glGetOcclusionQueryuivNV, glProgramBufferParametersfvNV, glProgramBufferParametersIivNV, glProgramBufferParametersIuivNV, glGenPathsNV, + glDeletePathsNV, glIsPathNV, glPathCommandsNV, glPathCoordsNV, glPathSubCommandsNV, glPathSubCoordsNV, glPathStringNV, glPathGlyphsNV, glPathGlyphRangeNV, glWeightPathsNV, glCopyPathNV, glInterpolatePathsNV, glTransformPathNV, glPathParameterivNV, glPathParameteriNV, glPathParameterfvNV, + glPathParameterfNV, glPathDashArrayNV, glPathStencilFuncNV, glPathStencilDepthOffsetNV, glStencilFillPathNV, glStencilStrokePathNV, glStencilFillPathInstancedNV, glStencilStrokePathInstancedNV, glPathCoverDepthFuncNV, glCoverFillPathNV, glCoverStrokePathNV, glCoverFillPathInstancedNV, glCoverStrokePathInstancedNV, glGetPathParameterivNV, glGetPathParameterfvNV, glGetPathCommandsNV, + glGetPathCoordsNV, glGetPathDashArrayNV, glGetPathMetricsNV, glGetPathMetricRangeNV, glGetPathSpacingNV, glIsPointInFillPathNV, glIsPointInStrokePathNV, glGetPathLengthNV, glPointAlongPathNV, glMatrixLoad3x2fNV, glMatrixLoad3x3fNV, glMatrixLoadTranspose3x3fNV, glMatrixMult3x2fNV, glMatrixMult3x3fNV, glMatrixMultTranspose3x3fNV, glStencilThenCoverFillPathNV, + glStencilThenCoverStrokePathNV, glStencilThenCoverFillPathInstancedNV, glStencilThenCoverStrokePathInstancedNV, glPathGlyphIndexRangeNV, glPathGlyphIndexArrayNV, glPathMemoryGlyphIndexArrayNV, glProgramPathFragmentInputGenNV, glGetProgramResourcefvNV, glPathColorGenNV, glPathTexGenNV, glPathFogGenNV, glGetPathColorGenivNV, glGetPathColorGenfvNV, glGetPathTexGenivNV, glGetPathTexGenfvNV, glPixelDataRangeNV, + glFlushPixelDataRangeNV, glPointParameteriNV, glPointParameterivNV, glPresentFrameKeyedNV, glPresentFrameDualFillNV, glGetVideoivNV, glGetVideouivNV, glGetVideoi64vNV, glGetVideoui64vNV, glPrimitiveRestartNV, glPrimitiveRestartIndexNV, glQueryResourceNV, glGenQueryResourceTagNV, glDeleteQueryResourceTagNV, glQueryResourceTagNV, glCombinerParameterfvNV, + glCombinerParameterfNV, glCombinerParameterivNV, glCombinerParameteriNV, glCombinerInputNV, glCombinerOutputNV, glFinalCombinerInputNV, glGetCombinerInputParameterfvNV, glGetCombinerInputParameterivNV, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterivNV, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterivNV, glCombinerStageParameterfvNV, glGetCombinerStageParameterfvNV, glFramebufferSampleLocationsfvNV, glNamedFramebufferSampleLocationsfvNV, + glResolveDepthValuesNV, glScissorExclusiveNV, glScissorExclusiveArrayvNV, glMakeBufferResidentNV, glMakeBufferNonResidentNV, glIsBufferResidentNV, glMakeNamedBufferResidentNV, glMakeNamedBufferNonResidentNV, glIsNamedBufferResidentNV, glGetBufferParameterui64vNV, glGetNamedBufferParameterui64vNV, glGetIntegerui64vNV, glUniformui64NV, glUniformui64vNV, glProgramUniformui64NV, glProgramUniformui64vNV, + glBindShadingRateImageNV, glGetShadingRateImagePaletteNV, glGetShadingRateSampleLocationivNV, glShadingRateImageBarrierNV, glShadingRateImagePaletteNV, glShadingRateSampleOrderNV, glShadingRateSampleOrderCustomNV, glTextureBarrierNV, glTexImage2DMultisampleCoverageNV, glTexImage3DMultisampleCoverageNV, glTextureImage2DMultisampleNV, glTextureImage3DMultisampleNV, glTextureImage2DMultisampleCoverageNV, glTextureImage3DMultisampleCoverageNV, glCreateSemaphoresNV, glSemaphoreParameterivNV, + glGetSemaphoreParameterivNV, glBeginTransformFeedbackNV, glEndTransformFeedbackNV, glTransformFeedbackAttribsNV, glBindBufferRangeNV, glBindBufferOffsetNV, glBindBufferBaseNV, glTransformFeedbackVaryingsNV, glActiveVaryingNV, glGetVaryingLocationNV, glGetActiveVaryingNV, glGetTransformFeedbackVaryingNV, glTransformFeedbackStreamAttribsNV, glBindTransformFeedbackNV, glDeleteTransformFeedbacksNV, glGenTransformFeedbacksNV, + glIsTransformFeedbackNV, glPauseTransformFeedbackNV, glResumeTransformFeedbackNV, glDrawTransformFeedbackNV, glVDPAUInitNV, glVDPAUFiniNV, glVDPAURegisterVideoSurfaceNV, glVDPAURegisterOutputSurfaceNV, glVDPAUIsSurfaceNV, glVDPAUUnregisterSurfaceNV, glVDPAUGetSurfaceivNV, glVDPAUSurfaceAccessNV, glVDPAUMapSurfacesNV, glVDPAUUnmapSurfacesNV, glVDPAURegisterVideoSurfaceWithPictureStructureNV, glFlushVertexArrayRangeNV, + glVertexArrayRangeNV, glVertexAttribL1i64NV, glVertexAttribL2i64NV, glVertexAttribL3i64NV, glVertexAttribL4i64NV, glVertexAttribL1i64vNV, glVertexAttribL2i64vNV, glVertexAttribL3i64vNV, glVertexAttribL4i64vNV, glVertexAttribL1ui64NV, glVertexAttribL2ui64NV, glVertexAttribL3ui64NV, glVertexAttribL4ui64NV, glVertexAttribL1ui64vNV, glVertexAttribL2ui64vNV, glVertexAttribL3ui64vNV, + glVertexAttribL4ui64vNV, glGetVertexAttribLi64vNV, glGetVertexAttribLui64vNV, glVertexAttribLFormatNV, glBufferAddressRangeNV, glVertexFormatNV, glNormalFormatNV, glColorFormatNV, glIndexFormatNV, glTexCoordFormatNV, glEdgeFlagFormatNV, glSecondaryColorFormatNV, glFogCoordFormatNV, glVertexAttribFormatNV, glVertexAttribIFormatNV, glGetIntegerui64i_vNV, + glAreProgramsResidentNV, glBindProgramNV, glDeleteProgramsNV, glExecuteProgramNV, glGenProgramsNV, glGetProgramParameterdvNV, glGetProgramParameterfvNV, glGetProgramivNV, glGetProgramStringNV, glGetTrackMatrixivNV, glGetVertexAttribdvNV, glGetVertexAttribfvNV, glGetVertexAttribivNV, glGetVertexAttribPointervNV, glIsProgramNV, glLoadProgramNV, + glProgramParameter4dNV, glProgramParameter4dvNV, glProgramParameter4fNV, glProgramParameter4fvNV, glProgramParameters4dvNV, glProgramParameters4fvNV, glRequestResidentProgramsNV, glTrackMatrixNV, glVertexAttribPointerNV, glVertexAttrib1dNV, glVertexAttrib1dvNV, glVertexAttrib1fNV, glVertexAttrib1fvNV, glVertexAttrib1sNV, glVertexAttrib1svNV, glVertexAttrib2dNV, + glVertexAttrib2dvNV, glVertexAttrib2fNV, glVertexAttrib2fvNV, glVertexAttrib2sNV, glVertexAttrib2svNV, glVertexAttrib3dNV, glVertexAttrib3dvNV, glVertexAttrib3fNV, glVertexAttrib3fvNV, glVertexAttrib3sNV, glVertexAttrib3svNV, glVertexAttrib4dNV, glVertexAttrib4dvNV, glVertexAttrib4fNV, glVertexAttrib4fvNV, glVertexAttrib4sNV, + glVertexAttrib4svNV, glVertexAttrib4ubNV, glVertexAttrib4ubvNV, glVertexAttribs1dvNV, glVertexAttribs1fvNV, glVertexAttribs1svNV, glVertexAttribs2dvNV, glVertexAttribs2fvNV, glVertexAttribs2svNV, glVertexAttribs3dvNV, glVertexAttribs3fvNV, glVertexAttribs3svNV, glVertexAttribs4dvNV, glVertexAttribs4fvNV, glVertexAttribs4svNV, glVertexAttribs4ubvNV, + glBeginVideoCaptureNV, glBindVideoCaptureStreamBufferNV, glBindVideoCaptureStreamTextureNV, glEndVideoCaptureNV, glGetVideoCaptureivNV, glGetVideoCaptureStreamivNV, glGetVideoCaptureStreamfvNV, glGetVideoCaptureStreamdvNV, glVideoCaptureNV, glVideoCaptureStreamParameterivNV, glVideoCaptureStreamParameterfvNV, glVideoCaptureStreamParameterdvNV, glViewportSwizzleNV, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, + glGetDetailTexFuncSGIS, glFogFuncSGIS, glGetFogFuncSGIS, glSampleMaskSGIS, glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, + glTexSubImage4DSGIS, glTextureColorMaskSGIS, glGetTexFilterFuncSGIS, glTexFilterFuncSGIS, glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, glFlushRasterSGIX, glFragmentColorMaterialSGIX, glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, + glFragmentLightModelfSGIX, glFragmentLightModelfvSGIX, glFragmentLightModeliSGIX, glFragmentLightModelivSGIX, glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, + glInstrumentsBufferSGIX, glPollInstrumentsSGIX, glReadInstrumentsSGIX, glStartInstrumentsSGIX, glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, glListParameterivSGIX, glPixelTexGenSGIX, glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, + glReferencePlaneSGIX, glSpriteParameterfSGIX, glSpriteParameterfvSGIX, glSpriteParameteriSGIX, glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, glGetColorTableSGI, glGetColorTableParameterfvSGI, glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, + glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, + glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, + glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, + glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; void load(GLLoadFunc load) { GLARBES32Compatibility.load(this, load); @@ -225,6 +247,31 @@ void load(GLLoadFunc load) { GLATIVertexArrayObject.load(this, load); GLATIVertexAttribArrayObject.load(this, load); GLATIVertexStreams.load(this, load); + GLEXTEGLImageStorage.load(this, load); + GLEXTBindableUniform.load(this, load); + GLEXTBlendColor.load(this, load); + GLEXTBlendEquationSeparate.load(this, load); + GLEXTBlendFuncSeparate.load(this, load); + GLEXTBlendMinmax.load(this, load); + GLEXTColorSubtable.load(this, load); + GLEXTCompiledVertexArray.load(this, load); + GLEXTConvolution.load(this, load); + GLEXTCoordinateFrame.load(this, load); + GLEXTCopyTexture.load(this, load); + GLEXTCullVertex.load(this, load); + GLEXTDebugLabel.load(this, load); + GLEXTDebugMarker.load(this, load); + GLEXTDepthBoundsTest.load(this, load); + GLEXTDirectStateAccess.load(this, load); + GLEXTDrawBuffers2.load(this, load); + GLEXTDrawInstanced.load(this, load); + GLEXTDrawRangedElements.load(this, load); + GLEXTExternalBuffer.load(this, load); + GLEXTFogCoord.load(this, load); + GLEXTFramebufferBlit.load(this, load); + GLEXTFramebufferBlitLayers.load(this, load); + GLEXTFramebufferMultisample.load(this, load); + GLEXTFramebufferObject.load(this, load); GLGREMEDYFrameTerminator.load(this, load); GLGREMEDYStringMarker.load(this, load); GLHPImageTransform.load(this, load); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTAbgr.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTAbgr.java new file mode 100644 index 00000000..09cc274f --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTAbgr.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_abgr} + */ +public final class GLEXTAbgr { + public static final int GL_ABGR_EXT = 0x8000; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBgra.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBgra.java new file mode 100644 index 00000000..b747954d --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBgra.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_bgra} + */ +public final class GLEXTBgra { + public static final int GL_BGR_EXT = 0x80E0; + public static final int GL_BGRA_EXT = 0x80E1; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBindableUniform.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBindableUniform.java new file mode 100644 index 00000000..f0078417 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBindableUniform.java @@ -0,0 +1,67 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_bindable_uniform} + */ +public final class GLEXTBindableUniform { + public static final int GL_MAX_VERTEX_BINDABLE_UNIFORMS_EXT = 0x8DE2; + public static final int GL_MAX_FRAGMENT_BINDABLE_UNIFORMS_EXT = 0x8DE3; + public static final int GL_MAX_GEOMETRY_BINDABLE_UNIFORMS_EXT = 0x8DE4; + public static final int GL_MAX_BINDABLE_UNIFORM_SIZE_EXT = 0x8DED; + public static final int GL_UNIFORM_BUFFER_EXT = 0x8DEE; + public static final int GL_UNIFORM_BUFFER_BINDING_EXT = 0x8DEF; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_bindable_uniform) return; + ext.glUniformBufferEXT = load.invoke("glUniformBufferEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetUniformBufferSizeEXT = load.invoke("glGetUniformBufferSizeEXT", of(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetUniformOffsetEXT = load.invoke("glGetUniformOffsetEXT", of(JAVA_LONG, JAVA_INT, JAVA_INT)); + } + + public static void glUniformBufferEXT(int program, int location, int buffer) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniformBufferEXT).invokeExact(program, location, buffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glGetUniformBufferSizeEXT(int program, int location) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glGetUniformBufferSizeEXT).invokeExact(program, location); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static long glGetUniformOffsetEXT(int program, int location) { + final var ext = getExtCapabilities(); + try { + return (long) + check(ext.glGetUniformOffsetEXT).invokeExact(program, location); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendColor.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendColor.java new file mode 100644 index 00000000..9aacab36 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendColor.java @@ -0,0 +1,48 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_blend_color} + */ +public final class GLEXTBlendColor { + public static final int GL_CONSTANT_COLOR_EXT = 0x8001; + public static final int GL_ONE_MINUS_CONSTANT_COLOR_EXT = 0x8002; + public static final int GL_CONSTANT_ALPHA_EXT = 0x8003; + public static final int GL_ONE_MINUS_CONSTANT_ALPHA_EXT = 0x8004; + public static final int GL_BLEND_COLOR_EXT = 0x8005; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_blend_color) return; + ext.glBlendColorEXT = load.invoke("glBlendColorEXT", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + } + + public static void glBlendColorEXT(float red, float green, float blue, float alpha) { + final var ext = getExtCapabilities(); + try { + check(ext.glBlendColorEXT).invokeExact(red, green, blue, alpha); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendEquationSeparate.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendEquationSeparate.java new file mode 100644 index 00000000..6a1ad785 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendEquationSeparate.java @@ -0,0 +1,45 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_blend_equation_separate} + */ +public final class GLEXTBlendEquationSeparate { + public static final int GL_BLEND_EQUATION_RGB_EXT = 0x8009; + public static final int GL_BLEND_EQUATION_ALPHA_EXT = 0x883D; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_blend_equation_separate) return; + ext.glBlendEquationSeparateEXT = load.invoke("glBlendEquationSeparateEXT", ofVoid(JAVA_INT, JAVA_INT)); + } + + public static void glBlendEquationSeparateEXT(int modeRGB, int modeAlpha) { + final var ext = getExtCapabilities(); + try { + check(ext.glBlendEquationSeparateEXT).invokeExact(modeRGB, modeAlpha); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendFuncSeparate.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendFuncSeparate.java new file mode 100644 index 00000000..d5bd751a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendFuncSeparate.java @@ -0,0 +1,47 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_blend_func_separate} + */ +public final class GLEXTBlendFuncSeparate { + public static final int GL_BLEND_DST_RGB_EXT = 0x80C8; + public static final int GL_BLEND_SRC_RGB_EXT = 0x80C9; + public static final int GL_BLEND_DST_ALPHA_EXT = 0x80CA; + public static final int GL_BLEND_SRC_ALPHA_EXT = 0x80CB; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_blend_func_separate) return; + ext.glBlendFuncSeparateEXT = load.invoke("glBlendFuncSeparateEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glBlendFuncSeparateEXT(int sfactorRGB, int dfactorRGB, int sfactorAlpha, int dfactorAlpha) { + final var ext = getExtCapabilities(); + try { + check(ext.glBlendFuncSeparateEXT).invokeExact(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendMinmax.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendMinmax.java new file mode 100644 index 00000000..caa8ba1c --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendMinmax.java @@ -0,0 +1,47 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_blend_minmax} + */ +public final class GLEXTBlendMinmax { + public static final int GL_MIN_EXT = 0x8007; + public static final int GL_MAX_EXT = 0x8008; + public static final int GL_FUNC_ADD_EXT = 0x8006; + public static final int GL_BLEND_EQUATION_EXT = 0x8009; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_blend_minmax) return; + ext.glBlendEquationEXT = load.invoke("glBlendEquationEXT", ofVoid(JAVA_INT)); + } + + public static void glBlendEquationEXT(int mode) { + final var ext = getExtCapabilities(); + try { + check(ext.glBlendEquationEXT).invokeExact(mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendSubtract.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendSubtract.java new file mode 100644 index 00000000..cb713676 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTBlendSubtract.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_blend_subtract} + */ +public final class GLEXTBlendSubtract { + public static final int GL_FUNC_SUBTRACT_EXT = 0x800A; + public static final int GL_FUNC_REVERSE_SUBTRACT_EXT = 0x800B; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTClipVolumeHint.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTClipVolumeHint.java new file mode 100644 index 00000000..740364dc --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTClipVolumeHint.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_clip_volume_hint} + */ +public final class GLEXTClipVolumeHint { + public static final int GL_CLIP_VOLUME_CLIPPING_HINT_EXT = 0x80F0; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCmyka.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCmyka.java new file mode 100644 index 00000000..3d8b83a6 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCmyka.java @@ -0,0 +1,35 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_cmyka} + */ +public final class GLEXTCmyka { + public static final int GL_CMYK_EXT = 0x800C; + public static final int GL_CMYKA_EXT = 0x800D; + public static final int GL_PACK_CMYK_HINT_EXT = 0x800E; + public static final int GL_UNPACK_CMYK_HINT_EXT = 0x800F; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTColorSubtable.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTColorSubtable.java new file mode 100644 index 00000000..430ccd55 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTColorSubtable.java @@ -0,0 +1,51 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_color_subtable} + */ +public final class GLEXTColorSubtable { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_color_subtable) return; + ext.glColorSubTableEXT = load.invoke("glColorSubTableEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCopyColorSubTableEXT = load.invoke("glCopyColorSubTableEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glColorSubTableEXT(int target, int start, int count, int format, int type, @NativeType("const void *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glColorSubTableEXT).invokeExact(target, start, count, format, type, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyColorSubTableEXT(int target, int start, int x, int y, int width) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyColorSubTableEXT).invokeExact(target, start, x, y, width); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCompiledVertexArray.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCompiledVertexArray.java new file mode 100644 index 00000000..bf5df8e0 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCompiledVertexArray.java @@ -0,0 +1,53 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_compiled_vertex_array} + */ +public final class GLEXTCompiledVertexArray { + public static final int GL_ARRAY_ELEMENT_LOCK_FIRST_EXT = 0x81A8; + public static final int GL_ARRAY_ELEMENT_LOCK_COUNT_EXT = 0x81A9; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_compiled_vertex_array) return; + ext.glLockArraysEXT = load.invoke("glLockArraysEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glUnlockArraysEXT = load.invoke("glUnlockArraysEXT", ofVoid()); + } + + public static void glLockArraysEXT(int first, int count) { + final var ext = getExtCapabilities(); + try { + check(ext.glLockArraysEXT).invokeExact(first, count); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUnlockArraysEXT() { + final var ext = getExtCapabilities(); + try { + check(ext.glUnlockArraysEXT).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTConvolution.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTConvolution.java new file mode 100644 index 00000000..45824b9a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTConvolution.java @@ -0,0 +1,159 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_convolution} + */ +public final class GLEXTConvolution { + public static final int GL_CONVOLUTION_1D_EXT = 0x8010; + public static final int GL_CONVOLUTION_2D_EXT = 0x8011; + public static final int GL_SEPARABLE_2D_EXT = 0x8012; + public static final int GL_CONVOLUTION_BORDER_MODE_EXT = 0x8013; + public static final int GL_CONVOLUTION_FILTER_SCALE_EXT = 0x8014; + public static final int GL_CONVOLUTION_FILTER_BIAS_EXT = 0x8015; + public static final int GL_REDUCE_EXT = 0x8016; + public static final int GL_CONVOLUTION_FORMAT_EXT = 0x8017; + public static final int GL_CONVOLUTION_WIDTH_EXT = 0x8018; + public static final int GL_CONVOLUTION_HEIGHT_EXT = 0x8019; + public static final int GL_MAX_CONVOLUTION_WIDTH_EXT = 0x801A; + public static final int GL_MAX_CONVOLUTION_HEIGHT_EXT = 0x801B; + public static final int GL_POST_CONVOLUTION_RED_SCALE_EXT = 0x801C; + public static final int GL_POST_CONVOLUTION_GREEN_SCALE_EXT = 0x801D; + public static final int GL_POST_CONVOLUTION_BLUE_SCALE_EXT = 0x801E; + public static final int GL_POST_CONVOLUTION_ALPHA_SCALE_EXT = 0x801F; + public static final int GL_POST_CONVOLUTION_RED_BIAS_EXT = 0x8020; + public static final int GL_POST_CONVOLUTION_GREEN_BIAS_EXT = 0x8021; + public static final int GL_POST_CONVOLUTION_BLUE_BIAS_EXT = 0x8022; + public static final int GL_POST_CONVOLUTION_ALPHA_BIAS_EXT = 0x8023; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_convolution) return; + ext.glConvolutionFilter1DEXT = load.invoke("glConvolutionFilter1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glConvolutionFilter2DEXT = load.invoke("glConvolutionFilter2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glConvolutionParameterfEXT = load.invoke("glConvolutionParameterfEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glConvolutionParameterfvEXT = load.invoke("glConvolutionParameterfvEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glConvolutionParameteriEXT = load.invoke("glConvolutionParameteriEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glConvolutionParameterivEXT = load.invoke("glConvolutionParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCopyConvolutionFilter1DEXT = load.invoke("glCopyConvolutionFilter1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glCopyConvolutionFilter2DEXT = load.invoke("glCopyConvolutionFilter2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetConvolutionFilterEXT = load.invoke("glGetConvolutionFilterEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetConvolutionParameterfvEXT = load.invoke("glGetConvolutionParameterfvEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetConvolutionParameterivEXT = load.invoke("glGetConvolutionParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetSeparableFilterEXT = load.invoke("glGetSeparableFilterEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, ADDRESS, ADDRESS)); + ext.glSeparableFilter2DEXT = load.invoke("glSeparableFilter2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + } + + public static void glConvolutionFilter1DEXT(int target, int internalformat, int width, int format, int type, @NativeType("const void *") MemorySegment image) { + final var ext = getExtCapabilities(); + try { + check(ext.glConvolutionFilter1DEXT).invokeExact(target, internalformat, width, format, type, image); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glConvolutionFilter2DEXT(int target, int internalformat, int width, int height, int format, int type, @NativeType("const void *") MemorySegment image) { + final var ext = getExtCapabilities(); + try { + check(ext.glConvolutionFilter2DEXT).invokeExact(target, internalformat, width, height, format, type, image); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glConvolutionParameterfEXT(int target, int pname, float params) { + final var ext = getExtCapabilities(); + try { + check(ext.glConvolutionParameterfEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glConvolutionParameterfvEXT(int target, int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glConvolutionParameterfvEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glConvolutionParameteriEXT(int target, int pname, int params) { + final var ext = getExtCapabilities(); + try { + check(ext.glConvolutionParameteriEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glConvolutionParameterivEXT(int target, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glConvolutionParameterivEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyConvolutionFilter1DEXT(int target, int internalformat, int x, int y, int width) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyConvolutionFilter1DEXT).invokeExact(target, internalformat, x, y, width); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyConvolutionFilter2DEXT(int target, int internalformat, int x, int y, int width, int height) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyConvolutionFilter2DEXT).invokeExact(target, internalformat, x, y, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetConvolutionFilterEXT(int target, int format, int type, @NativeType("void *") MemorySegment image) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetConvolutionFilterEXT).invokeExact(target, format, type, image); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetConvolutionParameterfvEXT(int target, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetConvolutionParameterfvEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetConvolutionParameterivEXT(int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetConvolutionParameterivEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetSeparableFilterEXT(int target, int format, int type, @NativeType("void *") MemorySegment row, @NativeType("void *") MemorySegment column, @NativeType("void *") MemorySegment span) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetSeparableFilterEXT).invokeExact(target, format, type, row, column, span); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSeparableFilter2DEXT(int target, int internalformat, int width, int height, int format, int type, @NativeType("const void *") MemorySegment row, @NativeType("const void *") MemorySegment column) { + final var ext = getExtCapabilities(); + try { + check(ext.glSeparableFilter2DEXT).invokeExact(target, internalformat, width, height, format, type, row, column); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCoordinateFrame.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCoordinateFrame.java new file mode 100644 index 00000000..28b59fc6 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCoordinateFrame.java @@ -0,0 +1,225 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_coordinate_frame} + */ +public final class GLEXTCoordinateFrame { + public static final int GL_TANGENT_ARRAY_EXT = 0x8439; + public static final int GL_BINORMAL_ARRAY_EXT = 0x843A; + public static final int GL_CURRENT_TANGENT_EXT = 0x843B; + public static final int GL_CURRENT_BINORMAL_EXT = 0x843C; + public static final int GL_TANGENT_ARRAY_TYPE_EXT = 0x843E; + public static final int GL_TANGENT_ARRAY_STRIDE_EXT = 0x843F; + public static final int GL_BINORMAL_ARRAY_TYPE_EXT = 0x8440; + public static final int GL_BINORMAL_ARRAY_STRIDE_EXT = 0x8441; + public static final int GL_TANGENT_ARRAY_POINTER_EXT = 0x8442; + public static final int GL_BINORMAL_ARRAY_POINTER_EXT = 0x8443; + public static final int GL_MAP1_TANGENT_EXT = 0x8444; + public static final int GL_MAP2_TANGENT_EXT = 0x8445; + public static final int GL_MAP1_BINORMAL_EXT = 0x8446; + public static final int GL_MAP2_BINORMAL_EXT = 0x8447; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_coordinate_frame) return; + ext.glTangent3bEXT = load.invoke("glTangent3bEXT", ofVoid(JAVA_BYTE, JAVA_BYTE, JAVA_BYTE)); + ext.glTangent3bvEXT = load.invoke("glTangent3bvEXT", ofVoid(ADDRESS)); + ext.glTangent3dEXT = load.invoke("glTangent3dEXT", ofVoid(JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glTangent3dvEXT = load.invoke("glTangent3dvEXT", ofVoid(ADDRESS)); + ext.glTangent3fEXT = load.invoke("glTangent3fEXT", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glTangent3fvEXT = load.invoke("glTangent3fvEXT", ofVoid(ADDRESS)); + ext.glTangent3iEXT = load.invoke("glTangent3iEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glTangent3ivEXT = load.invoke("glTangent3ivEXT", ofVoid(ADDRESS)); + ext.glTangent3sEXT = load.invoke("glTangent3sEXT", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glTangent3svEXT = load.invoke("glTangent3svEXT", ofVoid(ADDRESS)); + ext.glBinormal3bEXT = load.invoke("glBinormal3bEXT", ofVoid(JAVA_BYTE, JAVA_BYTE, JAVA_BYTE)); + ext.glBinormal3bvEXT = load.invoke("glBinormal3bvEXT", ofVoid(ADDRESS)); + ext.glBinormal3dEXT = load.invoke("glBinormal3dEXT", ofVoid(JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glBinormal3dvEXT = load.invoke("glBinormal3dvEXT", ofVoid(ADDRESS)); + ext.glBinormal3fEXT = load.invoke("glBinormal3fEXT", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glBinormal3fvEXT = load.invoke("glBinormal3fvEXT", ofVoid(ADDRESS)); + ext.glBinormal3iEXT = load.invoke("glBinormal3iEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glBinormal3ivEXT = load.invoke("glBinormal3ivEXT", ofVoid(ADDRESS)); + ext.glBinormal3sEXT = load.invoke("glBinormal3sEXT", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glBinormal3svEXT = load.invoke("glBinormal3svEXT", ofVoid(ADDRESS)); + ext.glTangentPointerEXT = load.invoke("glTangentPointerEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glBinormalPointerEXT = load.invoke("glBinormalPointerEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glTangent3bEXT(byte tx, byte ty, byte tz) { + final var ext = getExtCapabilities(); + try { + check(ext.glTangent3bEXT).invokeExact(tx, ty, tz); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTangent3bvEXT(@NativeType("const GLbyte *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glTangent3bvEXT).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTangent3dEXT(double tx, double ty, double tz) { + final var ext = getExtCapabilities(); + try { + check(ext.glTangent3dEXT).invokeExact(tx, ty, tz); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTangent3dvEXT(@NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glTangent3dvEXT).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTangent3fEXT(float tx, float ty, float tz) { + final var ext = getExtCapabilities(); + try { + check(ext.glTangent3fEXT).invokeExact(tx, ty, tz); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTangent3fvEXT(@NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glTangent3fvEXT).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTangent3iEXT(int tx, int ty, int tz) { + final var ext = getExtCapabilities(); + try { + check(ext.glTangent3iEXT).invokeExact(tx, ty, tz); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTangent3ivEXT(@NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glTangent3ivEXT).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTangent3sEXT(short tx, short ty, short tz) { + final var ext = getExtCapabilities(); + try { + check(ext.glTangent3sEXT).invokeExact(tx, ty, tz); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTangent3svEXT(@NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glTangent3svEXT).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBinormal3bEXT(byte bx, byte by, byte bz) { + final var ext = getExtCapabilities(); + try { + check(ext.glBinormal3bEXT).invokeExact(bx, by, bz); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBinormal3bvEXT(@NativeType("const GLbyte *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glBinormal3bvEXT).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBinormal3dEXT(double bx, double by, double bz) { + final var ext = getExtCapabilities(); + try { + check(ext.glBinormal3dEXT).invokeExact(bx, by, bz); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBinormal3dvEXT(@NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glBinormal3dvEXT).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBinormal3fEXT(float bx, float by, float bz) { + final var ext = getExtCapabilities(); + try { + check(ext.glBinormal3fEXT).invokeExact(bx, by, bz); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBinormal3fvEXT(@NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glBinormal3fvEXT).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBinormal3iEXT(int bx, int by, int bz) { + final var ext = getExtCapabilities(); + try { + check(ext.glBinormal3iEXT).invokeExact(bx, by, bz); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBinormal3ivEXT(@NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glBinormal3ivEXT).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBinormal3sEXT(short bx, short by, short bz) { + final var ext = getExtCapabilities(); + try { + check(ext.glBinormal3sEXT).invokeExact(bx, by, bz); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBinormal3svEXT(@NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glBinormal3svEXT).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTangentPointerEXT(int type, int stride, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glTangentPointerEXT).invokeExact(type, stride, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBinormalPointerEXT(int type, int stride, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glBinormalPointerEXT).invokeExact(type, stride, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCopyTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCopyTexture.java new file mode 100644 index 00000000..4cc5c38c --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCopyTexture.java @@ -0,0 +1,75 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_copy_texture} + */ +public final class GLEXTCopyTexture { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_copy_texture) return; + ext.glCopyTexImage1DEXT = load.invoke("glCopyTexImage1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glCopyTexImage2DEXT = load.invoke("glCopyTexImage2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glCopyTexSubImage1DEXT = load.invoke("glCopyTexSubImage1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glCopyTexSubImage2DEXT = load.invoke("glCopyTexSubImage2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glCopyTexSubImage3DEXT = load.invoke("glCopyTexSubImage3DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glCopyTexImage1DEXT(int target, int level, int internalformat, int x, int y, int width, int border) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyTexImage1DEXT).invokeExact(target, level, internalformat, x, y, width, border); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyTexImage2DEXT(int target, int level, int internalformat, int x, int y, int width, int height, int border) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyTexImage2DEXT).invokeExact(target, level, internalformat, x, y, width, height, border); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyTexSubImage1DEXT(int target, int level, int xoffset, int x, int y, int width) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyTexSubImage1DEXT).invokeExact(target, level, xoffset, x, y, width); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyTexSubImage2DEXT(int target, int level, int xoffset, int yoffset, int x, int y, int width, int height) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyTexSubImage2DEXT).invokeExact(target, level, xoffset, yoffset, x, y, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyTexSubImage3DEXT(int target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyTexSubImage3DEXT).invokeExact(target, level, xoffset, yoffset, zoffset, x, y, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCullVertex.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCullVertex.java new file mode 100644 index 00000000..f963412a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTCullVertex.java @@ -0,0 +1,54 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_cull_vertex} + */ +public final class GLEXTCullVertex { + public static final int GL_CULL_VERTEX_EXT = 0x81AA; + public static final int GL_CULL_VERTEX_EYE_POSITION_EXT = 0x81AB; + public static final int GL_CULL_VERTEX_OBJECT_POSITION_EXT = 0x81AC; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_cull_vertex) return; + ext.glCullParameterdvEXT = load.invoke("glCullParameterdvEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glCullParameterfvEXT = load.invoke("glCullParameterfvEXT", ofVoid(JAVA_INT, ADDRESS)); + } + + public static void glCullParameterdvEXT(int pname, @NativeType("GLdouble *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glCullParameterdvEXT).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCullParameterfvEXT(int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glCullParameterfvEXT).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDebugLabel.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDebugLabel.java new file mode 100644 index 00000000..c8abe18d --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDebugLabel.java @@ -0,0 +1,57 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_debug_label} + */ +public final class GLEXTDebugLabel { + public static final int GL_PROGRAM_PIPELINE_OBJECT_EXT = 0x8A4F; + public static final int GL_PROGRAM_OBJECT_EXT = 0x8B40; + public static final int GL_SHADER_OBJECT_EXT = 0x8B48; + public static final int GL_BUFFER_OBJECT_EXT = 0x9151; + public static final int GL_QUERY_OBJECT_EXT = 0x9153; + public static final int GL_VERTEX_ARRAY_OBJECT_EXT = 0x9154; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_debug_label) return; + ext.glLabelObjectEXT = load.invoke("glLabelObjectEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetObjectLabelEXT = load.invoke("glGetObjectLabelEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, ADDRESS)); + } + + public static void glLabelObjectEXT(int type, int object, int length, @NativeType("const GLchar *") MemorySegment label) { + final var ext = getExtCapabilities(); + try { + check(ext.glLabelObjectEXT).invokeExact(type, object, length, label); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetObjectLabelEXT(int type, int object, int bufSize, @NativeType("GLsizei *") MemorySegment length, @NativeType("GLchar *") MemorySegment label) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetObjectLabelEXT).invokeExact(type, object, bufSize, length, label); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDebugMarker.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDebugMarker.java new file mode 100644 index 00000000..e0b582d3 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDebugMarker.java @@ -0,0 +1,59 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_debug_marker} + */ +public final class GLEXTDebugMarker { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_debug_marker) return; + ext.glInsertEventMarkerEXT = load.invoke("glInsertEventMarkerEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glPushGroupMarkerEXT = load.invoke("glPushGroupMarkerEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glPopGroupMarkerEXT = load.invoke("glPopGroupMarkerEXT", ofVoid()); + } + + public static void glInsertEventMarkerEXT(int length, @NativeType("const GLchar *") MemorySegment marker) { + final var ext = getExtCapabilities(); + try { + check(ext.glInsertEventMarkerEXT).invokeExact(length, marker); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPushGroupMarkerEXT(int length, @NativeType("const GLchar *") MemorySegment marker) { + final var ext = getExtCapabilities(); + try { + check(ext.glPushGroupMarkerEXT).invokeExact(length, marker); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPopGroupMarkerEXT() { + final var ext = getExtCapabilities(); + try { + check(ext.glPopGroupMarkerEXT).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDepthBoundsTest.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDepthBoundsTest.java new file mode 100644 index 00000000..873d6492 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDepthBoundsTest.java @@ -0,0 +1,45 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_depth_bounds_test} + */ +public final class GLEXTDepthBoundsTest { + public static final int GL_DEPTH_BOUNDS_TEST_EXT = 0x8890; + public static final int GL_DEPTH_BOUNDS_EXT = 0x8891; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_depth_bounds_test) return; + ext.glDepthBoundsEXT = load.invoke("glDepthBoundsEXT", ofVoid(JAVA_DOUBLE, JAVA_DOUBLE)); + } + + public static void glDepthBoundsEXT(double zmin, double zmax) { + final var ext = getExtCapabilities(); + try { + check(ext.glDepthBoundsEXT).invokeExact(zmin, zmax); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDirectStateAccess.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDirectStateAccess.java new file mode 100644 index 00000000..8c8711df --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDirectStateAccess.java @@ -0,0 +1,2082 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_direct_state_access} + */ +public final class GLEXTDirectStateAccess { + public static final int GL_PROGRAM_MATRIX_EXT = 0x8E2D; + public static final int GL_TRANSPOSE_PROGRAM_MATRIX_EXT = 0x8E2E; + public static final int GL_PROGRAM_MATRIX_STACK_DEPTH_EXT = 0x8E2F; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_direct_state_access) return; + ext.glMatrixLoadfEXT = load.invoke("glMatrixLoadfEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixLoaddEXT = load.invoke("glMatrixLoaddEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixMultfEXT = load.invoke("glMatrixMultfEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixMultdEXT = load.invoke("glMatrixMultdEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixLoadIdentityEXT = load.invoke("glMatrixLoadIdentityEXT", ofVoid(JAVA_INT)); + ext.glMatrixRotatefEXT = load.invoke("glMatrixRotatefEXT", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glMatrixRotatedEXT = load.invoke("glMatrixRotatedEXT", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glMatrixScalefEXT = load.invoke("glMatrixScalefEXT", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glMatrixScaledEXT = load.invoke("glMatrixScaledEXT", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glMatrixTranslatefEXT = load.invoke("glMatrixTranslatefEXT", ofVoid(JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glMatrixTranslatedEXT = load.invoke("glMatrixTranslatedEXT", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glMatrixFrustumEXT = load.invoke("glMatrixFrustumEXT", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glMatrixOrthoEXT = load.invoke("glMatrixOrthoEXT", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glMatrixPopEXT = load.invoke("glMatrixPopEXT", ofVoid(JAVA_INT)); + ext.glMatrixPushEXT = load.invoke("glMatrixPushEXT", ofVoid(JAVA_INT)); + ext.glClientAttribDefaultEXT = load.invoke("glClientAttribDefaultEXT", ofVoid(JAVA_INT)); + ext.glPushClientAttribDefaultEXT = load.invoke("glPushClientAttribDefaultEXT", ofVoid(JAVA_INT)); + ext.glTextureParameterfEXT = load.invoke("glTextureParameterfEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glTextureParameterfvEXT = load.invoke("glTextureParameterfvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glTextureParameteriEXT = load.invoke("glTextureParameteriEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glTextureParameterivEXT = load.invoke("glTextureParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glTextureImage1DEXT = load.invoke("glTextureImage1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glTextureImage2DEXT = load.invoke("glTextureImage2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glTextureSubImage1DEXT = load.invoke("glTextureSubImage1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glTextureSubImage2DEXT = load.invoke("glTextureSubImage2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCopyTextureImage1DEXT = load.invoke("glCopyTextureImage1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glCopyTextureImage2DEXT = load.invoke("glCopyTextureImage2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glCopyTextureSubImage1DEXT = load.invoke("glCopyTextureSubImage1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glCopyTextureSubImage2DEXT = load.invoke("glCopyTextureSubImage2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetTextureImageEXT = load.invoke("glGetTextureImageEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetTextureParameterfvEXT = load.invoke("glGetTextureParameterfvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetTextureParameterivEXT = load.invoke("glGetTextureParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetTextureLevelParameterfvEXT = load.invoke("glGetTextureLevelParameterfvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetTextureLevelParameterivEXT = load.invoke("glGetTextureLevelParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glTextureImage3DEXT = load.invoke("glTextureImage3DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glTextureSubImage3DEXT = load.invoke("glTextureSubImage3DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCopyTextureSubImage3DEXT = load.invoke("glCopyTextureSubImage3DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glBindMultiTextureEXT = load.invoke("glBindMultiTextureEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMultiTexCoordPointerEXT = load.invoke("glMultiTexCoordPointerEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMultiTexEnvfEXT = load.invoke("glMultiTexEnvfEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glMultiTexEnvfvEXT = load.invoke("glMultiTexEnvfvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMultiTexEnviEXT = load.invoke("glMultiTexEnviEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMultiTexEnvivEXT = load.invoke("glMultiTexEnvivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMultiTexGendEXT = load.invoke("glMultiTexGendEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_DOUBLE)); + ext.glMultiTexGendvEXT = load.invoke("glMultiTexGendvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMultiTexGenfEXT = load.invoke("glMultiTexGenfEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glMultiTexGenfvEXT = load.invoke("glMultiTexGenfvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMultiTexGeniEXT = load.invoke("glMultiTexGeniEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMultiTexGenivEXT = load.invoke("glMultiTexGenivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMultiTexEnvfvEXT = load.invoke("glGetMultiTexEnvfvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMultiTexEnvivEXT = load.invoke("glGetMultiTexEnvivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMultiTexGendvEXT = load.invoke("glGetMultiTexGendvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMultiTexGenfvEXT = load.invoke("glGetMultiTexGenfvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMultiTexGenivEXT = load.invoke("glGetMultiTexGenivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMultiTexParameteriEXT = load.invoke("glMultiTexParameteriEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMultiTexParameterivEXT = load.invoke("glMultiTexParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMultiTexParameterfEXT = load.invoke("glMultiTexParameterfEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glMultiTexParameterfvEXT = load.invoke("glMultiTexParameterfvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMultiTexImage1DEXT = load.invoke("glMultiTexImage1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMultiTexImage2DEXT = load.invoke("glMultiTexImage2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMultiTexSubImage1DEXT = load.invoke("glMultiTexSubImage1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMultiTexSubImage2DEXT = load.invoke("glMultiTexSubImage2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCopyMultiTexImage1DEXT = load.invoke("glCopyMultiTexImage1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glCopyMultiTexImage2DEXT = load.invoke("glCopyMultiTexImage2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glCopyMultiTexSubImage1DEXT = load.invoke("glCopyMultiTexSubImage1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glCopyMultiTexSubImage2DEXT = load.invoke("glCopyMultiTexSubImage2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetMultiTexImageEXT = load.invoke("glGetMultiTexImageEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMultiTexParameterfvEXT = load.invoke("glGetMultiTexParameterfvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMultiTexParameterivEXT = load.invoke("glGetMultiTexParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMultiTexLevelParameterfvEXT = load.invoke("glGetMultiTexLevelParameterfvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMultiTexLevelParameterivEXT = load.invoke("glGetMultiTexLevelParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMultiTexImage3DEXT = load.invoke("glMultiTexImage3DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMultiTexSubImage3DEXT = load.invoke("glMultiTexSubImage3DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCopyMultiTexSubImage3DEXT = load.invoke("glCopyMultiTexSubImage3DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glEnableClientStateIndexedEXT = load.invoke("glEnableClientStateIndexedEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glDisableClientStateIndexedEXT = load.invoke("glDisableClientStateIndexedEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glGetFloatIndexedvEXT = load.invoke("glGetFloatIndexedvEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetDoubleIndexedvEXT = load.invoke("glGetDoubleIndexedvEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPointerIndexedvEXT = load.invoke("glGetPointerIndexedvEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glEnableIndexedEXT = load.invoke("glEnableIndexedEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glDisableIndexedEXT = load.invoke("glDisableIndexedEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glIsEnabledIndexedEXT = load.invoke("glIsEnabledIndexedEXT", of(JAVA_BYTE, JAVA_INT, JAVA_INT)); + ext.glGetIntegerIndexedvEXT = load.invoke("glGetIntegerIndexedvEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetBooleanIndexedvEXT = load.invoke("glGetBooleanIndexedvEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCompressedTextureImage3DEXT = load.invoke("glCompressedTextureImage3DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCompressedTextureImage2DEXT = load.invoke("glCompressedTextureImage2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCompressedTextureImage1DEXT = load.invoke("glCompressedTextureImage1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCompressedTextureSubImage3DEXT = load.invoke("glCompressedTextureSubImage3DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCompressedTextureSubImage2DEXT = load.invoke("glCompressedTextureSubImage2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCompressedTextureSubImage1DEXT = load.invoke("glCompressedTextureSubImage1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetCompressedTextureImageEXT = load.invoke("glGetCompressedTextureImageEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCompressedMultiTexImage3DEXT = load.invoke("glCompressedMultiTexImage3DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCompressedMultiTexImage2DEXT = load.invoke("glCompressedMultiTexImage2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCompressedMultiTexImage1DEXT = load.invoke("glCompressedMultiTexImage1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCompressedMultiTexSubImage3DEXT = load.invoke("glCompressedMultiTexSubImage3DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCompressedMultiTexSubImage2DEXT = load.invoke("glCompressedMultiTexSubImage2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glCompressedMultiTexSubImage1DEXT = load.invoke("glCompressedMultiTexSubImage1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetCompressedMultiTexImageEXT = load.invoke("glGetCompressedMultiTexImageEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMatrixLoadTransposefEXT = load.invoke("glMatrixLoadTransposefEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixLoadTransposedEXT = load.invoke("glMatrixLoadTransposedEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixMultTransposefEXT = load.invoke("glMatrixMultTransposefEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glMatrixMultTransposedEXT = load.invoke("glMatrixMultTransposedEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glNamedBufferDataEXT = load.invoke("glNamedBufferDataEXT", ofVoid(JAVA_INT, JAVA_LONG, ADDRESS, JAVA_INT)); + ext.glNamedBufferSubDataEXT = load.invoke("glNamedBufferSubDataEXT", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, ADDRESS)); + ext.glMapNamedBufferEXT = load.invoke("glMapNamedBufferEXT", of(ADDRESS, JAVA_INT, JAVA_INT)); + ext.glUnmapNamedBufferEXT = load.invoke("glUnmapNamedBufferEXT", of(JAVA_BYTE, JAVA_INT)); + ext.glGetNamedBufferParameterivEXT = load.invoke("glGetNamedBufferParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetNamedBufferPointervEXT = load.invoke("glGetNamedBufferPointervEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetNamedBufferSubDataEXT = load.invoke("glGetNamedBufferSubDataEXT", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, ADDRESS)); + ext.glProgramUniform1fEXT = load.invoke("glProgramUniform1fEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glProgramUniform2fEXT = load.invoke("glProgramUniform2fEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glProgramUniform3fEXT = load.invoke("glProgramUniform3fEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glProgramUniform4fEXT = load.invoke("glProgramUniform4fEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glProgramUniform1iEXT = load.invoke("glProgramUniform1iEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glProgramUniform2iEXT = load.invoke("glProgramUniform2iEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glProgramUniform3iEXT = load.invoke("glProgramUniform3iEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glProgramUniform4iEXT = load.invoke("glProgramUniform4iEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glProgramUniform1fvEXT = load.invoke("glProgramUniform1fvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform2fvEXT = load.invoke("glProgramUniform2fvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform3fvEXT = load.invoke("glProgramUniform3fvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform4fvEXT = load.invoke("glProgramUniform4fvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform1ivEXT = load.invoke("glProgramUniform1ivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform2ivEXT = load.invoke("glProgramUniform2ivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform3ivEXT = load.invoke("glProgramUniform3ivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform4ivEXT = load.invoke("glProgramUniform4ivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniformMatrix2fvEXT = load.invoke("glProgramUniformMatrix2fvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glProgramUniformMatrix3fvEXT = load.invoke("glProgramUniformMatrix3fvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glProgramUniformMatrix4fvEXT = load.invoke("glProgramUniformMatrix4fvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glProgramUniformMatrix2x3fvEXT = load.invoke("glProgramUniformMatrix2x3fvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glProgramUniformMatrix3x2fvEXT = load.invoke("glProgramUniformMatrix3x2fvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glProgramUniformMatrix2x4fvEXT = load.invoke("glProgramUniformMatrix2x4fvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glProgramUniformMatrix4x2fvEXT = load.invoke("glProgramUniformMatrix4x2fvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glProgramUniformMatrix3x4fvEXT = load.invoke("glProgramUniformMatrix3x4fvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glProgramUniformMatrix4x3fvEXT = load.invoke("glProgramUniformMatrix4x3fvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glTextureBufferEXT = load.invoke("glTextureBufferEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMultiTexBufferEXT = load.invoke("glMultiTexBufferEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glTextureParameterIivEXT = load.invoke("glTextureParameterIivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glTextureParameterIuivEXT = load.invoke("glTextureParameterIuivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetTextureParameterIivEXT = load.invoke("glGetTextureParameterIivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetTextureParameterIuivEXT = load.invoke("glGetTextureParameterIuivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMultiTexParameterIivEXT = load.invoke("glMultiTexParameterIivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMultiTexParameterIuivEXT = load.invoke("glMultiTexParameterIuivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMultiTexParameterIivEXT = load.invoke("glGetMultiTexParameterIivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMultiTexParameterIuivEXT = load.invoke("glGetMultiTexParameterIuivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform1uiEXT = load.invoke("glProgramUniform1uiEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glProgramUniform2uiEXT = load.invoke("glProgramUniform2uiEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glProgramUniform3uiEXT = load.invoke("glProgramUniform3uiEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glProgramUniform4uiEXT = load.invoke("glProgramUniform4uiEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glProgramUniform1uivEXT = load.invoke("glProgramUniform1uivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform2uivEXT = load.invoke("glProgramUniform2uivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform3uivEXT = load.invoke("glProgramUniform3uivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform4uivEXT = load.invoke("glProgramUniform4uivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glNamedProgramLocalParameters4fvEXT = load.invoke("glNamedProgramLocalParameters4fvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glNamedProgramLocalParameterI4iEXT = load.invoke("glNamedProgramLocalParameterI4iEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glNamedProgramLocalParameterI4ivEXT = load.invoke("glNamedProgramLocalParameterI4ivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glNamedProgramLocalParametersI4ivEXT = load.invoke("glNamedProgramLocalParametersI4ivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glNamedProgramLocalParameterI4uiEXT = load.invoke("glNamedProgramLocalParameterI4uiEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glNamedProgramLocalParameterI4uivEXT = load.invoke("glNamedProgramLocalParameterI4uivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glNamedProgramLocalParametersI4uivEXT = load.invoke("glNamedProgramLocalParametersI4uivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetNamedProgramLocalParameterIivEXT = load.invoke("glGetNamedProgramLocalParameterIivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetNamedProgramLocalParameterIuivEXT = load.invoke("glGetNamedProgramLocalParameterIuivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glEnableClientStateiEXT = load.invoke("glEnableClientStateiEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glDisableClientStateiEXT = load.invoke("glDisableClientStateiEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glGetFloati_vEXT = load.invoke("glGetFloati_vEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetDoublei_vEXT = load.invoke("glGetDoublei_vEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPointeri_vEXT = load.invoke("glGetPointeri_vEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glNamedProgramStringEXT = load.invoke("glNamedProgramStringEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glNamedProgramLocalParameter4dEXT = load.invoke("glNamedProgramLocalParameter4dEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glNamedProgramLocalParameter4dvEXT = load.invoke("glNamedProgramLocalParameter4dvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glNamedProgramLocalParameter4fEXT = load.invoke("glNamedProgramLocalParameter4fEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glNamedProgramLocalParameter4fvEXT = load.invoke("glNamedProgramLocalParameter4fvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetNamedProgramLocalParameterdvEXT = load.invoke("glGetNamedProgramLocalParameterdvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetNamedProgramLocalParameterfvEXT = load.invoke("glGetNamedProgramLocalParameterfvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetNamedProgramivEXT = load.invoke("glGetNamedProgramivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetNamedProgramStringEXT = load.invoke("glGetNamedProgramStringEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glNamedRenderbufferStorageEXT = load.invoke("glNamedRenderbufferStorageEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetNamedRenderbufferParameterivEXT = load.invoke("glGetNamedRenderbufferParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glNamedRenderbufferStorageMultisampleEXT = load.invoke("glNamedRenderbufferStorageMultisampleEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glNamedRenderbufferStorageMultisampleCoverageEXT = load.invoke("glNamedRenderbufferStorageMultisampleCoverageEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glCheckNamedFramebufferStatusEXT = load.invoke("glCheckNamedFramebufferStatusEXT", of(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glNamedFramebufferTexture1DEXT = load.invoke("glNamedFramebufferTexture1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glNamedFramebufferTexture2DEXT = load.invoke("glNamedFramebufferTexture2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glNamedFramebufferTexture3DEXT = load.invoke("glNamedFramebufferTexture3DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glNamedFramebufferRenderbufferEXT = load.invoke("glNamedFramebufferRenderbufferEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetNamedFramebufferAttachmentParameterivEXT = load.invoke("glGetNamedFramebufferAttachmentParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGenerateTextureMipmapEXT = load.invoke("glGenerateTextureMipmapEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glGenerateMultiTexMipmapEXT = load.invoke("glGenerateMultiTexMipmapEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glFramebufferDrawBufferEXT = load.invoke("glFramebufferDrawBufferEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glFramebufferDrawBuffersEXT = load.invoke("glFramebufferDrawBuffersEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glFramebufferReadBufferEXT = load.invoke("glFramebufferReadBufferEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glGetFramebufferParameterivEXT = load.invoke("glGetFramebufferParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glNamedCopyBufferSubDataEXT = load.invoke("glNamedCopyBufferSubDataEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_LONG)); + ext.glNamedFramebufferTextureEXT = load.invoke("glNamedFramebufferTextureEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glNamedFramebufferTextureLayerEXT = load.invoke("glNamedFramebufferTextureLayerEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glNamedFramebufferTextureFaceEXT = load.invoke("glNamedFramebufferTextureFaceEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glTextureRenderbufferEXT = load.invoke("glTextureRenderbufferEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMultiTexRenderbufferEXT = load.invoke("glMultiTexRenderbufferEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glVertexArrayVertexOffsetEXT = load.invoke("glVertexArrayVertexOffsetEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glVertexArrayColorOffsetEXT = load.invoke("glVertexArrayColorOffsetEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glVertexArrayEdgeFlagOffsetEXT = load.invoke("glVertexArrayEdgeFlagOffsetEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glVertexArrayIndexOffsetEXT = load.invoke("glVertexArrayIndexOffsetEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glVertexArrayNormalOffsetEXT = load.invoke("glVertexArrayNormalOffsetEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glVertexArrayTexCoordOffsetEXT = load.invoke("glVertexArrayTexCoordOffsetEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glVertexArrayMultiTexCoordOffsetEXT = load.invoke("glVertexArrayMultiTexCoordOffsetEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glVertexArrayFogCoordOffsetEXT = load.invoke("glVertexArrayFogCoordOffsetEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glVertexArraySecondaryColorOffsetEXT = load.invoke("glVertexArraySecondaryColorOffsetEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glVertexArrayVertexAttribOffsetEXT = load.invoke("glVertexArrayVertexAttribOffsetEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, JAVA_INT, JAVA_LONG)); + ext.glVertexArrayVertexAttribIOffsetEXT = load.invoke("glVertexArrayVertexAttribIOffsetEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glEnableVertexArrayEXT = load.invoke("glEnableVertexArrayEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glDisableVertexArrayEXT = load.invoke("glDisableVertexArrayEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glEnableVertexArrayAttribEXT = load.invoke("glEnableVertexArrayAttribEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glDisableVertexArrayAttribEXT = load.invoke("glDisableVertexArrayAttribEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glGetVertexArrayIntegervEXT = load.invoke("glGetVertexArrayIntegervEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVertexArrayPointervEXT = load.invoke("glGetVertexArrayPointervEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVertexArrayIntegeri_vEXT = load.invoke("glGetVertexArrayIntegeri_vEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVertexArrayPointeri_vEXT = load.invoke("glGetVertexArrayPointeri_vEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glMapNamedBufferRangeEXT = load.invoke("glMapNamedBufferRangeEXT", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_INT)); + ext.glFlushMappedNamedBufferRangeEXT = load.invoke("glFlushMappedNamedBufferRangeEXT", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG)); + ext.glNamedBufferStorageEXT = load.invoke("glNamedBufferStorageEXT", ofVoid(JAVA_INT, JAVA_LONG, ADDRESS, JAVA_INT)); + ext.glClearNamedBufferDataEXT = load.invoke("glClearNamedBufferDataEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glClearNamedBufferSubDataEXT = load.invoke("glClearNamedBufferSubDataEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glNamedFramebufferParameteriEXT = load.invoke("glNamedFramebufferParameteriEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetNamedFramebufferParameterivEXT = load.invoke("glGetNamedFramebufferParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform1dEXT = load.invoke("glProgramUniform1dEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_DOUBLE)); + ext.glProgramUniform2dEXT = load.invoke("glProgramUniform2dEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glProgramUniform3dEXT = load.invoke("glProgramUniform3dEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glProgramUniform4dEXT = load.invoke("glProgramUniform4dEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glProgramUniform1dvEXT = load.invoke("glProgramUniform1dvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform2dvEXT = load.invoke("glProgramUniform2dvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform3dvEXT = load.invoke("glProgramUniform3dvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniform4dvEXT = load.invoke("glProgramUniform4dvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramUniformMatrix2dvEXT = load.invoke("glProgramUniformMatrix2dvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glProgramUniformMatrix3dvEXT = load.invoke("glProgramUniformMatrix3dvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glProgramUniformMatrix4dvEXT = load.invoke("glProgramUniformMatrix4dvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glProgramUniformMatrix2x3dvEXT = load.invoke("glProgramUniformMatrix2x3dvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glProgramUniformMatrix2x4dvEXT = load.invoke("glProgramUniformMatrix2x4dvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glProgramUniformMatrix3x2dvEXT = load.invoke("glProgramUniformMatrix3x2dvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glProgramUniformMatrix3x4dvEXT = load.invoke("glProgramUniformMatrix3x4dvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glProgramUniformMatrix4x2dvEXT = load.invoke("glProgramUniformMatrix4x2dvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glProgramUniformMatrix4x3dvEXT = load.invoke("glProgramUniformMatrix4x3dvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, ADDRESS)); + ext.glTextureBufferRangeEXT = load.invoke("glTextureBufferRangeEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG)); + ext.glTextureStorage1DEXT = load.invoke("glTextureStorage1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glTextureStorage2DEXT = load.invoke("glTextureStorage2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glTextureStorage3DEXT = load.invoke("glTextureStorage3DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glTextureStorage2DMultisampleEXT = load.invoke("glTextureStorage2DMultisampleEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE)); + ext.glTextureStorage3DMultisampleEXT = load.invoke("glTextureStorage3DMultisampleEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE)); + ext.glVertexArrayBindVertexBufferEXT = load.invoke("glVertexArrayBindVertexBufferEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_INT)); + ext.glVertexArrayVertexAttribFormatEXT = load.invoke("glVertexArrayVertexAttribFormatEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, JAVA_INT)); + ext.glVertexArrayVertexAttribIFormatEXT = load.invoke("glVertexArrayVertexAttribIFormatEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glVertexArrayVertexAttribLFormatEXT = load.invoke("glVertexArrayVertexAttribLFormatEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glVertexArrayVertexAttribBindingEXT = load.invoke("glVertexArrayVertexAttribBindingEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glVertexArrayVertexBindingDivisorEXT = load.invoke("glVertexArrayVertexBindingDivisorEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glVertexArrayVertexAttribLOffsetEXT = load.invoke("glVertexArrayVertexAttribLOffsetEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glTexturePageCommitmentEXT = load.invoke("glTexturePageCommitmentEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE)); + ext.glVertexArrayVertexAttribDivisorEXT = load.invoke("glVertexArrayVertexAttribDivisorEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glMatrixLoadfEXT(int mode, @NativeType("const GLfloat *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixLoadfEXT).invokeExact(mode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixLoaddEXT(int mode, @NativeType("const GLdouble *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixLoaddEXT).invokeExact(mode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixMultfEXT(int mode, @NativeType("const GLfloat *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixMultfEXT).invokeExact(mode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixMultdEXT(int mode, @NativeType("const GLdouble *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixMultdEXT).invokeExact(mode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixLoadIdentityEXT(int mode) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixLoadIdentityEXT).invokeExact(mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixRotatefEXT(int mode, float angle, float x, float y, float z) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixRotatefEXT).invokeExact(mode, angle, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixRotatedEXT(int mode, double angle, double x, double y, double z) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixRotatedEXT).invokeExact(mode, angle, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixScalefEXT(int mode, float x, float y, float z) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixScalefEXT).invokeExact(mode, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixScaledEXT(int mode, double x, double y, double z) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixScaledEXT).invokeExact(mode, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixTranslatefEXT(int mode, float x, float y, float z) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixTranslatefEXT).invokeExact(mode, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixTranslatedEXT(int mode, double x, double y, double z) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixTranslatedEXT).invokeExact(mode, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixFrustumEXT(int mode, double left, double right, double bottom, double top, double zNear, double zFar) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixFrustumEXT).invokeExact(mode, left, right, bottom, top, zNear, zFar); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixOrthoEXT(int mode, double left, double right, double bottom, double top, double zNear, double zFar) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixOrthoEXT).invokeExact(mode, left, right, bottom, top, zNear, zFar); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixPopEXT(int mode) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixPopEXT).invokeExact(mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixPushEXT(int mode) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixPushEXT).invokeExact(mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glClientAttribDefaultEXT(int mask) { + final var ext = getExtCapabilities(); + try { + check(ext.glClientAttribDefaultEXT).invokeExact(mask); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPushClientAttribDefaultEXT(int mask) { + final var ext = getExtCapabilities(); + try { + check(ext.glPushClientAttribDefaultEXT).invokeExact(mask); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureParameterfEXT(int texture, int target, int pname, float param) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureParameterfEXT).invokeExact(texture, target, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureParameterfvEXT(int texture, int target, int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureParameterfvEXT).invokeExact(texture, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureParameteriEXT(int texture, int target, int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureParameteriEXT).invokeExact(texture, target, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureParameterivEXT(int texture, int target, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureParameterivEXT).invokeExact(texture, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureImage1DEXT(int texture, int target, int level, int internalformat, int width, int border, int format, int type, @NativeType("const void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureImage1DEXT).invokeExact(texture, target, level, internalformat, width, border, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureImage2DEXT(int texture, int target, int level, int internalformat, int width, int height, int border, int format, int type, @NativeType("const void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureImage2DEXT).invokeExact(texture, target, level, internalformat, width, height, border, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureSubImage1DEXT(int texture, int target, int level, int xoffset, int width, int format, int type, @NativeType("const void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureSubImage1DEXT).invokeExact(texture, target, level, xoffset, width, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureSubImage2DEXT(int texture, int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, @NativeType("const void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureSubImage2DEXT).invokeExact(texture, target, level, xoffset, yoffset, width, height, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyTextureImage1DEXT(int texture, int target, int level, int internalformat, int x, int y, int width, int border) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyTextureImage1DEXT).invokeExact(texture, target, level, internalformat, x, y, width, border); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyTextureImage2DEXT(int texture, int target, int level, int internalformat, int x, int y, int width, int height, int border) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyTextureImage2DEXT).invokeExact(texture, target, level, internalformat, x, y, width, height, border); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyTextureSubImage1DEXT(int texture, int target, int level, int xoffset, int x, int y, int width) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyTextureSubImage1DEXT).invokeExact(texture, target, level, xoffset, x, y, width); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyTextureSubImage2DEXT(int texture, int target, int level, int xoffset, int yoffset, int x, int y, int width, int height) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyTextureSubImage2DEXT).invokeExact(texture, target, level, xoffset, yoffset, x, y, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetTextureImageEXT(int texture, int target, int level, int format, int type, @NativeType("void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetTextureImageEXT).invokeExact(texture, target, level, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetTextureParameterfvEXT(int texture, int target, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetTextureParameterfvEXT).invokeExact(texture, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetTextureParameterivEXT(int texture, int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetTextureParameterivEXT).invokeExact(texture, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetTextureLevelParameterfvEXT(int texture, int target, int level, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetTextureLevelParameterfvEXT).invokeExact(texture, target, level, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetTextureLevelParameterivEXT(int texture, int target, int level, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetTextureLevelParameterivEXT).invokeExact(texture, target, level, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureImage3DEXT(int texture, int target, int level, int internalformat, int width, int height, int depth, int border, int format, int type, @NativeType("const void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureImage3DEXT).invokeExact(texture, target, level, internalformat, width, height, depth, border, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureSubImage3DEXT(int texture, int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, @NativeType("const void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureSubImage3DEXT).invokeExact(texture, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyTextureSubImage3DEXT(int texture, int target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyTextureSubImage3DEXT).invokeExact(texture, target, level, xoffset, yoffset, zoffset, x, y, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBindMultiTextureEXT(int texunit, int target, int texture) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindMultiTextureEXT).invokeExact(texunit, target, texture); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexCoordPointerEXT(int texunit, int size, int type, int stride, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexCoordPointerEXT).invokeExact(texunit, size, type, stride, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexEnvfEXT(int texunit, int target, int pname, float param) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexEnvfEXT).invokeExact(texunit, target, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexEnvfvEXT(int texunit, int target, int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexEnvfvEXT).invokeExact(texunit, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexEnviEXT(int texunit, int target, int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexEnviEXT).invokeExact(texunit, target, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexEnvivEXT(int texunit, int target, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexEnvivEXT).invokeExact(texunit, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexGendEXT(int texunit, int coord, int pname, double param) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexGendEXT).invokeExact(texunit, coord, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexGendvEXT(int texunit, int coord, int pname, @NativeType("const GLdouble *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexGendvEXT).invokeExact(texunit, coord, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexGenfEXT(int texunit, int coord, int pname, float param) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexGenfEXT).invokeExact(texunit, coord, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexGenfvEXT(int texunit, int coord, int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexGenfvEXT).invokeExact(texunit, coord, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexGeniEXT(int texunit, int coord, int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexGeniEXT).invokeExact(texunit, coord, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexGenivEXT(int texunit, int coord, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexGenivEXT).invokeExact(texunit, coord, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMultiTexEnvfvEXT(int texunit, int target, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMultiTexEnvfvEXT).invokeExact(texunit, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMultiTexEnvivEXT(int texunit, int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMultiTexEnvivEXT).invokeExact(texunit, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMultiTexGendvEXT(int texunit, int coord, int pname, @NativeType("GLdouble *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMultiTexGendvEXT).invokeExact(texunit, coord, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMultiTexGenfvEXT(int texunit, int coord, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMultiTexGenfvEXT).invokeExact(texunit, coord, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMultiTexGenivEXT(int texunit, int coord, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMultiTexGenivEXT).invokeExact(texunit, coord, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexParameteriEXT(int texunit, int target, int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexParameteriEXT).invokeExact(texunit, target, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexParameterivEXT(int texunit, int target, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexParameterivEXT).invokeExact(texunit, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexParameterfEXT(int texunit, int target, int pname, float param) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexParameterfEXT).invokeExact(texunit, target, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexParameterfvEXT(int texunit, int target, int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexParameterfvEXT).invokeExact(texunit, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexImage1DEXT(int texunit, int target, int level, int internalformat, int width, int border, int format, int type, @NativeType("const void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexImage1DEXT).invokeExact(texunit, target, level, internalformat, width, border, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexImage2DEXT(int texunit, int target, int level, int internalformat, int width, int height, int border, int format, int type, @NativeType("const void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexImage2DEXT).invokeExact(texunit, target, level, internalformat, width, height, border, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexSubImage1DEXT(int texunit, int target, int level, int xoffset, int width, int format, int type, @NativeType("const void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexSubImage1DEXT).invokeExact(texunit, target, level, xoffset, width, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexSubImage2DEXT(int texunit, int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, @NativeType("const void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexSubImage2DEXT).invokeExact(texunit, target, level, xoffset, yoffset, width, height, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyMultiTexImage1DEXT(int texunit, int target, int level, int internalformat, int x, int y, int width, int border) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyMultiTexImage1DEXT).invokeExact(texunit, target, level, internalformat, x, y, width, border); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyMultiTexImage2DEXT(int texunit, int target, int level, int internalformat, int x, int y, int width, int height, int border) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyMultiTexImage2DEXT).invokeExact(texunit, target, level, internalformat, x, y, width, height, border); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyMultiTexSubImage1DEXT(int texunit, int target, int level, int xoffset, int x, int y, int width) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyMultiTexSubImage1DEXT).invokeExact(texunit, target, level, xoffset, x, y, width); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyMultiTexSubImage2DEXT(int texunit, int target, int level, int xoffset, int yoffset, int x, int y, int width, int height) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyMultiTexSubImage2DEXT).invokeExact(texunit, target, level, xoffset, yoffset, x, y, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMultiTexImageEXT(int texunit, int target, int level, int format, int type, @NativeType("void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMultiTexImageEXT).invokeExact(texunit, target, level, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMultiTexParameterfvEXT(int texunit, int target, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMultiTexParameterfvEXT).invokeExact(texunit, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMultiTexParameterivEXT(int texunit, int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMultiTexParameterivEXT).invokeExact(texunit, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMultiTexLevelParameterfvEXT(int texunit, int target, int level, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMultiTexLevelParameterfvEXT).invokeExact(texunit, target, level, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMultiTexLevelParameterivEXT(int texunit, int target, int level, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMultiTexLevelParameterivEXT).invokeExact(texunit, target, level, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexImage3DEXT(int texunit, int target, int level, int internalformat, int width, int height, int depth, int border, int format, int type, @NativeType("const void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexImage3DEXT).invokeExact(texunit, target, level, internalformat, width, height, depth, border, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexSubImage3DEXT(int texunit, int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, @NativeType("const void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexSubImage3DEXT).invokeExact(texunit, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCopyMultiTexSubImage3DEXT(int texunit, int target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height) { + final var ext = getExtCapabilities(); + try { + check(ext.glCopyMultiTexSubImage3DEXT).invokeExact(texunit, target, level, xoffset, yoffset, zoffset, x, y, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEnableClientStateIndexedEXT(int array, int index) { + final var ext = getExtCapabilities(); + try { + check(ext.glEnableClientStateIndexedEXT).invokeExact(array, index); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDisableClientStateIndexedEXT(int array, int index) { + final var ext = getExtCapabilities(); + try { + check(ext.glDisableClientStateIndexedEXT).invokeExact(array, index); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetFloatIndexedvEXT(int target, int index, @NativeType("GLfloat *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetFloatIndexedvEXT).invokeExact(target, index, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetDoubleIndexedvEXT(int target, int index, @NativeType("GLdouble *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetDoubleIndexedvEXT).invokeExact(target, index, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPointerIndexedvEXT(int target, int index, @NativeType("void **") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPointerIndexedvEXT).invokeExact(target, index, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEnableIndexedEXT(int target, int index) { + final var ext = getExtCapabilities(); + try { + check(ext.glEnableIndexedEXT).invokeExact(target, index); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDisableIndexedEXT(int target, int index) { + final var ext = getExtCapabilities(); + try { + check(ext.glDisableIndexedEXT).invokeExact(target, index); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsEnabledIndexedEXT(int target, int index) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsEnabledIndexedEXT).invokeExact(target, index); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetIntegerIndexedvEXT(int target, int index, @NativeType("GLint *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetIntegerIndexedvEXT).invokeExact(target, index, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetBooleanIndexedvEXT(int target, int index, @NativeType("GLboolean *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetBooleanIndexedvEXT).invokeExact(target, index, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCompressedTextureImage3DEXT(int texture, int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, @NativeType("const void *") MemorySegment bits) { + final var ext = getExtCapabilities(); + try { + check(ext.glCompressedTextureImage3DEXT).invokeExact(texture, target, level, internalformat, width, height, depth, border, imageSize, bits); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCompressedTextureImage2DEXT(int texture, int target, int level, int internalformat, int width, int height, int border, int imageSize, @NativeType("const void *") MemorySegment bits) { + final var ext = getExtCapabilities(); + try { + check(ext.glCompressedTextureImage2DEXT).invokeExact(texture, target, level, internalformat, width, height, border, imageSize, bits); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCompressedTextureImage1DEXT(int texture, int target, int level, int internalformat, int width, int border, int imageSize, @NativeType("const void *") MemorySegment bits) { + final var ext = getExtCapabilities(); + try { + check(ext.glCompressedTextureImage1DEXT).invokeExact(texture, target, level, internalformat, width, border, imageSize, bits); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCompressedTextureSubImage3DEXT(int texture, int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, @NativeType("const void *") MemorySegment bits) { + final var ext = getExtCapabilities(); + try { + check(ext.glCompressedTextureSubImage3DEXT).invokeExact(texture, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, bits); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCompressedTextureSubImage2DEXT(int texture, int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, @NativeType("const void *") MemorySegment bits) { + final var ext = getExtCapabilities(); + try { + check(ext.glCompressedTextureSubImage2DEXT).invokeExact(texture, target, level, xoffset, yoffset, width, height, format, imageSize, bits); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCompressedTextureSubImage1DEXT(int texture, int target, int level, int xoffset, int width, int format, int imageSize, @NativeType("const void *") MemorySegment bits) { + final var ext = getExtCapabilities(); + try { + check(ext.glCompressedTextureSubImage1DEXT).invokeExact(texture, target, level, xoffset, width, format, imageSize, bits); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetCompressedTextureImageEXT(int texture, int target, int lod, @NativeType("void *") MemorySegment img) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetCompressedTextureImageEXT).invokeExact(texture, target, lod, img); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCompressedMultiTexImage3DEXT(int texunit, int target, int level, int internalformat, int width, int height, int depth, int border, int imageSize, @NativeType("const void *") MemorySegment bits) { + final var ext = getExtCapabilities(); + try { + check(ext.glCompressedMultiTexImage3DEXT).invokeExact(texunit, target, level, internalformat, width, height, depth, border, imageSize, bits); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCompressedMultiTexImage2DEXT(int texunit, int target, int level, int internalformat, int width, int height, int border, int imageSize, @NativeType("const void *") MemorySegment bits) { + final var ext = getExtCapabilities(); + try { + check(ext.glCompressedMultiTexImage2DEXT).invokeExact(texunit, target, level, internalformat, width, height, border, imageSize, bits); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCompressedMultiTexImage1DEXT(int texunit, int target, int level, int internalformat, int width, int border, int imageSize, @NativeType("const void *") MemorySegment bits) { + final var ext = getExtCapabilities(); + try { + check(ext.glCompressedMultiTexImage1DEXT).invokeExact(texunit, target, level, internalformat, width, border, imageSize, bits); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCompressedMultiTexSubImage3DEXT(int texunit, int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int imageSize, @NativeType("const void *") MemorySegment bits) { + final var ext = getExtCapabilities(); + try { + check(ext.glCompressedMultiTexSubImage3DEXT).invokeExact(texunit, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, bits); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCompressedMultiTexSubImage2DEXT(int texunit, int target, int level, int xoffset, int yoffset, int width, int height, int format, int imageSize, @NativeType("const void *") MemorySegment bits) { + final var ext = getExtCapabilities(); + try { + check(ext.glCompressedMultiTexSubImage2DEXT).invokeExact(texunit, target, level, xoffset, yoffset, width, height, format, imageSize, bits); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCompressedMultiTexSubImage1DEXT(int texunit, int target, int level, int xoffset, int width, int format, int imageSize, @NativeType("const void *") MemorySegment bits) { + final var ext = getExtCapabilities(); + try { + check(ext.glCompressedMultiTexSubImage1DEXT).invokeExact(texunit, target, level, xoffset, width, format, imageSize, bits); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetCompressedMultiTexImageEXT(int texunit, int target, int lod, @NativeType("void *") MemorySegment img) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetCompressedMultiTexImageEXT).invokeExact(texunit, target, lod, img); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixLoadTransposefEXT(int mode, @NativeType("const GLfloat *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixLoadTransposefEXT).invokeExact(mode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixLoadTransposedEXT(int mode, @NativeType("const GLdouble *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixLoadTransposedEXT).invokeExact(mode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixMultTransposefEXT(int mode, @NativeType("const GLfloat *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixMultTransposefEXT).invokeExact(mode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMatrixMultTransposedEXT(int mode, @NativeType("const GLdouble *") MemorySegment m) { + final var ext = getExtCapabilities(); + try { + check(ext.glMatrixMultTransposedEXT).invokeExact(mode, m); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedBufferDataEXT(int buffer, long size, @NativeType("const void *") MemorySegment data, int usage) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedBufferDataEXT).invokeExact(buffer, size, data, usage); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedBufferSubDataEXT(int buffer, long offset, long size, @NativeType("const void *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedBufferSubDataEXT).invokeExact(buffer, offset, size, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static @NativeType("void *") MemorySegment glMapNamedBufferEXT(int buffer, int access) { + final var ext = getExtCapabilities(); + try { + return (MemorySegment) + check(ext.glMapNamedBufferEXT).invokeExact(buffer, access); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glUnmapNamedBufferEXT(int buffer) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glUnmapNamedBufferEXT).invokeExact(buffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetNamedBufferParameterivEXT(int buffer, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetNamedBufferParameterivEXT).invokeExact(buffer, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetNamedBufferPointervEXT(int buffer, int pname, @NativeType("void **") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetNamedBufferPointervEXT).invokeExact(buffer, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetNamedBufferSubDataEXT(int buffer, long offset, long size, @NativeType("void *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetNamedBufferSubDataEXT).invokeExact(buffer, offset, size, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform1fEXT(int program, int location, float v0) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform1fEXT).invokeExact(program, location, v0); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform2fEXT(int program, int location, float v0, float v1) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform2fEXT).invokeExact(program, location, v0, v1); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform3fEXT(int program, int location, float v0, float v1, float v2) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform3fEXT).invokeExact(program, location, v0, v1, v2); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform4fEXT(int program, int location, float v0, float v1, float v2, float v3) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform4fEXT).invokeExact(program, location, v0, v1, v2, v3); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform1iEXT(int program, int location, int v0) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform1iEXT).invokeExact(program, location, v0); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform2iEXT(int program, int location, int v0, int v1) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform2iEXT).invokeExact(program, location, v0, v1); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform3iEXT(int program, int location, int v0, int v1, int v2) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform3iEXT).invokeExact(program, location, v0, v1, v2); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform4iEXT(int program, int location, int v0, int v1, int v2, int v3) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform4iEXT).invokeExact(program, location, v0, v1, v2, v3); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform1fvEXT(int program, int location, int count, @NativeType("const GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform1fvEXT).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform2fvEXT(int program, int location, int count, @NativeType("const GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform2fvEXT).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform3fvEXT(int program, int location, int count, @NativeType("const GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform3fvEXT).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform4fvEXT(int program, int location, int count, @NativeType("const GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform4fvEXT).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform1ivEXT(int program, int location, int count, @NativeType("const GLint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform1ivEXT).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform2ivEXT(int program, int location, int count, @NativeType("const GLint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform2ivEXT).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform3ivEXT(int program, int location, int count, @NativeType("const GLint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform3ivEXT).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform4ivEXT(int program, int location, int count, @NativeType("const GLint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform4ivEXT).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformMatrix2fvEXT(int program, int location, int count, boolean transpose, @NativeType("const GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformMatrix2fvEXT).invokeExact(program, location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformMatrix3fvEXT(int program, int location, int count, boolean transpose, @NativeType("const GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformMatrix3fvEXT).invokeExact(program, location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformMatrix4fvEXT(int program, int location, int count, boolean transpose, @NativeType("const GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformMatrix4fvEXT).invokeExact(program, location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformMatrix2x3fvEXT(int program, int location, int count, boolean transpose, @NativeType("const GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformMatrix2x3fvEXT).invokeExact(program, location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformMatrix3x2fvEXT(int program, int location, int count, boolean transpose, @NativeType("const GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformMatrix3x2fvEXT).invokeExact(program, location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformMatrix2x4fvEXT(int program, int location, int count, boolean transpose, @NativeType("const GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformMatrix2x4fvEXT).invokeExact(program, location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformMatrix4x2fvEXT(int program, int location, int count, boolean transpose, @NativeType("const GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformMatrix4x2fvEXT).invokeExact(program, location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformMatrix3x4fvEXT(int program, int location, int count, boolean transpose, @NativeType("const GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformMatrix3x4fvEXT).invokeExact(program, location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformMatrix4x3fvEXT(int program, int location, int count, boolean transpose, @NativeType("const GLfloat *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformMatrix4x3fvEXT).invokeExact(program, location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureBufferEXT(int texture, int target, int internalformat, int buffer) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureBufferEXT).invokeExact(texture, target, internalformat, buffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexBufferEXT(int texunit, int target, int internalformat, int buffer) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexBufferEXT).invokeExact(texunit, target, internalformat, buffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureParameterIivEXT(int texture, int target, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureParameterIivEXT).invokeExact(texture, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureParameterIuivEXT(int texture, int target, int pname, @NativeType("const GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureParameterIuivEXT).invokeExact(texture, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetTextureParameterIivEXT(int texture, int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetTextureParameterIivEXT).invokeExact(texture, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetTextureParameterIuivEXT(int texture, int target, int pname, @NativeType("GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetTextureParameterIuivEXT).invokeExact(texture, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexParameterIivEXT(int texunit, int target, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexParameterIivEXT).invokeExact(texunit, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexParameterIuivEXT(int texunit, int target, int pname, @NativeType("const GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexParameterIuivEXT).invokeExact(texunit, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMultiTexParameterIivEXT(int texunit, int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMultiTexParameterIivEXT).invokeExact(texunit, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMultiTexParameterIuivEXT(int texunit, int target, int pname, @NativeType("GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMultiTexParameterIuivEXT).invokeExact(texunit, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform1uiEXT(int program, int location, int v0) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform1uiEXT).invokeExact(program, location, v0); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform2uiEXT(int program, int location, int v0, int v1) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform2uiEXT).invokeExact(program, location, v0, v1); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform3uiEXT(int program, int location, int v0, int v1, int v2) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform3uiEXT).invokeExact(program, location, v0, v1, v2); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform4uiEXT(int program, int location, int v0, int v1, int v2, int v3) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform4uiEXT).invokeExact(program, location, v0, v1, v2, v3); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform1uivEXT(int program, int location, int count, @NativeType("const GLuint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform1uivEXT).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform2uivEXT(int program, int location, int count, @NativeType("const GLuint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform2uivEXT).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform3uivEXT(int program, int location, int count, @NativeType("const GLuint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform3uivEXT).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform4uivEXT(int program, int location, int count, @NativeType("const GLuint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform4uivEXT).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedProgramLocalParameters4fvEXT(int program, int target, int index, int count, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedProgramLocalParameters4fvEXT).invokeExact(program, target, index, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedProgramLocalParameterI4iEXT(int program, int target, int index, int x, int y, int z, int w) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedProgramLocalParameterI4iEXT).invokeExact(program, target, index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedProgramLocalParameterI4ivEXT(int program, int target, int index, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedProgramLocalParameterI4ivEXT).invokeExact(program, target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedProgramLocalParametersI4ivEXT(int program, int target, int index, int count, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedProgramLocalParametersI4ivEXT).invokeExact(program, target, index, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedProgramLocalParameterI4uiEXT(int program, int target, int index, int x, int y, int z, int w) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedProgramLocalParameterI4uiEXT).invokeExact(program, target, index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedProgramLocalParameterI4uivEXT(int program, int target, int index, @NativeType("const GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedProgramLocalParameterI4uivEXT).invokeExact(program, target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedProgramLocalParametersI4uivEXT(int program, int target, int index, int count, @NativeType("const GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedProgramLocalParametersI4uivEXT).invokeExact(program, target, index, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetNamedProgramLocalParameterIivEXT(int program, int target, int index, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetNamedProgramLocalParameterIivEXT).invokeExact(program, target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetNamedProgramLocalParameterIuivEXT(int program, int target, int index, @NativeType("GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetNamedProgramLocalParameterIuivEXT).invokeExact(program, target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEnableClientStateiEXT(int array, int index) { + final var ext = getExtCapabilities(); + try { + check(ext.glEnableClientStateiEXT).invokeExact(array, index); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDisableClientStateiEXT(int array, int index) { + final var ext = getExtCapabilities(); + try { + check(ext.glDisableClientStateiEXT).invokeExact(array, index); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetFloati_vEXT(int pname, int index, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetFloati_vEXT).invokeExact(pname, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetDoublei_vEXT(int pname, int index, @NativeType("GLdouble *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetDoublei_vEXT).invokeExact(pname, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPointeri_vEXT(int pname, int index, @NativeType("void **") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPointeri_vEXT).invokeExact(pname, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedProgramStringEXT(int program, int target, int format, int len, @NativeType("const void *") MemorySegment string) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedProgramStringEXT).invokeExact(program, target, format, len, string); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedProgramLocalParameter4dEXT(int program, int target, int index, double x, double y, double z, double w) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedProgramLocalParameter4dEXT).invokeExact(program, target, index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedProgramLocalParameter4dvEXT(int program, int target, int index, @NativeType("const GLdouble *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedProgramLocalParameter4dvEXT).invokeExact(program, target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedProgramLocalParameter4fEXT(int program, int target, int index, float x, float y, float z, float w) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedProgramLocalParameter4fEXT).invokeExact(program, target, index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedProgramLocalParameter4fvEXT(int program, int target, int index, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedProgramLocalParameter4fvEXT).invokeExact(program, target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetNamedProgramLocalParameterdvEXT(int program, int target, int index, @NativeType("GLdouble *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetNamedProgramLocalParameterdvEXT).invokeExact(program, target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetNamedProgramLocalParameterfvEXT(int program, int target, int index, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetNamedProgramLocalParameterfvEXT).invokeExact(program, target, index, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetNamedProgramivEXT(int program, int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetNamedProgramivEXT).invokeExact(program, target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetNamedProgramStringEXT(int program, int target, int pname, @NativeType("void *") MemorySegment string) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetNamedProgramStringEXT).invokeExact(program, target, pname, string); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedRenderbufferStorageEXT(int renderbuffer, int internalformat, int width, int height) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedRenderbufferStorageEXT).invokeExact(renderbuffer, internalformat, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetNamedRenderbufferParameterivEXT(int renderbuffer, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetNamedRenderbufferParameterivEXT).invokeExact(renderbuffer, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedRenderbufferStorageMultisampleEXT(int renderbuffer, int samples, int internalformat, int width, int height) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedRenderbufferStorageMultisampleEXT).invokeExact(renderbuffer, samples, internalformat, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedRenderbufferStorageMultisampleCoverageEXT(int renderbuffer, int coverageSamples, int colorSamples, int internalformat, int width, int height) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedRenderbufferStorageMultisampleCoverageEXT).invokeExact(renderbuffer, coverageSamples, colorSamples, internalformat, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glCheckNamedFramebufferStatusEXT(int framebuffer, int target) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glCheckNamedFramebufferStatusEXT).invokeExact(framebuffer, target); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedFramebufferTexture1DEXT(int framebuffer, int attachment, int textarget, int texture, int level) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedFramebufferTexture1DEXT).invokeExact(framebuffer, attachment, textarget, texture, level); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedFramebufferTexture2DEXT(int framebuffer, int attachment, int textarget, int texture, int level) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedFramebufferTexture2DEXT).invokeExact(framebuffer, attachment, textarget, texture, level); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedFramebufferTexture3DEXT(int framebuffer, int attachment, int textarget, int texture, int level, int zoffset) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedFramebufferTexture3DEXT).invokeExact(framebuffer, attachment, textarget, texture, level, zoffset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedFramebufferRenderbufferEXT(int framebuffer, int attachment, int renderbuffertarget, int renderbuffer) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedFramebufferRenderbufferEXT).invokeExact(framebuffer, attachment, renderbuffertarget, renderbuffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetNamedFramebufferAttachmentParameterivEXT(int framebuffer, int attachment, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetNamedFramebufferAttachmentParameterivEXT).invokeExact(framebuffer, attachment, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGenerateTextureMipmapEXT(int texture, int target) { + final var ext = getExtCapabilities(); + try { + check(ext.glGenerateTextureMipmapEXT).invokeExact(texture, target); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGenerateMultiTexMipmapEXT(int texunit, int target) { + final var ext = getExtCapabilities(); + try { + check(ext.glGenerateMultiTexMipmapEXT).invokeExact(texunit, target); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFramebufferDrawBufferEXT(int framebuffer, int mode) { + final var ext = getExtCapabilities(); + try { + check(ext.glFramebufferDrawBufferEXT).invokeExact(framebuffer, mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFramebufferDrawBuffersEXT(int framebuffer, int n, @NativeType("const GLenum *") MemorySegment bufs) { + final var ext = getExtCapabilities(); + try { + check(ext.glFramebufferDrawBuffersEXT).invokeExact(framebuffer, n, bufs); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFramebufferReadBufferEXT(int framebuffer, int mode) { + final var ext = getExtCapabilities(); + try { + check(ext.glFramebufferReadBufferEXT).invokeExact(framebuffer, mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetFramebufferParameterivEXT(int framebuffer, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetFramebufferParameterivEXT).invokeExact(framebuffer, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedCopyBufferSubDataEXT(int readBuffer, int writeBuffer, long readOffset, long writeOffset, long size) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedCopyBufferSubDataEXT).invokeExact(readBuffer, writeBuffer, readOffset, writeOffset, size); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedFramebufferTextureEXT(int framebuffer, int attachment, int texture, int level) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedFramebufferTextureEXT).invokeExact(framebuffer, attachment, texture, level); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedFramebufferTextureLayerEXT(int framebuffer, int attachment, int texture, int level, int layer) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedFramebufferTextureLayerEXT).invokeExact(framebuffer, attachment, texture, level, layer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedFramebufferTextureFaceEXT(int framebuffer, int attachment, int texture, int level, int face) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedFramebufferTextureFaceEXT).invokeExact(framebuffer, attachment, texture, level, face); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureRenderbufferEXT(int texture, int target, int renderbuffer) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureRenderbufferEXT).invokeExact(texture, target, renderbuffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiTexRenderbufferEXT(int texunit, int target, int renderbuffer) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiTexRenderbufferEXT).invokeExact(texunit, target, renderbuffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArrayVertexOffsetEXT(int vaobj, int buffer, int size, int type, int stride, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArrayVertexOffsetEXT).invokeExact(vaobj, buffer, size, type, stride, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArrayColorOffsetEXT(int vaobj, int buffer, int size, int type, int stride, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArrayColorOffsetEXT).invokeExact(vaobj, buffer, size, type, stride, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArrayEdgeFlagOffsetEXT(int vaobj, int buffer, int stride, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArrayEdgeFlagOffsetEXT).invokeExact(vaobj, buffer, stride, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArrayIndexOffsetEXT(int vaobj, int buffer, int type, int stride, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArrayIndexOffsetEXT).invokeExact(vaobj, buffer, type, stride, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArrayNormalOffsetEXT(int vaobj, int buffer, int type, int stride, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArrayNormalOffsetEXT).invokeExact(vaobj, buffer, type, stride, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArrayTexCoordOffsetEXT(int vaobj, int buffer, int size, int type, int stride, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArrayTexCoordOffsetEXT).invokeExact(vaobj, buffer, size, type, stride, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArrayMultiTexCoordOffsetEXT(int vaobj, int buffer, int texunit, int size, int type, int stride, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArrayMultiTexCoordOffsetEXT).invokeExact(vaobj, buffer, texunit, size, type, stride, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArrayFogCoordOffsetEXT(int vaobj, int buffer, int type, int stride, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArrayFogCoordOffsetEXT).invokeExact(vaobj, buffer, type, stride, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArraySecondaryColorOffsetEXT(int vaobj, int buffer, int size, int type, int stride, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArraySecondaryColorOffsetEXT).invokeExact(vaobj, buffer, size, type, stride, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArrayVertexAttribOffsetEXT(int vaobj, int buffer, int index, int size, int type, boolean normalized, int stride, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArrayVertexAttribOffsetEXT).invokeExact(vaobj, buffer, index, size, type, normalized, stride, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArrayVertexAttribIOffsetEXT(int vaobj, int buffer, int index, int size, int type, int stride, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArrayVertexAttribIOffsetEXT).invokeExact(vaobj, buffer, index, size, type, stride, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEnableVertexArrayEXT(int vaobj, int array) { + final var ext = getExtCapabilities(); + try { + check(ext.glEnableVertexArrayEXT).invokeExact(vaobj, array); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDisableVertexArrayEXT(int vaobj, int array) { + final var ext = getExtCapabilities(); + try { + check(ext.glDisableVertexArrayEXT).invokeExact(vaobj, array); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEnableVertexArrayAttribEXT(int vaobj, int index) { + final var ext = getExtCapabilities(); + try { + check(ext.glEnableVertexArrayAttribEXT).invokeExact(vaobj, index); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDisableVertexArrayAttribEXT(int vaobj, int index) { + final var ext = getExtCapabilities(); + try { + check(ext.glDisableVertexArrayAttribEXT).invokeExact(vaobj, index); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVertexArrayIntegervEXT(int vaobj, int pname, @NativeType("GLint *") MemorySegment param) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexArrayIntegervEXT).invokeExact(vaobj, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVertexArrayPointervEXT(int vaobj, int pname, @NativeType("void **") MemorySegment param) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexArrayPointervEXT).invokeExact(vaobj, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVertexArrayIntegeri_vEXT(int vaobj, int index, int pname, @NativeType("GLint *") MemorySegment param) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexArrayIntegeri_vEXT).invokeExact(vaobj, index, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVertexArrayPointeri_vEXT(int vaobj, int index, int pname, @NativeType("void **") MemorySegment param) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexArrayPointeri_vEXT).invokeExact(vaobj, index, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMapNamedBufferRangeEXT(int buffer, long offset, long length, int access) { + final var ext = getExtCapabilities(); + try { + check(ext.glMapNamedBufferRangeEXT).invokeExact(buffer, offset, length, access); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFlushMappedNamedBufferRangeEXT(int buffer, long offset, long length) { + final var ext = getExtCapabilities(); + try { + check(ext.glFlushMappedNamedBufferRangeEXT).invokeExact(buffer, offset, length); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedBufferStorageEXT(int buffer, long size, @NativeType("const void *") MemorySegment data, int flags) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedBufferStorageEXT).invokeExact(buffer, size, data, flags); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glClearNamedBufferDataEXT(int buffer, int internalformat, int format, int type, @NativeType("const void *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glClearNamedBufferDataEXT).invokeExact(buffer, internalformat, format, type, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glClearNamedBufferSubDataEXT(int buffer, int internalformat, long offset, long size, int format, int type, @NativeType("const void *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glClearNamedBufferSubDataEXT).invokeExact(buffer, internalformat, offset, size, format, type, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedFramebufferParameteriEXT(int framebuffer, int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedFramebufferParameteriEXT).invokeExact(framebuffer, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetNamedFramebufferParameterivEXT(int framebuffer, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetNamedFramebufferParameterivEXT).invokeExact(framebuffer, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform1dEXT(int program, int location, double x) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform1dEXT).invokeExact(program, location, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform2dEXT(int program, int location, double x, double y) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform2dEXT).invokeExact(program, location, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform3dEXT(int program, int location, double x, double y, double z) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform3dEXT).invokeExact(program, location, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform4dEXT(int program, int location, double x, double y, double z, double w) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform4dEXT).invokeExact(program, location, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform1dvEXT(int program, int location, int count, @NativeType("const GLdouble *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform1dvEXT).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform2dvEXT(int program, int location, int count, @NativeType("const GLdouble *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform2dvEXT).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform3dvEXT(int program, int location, int count, @NativeType("const GLdouble *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform3dvEXT).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniform4dvEXT(int program, int location, int count, @NativeType("const GLdouble *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniform4dvEXT).invokeExact(program, location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformMatrix2dvEXT(int program, int location, int count, boolean transpose, @NativeType("const GLdouble *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformMatrix2dvEXT).invokeExact(program, location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformMatrix3dvEXT(int program, int location, int count, boolean transpose, @NativeType("const GLdouble *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformMatrix3dvEXT).invokeExact(program, location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformMatrix4dvEXT(int program, int location, int count, boolean transpose, @NativeType("const GLdouble *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformMatrix4dvEXT).invokeExact(program, location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformMatrix2x3dvEXT(int program, int location, int count, boolean transpose, @NativeType("const GLdouble *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformMatrix2x3dvEXT).invokeExact(program, location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformMatrix2x4dvEXT(int program, int location, int count, boolean transpose, @NativeType("const GLdouble *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformMatrix2x4dvEXT).invokeExact(program, location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformMatrix3x2dvEXT(int program, int location, int count, boolean transpose, @NativeType("const GLdouble *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformMatrix3x2dvEXT).invokeExact(program, location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformMatrix3x4dvEXT(int program, int location, int count, boolean transpose, @NativeType("const GLdouble *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformMatrix3x4dvEXT).invokeExact(program, location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformMatrix4x2dvEXT(int program, int location, int count, boolean transpose, @NativeType("const GLdouble *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformMatrix4x2dvEXT).invokeExact(program, location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramUniformMatrix4x3dvEXT(int program, int location, int count, boolean transpose, @NativeType("const GLdouble *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramUniformMatrix4x3dvEXT).invokeExact(program, location, count, transpose, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureBufferRangeEXT(int texture, int target, int internalformat, int buffer, long offset, long size) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureBufferRangeEXT).invokeExact(texture, target, internalformat, buffer, offset, size); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureStorage1DEXT(int texture, int target, int levels, int internalformat, int width) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureStorage1DEXT).invokeExact(texture, target, levels, internalformat, width); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureStorage2DEXT(int texture, int target, int levels, int internalformat, int width, int height) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureStorage2DEXT).invokeExact(texture, target, levels, internalformat, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureStorage3DEXT(int texture, int target, int levels, int internalformat, int width, int height, int depth) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureStorage3DEXT).invokeExact(texture, target, levels, internalformat, width, height, depth); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureStorage2DMultisampleEXT(int texture, int target, int samples, int internalformat, int width, int height, boolean fixedsamplelocations) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureStorage2DMultisampleEXT).invokeExact(texture, target, samples, internalformat, width, height, fixedsamplelocations); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureStorage3DMultisampleEXT(int texture, int target, int samples, int internalformat, int width, int height, int depth, boolean fixedsamplelocations) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureStorage3DMultisampleEXT).invokeExact(texture, target, samples, internalformat, width, height, depth, fixedsamplelocations); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArrayBindVertexBufferEXT(int vaobj, int bindingindex, int buffer, long offset, int stride) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArrayBindVertexBufferEXT).invokeExact(vaobj, bindingindex, buffer, offset, stride); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArrayVertexAttribFormatEXT(int vaobj, int attribindex, int size, int type, boolean normalized, int relativeoffset) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArrayVertexAttribFormatEXT).invokeExact(vaobj, attribindex, size, type, normalized, relativeoffset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArrayVertexAttribIFormatEXT(int vaobj, int attribindex, int size, int type, int relativeoffset) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArrayVertexAttribIFormatEXT).invokeExact(vaobj, attribindex, size, type, relativeoffset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArrayVertexAttribLFormatEXT(int vaobj, int attribindex, int size, int type, int relativeoffset) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArrayVertexAttribLFormatEXT).invokeExact(vaobj, attribindex, size, type, relativeoffset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArrayVertexAttribBindingEXT(int vaobj, int attribindex, int bindingindex) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArrayVertexAttribBindingEXT).invokeExact(vaobj, attribindex, bindingindex); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArrayVertexBindingDivisorEXT(int vaobj, int bindingindex, int divisor) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArrayVertexBindingDivisorEXT).invokeExact(vaobj, bindingindex, divisor); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArrayVertexAttribLOffsetEXT(int vaobj, int buffer, int index, int size, int type, int stride, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArrayVertexAttribLOffsetEXT).invokeExact(vaobj, buffer, index, size, type, stride, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexturePageCommitmentEXT(int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, boolean commit) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexturePageCommitmentEXT).invokeExact(texture, level, xoffset, yoffset, zoffset, width, height, depth, commit); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexArrayVertexAttribDivisorEXT(int vaobj, int index, int divisor) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexArrayVertexAttribDivisorEXT).invokeExact(vaobj, index, divisor); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDrawBuffers2.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDrawBuffers2.java new file mode 100644 index 00000000..459b550c --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDrawBuffers2.java @@ -0,0 +1,43 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_draw_buffers2} + */ +public final class GLEXTDrawBuffers2 { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_draw_buffers2) return; + ext.glColorMaskIndexedEXT = load.invoke("glColorMaskIndexedEXT", ofVoid(JAVA_INT, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE, JAVA_BYTE)); + } + + public static void glColorMaskIndexedEXT(int index, boolean r, boolean g, boolean b, boolean a) { + final var ext = getExtCapabilities(); + try { + check(ext.glColorMaskIndexedEXT).invokeExact(index, r, g, b, a); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDrawInstanced.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDrawInstanced.java new file mode 100644 index 00000000..ad79bd07 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDrawInstanced.java @@ -0,0 +1,51 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_draw_instanced} + */ +public final class GLEXTDrawInstanced { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_draw_instanced) return; + ext.glDrawArraysInstancedEXT = load.invoke("glDrawArraysInstancedEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glDrawElementsInstancedEXT = load.invoke("glDrawElementsInstancedEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT)); + } + + public static void glDrawArraysInstancedEXT(int mode, int start, int count, int primcount) { + final var ext = getExtCapabilities(); + try { + check(ext.glDrawArraysInstancedEXT).invokeExact(mode, start, count, primcount); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDrawElementsInstancedEXT(int mode, int count, int type, @NativeType("const void *") MemorySegment indices, int primcount) { + final var ext = getExtCapabilities(); + try { + check(ext.glDrawElementsInstancedEXT).invokeExact(mode, count, type, indices, primcount); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDrawRangedElements.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDrawRangedElements.java new file mode 100644 index 00000000..b56c77fb --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTDrawRangedElements.java @@ -0,0 +1,45 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_draw_range_elements} + */ +public final class GLEXTDrawRangedElements { + public static final int GL_MAX_ELEMENTS_VERTICES_EXT = 0x80E8; + public static final int GL_MAX_ELEMENTS_INDICES_EXT = 0x80E9; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_draw_range_elements) return; + ext.glDrawRangeElementsEXT = load.invoke("glDrawRangeElementsEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glDrawRangeElementsEXT(int mode, int start, int end, int count, int type, @NativeType("const void *") MemorySegment indices) { + final var ext = getExtCapabilities(); + try { + check(ext.glDrawRangeElementsEXT).invokeExact(mode, start, end, count, type, indices); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTEGLImageStorage.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTEGLImageStorage.java new file mode 100644 index 00000000..5f0d9b54 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTEGLImageStorage.java @@ -0,0 +1,51 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_EGL_image_storage} + */ +public final class GLEXTEGLImageStorage { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_EGL_image_storage) return; + ext.glEGLImageTargetTexStorageEXT = load.invoke("glEGLImageTargetTexStorageEXT", ofVoid(JAVA_INT, ADDRESS, ADDRESS)); + ext.glEGLImageTargetTextureStorageEXT = load.invoke("glEGLImageTargetTextureStorageEXT", ofVoid(JAVA_INT, ADDRESS, ADDRESS)); + } + + public static void glEGLImageTargetTexStorageEXT(int target, @NativeType("GLeglImageOES") MemorySegment image, @NativeType("const GLint*") MemorySegment attrib_list) { + final var ext = getExtCapabilities(); + try { + check(ext.glEGLImageTargetTexStorageEXT).invokeExact(target, image, attrib_list); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEGLImageTargetTextureStorageEXT(int texture, @NativeType("GLeglImageOES") MemorySegment image, @NativeType("const GLint*") MemorySegment attrib_list) { + final var ext = getExtCapabilities(); + try { + check(ext.glEGLImageTargetTextureStorageEXT).invokeExact(texture, image, attrib_list); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTExternalBuffer.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTExternalBuffer.java new file mode 100644 index 00000000..99d76dc8 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTExternalBuffer.java @@ -0,0 +1,51 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_external_buffer} + */ +public final class GLEXTExternalBuffer { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_external_buffer) return; + ext.glBufferStorageExternalEXT = load.invoke("glBufferStorageExternalEXT", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, ADDRESS, JAVA_INT)); + ext.glNamedBufferStorageExternalEXT = load.invoke("glNamedBufferStorageExternalEXT", ofVoid(JAVA_INT, JAVA_LONG, JAVA_LONG, ADDRESS, JAVA_INT)); + } + + public static void glBufferStorageExternalEXT(int target, long offset, long size, @NativeType("GLeglClientBufferEXT") MemorySegment clientBuffer, int flags) { + final var ext = getExtCapabilities(); + try { + check(ext.glBufferStorageExternalEXT).invokeExact(target, offset, size, clientBuffer, flags); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedBufferStorageExternalEXT(int buffer, long offset, long size, @NativeType("GLeglClientBufferEXT") MemorySegment clientBuffer, int flags) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedBufferStorageExternalEXT).invokeExact(buffer, offset, size, clientBuffer, flags); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFogCoord.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFogCoord.java new file mode 100644 index 00000000..504a14d3 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFogCoord.java @@ -0,0 +1,83 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_fog_coord} + */ +public final class GLEXTFogCoord { + public static final int GL_FOG_COORDINATE_SOURCE_EXT = 0x8450; + public static final int GL_FOG_COORDINATE_EXT = 0x8451; + public static final int GL_FRAGMENT_DEPTH_EXT = 0x8452; + public static final int GL_CURRENT_FOG_COORDINATE_EXT = 0x8453; + public static final int GL_FOG_COORDINATE_ARRAY_TYPE_EXT = 0x8454; + public static final int GL_FOG_COORDINATE_ARRAY_STRIDE_EXT = 0x8455; + public static final int GL_FOG_COORDINATE_ARRAY_POINTER_EXT = 0x8456; + public static final int GL_FOG_COORDINATE_ARRAY_EXT = 0x8457; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_fog_coord) return; + ext.glFogCoordfEXT = load.invoke("glFogCoordfEXT", ofVoid(JAVA_FLOAT)); + ext.glFogCoordfvEXT = load.invoke("glFogCoordfvEXT", ofVoid(ADDRESS)); + ext.glFogCoorddEXT = load.invoke("glFogCoorddEXT", ofVoid(JAVA_DOUBLE)); + ext.glFogCoorddvEXT = load.invoke("glFogCoorddvEXT", ofVoid(ADDRESS)); + ext.glFogCoordPointerEXT = load.invoke("glFogCoordPointerEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glFogCoordfEXT(float coord) { + final var ext = getExtCapabilities(); + try { + check(ext.glFogCoordfEXT).invokeExact(coord); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFogCoordfvEXT(@NativeType("const GLfloat *") MemorySegment coord) { + final var ext = getExtCapabilities(); + try { + check(ext.glFogCoordfvEXT).invokeExact(coord); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFogCoorddEXT(double coord) { + final var ext = getExtCapabilities(); + try { + check(ext.glFogCoorddEXT).invokeExact(coord); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFogCoorddvEXT(@NativeType("const GLdouble *") MemorySegment coord) { + final var ext = getExtCapabilities(); + try { + check(ext.glFogCoorddvEXT).invokeExact(coord); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFogCoordPointerEXT(int type, int stride, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glFogCoordPointerEXT).invokeExact(type, stride, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferBlit.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferBlit.java new file mode 100644 index 00000000..44ff831f --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferBlit.java @@ -0,0 +1,47 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_framebuffer_blit} + */ +public final class GLEXTFramebufferBlit { + public static final int GL_READ_FRAMEBUFFER_EXT = 0x8CA8; + public static final int GL_DRAW_FRAMEBUFFER_EXT = 0x8CA9; + public static final int GL_DRAW_FRAMEBUFFER_BINDING_EXT = 0x8CA6; + public static final int GL_READ_FRAMEBUFFER_BINDING_EXT = 0x8CAA; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_framebuffer_blit) return; + ext.glBlitFramebufferEXT = load.invoke("glBlitFramebufferEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glBlitFramebufferEXT(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, int filter) { + final var ext = getExtCapabilities(); + try { + check(ext.glBlitFramebufferEXT).invokeExact(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferBlitLayers.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferBlitLayers.java new file mode 100644 index 00000000..583ad66f --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferBlitLayers.java @@ -0,0 +1,51 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_framebuffer_blit_layers} + */ +public final class GLEXTFramebufferBlitLayers { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_framebuffer_blit_layers) return; + ext.glBlitFramebufferLayersEXT = load.invoke("glBlitFramebufferLayersEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glBlitFramebufferLayerEXT = load.invoke("glBlitFramebufferLayerEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glBlitFramebufferLayersEXT(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, int filter) { + final var ext = getExtCapabilities(); + try { + check(ext.glBlitFramebufferLayersEXT).invokeExact(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBlitFramebufferLayerEXT(int srcX0, int srcY0, int srcX1, int srcY1, int srcLayer, int dstX0, int dstY0, int dstX1, int dstY1, int dstLayer, int mask, int filter) { + final var ext = getExtCapabilities(); + try { + check(ext.glBlitFramebufferLayerEXT).invokeExact(srcX0, srcY0, srcX1, srcY1, srcLayer, dstX0, dstY0, dstX1, dstY1, dstLayer, mask, filter); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferMultisample.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferMultisample.java new file mode 100644 index 00000000..c444ff59 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferMultisample.java @@ -0,0 +1,46 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_framebuffer_multisample} + */ +public final class GLEXTFramebufferMultisample { + public static final int GL_RENDERBUFFER_SAMPLES_EXT = 0x8CAB; + public static final int GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT = 0x8D56; + public static final int GL_MAX_SAMPLES_EXT = 0x8D57; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_framebuffer_multisample) return; + ext.glRenderbufferStorageMultisampleEXT = load.invoke("glRenderbufferStorageMultisampleEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glRenderbufferStorageMultisampleEXT(int target, int samples, int internalformat, int width, int height) { + final var ext = getExtCapabilities(); + try { + check(ext.glRenderbufferStorageMultisampleEXT).invokeExact(target, samples, internalformat, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferMultisampleBlitScaled.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferMultisampleBlitScaled.java new file mode 100644 index 00000000..8f1ee6c1 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferMultisampleBlitScaled.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_framebuffer_multisample_blit_scaled} + */ +public final class GLEXTFramebufferMultisampleBlitScaled { + public static final int GL_SCALED_RESOLVE_FASTEST_EXT = 0x90BA; + public static final int GL_SCALED_RESOLVE_NICEST_EXT = 0x90BB; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferObject.java new file mode 100644 index 00000000..ec1c2705 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTFramebufferObject.java @@ -0,0 +1,225 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_framebuffer_object} + */ +public final class GLEXTFramebufferObject { + public static final int GL_INVALID_FRAMEBUFFER_OPERATION_EXT = 0x0506; + public static final int GL_MAX_RENDERBUFFER_SIZE_EXT = 0x84E8; + public static final int GL_FRAMEBUFFER_BINDING_EXT = 0x8CA6; + public static final int GL_RENDERBUFFER_BINDING_EXT = 0x8CA7; + public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT = 0x8CD0; + public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT = 0x8CD1; + public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT = 0x8CD2; + public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT = 0x8CD3; + public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT = 0x8CD4; + public static final int GL_FRAMEBUFFER_COMPLETE_EXT = 0x8CD5; + public static final int GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT = 0x8CD6; + public static final int GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT = 0x8CD7; + public static final int GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT = 0x8CD9; + public static final int GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT = 0x8CDA; + public static final int GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT = 0x8CDB; + public static final int GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT = 0x8CDC; + public static final int GL_FRAMEBUFFER_UNSUPPORTED_EXT = 0x8CDD; + public static final int GL_MAX_COLOR_ATTACHMENTS_EXT = 0x8CDF; + public static final int GL_COLOR_ATTACHMENT0_EXT = 0x8CE0; + public static final int GL_COLOR_ATTACHMENT1_EXT = 0x8CE1; + public static final int GL_COLOR_ATTACHMENT2_EXT = 0x8CE2; + public static final int GL_COLOR_ATTACHMENT3_EXT = 0x8CE3; + public static final int GL_COLOR_ATTACHMENT4_EXT = 0x8CE4; + public static final int GL_COLOR_ATTACHMENT5_EXT = 0x8CE5; + public static final int GL_COLOR_ATTACHMENT6_EXT = 0x8CE6; + public static final int GL_COLOR_ATTACHMENT7_EXT = 0x8CE7; + public static final int GL_COLOR_ATTACHMENT8_EXT = 0x8CE8; + public static final int GL_COLOR_ATTACHMENT9_EXT = 0x8CE9; + public static final int GL_COLOR_ATTACHMENT10_EXT = 0x8CEA; + public static final int GL_COLOR_ATTACHMENT11_EXT = 0x8CEB; + public static final int GL_COLOR_ATTACHMENT12_EXT = 0x8CEC; + public static final int GL_COLOR_ATTACHMENT13_EXT = 0x8CED; + public static final int GL_COLOR_ATTACHMENT14_EXT = 0x8CEE; + public static final int GL_COLOR_ATTACHMENT15_EXT = 0x8CEF; + public static final int GL_DEPTH_ATTACHMENT_EXT = 0x8D00; + public static final int GL_STENCIL_ATTACHMENT_EXT = 0x8D20; + public static final int GL_FRAMEBUFFER_EXT = 0x8D40; + public static final int GL_RENDERBUFFER_EXT = 0x8D41; + public static final int GL_RENDERBUFFER_WIDTH_EXT = 0x8D42; + public static final int GL_RENDERBUFFER_HEIGHT_EXT = 0x8D43; + public static final int GL_RENDERBUFFER_INTERNAL_FORMAT_EXT = 0x8D44; + public static final int GL_STENCIL_INDEX1_EXT = 0x8D46; + public static final int GL_STENCIL_INDEX4_EXT = 0x8D47; + public static final int GL_STENCIL_INDEX8_EXT = 0x8D48; + public static final int GL_STENCIL_INDEX16_EXT = 0x8D49; + public static final int GL_RENDERBUFFER_RED_SIZE_EXT = 0x8D50; + public static final int GL_RENDERBUFFER_GREEN_SIZE_EXT = 0x8D51; + public static final int GL_RENDERBUFFER_BLUE_SIZE_EXT = 0x8D52; + public static final int GL_RENDERBUFFER_ALPHA_SIZE_EXT = 0x8D53; + public static final int GL_RENDERBUFFER_DEPTH_SIZE_EXT = 0x8D54; + public static final int GL_RENDERBUFFER_STENCIL_SIZE_EXT = 0x8D55; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_framebuffer_object) return; + ext.glIsRenderbufferEXT = load.invoke("glIsRenderbufferEXT", of(JAVA_BYTE, JAVA_INT)); + ext.glBindRenderbufferEXT = load.invoke("glBindRenderbufferEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glDeleteRenderbuffersEXT = load.invoke("glDeleteRenderbuffersEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glGenRenderbuffersEXT = load.invoke("glGenRenderbuffersEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glRenderbufferStorageEXT = load.invoke("glRenderbufferStorageEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetRenderbufferParameterivEXT = load.invoke("glGetRenderbufferParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glIsFramebufferEXT = load.invoke("glIsFramebufferEXT", of(JAVA_BYTE, JAVA_INT)); + ext.glBindFramebufferEXT = load.invoke("glBindFramebufferEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glDeleteFramebuffersEXT = load.invoke("glDeleteFramebuffersEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glGenFramebuffersEXT = load.invoke("glGenFramebuffersEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glCheckFramebufferStatusEXT = load.invoke("glCheckFramebufferStatusEXT", of(JAVA_INT, JAVA_INT)); + ext.glFramebufferTexture1DEXT = load.invoke("glFramebufferTexture1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glFramebufferTexture2DEXT = load.invoke("glFramebufferTexture2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glFramebufferTexture3DEXT = load.invoke("glFramebufferTexture3DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glFramebufferRenderbufferEXT = load.invoke("glFramebufferRenderbufferEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGetFramebufferAttachmentParameterivEXT = load.invoke("glGetFramebufferAttachmentParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGenerateMipmapEXT = load.invoke("glGenerateMipmapEXT", ofVoid(JAVA_INT)); + } + + public static boolean glIsRenderbufferEXT(int renderbuffer) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsRenderbufferEXT).invokeExact(renderbuffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBindRenderbufferEXT(int target, int renderbuffer) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindRenderbufferEXT).invokeExact(target, renderbuffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeleteRenderbuffersEXT(int n, @NativeType("const GLuint *") MemorySegment renderbuffers) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeleteRenderbuffersEXT).invokeExact(n, renderbuffers); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGenRenderbuffersEXT(int n, @NativeType("GLuint *") MemorySegment renderbuffers) { + final var ext = getExtCapabilities(); + try { + check(ext.glGenRenderbuffersEXT).invokeExact(n, renderbuffers); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glRenderbufferStorageEXT(int target, int internalformat, int width, int height) { + final var ext = getExtCapabilities(); + try { + check(ext.glRenderbufferStorageEXT).invokeExact(target, internalformat, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetRenderbufferParameterivEXT(int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetRenderbufferParameterivEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsFramebufferEXT(int framebuffer) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsFramebufferEXT).invokeExact(framebuffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBindFramebufferEXT(int target, int framebuffer) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindFramebufferEXT).invokeExact(target, framebuffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeleteFramebuffersEXT(int n, @NativeType("const GLuint *") MemorySegment framebuffers) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeleteFramebuffersEXT).invokeExact(n, framebuffers); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGenFramebuffersEXT(int n, @NativeType("GLuint *") MemorySegment framebuffers) { + final var ext = getExtCapabilities(); + try { + check(ext.glGenFramebuffersEXT).invokeExact(n, framebuffers); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glCheckFramebufferStatusEXT(int target) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glCheckFramebufferStatusEXT).invokeExact(target); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFramebufferTexture1DEXT(int target, int attachment, int textarget, int texture, int level) { + final var ext = getExtCapabilities(); + try { + check(ext.glFramebufferTexture1DEXT).invokeExact(target, attachment, textarget, texture, level); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFramebufferTexture2DEXT(int target, int attachment, int textarget, int texture, int level) { + final var ext = getExtCapabilities(); + try { + check(ext.glFramebufferTexture2DEXT).invokeExact(target, attachment, textarget, texture, level); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFramebufferTexture3DEXT(int target, int attachment, int textarget, int texture, int level, int zoffset) { + final var ext = getExtCapabilities(); + try { + check(ext.glFramebufferTexture3DEXT).invokeExact(target, attachment, textarget, texture, level, zoffset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glFramebufferRenderbufferEXT(int target, int attachment, int renderbuffertarget, int renderbuffer) { + final var ext = getExtCapabilities(); + try { + check(ext.glFramebufferRenderbufferEXT).invokeExact(target, attachment, renderbuffertarget, renderbuffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetFramebufferAttachmentParameterivEXT(int target, int attachment, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetFramebufferAttachmentParameterivEXT).invokeExact(target, attachment, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGenerateMipmapEXT(int target) { + final var ext = getExtCapabilities(); + try { + check(ext.glGenerateMipmapEXT).invokeExact(target); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSrgb.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSrgb.java new file mode 100644 index 00000000..496cdbd6 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSrgb.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_framebuffer_sRGB} + */ +public final class GLEXTSrgb { + public static final int GL_FRAMEBUFFER_SRGB_EXT = 0x8DB9; + public static final int GL_FRAMEBUFFER_SRGB_CAPABLE_EXT = 0x8DBA; +} From 7905eb1ff5467814360183792f46b42d767ab99d Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Sat, 16 Dec 2023 10:53:39 +0800 Subject: [PATCH 17/20] [OpenGL] Update extensions --- .../kotlin/overrungl/opengl/GLEXT.kt | 488 ++++++++++++++++++ .../overrungl/opengl/OpenGLGenerator.kt | 125 ++--- .../main/java/overrungl/opengl/GLExtCaps.java | 111 ++-- .../opengl/ext/ext/GLEXTGeometryShader4.java | 63 +++ .../ext/ext/GLEXTGpuProgramParameters.java | 51 ++ .../opengl/ext/ext/GLEXTGpuShader4.java | 336 ++++++++++++ .../opengl/ext/ext/GLEXTHistogram.java | 129 +++++ .../ext/ext/GLEXTIndexArrayFormats.java | 39 ++ .../opengl/ext/ext/GLEXTIndexFunc.java | 46 ++ .../opengl/ext/ext/GLEXTIndexMaterial.java | 46 ++ .../opengl/ext/ext/GLEXTLightTexture.java | 68 +++ .../opengl/ext/ext/GLEXTMemoryObject.java | 199 +++++++ .../opengl/ext/ext/GLEXTMemoryObjectFd.java | 44 ++ .../ext/ext/GLEXTMemoryObjectWin32.java | 60 +++ .../opengl/ext/ext/GLEXTMultiDrawArrays.java | 51 ++ .../opengl/ext/ext/GLEXTMultisample.java | 68 +++ .../ext/ext/GLEXTPackedDepthStencil.java | 35 ++ .../opengl/ext/ext/GLEXTPackedFloat.java | 34 ++ .../opengl/ext/ext/GLEXTPackedPixels.java | 36 ++ .../opengl/ext/ext/GLEXTPalettedTexture.java | 74 +++ .../ext/ext/GLEXTPixelBufferObject.java | 35 ++ .../opengl/ext/ext/GLEXTPixelTransform.java | 92 ++++ .../opengl/ext/ext/GLEXTPointParameters.java | 55 ++ .../opengl/ext/ext/GLEXTPolygonOffset.java | 46 ++ .../ext/ext/GLEXTPolygonOffsetClamp.java | 44 ++ .../opengl/ext/ext/GLEXTProvokingVertex.java | 47 ++ .../ext/ext/GLEXTRasterMultisample.java | 49 ++ .../opengl/ext/ext/GLEXTRescaleNormal.java | 32 ++ 28 files changed, 2400 insertions(+), 103 deletions(-) create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTGeometryShader4.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTGpuProgramParameters.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTGpuShader4.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTHistogram.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTIndexArrayFormats.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTIndexFunc.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTIndexMaterial.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTLightTexture.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMemoryObject.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMemoryObjectFd.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMemoryObjectWin32.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMultiDrawArrays.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMultisample.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPackedDepthStencil.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPackedFloat.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPackedPixels.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPalettedTexture.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPixelBufferObject.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPixelTransform.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPointParameters.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPolygonOffset.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPolygonOffsetClamp.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTProvokingVertex.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTRasterMultisample.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTRescaleNormal.java diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLEXT.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLEXT.kt index 2c15a919..f9d1ae17 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLEXT.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLEXT.kt @@ -2173,4 +2173,492 @@ fun ext() { "GL_FRAMEBUFFER_SRGB_EXT" to "0x8DB9", "GL_FRAMEBUFFER_SRGB_CAPABLE_EXT" to "0x8DBA" ) + file("GeometryShader4", EXT, "GL_EXT_geometry_shader4") { + "GL_GEOMETRY_SHADER_EXT"("0x8DD9") + "GL_GEOMETRY_VERTICES_OUT_EXT"("0x8DDA") + "GL_GEOMETRY_INPUT_TYPE_EXT"("0x8DDB") + "GL_GEOMETRY_OUTPUT_TYPE_EXT"("0x8DDC") + "GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT"("0x8C29") + "GL_MAX_GEOMETRY_VARYING_COMPONENTS_EXT"("0x8DDD") + "GL_MAX_VERTEX_VARYING_COMPONENTS_EXT"("0x8DDE") + "GL_MAX_VARYING_COMPONENTS_EXT"("0x8B4B") + "GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT"("0x8DDF") + "GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT"("0x8DE0") + "GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT"("0x8DE1") + "GL_LINES_ADJACENCY_EXT"("0x000A") + "GL_LINE_STRIP_ADJACENCY_EXT"("0x000B") + "GL_TRIANGLES_ADJACENCY_EXT"("0x000C") + "GL_TRIANGLE_STRIP_ADJACENCY_EXT"("0x000D") + "GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT"("0x8DA8") + "GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_EXT"("0x8DA9") + "GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT"("0x8DA7") + "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT"("0x8CD4") + "GL_PROGRAM_POINT_SIZE_EXT"("0x8642") + "glProgramParameteriEXT"(void, GLuint("program"), GLenum("pname"), GLint("value")) + } + file("GpuProgramParameters", EXT, "GL_EXT_gpu_program_parameters") { + "glProgramEnvParameters4fvEXT"( + void, + GLenum("target"), + GLuint("index"), + GLsizei("count"), + address("params", "const GLfloat *") + ) + "glProgramLocalParameters4fvEXT"( + void, + GLenum("target"), + GLuint("index"), + GLsizei("count"), + address("params", "const GLfloat *") + ) + } + file("GpuShader4", EXT, "GL_EXT_gpu_shader4") { + "GL_SAMPLER_1D_ARRAY_EXT"("0x8DC0") + "GL_SAMPLER_2D_ARRAY_EXT"("0x8DC1") + "GL_SAMPLER_BUFFER_EXT"("0x8DC2") + "GL_SAMPLER_1D_ARRAY_SHADOW_EXT"("0x8DC3") + "GL_SAMPLER_2D_ARRAY_SHADOW_EXT"("0x8DC4") + "GL_SAMPLER_CUBE_SHADOW_EXT"("0x8DC5") + "GL_UNSIGNED_INT_VEC2_EXT"("0x8DC6") + "GL_UNSIGNED_INT_VEC3_EXT"("0x8DC7") + "GL_UNSIGNED_INT_VEC4_EXT"("0x8DC8") + "GL_INT_SAMPLER_1D_EXT"("0x8DC9") + "GL_INT_SAMPLER_2D_EXT"("0x8DCA") + "GL_INT_SAMPLER_3D_EXT"("0x8DCB") + "GL_INT_SAMPLER_CUBE_EXT"("0x8DCC") + "GL_INT_SAMPLER_2D_RECT_EXT"("0x8DCD") + "GL_INT_SAMPLER_1D_ARRAY_EXT"("0x8DCE") + "GL_INT_SAMPLER_2D_ARRAY_EXT"("0x8DCF") + "GL_INT_SAMPLER_BUFFER_EXT"("0x8DD0") + "GL_UNSIGNED_INT_SAMPLER_1D_EXT"("0x8DD1") + "GL_UNSIGNED_INT_SAMPLER_2D_EXT"("0x8DD2") + "GL_UNSIGNED_INT_SAMPLER_3D_EXT"("0x8DD3") + "GL_UNSIGNED_INT_SAMPLER_CUBE_EXT"("0x8DD4") + "GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT"("0x8DD5") + "GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT"("0x8DD6") + "GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT"("0x8DD7") + "GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT"("0x8DD8") + "GL_MIN_PROGRAM_TEXEL_OFFSET_EXT"("0x8904") + "GL_MAX_PROGRAM_TEXEL_OFFSET_EXT"("0x8905") + "GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT"("0x88FD") + "glGetUniformuivEXT"(void, GLuint("program"), GLint("location"), address("params", "GLuint *")) + "glBindFragDataLocationEXT"(void, GLuint("program"), GLuint("color"), address("name", "const GLchar *")) + "glGetFragDataLocationEXT"(GLint, GLuint("program"), address("name", "const GLchar *")) + "glUniform1uiEXT"(void, GLint("location"), GLuint("v0")) + "glUniform2uiEXT"(void, GLint("location"), GLuint("v0"), GLuint("v1")) + "glUniform3uiEXT"(void, GLint("location"), GLuint("v0"), GLuint("v1"), GLuint("v2")) + "glUniform4uiEXT"(void, GLint("location"), GLuint("v0"), GLuint("v1"), GLuint("v2"), GLuint("v3")) + "glUniform1uivEXT"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint *")) + "glUniform2uivEXT"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint *")) + "glUniform3uivEXT"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint *")) + "glUniform4uivEXT"(void, GLint("location"), GLsizei("count"), address("value", "const GLuint *")) + "glVertexAttribI1iEXT"(void, GLuint("index"), GLint("x")) + "glVertexAttribI2iEXT"(void, GLuint("index"), GLint("x"), GLint("y")) + "glVertexAttribI3iEXT"(void, GLuint("index"), GLint("x"), GLint("y"), GLint("z")) + "glVertexAttribI4iEXT"(void, GLuint("index"), GLint("x"), GLint("y"), GLint("z"), GLint("w")) + "glVertexAttribI1uiEXT"(void, GLuint("index"), GLuint("x")) + "glVertexAttribI2uiEXT"(void, GLuint("index"), GLuint("x"), GLuint("y")) + "glVertexAttribI3uiEXT"(void, GLuint("index"), GLuint("x"), GLuint("y"), GLuint("z")) + "glVertexAttribI4uiEXT"(void, GLuint("index"), GLuint("x"), GLuint("y"), GLuint("z"), GLuint("w")) + "glVertexAttribI1ivEXT"(void, GLuint("index"), address("v", "const GLint *")) + "glVertexAttribI2ivEXT"(void, GLuint("index"), address("v", "const GLint *")) + "glVertexAttribI3ivEXT"(void, GLuint("index"), address("v", "const GLint *")) + "glVertexAttribI4ivEXT"(void, GLuint("index"), address("v", "const GLint *")) + "glVertexAttribI1uivEXT"(void, GLuint("index"), address("v", "const GLuint *")) + "glVertexAttribI2uivEXT"(void, GLuint("index"), address("v", "const GLuint *")) + "glVertexAttribI3uivEXT"(void, GLuint("index"), address("v", "const GLuint *")) + "glVertexAttribI4uivEXT"(void, GLuint("index"), address("v", "const GLuint *")) + "glVertexAttribI4bvEXT"(void, GLuint("index"), address("v", "const GLbyte *")) + "glVertexAttribI4svEXT"(void, GLuint("index"), address("v", "const GLshort *")) + "glVertexAttribI4ubvEXT"(void, GLuint("index"), address("v", "const GLubyte *")) + "glVertexAttribI4usvEXT"(void, GLuint("index"), address("v", "const GLushort *")) + "glVertexAttribIPointerEXT"( + void, + GLuint("index"), + GLint("size"), + GLenum("type"), + GLsizei("stride"), + address("pointer", "const void *") + ) + "glGetVertexAttribIivEXT"(void, GLuint("index"), GLenum("pname"), address("params", "GLint *")) + "glGetVertexAttribIuivEXT"(void, GLuint("index"), GLenum("pname"), address("params", "GLuint *")) + } + file("Histogram", EXT, "GL_EXT_histogram") { + "GL_HISTOGRAM_EXT"("0x8024") + "GL_PROXY_HISTOGRAM_EXT"("0x8025") + "GL_HISTOGRAM_WIDTH_EXT"("0x8026") + "GL_HISTOGRAM_FORMAT_EXT"("0x8027") + "GL_HISTOGRAM_RED_SIZE_EXT"("0x8028") + "GL_HISTOGRAM_GREEN_SIZE_EXT"("0x8029") + "GL_HISTOGRAM_BLUE_SIZE_EXT"("0x802A") + "GL_HISTOGRAM_ALPHA_SIZE_EXT"("0x802B") + "GL_HISTOGRAM_LUMINANCE_SIZE_EXT"("0x802C") + "GL_HISTOGRAM_SINK_EXT"("0x802D") + "GL_MINMAX_EXT"("0x802E") + "GL_MINMAX_FORMAT_EXT"("0x802F") + "GL_MINMAX_SINK_EXT"("0x8030") + "GL_TABLE_TOO_LARGE_EXT"("0x8031") + "glGetHistogramEXT"( + void, + GLenum("target"), + GLboolean("reset"), + GLenum("format"), + GLenum("type"), + address("values", "void *") + ) + "glGetHistogramParameterfvEXT"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + "glGetHistogramParameterivEXT"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetMinmaxEXT"( + void, + GLenum("target"), + GLboolean("reset"), + GLenum("format"), + GLenum("type"), + address("values", "void *") + ) + "glGetMinmaxParameterfvEXT"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + "glGetMinmaxParameterivEXT"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glHistogramEXT"(void, GLenum("target"), GLsizei("width"), GLenum("internalformat"), GLboolean("sink")) + "glMinmaxEXT"(void, GLenum("target"), GLenum("internalformat"), GLboolean("sink")) + "glResetHistogramEXT"(void, GLenum("target")) + "glResetMinmaxEXT"(void, GLenum("target")) + } + file( + "IndexArrayFormats", EXT, "GL_EXT_index_array_formats", + "GL_IUI_V2F_EXT" to "0x81AD", + "GL_IUI_V3F_EXT" to "0x81AE", + "GL_IUI_N3F_V2F_EXT" to "0x81AF", + "GL_IUI_N3F_V3F_EXT" to "0x81B0", + "GL_T2F_IUI_V2F_EXT" to "0x81B1", + "GL_T2F_IUI_V3F_EXT" to "0x81B2", + "GL_T2F_IUI_N3F_V2F_EXT" to "0x81B3", + "GL_T2F_IUI_N3F_V3F_EXT" to "0x81B4" + ) + file("IndexFunc", EXT, "GL_EXT_index_func") { + "GL_INDEX_TEST_EXT"("0x81B5") + "GL_INDEX_TEST_FUNC_EXT"("0x81B6") + "GL_INDEX_TEST_REF_EXT"("0x81B7") + "glIndexFuncEXT"(void, GLenum("func"), GLclampf("ref")) + } + file("IndexMaterial", EXT, "GL_EXT_index_material") { + "GL_INDEX_MATERIAL_EXT"("0x81B8") + "GL_INDEX_MATERIAL_PARAMETER_EXT"("0x81B9") + "GL_INDEX_MATERIAL_FACE_EXT"("0x81BA") + "glIndexMaterialEXT"(void, GLenum("face"), GLenum("mode")) + } + file("LightTexture", EXT, "GL_EXT_light_texture") { + "GL_FRAGMENT_MATERIAL_EXT"("0x8349") + "GL_FRAGMENT_NORMAL_EXT"("0x834A") + "GL_FRAGMENT_COLOR_EXT"("0x834C") + "GL_ATTENUATION_EXT"("0x834D") + "GL_SHADOW_ATTENUATION_EXT"("0x834E") + "GL_TEXTURE_APPLICATION_MODE_EXT"("0x834F") + "GL_TEXTURE_LIGHT_EXT"("0x8350") + "GL_TEXTURE_MATERIAL_FACE_EXT"("0x8351") + "GL_TEXTURE_MATERIAL_PARAMETER_EXT"("0x8352") + "glApplyTextureEXT"(void, GLenum("mode")) + "glTextureLightEXT"(void, GLenum("pname")) + "glTextureMaterialEXT"(void, GLenum("face"), GLenum("mode")) + } + file("MemoryObject", EXT, "GL_EXT_memory_object") { + "GL_TEXTURE_TILING_EXT"("0x9580") + "GL_DEDICATED_MEMORY_OBJECT_EXT"("0x9581") + "GL_PROTECTED_MEMORY_OBJECT_EXT"("0x959B") + "GL_NUM_TILING_TYPES_EXT"("0x9582") + "GL_TILING_TYPES_EXT"("0x9583") + "GL_OPTIMAL_TILING_EXT"("0x9584") + "GL_LINEAR_TILING_EXT"("0x9585") + "GL_NUM_DEVICE_UUIDS_EXT"("0x9596") + "GL_DEVICE_UUID_EXT"("0x9597") + "GL_DRIVER_UUID_EXT"("0x9598") + "GL_UUID_SIZE_EXT"("16") + "glGetUnsignedBytevEXT"(void, GLenum("pname"), address("data", "GLubyte *")) + "glGetUnsignedBytei_vEXT"(void, GLenum("target"), GLuint("index"), address("data", "GLubyte *")) + "glDeleteMemoryObjectsEXT"(void, GLsizei("n"), address("memoryObjects", "const GLuint *")) + "glIsMemoryObjectEXT"(GLboolean, GLuint("memoryObject")) + "glCreateMemoryObjectsEXT"(void, GLsizei("n"), address("memoryObjects", "GLuint *")) + "glMemoryObjectParameterivEXT"( + void, + GLuint("memoryObject"), + GLenum("pname"), + address("params", "const GLint *") + ) + "glGetMemoryObjectParameterivEXT"(void, GLuint("memoryObject"), GLenum("pname"), address("params", "GLint *")) + "glTexStorageMem2DEXT"( + void, + GLenum("target"), + GLsizei("levels"), + GLenum("internalFormat"), + GLsizei("width"), + GLsizei("height"), + GLuint("memory"), + GLuint64("offset") + ) + "glTexStorageMem2DMultisampleEXT"( + void, + GLenum("target"), + GLsizei("samples"), + GLenum("internalFormat"), + GLsizei("width"), + GLsizei("height"), + GLboolean("fixedSampleLocations"), + GLuint("memory"), + GLuint64("offset") + ) + "glTexStorageMem3DEXT"( + void, + GLenum("target"), + GLsizei("levels"), + GLenum("internalFormat"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLuint("memory"), + GLuint64("offset") + ) + "glTexStorageMem3DMultisampleEXT"( + void, + GLenum("target"), + GLsizei("samples"), + GLenum("internalFormat"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLboolean("fixedSampleLocations"), + GLuint("memory"), + GLuint64("offset") + ) + "glBufferStorageMemEXT"(void, GLenum("target"), GLsizeiptr("size"), GLuint("memory"), GLuint64("offset")) + "glTextureStorageMem2DEXT"( + void, + GLuint("texture"), + GLsizei("levels"), + GLenum("internalFormat"), + GLsizei("width"), + GLsizei("height"), + GLuint("memory"), + GLuint64("offset") + ) + "glTextureStorageMem2DMultisampleEXT"( + void, + GLuint("texture"), + GLsizei("samples"), + GLenum("internalFormat"), + GLsizei("width"), + GLsizei("height"), + GLboolean("fixedSampleLocations"), + GLuint("memory"), + GLuint64("offset") + ) + "glTextureStorageMem3DEXT"( + void, + GLuint("texture"), + GLsizei("levels"), + GLenum("internalFormat"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLuint("memory"), + GLuint64("offset") + ) + "glTextureStorageMem3DMultisampleEXT"( + void, + GLuint("texture"), + GLsizei("samples"), + GLenum("internalFormat"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLboolean("fixedSampleLocations"), + GLuint("memory"), + GLuint64("offset") + ) + "glNamedBufferStorageMemEXT"(void, GLuint("buffer"), GLsizeiptr("size"), GLuint("memory"), GLuint64("offset")) + "glTexStorageMem1DEXT"( + void, + GLenum("target"), + GLsizei("levels"), + GLenum("internalFormat"), + GLsizei("width"), + GLuint("memory"), + GLuint64("offset") + ) + "glTextureStorageMem1DEXT"( + void, + GLuint("texture"), + GLsizei("levels"), + GLenum("internalFormat"), + GLsizei("width"), + GLuint("memory"), + GLuint64("offset") + ) + } + file("MemoryObjectFd", EXT, "GL_EXT_memory_object_fd") { + "GL_HANDLE_TYPE_OPAQUE_FD_EXT"("0x9586") + "glImportMemoryFdEXT"(void, GLuint("memory"), GLuint64("size"), GLenum("handleType"), GLint("fd")) + } + file("MemoryObjectWin32", EXT, "GL_EXT_memory_object_win32") { + "GL_HANDLE_TYPE_OPAQUE_WIN32_EXT"("0x9587") + "GL_HANDLE_TYPE_OPAQUE_WIN32_KMT_EXT"("0x9588") + "GL_DEVICE_LUID_EXT"("0x9599") + "GL_DEVICE_NODE_MASK_EXT"("0x959A") + "GL_LUID_SIZE_EXT"("8") + "GL_HANDLE_TYPE_D3D12_TILEPOOL_EXT"("0x9589") + "GL_HANDLE_TYPE_D3D12_RESOURCE_EXT"("0x958A") + "GL_HANDLE_TYPE_D3D11_IMAGE_EXT"("0x958B") + "GL_HANDLE_TYPE_D3D11_IMAGE_KMT_EXT"("0x958C") + "glImportMemoryWin32HandleEXT"( + void, + GLuint("memory"), + GLuint64("size"), + GLenum("handleType"), + address("handle", "void *") + ) + "glImportMemoryWin32NameEXT"( + void, + GLuint("memory"), + GLuint64("size"), + GLenum("handleType"), + address("name", "const void *") + ) + } + file("MultiDrawArrays", EXT, "GL_EXT_multi_draw_arrays") { + "glMultiDrawArraysEXT"( + void, + GLenum("mode"), + address("first", "const GLint *"), + address("count", "const GLsizei *"), + GLsizei("primcount") + ) + "glMultiDrawElementsEXT"( + void, + GLenum("mode"), + address("count", "const GLsizei *"), + GLenum("type"), + address("indices", "const void *const*"), + GLsizei("primcount") + ) + } + file("Multisample", EXT, "GL_EXT_multisample") { + "GL_MULTISAMPLE_EXT"("0x809D") + "GL_SAMPLE_ALPHA_TO_MASK_EXT"("0x809E") + "GL_SAMPLE_ALPHA_TO_ONE_EXT"("0x809F") + "GL_SAMPLE_MASK_EXT"("0x80A0") + "GL_1PASS_EXT"("0x80A1") + "GL_2PASS_0_EXT"("0x80A2") + "GL_2PASS_1_EXT"("0x80A3") + "GL_4PASS_0_EXT"("0x80A4") + "GL_4PASS_1_EXT"("0x80A5") + "GL_4PASS_2_EXT"("0x80A6") + "GL_4PASS_3_EXT"("0x80A7") + "GL_SAMPLE_BUFFERS_EXT"("0x80A8") + "GL_SAMPLES_EXT"("0x80A9") + "GL_SAMPLE_MASK_VALUE_EXT"("0x80AA") + "GL_SAMPLE_MASK_INVERT_EXT"("0x80AB") + "GL_SAMPLE_PATTERN_EXT"("0x80AC") + "GL_MULTISAMPLE_BIT_EXT"("0x20000000") + "glSampleMaskEXT"(void, GLclampf("value"), GLboolean("invert")) + "glSamplePatternEXT"(void, GLenum("pattern")) + } + file( + "PackedDepthStencil", EXT, "GL_EXT_packed_depth_stencil", + "GL_DEPTH_STENCIL_EXT" to "0x84F9", + "GL_UNSIGNED_INT_24_8_EXT" to "0x84FA", + "GL_DEPTH24_STENCIL8_EXT" to "0x88F0", + "GL_TEXTURE_STENCIL_SIZE_EXT" to "0x88F1" + ) + file( + "PackedFloat", EXT, "GL_EXT_packed_float", + "GL_R11F_G11F_B10F_EXT" to "0x8C3A", + "GL_UNSIGNED_INT_10F_11F_11F_REV_EXT" to "0x8C3B", + "GL_RGBA_SIGNED_COMPONENTS_EXT" to "0x8C3C" + ) + file( + "PackedPixels", EXT, "GL_EXT_packed_pixels", + "GL_UNSIGNED_BYTE_3_3_2_EXT" to "0x8032", + "GL_UNSIGNED_SHORT_4_4_4_4_EXT" to "0x8033", + "GL_UNSIGNED_SHORT_5_5_5_1_EXT" to "0x8034", + "GL_UNSIGNED_INT_8_8_8_8_EXT" to "0x8035", + "GL_UNSIGNED_INT_10_10_10_2_EXT" to "0x8036" + ) + file("PalettedTexture", EXT, "GL_EXT_paletted_texture") { + "GL_COLOR_INDEX1_EXT"("0x80E2") + "GL_COLOR_INDEX2_EXT"("0x80E3") + "GL_COLOR_INDEX4_EXT"("0x80E4") + "GL_COLOR_INDEX8_EXT"("0x80E5") + "GL_COLOR_INDEX12_EXT"("0x80E6") + "GL_COLOR_INDEX16_EXT"("0x80E7") + "GL_TEXTURE_INDEX_SIZE_EXT"("0x80ED") + "glColorTableEXT"( + void, + GLenum("target"), + GLenum("internalFormat"), + GLsizei("width"), + GLenum("format"), + GLenum("type"), + address("table", "const void *") + ) + "glGetColorTableEXT"(void, GLenum("target"), GLenum("format"), GLenum("type"), address("data", "void *")) + "glGetColorTableParameterivEXT"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetColorTableParameterfvEXT"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + } + file( + "PixelBufferObject", EXT, "GL_EXT_pixel_buffer_object", + "GL_PIXEL_PACK_BUFFER_EXT" to "0x88EB", + "GL_PIXEL_UNPACK_BUFFER_EXT" to "0x88EC", + "GL_PIXEL_PACK_BUFFER_BINDING_EXT" to "0x88ED", + "GL_PIXEL_UNPACK_BUFFER_BINDING_EXT" to "0x88EF" + ) + file("PixelTransform", EXT, "GL_EXT_pixel_transform") { + "GL_PIXEL_TRANSFORM_2D_EXT"("0x8330") + "GL_PIXEL_MAG_FILTER_EXT"("0x8331") + "GL_PIXEL_MIN_FILTER_EXT"("0x8332") + "GL_PIXEL_CUBIC_WEIGHT_EXT"("0x8333") + "GL_CUBIC_EXT"("0x8334") + "GL_AVERAGE_EXT"("0x8335") + "GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT"("0x8336") + "GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT"("0x8337") + "GL_PIXEL_TRANSFORM_2D_MATRIX_EXT"("0x8338") + "glPixelTransformParameteriEXT"(void, GLenum("target"), GLenum("pname"), GLint("param")) + "glPixelTransformParameterfEXT"(void, GLenum("target"), GLenum("pname"), GLfloat("param")) + "glPixelTransformParameterivEXT"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) + "glPixelTransformParameterfvEXT"(void, GLenum("target"), GLenum("pname"), address("params", "const GLfloat *")) + "glGetPixelTransformParameterivEXT"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetPixelTransformParameterfvEXT"(void, GLenum("target"), GLenum("pname"), address("params", "GLfloat *")) + } + file("PointParameters", EXT, "GL_EXT_point_parameters") { + "GL_POINT_SIZE_MIN_EXT"("0x8126") + "GL_POINT_SIZE_MAX_EXT"("0x8127") + "GL_POINT_FADE_THRESHOLD_SIZE_EXT"("0x8128") + "GL_DISTANCE_ATTENUATION_EXT"("0x8129") + "glPointParameterfEXT"(void, GLenum("pname"), GLfloat("param")) + "glPointParameterfvEXT"(void, GLenum("pname"), address("params", "const GLfloat *")) + } + file("PolygonOffset", EXT, "GL_EXT_polygon_offset") { + "GL_POLYGON_OFFSET_EXT"("0x8037") + "GL_POLYGON_OFFSET_FACTOR_EXT"("0x8038") + "GL_POLYGON_OFFSET_BIAS_EXT"("0x8039") + "glPolygonOffsetEXT"(void, GLfloat("factor"), GLfloat("bias")) + } + file("PolygonOffsetClamp", EXT, "GL_EXT_polygon_offset_clamp") { + "GL_POLYGON_OFFSET_CLAMP_EXT"("0x8E1B") + "glPolygonOffsetClampEXT"(void, GLfloat("factor"), GLfloat("units"), GLfloat("clamp")) + } + file("ProvokingVertex", EXT, "GL_EXT_provoking_vertex") { + "GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT"("0x8E4C") + "GL_FIRST_VERTEX_CONVENTION_EXT"("0x8E4D") + "GL_LAST_VERTEX_CONVENTION_EXT"("0x8E4E") + "GL_PROVOKING_VERTEX_EXT"("0x8E4F") + "glProvokingVertexEXT"(void, GLenum("mode")) + } + file("RasterMultisample", EXT, "GL_EXT_raster_multisample") { + "GL_RASTER_MULTISAMPLE_EXT"("0x9327") + "GL_RASTER_SAMPLES_EXT"("0x9328") + "GL_MAX_RASTER_SAMPLES_EXT"("0x9329") + "GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT"("0x932A") + "GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT"("0x932B") + "GL_EFFECTIVE_RASTER_SAMPLES_EXT"("0x932C") + "glRasterSamplesEXT"(void, GLuint("samples"), GLboolean("fixedsamplelocations")) + } + file("RescaleNormal", EXT, "GL_EXT_rescale_normal", "GL_RESCALE_NORMAL_EXT" to "0x803A") } diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt index 426e915e..5c9b98a8 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/OpenGLGenerator.kt @@ -176,10 +176,14 @@ class OpenGLFile( } internal fun generate() { - Files.writeString(Path("${ext.dir}GL${ext.extName}$name.java"), buildString { - // file-header - appendLine( - """ + Path(ext.dir).also { + if (!Files.exists(it)) { + Files.createDirectories(it) + } + Files.writeString(it.resolve("GL${ext.extName}$name.java"), buildString { + // file-header + appendLine( + """ ${fileHeader.prependIndent("|")} |package overrungl.opengl${ext.packageName}; @@ -195,72 +199,73 @@ class OpenGLFile( | */ |public final class GL${ext.extName}$name { """.trimMargin() - ) - // constants - constants.forEach { (name, value) -> - appendLine(" public static final int $name = $value;") - } - if (functions.isNotEmpty()) { - // loader - appendLine(" public static void load(GLExtCaps ext, GLLoadFunc load) {") - appendLine(" if (!ext.$extName) return;") - functions.forEach { f -> - append(" ext.${f.name} = load.invoke(\"${f.name}\", ${if (f.returnType == void) "ofVoid" else "of"}(") - if (f.returnType != void) - append(f.returnType.layout) - f.params.forEachIndexed { index, it -> - if (index != 0 || f.returnType != void) append(", ") - append(it.type.layout) - } - appendLine("));") + ) + // constants + constants.forEach { (name, value) -> + appendLine(" public static final int $name = $value;") } - appendLine(" }") - appendLine() - // functions - fun appendFuncHeader(f: Function) { - append(" public static ") - if (f.nativeType != null) - append("@NativeType(\"${f.nativeType}\") ") - append("${f.returnType} ${f.name}(") - f.params.forEachIndexed { index, it -> - if (index != 0) append(", ") - if (it.nativeType != null) - append("@NativeType(\"${it.nativeType}\") ") - append("${it.type} ${it.name}") + if (functions.isNotEmpty()) { + // loader + appendLine(" public static void load(GLExtCaps ext, GLLoadFunc load) {") + appendLine(" if (!ext.$extName) return;") + functions.forEach { f -> + append(" ext.${f.name} = load.invoke(\"${f.name}\", ${if (f.returnType == void) "ofVoid" else "of"}(") + if (f.returnType != void) + append(f.returnType.layout) + f.params.forEachIndexed { index, it -> + if (index != 0 || f.returnType != void) append(", ") + append(it.type.layout) + } + appendLine("));") } - appendLine(") {") - } - functions.forEach { f -> - appendFuncHeader(f) - appendLine(" final var ext = getExtCapabilities();") - appendLine(" try {") - if (f.returnType != void) - appendLine(" return (${f.returnType})") - append(" check(ext.${f.name}).invokeExact(") - f.params.forEachIndexed { index, it -> - if (index != 0) append(", ") - append(it.name) + appendLine(" }") + appendLine() + // functions + fun appendFuncHeader(f: Function) { + append(" public static ") + if (f.nativeType != null) + append("@NativeType(\"${f.nativeType}\") ") + append("${f.returnType} ${f.name}(") + f.params.forEachIndexed { index, it -> + if (index != 0) append(", ") + if (it.nativeType != null) + append("@NativeType(\"${it.nativeType}\") ") + append("${it.type} ${it.name}") + } + appendLine(") {") } - appendLine( - """); + functions.forEach { f -> + appendFuncHeader(f) + appendLine(" final var ext = getExtCapabilities();") + appendLine(" try {") + if (f.returnType != void) + appendLine(" return (${f.returnType})") + append(" check(ext.${f.name}).invokeExact(") + f.params.forEachIndexed { index, it -> + if (index != 0) append(", ") + append(it.name) + } + appendLine( + """); | } catch (Throwable e) { throw new AssertionError("should not reach here", e); } | } """.trimMargin() - ) - appendLine() + ) + appendLine() - // overloads - if (f.overloads.isNotEmpty()) { - f.overloads.forEach { overload -> - appendFuncHeader(overload) - appendLine(overload.content!!.prependIndent(" ")) - appendLine(" }\n") + // overloads + if (f.overloads.isNotEmpty()) { + f.overloads.forEach { overload -> + appendFuncHeader(overload) + appendLine(overload.content!!.prependIndent(" ")) + appendLine(" }\n") + } } } } - } - appendLine("}") - }) + appendLine("}") + }) + } } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java index 16b84e3c..3e849f8d 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java @@ -125,49 +125,55 @@ public GLExtCaps(GLCapabilities caps) { glProgramUniformMatrix2x4dvEXT, glProgramUniformMatrix3x2dvEXT, glProgramUniformMatrix3x4dvEXT, glProgramUniformMatrix4x2dvEXT, glProgramUniformMatrix4x3dvEXT, glTextureBufferRangeEXT, glTextureStorage1DEXT, glTextureStorage2DEXT, glTextureStorage3DEXT, glTextureStorage2DMultisampleEXT, glTextureStorage3DMultisampleEXT, glVertexArrayBindVertexBufferEXT, glVertexArrayVertexAttribFormatEXT, glVertexArrayVertexAttribIFormatEXT, glVertexArrayVertexAttribLFormatEXT, glVertexArrayVertexAttribBindingEXT, glVertexArrayVertexBindingDivisorEXT, glVertexArrayVertexAttribLOffsetEXT, glTexturePageCommitmentEXT, glVertexArrayVertexAttribDivisorEXT, glColorMaskIndexedEXT, glDrawArraysInstancedEXT, glDrawElementsInstancedEXT, glDrawRangeElementsEXT, glBufferStorageExternalEXT, glNamedBufferStorageExternalEXT, glFogCoordfEXT, glFogCoordfvEXT, glFogCoorddEXT, glFogCoorddvEXT, glFogCoordPointerEXT, glBlitFramebufferEXT, glBlitFramebufferLayersEXT, glBlitFramebufferLayerEXT, glRenderbufferStorageMultisampleEXT, glIsRenderbufferEXT, glBindRenderbufferEXT, glDeleteRenderbuffersEXT, glGenRenderbuffersEXT, glRenderbufferStorageEXT, glGetRenderbufferParameterivEXT, glIsFramebufferEXT, glBindFramebufferEXT, glDeleteFramebuffersEXT, glGenFramebuffersEXT, glCheckFramebufferStatusEXT, glFramebufferTexture1DEXT, glFramebufferTexture2DEXT, - glFramebufferTexture3DEXT, glFramebufferRenderbufferEXT, glGetFramebufferAttachmentParameterivEXT, glGenerateMipmapEXT, glFrameTerminatorGREMEDY, glStringMarkerGREMEDY, glImageTransformParameteriHP, glImageTransformParameterfHP, glImageTransformParameterivHP, glImageTransformParameterfvHP, glGetImageTransformParameterivHP, glGetImageTransformParameterfvHP, glMultiModeDrawArraysIBM, glMultiModeDrawElementsIBM, glFlushStaticDataIBM, glColorPointerListIBM, - glSecondaryColorPointerListIBM, glEdgeFlagPointerListIBM, glFogCoordPointerListIBM, glIndexPointerListIBM, glNormalPointerListIBM, glTexCoordPointerListIBM, glVertexPointerListIBM, glBlendFuncSeparateINGR, glApplyFramebufferAttachmentCMAAINTEL, glSyncTextureINTEL, glUnmapTexture2DINTEL, glMapTexture2DINTEL, glVertexPointervINTEL, glNormalPointervINTEL, glColorPointervINTEL, glTexCoordPointervINTEL, - glBeginPerfQueryINTEL, glCreatePerfQueryINTEL, glDeletePerfQueryINTEL, glEndPerfQueryINTEL, glGetFirstPerfQueryIdINTEL, glGetNextPerfQueryIdINTEL, glGetPerfCounterInfoINTEL, glGetPerfQueryDataINTEL, glGetPerfQueryIdByNameINTEL, glGetPerfQueryInfoINTEL, glFramebufferParameteriMESA, glGetFramebufferParameterivMESA, glResizeBuffersMESA, glWindowPos2dMESA, glWindowPos2dvMESA, glWindowPos2fMESA, - glWindowPos2fvMESA, glWindowPos2iMESA, glWindowPos2ivMESA, glWindowPos2sMESA, glWindowPos2svMESA, glWindowPos3dMESA, glWindowPos3dvMESA, glWindowPos3fMESA, glWindowPos3fvMESA, glWindowPos3iMESA, glWindowPos3ivMESA, glWindowPos3sMESA, glWindowPos3svMESA, glWindowPos4dMESA, glWindowPos4dvMESA, glWindowPos4fMESA, - glWindowPos4fvMESA, glWindowPos4iMESA, glWindowPos4ivMESA, glWindowPos4sMESA, glWindowPos4svMESA, glBeginConditionalRenderNVX, glEndConditionalRenderNVX, glUploadGpuMaskNVX, glMulticastViewportArrayvNVX, glMulticastViewportPositionWScaleNVX, glMulticastScissorArrayvNVX, glAsyncCopyBufferSubDataNVX, glAsyncCopyImageSubDataNVX, glLGPUNamedBufferSubDataNVX, glLGPUCopyImageSubDataNVX, glLGPUInterlockNVX, - glCreateProgressFenceNVX, glSignalSemaphoreui64NVX, glWaitSemaphoreui64NVX, glClientWaitSemaphoreui64NVX, glAlphaToCoverageDitherControlNV, glMultiDrawArraysIndirectBindlessNV, glMultiDrawElementsIndirectBindlessNV, glMultiDrawArraysIndirectBindlessCountNV, glMultiDrawElementsIndirectBindlessCountNV, glGetTextureHandleNV, glGetTextureSamplerHandleNV, glMakeTextureHandleResidentNV, glMakeTextureHandleNonResidentNV, glGetImageHandleNV, glMakeImageHandleResidentNV, glMakeImageHandleNonResidentNV, - glUniformHandleui64NV, glUniformHandleui64vNV, glProgramUniformHandleui64NV, glProgramUniformHandleui64vNV, glIsTextureHandleResidentNV, glIsImageHandleResidentNV, glBlendParameteriNV, glBlendBarrierNV, glViewportPositionWScaleNV, glCreateStatesNV, glDeleteStatesNV, glIsStateNV, glStateCaptureNV, glGetCommandHeaderNV, glGetStageIndexNV, glDrawCommandsNV, - glDrawCommandsAddressNV, glDrawCommandsStatesNV, glDrawCommandsStatesAddressNV, glCreateCommandListsNV, glDeleteCommandListsNV, glIsCommandListNV, glListDrawCommandsStatesClientNV, glCommandListSegmentsNV, glCompileCommandListNV, glCallCommandListNV, glBeginConditionalRenderNV, glEndConditionalRenderNV, glSubpixelPrecisionBiasNV, glConservativeRasterParameterfNV, glConservativeRasterParameteriNV, glCopyImageSubDataNV, - glDepthRangedNV, glClearDepthdNV, glDepthBoundsdNV, glDrawTextureNV, glDrawVkImageNV, glGetVkProcAddrNV, glWaitVkSemaphoreNV, glSignalVkSemaphoreNV, glSignalVkFenceNV, glMapControlPointsNV, glMapParameterivNV, glMapParameterfvNV, glGetMapControlPointsNV, glGetMapParameterivNV, glGetMapParameterfvNV, glGetMapAttribParameterivNV, - glGetMapAttribParameterfvNV, glEvalMapsNV, glGetMultisamplefvNV, glSampleMaskIndexedNV, glTexRenderbufferNV, glDeleteFencesNV, glGenFencesNV, glIsFenceNV, glTestFenceNV, glGetFenceivNV, glFinishFenceNV, glSetFenceNV, glFragmentCoverageColorNV, glProgramNamedParameter4fNV, glProgramNamedParameter4fvNV, glProgramNamedParameter4dNV, - glProgramNamedParameter4dvNV, glGetProgramNamedParameterfvNV, glGetProgramNamedParameterdvNV, glCoverageModulationTableNV, glGetCoverageModulationTableNV, glCoverageModulationNV, glRenderbufferStorageMultisampleCoverageNV, glProgramVertexLimitNV, glFramebufferTextureEXT, glFramebufferTextureFaceEXT, glRenderGpuMaskNV, glMulticastBufferSubDataNV, glMulticastCopyBufferSubDataNV, glMulticastCopyImageSubDataNV, glMulticastBlitFramebufferNV, glMulticastFramebufferSampleLocationsfvNV, - glMulticastBarrierNV, glMulticastWaitSyncNV, glMulticastGetQueryObjectivNV, glMulticastGetQueryObjectuivNV, glMulticastGetQueryObjecti64vNV, glMulticastGetQueryObjectui64vNV, glProgramLocalParameterI4iNV, glProgramLocalParameterI4ivNV, glProgramLocalParametersI4ivNV, glProgramLocalParameterI4uiNV, glProgramLocalParameterI4uivNV, glProgramLocalParametersI4uivNV, glProgramEnvParameterI4iNV, glProgramEnvParameterI4ivNV, glProgramEnvParametersI4ivNV, glProgramEnvParameterI4uiNV, - glProgramEnvParameterI4uivNV, glProgramEnvParametersI4uivNV, glGetProgramLocalParameterIivNV, glGetProgramLocalParameterIuivNV, glGetProgramEnvParameterIivNV, glGetProgramEnvParameterIuivNV, glProgramSubroutineParametersuivNV, glGetProgramSubroutineParameteruivNV, glVertex2hNV, glVertex2hvNV, glVertex3hNV, glVertex3hvNV, glVertex4hNV, glVertex4hvNV, glNormal3hNV, glNormal3hvNV, - glColor3hNV, glColor3hvNV, glColor4hNV, glColor4hvNV, glTexCoord1hNV, glTexCoord1hvNV, glTexCoord2hNV, glTexCoord2hvNV, glTexCoord3hNV, glTexCoord3hvNV, glTexCoord4hNV, glTexCoord4hvNV, glMultiTexCoord1hNV, glMultiTexCoord1hvNV, glMultiTexCoord2hNV, glMultiTexCoord2hvNV, - glMultiTexCoord3hNV, glMultiTexCoord3hvNV, glMultiTexCoord4hNV, glMultiTexCoord4hvNV, glVertexAttrib1hNV, glVertexAttrib1hvNV, glVertexAttrib2hNV, glVertexAttrib2hvNV, glVertexAttrib3hNV, glVertexAttrib3hvNV, glVertexAttrib4hNV, glVertexAttrib4hvNV, glVertexAttribs1hvNV, glVertexAttribs2hvNV, glVertexAttribs3hvNV, glVertexAttribs4hvNV, - glFogCoordhNV, glFogCoordhvNV, glSecondaryColor3hNV, glSecondaryColor3hvNV, glVertexWeighthNV, glVertexWeighthvNV, glGetInternalformatSampleivNV, glGetMemoryObjectDetachedResourcesuivNV, glResetMemoryObjectParameterNV, glTexAttachMemoryNV, glBufferAttachMemoryNV, glTextureAttachMemoryNV, glNamedBufferAttachMemoryNV, glBufferPageCommitmentMemNV, glTexPageCommitmentMemNV, glNamedBufferPageCommitmentMemNV, - glTexturePageCommitmentMemNV, glDrawMeshTasksNV, glDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectCountNV, glGenOcclusionQueriesNV, glDeleteOcclusionQueriesNV, glIsOcclusionQueryNV, glBeginOcclusionQueryNV, glEndOcclusionQueryNV, glGetOcclusionQueryivNV, glGetOcclusionQueryuivNV, glProgramBufferParametersfvNV, glProgramBufferParametersIivNV, glProgramBufferParametersIuivNV, glGenPathsNV, - glDeletePathsNV, glIsPathNV, glPathCommandsNV, glPathCoordsNV, glPathSubCommandsNV, glPathSubCoordsNV, glPathStringNV, glPathGlyphsNV, glPathGlyphRangeNV, glWeightPathsNV, glCopyPathNV, glInterpolatePathsNV, glTransformPathNV, glPathParameterivNV, glPathParameteriNV, glPathParameterfvNV, - glPathParameterfNV, glPathDashArrayNV, glPathStencilFuncNV, glPathStencilDepthOffsetNV, glStencilFillPathNV, glStencilStrokePathNV, glStencilFillPathInstancedNV, glStencilStrokePathInstancedNV, glPathCoverDepthFuncNV, glCoverFillPathNV, glCoverStrokePathNV, glCoverFillPathInstancedNV, glCoverStrokePathInstancedNV, glGetPathParameterivNV, glGetPathParameterfvNV, glGetPathCommandsNV, - glGetPathCoordsNV, glGetPathDashArrayNV, glGetPathMetricsNV, glGetPathMetricRangeNV, glGetPathSpacingNV, glIsPointInFillPathNV, glIsPointInStrokePathNV, glGetPathLengthNV, glPointAlongPathNV, glMatrixLoad3x2fNV, glMatrixLoad3x3fNV, glMatrixLoadTranspose3x3fNV, glMatrixMult3x2fNV, glMatrixMult3x3fNV, glMatrixMultTranspose3x3fNV, glStencilThenCoverFillPathNV, - glStencilThenCoverStrokePathNV, glStencilThenCoverFillPathInstancedNV, glStencilThenCoverStrokePathInstancedNV, glPathGlyphIndexRangeNV, glPathGlyphIndexArrayNV, glPathMemoryGlyphIndexArrayNV, glProgramPathFragmentInputGenNV, glGetProgramResourcefvNV, glPathColorGenNV, glPathTexGenNV, glPathFogGenNV, glGetPathColorGenivNV, glGetPathColorGenfvNV, glGetPathTexGenivNV, glGetPathTexGenfvNV, glPixelDataRangeNV, - glFlushPixelDataRangeNV, glPointParameteriNV, glPointParameterivNV, glPresentFrameKeyedNV, glPresentFrameDualFillNV, glGetVideoivNV, glGetVideouivNV, glGetVideoi64vNV, glGetVideoui64vNV, glPrimitiveRestartNV, glPrimitiveRestartIndexNV, glQueryResourceNV, glGenQueryResourceTagNV, glDeleteQueryResourceTagNV, glQueryResourceTagNV, glCombinerParameterfvNV, - glCombinerParameterfNV, glCombinerParameterivNV, glCombinerParameteriNV, glCombinerInputNV, glCombinerOutputNV, glFinalCombinerInputNV, glGetCombinerInputParameterfvNV, glGetCombinerInputParameterivNV, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterivNV, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterivNV, glCombinerStageParameterfvNV, glGetCombinerStageParameterfvNV, glFramebufferSampleLocationsfvNV, glNamedFramebufferSampleLocationsfvNV, - glResolveDepthValuesNV, glScissorExclusiveNV, glScissorExclusiveArrayvNV, glMakeBufferResidentNV, glMakeBufferNonResidentNV, glIsBufferResidentNV, glMakeNamedBufferResidentNV, glMakeNamedBufferNonResidentNV, glIsNamedBufferResidentNV, glGetBufferParameterui64vNV, glGetNamedBufferParameterui64vNV, glGetIntegerui64vNV, glUniformui64NV, glUniformui64vNV, glProgramUniformui64NV, glProgramUniformui64vNV, - glBindShadingRateImageNV, glGetShadingRateImagePaletteNV, glGetShadingRateSampleLocationivNV, glShadingRateImageBarrierNV, glShadingRateImagePaletteNV, glShadingRateSampleOrderNV, glShadingRateSampleOrderCustomNV, glTextureBarrierNV, glTexImage2DMultisampleCoverageNV, glTexImage3DMultisampleCoverageNV, glTextureImage2DMultisampleNV, glTextureImage3DMultisampleNV, glTextureImage2DMultisampleCoverageNV, glTextureImage3DMultisampleCoverageNV, glCreateSemaphoresNV, glSemaphoreParameterivNV, - glGetSemaphoreParameterivNV, glBeginTransformFeedbackNV, glEndTransformFeedbackNV, glTransformFeedbackAttribsNV, glBindBufferRangeNV, glBindBufferOffsetNV, glBindBufferBaseNV, glTransformFeedbackVaryingsNV, glActiveVaryingNV, glGetVaryingLocationNV, glGetActiveVaryingNV, glGetTransformFeedbackVaryingNV, glTransformFeedbackStreamAttribsNV, glBindTransformFeedbackNV, glDeleteTransformFeedbacksNV, glGenTransformFeedbacksNV, - glIsTransformFeedbackNV, glPauseTransformFeedbackNV, glResumeTransformFeedbackNV, glDrawTransformFeedbackNV, glVDPAUInitNV, glVDPAUFiniNV, glVDPAURegisterVideoSurfaceNV, glVDPAURegisterOutputSurfaceNV, glVDPAUIsSurfaceNV, glVDPAUUnregisterSurfaceNV, glVDPAUGetSurfaceivNV, glVDPAUSurfaceAccessNV, glVDPAUMapSurfacesNV, glVDPAUUnmapSurfacesNV, glVDPAURegisterVideoSurfaceWithPictureStructureNV, glFlushVertexArrayRangeNV, - glVertexArrayRangeNV, glVertexAttribL1i64NV, glVertexAttribL2i64NV, glVertexAttribL3i64NV, glVertexAttribL4i64NV, glVertexAttribL1i64vNV, glVertexAttribL2i64vNV, glVertexAttribL3i64vNV, glVertexAttribL4i64vNV, glVertexAttribL1ui64NV, glVertexAttribL2ui64NV, glVertexAttribL3ui64NV, glVertexAttribL4ui64NV, glVertexAttribL1ui64vNV, glVertexAttribL2ui64vNV, glVertexAttribL3ui64vNV, - glVertexAttribL4ui64vNV, glGetVertexAttribLi64vNV, glGetVertexAttribLui64vNV, glVertexAttribLFormatNV, glBufferAddressRangeNV, glVertexFormatNV, glNormalFormatNV, glColorFormatNV, glIndexFormatNV, glTexCoordFormatNV, glEdgeFlagFormatNV, glSecondaryColorFormatNV, glFogCoordFormatNV, glVertexAttribFormatNV, glVertexAttribIFormatNV, glGetIntegerui64i_vNV, - glAreProgramsResidentNV, glBindProgramNV, glDeleteProgramsNV, glExecuteProgramNV, glGenProgramsNV, glGetProgramParameterdvNV, glGetProgramParameterfvNV, glGetProgramivNV, glGetProgramStringNV, glGetTrackMatrixivNV, glGetVertexAttribdvNV, glGetVertexAttribfvNV, glGetVertexAttribivNV, glGetVertexAttribPointervNV, glIsProgramNV, glLoadProgramNV, - glProgramParameter4dNV, glProgramParameter4dvNV, glProgramParameter4fNV, glProgramParameter4fvNV, glProgramParameters4dvNV, glProgramParameters4fvNV, glRequestResidentProgramsNV, glTrackMatrixNV, glVertexAttribPointerNV, glVertexAttrib1dNV, glVertexAttrib1dvNV, glVertexAttrib1fNV, glVertexAttrib1fvNV, glVertexAttrib1sNV, glVertexAttrib1svNV, glVertexAttrib2dNV, - glVertexAttrib2dvNV, glVertexAttrib2fNV, glVertexAttrib2fvNV, glVertexAttrib2sNV, glVertexAttrib2svNV, glVertexAttrib3dNV, glVertexAttrib3dvNV, glVertexAttrib3fNV, glVertexAttrib3fvNV, glVertexAttrib3sNV, glVertexAttrib3svNV, glVertexAttrib4dNV, glVertexAttrib4dvNV, glVertexAttrib4fNV, glVertexAttrib4fvNV, glVertexAttrib4sNV, - glVertexAttrib4svNV, glVertexAttrib4ubNV, glVertexAttrib4ubvNV, glVertexAttribs1dvNV, glVertexAttribs1fvNV, glVertexAttribs1svNV, glVertexAttribs2dvNV, glVertexAttribs2fvNV, glVertexAttribs2svNV, glVertexAttribs3dvNV, glVertexAttribs3fvNV, glVertexAttribs3svNV, glVertexAttribs4dvNV, glVertexAttribs4fvNV, glVertexAttribs4svNV, glVertexAttribs4ubvNV, - glBeginVideoCaptureNV, glBindVideoCaptureStreamBufferNV, glBindVideoCaptureStreamTextureNV, glEndVideoCaptureNV, glGetVideoCaptureivNV, glGetVideoCaptureStreamivNV, glGetVideoCaptureStreamfvNV, glGetVideoCaptureStreamdvNV, glVideoCaptureNV, glVideoCaptureStreamParameterivNV, glVideoCaptureStreamParameterfvNV, glVideoCaptureStreamParameterdvNV, glViewportSwizzleNV, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, - glGetDetailTexFuncSGIS, glFogFuncSGIS, glGetFogFuncSGIS, glSampleMaskSGIS, glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, - glTexSubImage4DSGIS, glTextureColorMaskSGIS, glGetTexFilterFuncSGIS, glTexFilterFuncSGIS, glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, glFlushRasterSGIX, glFragmentColorMaterialSGIX, glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, - glFragmentLightModelfSGIX, glFragmentLightModelfvSGIX, glFragmentLightModeliSGIX, glFragmentLightModelivSGIX, glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, - glInstrumentsBufferSGIX, glPollInstrumentsSGIX, glReadInstrumentsSGIX, glStartInstrumentsSGIX, glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, glListParameterivSGIX, glPixelTexGenSGIX, glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, - glReferencePlaneSGIX, glSpriteParameterfSGIX, glSpriteParameterfvSGIX, glSpriteParameteriSGIX, glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, glGetColorTableSGI, glGetColorTableParameterfvSGI, glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, - glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, - glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, - glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, - glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; + glFramebufferTexture3DEXT, glFramebufferRenderbufferEXT, glGetFramebufferAttachmentParameterivEXT, glGenerateMipmapEXT, glProgramParameteriEXT, glProgramEnvParameters4fvEXT, glProgramLocalParameters4fvEXT, glGetUniformuivEXT, glBindFragDataLocationEXT, glGetFragDataLocationEXT, glUniform1uiEXT, glUniform2uiEXT, glUniform3uiEXT, glUniform4uiEXT, glUniform1uivEXT, glUniform2uivEXT, + glUniform3uivEXT, glUniform4uivEXT, glVertexAttribI1iEXT, glVertexAttribI2iEXT, glVertexAttribI3iEXT, glVertexAttribI4iEXT, glVertexAttribI1uiEXT, glVertexAttribI2uiEXT, glVertexAttribI3uiEXT, glVertexAttribI4uiEXT, glVertexAttribI1ivEXT, glVertexAttribI2ivEXT, glVertexAttribI3ivEXT, glVertexAttribI4ivEXT, glVertexAttribI1uivEXT, glVertexAttribI2uivEXT, + glVertexAttribI3uivEXT, glVertexAttribI4uivEXT, glVertexAttribI4bvEXT, glVertexAttribI4svEXT, glVertexAttribI4ubvEXT, glVertexAttribI4usvEXT, glVertexAttribIPointerEXT, glGetVertexAttribIivEXT, glGetVertexAttribIuivEXT, glGetHistogramEXT, glGetHistogramParameterfvEXT, glGetHistogramParameterivEXT, glGetMinmaxEXT, glGetMinmaxParameterfvEXT, glGetMinmaxParameterivEXT, glHistogramEXT, + glMinmaxEXT, glResetHistogramEXT, glResetMinmaxEXT, glIndexFuncEXT, glIndexMaterialEXT, glApplyTextureEXT, glTextureLightEXT, glTextureMaterialEXT, glGetUnsignedBytevEXT, glGetUnsignedBytei_vEXT, glDeleteMemoryObjectsEXT, glIsMemoryObjectEXT, glCreateMemoryObjectsEXT, glMemoryObjectParameterivEXT, glGetMemoryObjectParameterivEXT, glTexStorageMem2DEXT, + glTexStorageMem2DMultisampleEXT, glTexStorageMem3DEXT, glTexStorageMem3DMultisampleEXT, glBufferStorageMemEXT, glTextureStorageMem2DEXT, glTextureStorageMem2DMultisampleEXT, glTextureStorageMem3DEXT, glTextureStorageMem3DMultisampleEXT, glNamedBufferStorageMemEXT, glTexStorageMem1DEXT, glTextureStorageMem1DEXT, glImportMemoryFdEXT, glImportMemoryWin32HandleEXT, glImportMemoryWin32NameEXT, glMultiDrawArraysEXT, glMultiDrawElementsEXT, + glSampleMaskEXT, glSamplePatternEXT, glColorTableEXT, glGetColorTableEXT, glGetColorTableParameterivEXT, glGetColorTableParameterfvEXT, glPixelTransformParameteriEXT, glPixelTransformParameterfEXT, glPixelTransformParameterivEXT, glPixelTransformParameterfvEXT, glGetPixelTransformParameterivEXT, glGetPixelTransformParameterfvEXT, glPointParameterfEXT, glPointParameterfvEXT, glPolygonOffsetEXT, glPolygonOffsetClampEXT, + glProvokingVertexEXT, glRasterSamplesEXT, glFrameTerminatorGREMEDY, glStringMarkerGREMEDY, glImageTransformParameteriHP, glImageTransformParameterfHP, glImageTransformParameterivHP, glImageTransformParameterfvHP, glGetImageTransformParameterivHP, glGetImageTransformParameterfvHP, glMultiModeDrawArraysIBM, glMultiModeDrawElementsIBM, glFlushStaticDataIBM, glColorPointerListIBM, glSecondaryColorPointerListIBM, glEdgeFlagPointerListIBM, + glFogCoordPointerListIBM, glIndexPointerListIBM, glNormalPointerListIBM, glTexCoordPointerListIBM, glVertexPointerListIBM, glBlendFuncSeparateINGR, glApplyFramebufferAttachmentCMAAINTEL, glSyncTextureINTEL, glUnmapTexture2DINTEL, glMapTexture2DINTEL, glVertexPointervINTEL, glNormalPointervINTEL, glColorPointervINTEL, glTexCoordPointervINTEL, glBeginPerfQueryINTEL, glCreatePerfQueryINTEL, + glDeletePerfQueryINTEL, glEndPerfQueryINTEL, glGetFirstPerfQueryIdINTEL, glGetNextPerfQueryIdINTEL, glGetPerfCounterInfoINTEL, glGetPerfQueryDataINTEL, glGetPerfQueryIdByNameINTEL, glGetPerfQueryInfoINTEL, glFramebufferParameteriMESA, glGetFramebufferParameterivMESA, glResizeBuffersMESA, glWindowPos2dMESA, glWindowPos2dvMESA, glWindowPos2fMESA, glWindowPos2fvMESA, glWindowPos2iMESA, + glWindowPos2ivMESA, glWindowPos2sMESA, glWindowPos2svMESA, glWindowPos3dMESA, glWindowPos3dvMESA, glWindowPos3fMESA, glWindowPos3fvMESA, glWindowPos3iMESA, glWindowPos3ivMESA, glWindowPos3sMESA, glWindowPos3svMESA, glWindowPos4dMESA, glWindowPos4dvMESA, glWindowPos4fMESA, glWindowPos4fvMESA, glWindowPos4iMESA, + glWindowPos4ivMESA, glWindowPos4sMESA, glWindowPos4svMESA, glBeginConditionalRenderNVX, glEndConditionalRenderNVX, glUploadGpuMaskNVX, glMulticastViewportArrayvNVX, glMulticastViewportPositionWScaleNVX, glMulticastScissorArrayvNVX, glAsyncCopyBufferSubDataNVX, glAsyncCopyImageSubDataNVX, glLGPUNamedBufferSubDataNVX, glLGPUCopyImageSubDataNVX, glLGPUInterlockNVX, glCreateProgressFenceNVX, glSignalSemaphoreui64NVX, + glWaitSemaphoreui64NVX, glClientWaitSemaphoreui64NVX, glAlphaToCoverageDitherControlNV, glMultiDrawArraysIndirectBindlessNV, glMultiDrawElementsIndirectBindlessNV, glMultiDrawArraysIndirectBindlessCountNV, glMultiDrawElementsIndirectBindlessCountNV, glGetTextureHandleNV, glGetTextureSamplerHandleNV, glMakeTextureHandleResidentNV, glMakeTextureHandleNonResidentNV, glGetImageHandleNV, glMakeImageHandleResidentNV, glMakeImageHandleNonResidentNV, glUniformHandleui64NV, glUniformHandleui64vNV, + glProgramUniformHandleui64NV, glProgramUniformHandleui64vNV, glIsTextureHandleResidentNV, glIsImageHandleResidentNV, glBlendParameteriNV, glBlendBarrierNV, glViewportPositionWScaleNV, glCreateStatesNV, glDeleteStatesNV, glIsStateNV, glStateCaptureNV, glGetCommandHeaderNV, glGetStageIndexNV, glDrawCommandsNV, glDrawCommandsAddressNV, glDrawCommandsStatesNV, + glDrawCommandsStatesAddressNV, glCreateCommandListsNV, glDeleteCommandListsNV, glIsCommandListNV, glListDrawCommandsStatesClientNV, glCommandListSegmentsNV, glCompileCommandListNV, glCallCommandListNV, glBeginConditionalRenderNV, glEndConditionalRenderNV, glSubpixelPrecisionBiasNV, glConservativeRasterParameterfNV, glConservativeRasterParameteriNV, glCopyImageSubDataNV, glDepthRangedNV, glClearDepthdNV, + glDepthBoundsdNV, glDrawTextureNV, glDrawVkImageNV, glGetVkProcAddrNV, glWaitVkSemaphoreNV, glSignalVkSemaphoreNV, glSignalVkFenceNV, glMapControlPointsNV, glMapParameterivNV, glMapParameterfvNV, glGetMapControlPointsNV, glGetMapParameterivNV, glGetMapParameterfvNV, glGetMapAttribParameterivNV, glGetMapAttribParameterfvNV, glEvalMapsNV, + glGetMultisamplefvNV, glSampleMaskIndexedNV, glTexRenderbufferNV, glDeleteFencesNV, glGenFencesNV, glIsFenceNV, glTestFenceNV, glGetFenceivNV, glFinishFenceNV, glSetFenceNV, glFragmentCoverageColorNV, glProgramNamedParameter4fNV, glProgramNamedParameter4fvNV, glProgramNamedParameter4dNV, glProgramNamedParameter4dvNV, glGetProgramNamedParameterfvNV, + glGetProgramNamedParameterdvNV, glCoverageModulationTableNV, glGetCoverageModulationTableNV, glCoverageModulationNV, glRenderbufferStorageMultisampleCoverageNV, glProgramVertexLimitNV, glFramebufferTextureEXT, glFramebufferTextureFaceEXT, glRenderGpuMaskNV, glMulticastBufferSubDataNV, glMulticastCopyBufferSubDataNV, glMulticastCopyImageSubDataNV, glMulticastBlitFramebufferNV, glMulticastFramebufferSampleLocationsfvNV, glMulticastBarrierNV, glMulticastWaitSyncNV, + glMulticastGetQueryObjectivNV, glMulticastGetQueryObjectuivNV, glMulticastGetQueryObjecti64vNV, glMulticastGetQueryObjectui64vNV, glProgramLocalParameterI4iNV, glProgramLocalParameterI4ivNV, glProgramLocalParametersI4ivNV, glProgramLocalParameterI4uiNV, glProgramLocalParameterI4uivNV, glProgramLocalParametersI4uivNV, glProgramEnvParameterI4iNV, glProgramEnvParameterI4ivNV, glProgramEnvParametersI4ivNV, glProgramEnvParameterI4uiNV, glProgramEnvParameterI4uivNV, glProgramEnvParametersI4uivNV, + glGetProgramLocalParameterIivNV, glGetProgramLocalParameterIuivNV, glGetProgramEnvParameterIivNV, glGetProgramEnvParameterIuivNV, glProgramSubroutineParametersuivNV, glGetProgramSubroutineParameteruivNV, glVertex2hNV, glVertex2hvNV, glVertex3hNV, glVertex3hvNV, glVertex4hNV, glVertex4hvNV, glNormal3hNV, glNormal3hvNV, glColor3hNV, glColor3hvNV, + glColor4hNV, glColor4hvNV, glTexCoord1hNV, glTexCoord1hvNV, glTexCoord2hNV, glTexCoord2hvNV, glTexCoord3hNV, glTexCoord3hvNV, glTexCoord4hNV, glTexCoord4hvNV, glMultiTexCoord1hNV, glMultiTexCoord1hvNV, glMultiTexCoord2hNV, glMultiTexCoord2hvNV, glMultiTexCoord3hNV, glMultiTexCoord3hvNV, + glMultiTexCoord4hNV, glMultiTexCoord4hvNV, glVertexAttrib1hNV, glVertexAttrib1hvNV, glVertexAttrib2hNV, glVertexAttrib2hvNV, glVertexAttrib3hNV, glVertexAttrib3hvNV, glVertexAttrib4hNV, glVertexAttrib4hvNV, glVertexAttribs1hvNV, glVertexAttribs2hvNV, glVertexAttribs3hvNV, glVertexAttribs4hvNV, glFogCoordhNV, glFogCoordhvNV, + glSecondaryColor3hNV, glSecondaryColor3hvNV, glVertexWeighthNV, glVertexWeighthvNV, glGetInternalformatSampleivNV, glGetMemoryObjectDetachedResourcesuivNV, glResetMemoryObjectParameterNV, glTexAttachMemoryNV, glBufferAttachMemoryNV, glTextureAttachMemoryNV, glNamedBufferAttachMemoryNV, glBufferPageCommitmentMemNV, glTexPageCommitmentMemNV, glNamedBufferPageCommitmentMemNV, glTexturePageCommitmentMemNV, glDrawMeshTasksNV, + glDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectCountNV, glGenOcclusionQueriesNV, glDeleteOcclusionQueriesNV, glIsOcclusionQueryNV, glBeginOcclusionQueryNV, glEndOcclusionQueryNV, glGetOcclusionQueryivNV, glGetOcclusionQueryuivNV, glProgramBufferParametersfvNV, glProgramBufferParametersIivNV, glProgramBufferParametersIuivNV, glGenPathsNV, glDeletePathsNV, glIsPathNV, + glPathCommandsNV, glPathCoordsNV, glPathSubCommandsNV, glPathSubCoordsNV, glPathStringNV, glPathGlyphsNV, glPathGlyphRangeNV, glWeightPathsNV, glCopyPathNV, glInterpolatePathsNV, glTransformPathNV, glPathParameterivNV, glPathParameteriNV, glPathParameterfvNV, glPathParameterfNV, glPathDashArrayNV, + glPathStencilFuncNV, glPathStencilDepthOffsetNV, glStencilFillPathNV, glStencilStrokePathNV, glStencilFillPathInstancedNV, glStencilStrokePathInstancedNV, glPathCoverDepthFuncNV, glCoverFillPathNV, glCoverStrokePathNV, glCoverFillPathInstancedNV, glCoverStrokePathInstancedNV, glGetPathParameterivNV, glGetPathParameterfvNV, glGetPathCommandsNV, glGetPathCoordsNV, glGetPathDashArrayNV, + glGetPathMetricsNV, glGetPathMetricRangeNV, glGetPathSpacingNV, glIsPointInFillPathNV, glIsPointInStrokePathNV, glGetPathLengthNV, glPointAlongPathNV, glMatrixLoad3x2fNV, glMatrixLoad3x3fNV, glMatrixLoadTranspose3x3fNV, glMatrixMult3x2fNV, glMatrixMult3x3fNV, glMatrixMultTranspose3x3fNV, glStencilThenCoverFillPathNV, glStencilThenCoverStrokePathNV, glStencilThenCoverFillPathInstancedNV, + glStencilThenCoverStrokePathInstancedNV, glPathGlyphIndexRangeNV, glPathGlyphIndexArrayNV, glPathMemoryGlyphIndexArrayNV, glProgramPathFragmentInputGenNV, glGetProgramResourcefvNV, glPathColorGenNV, glPathTexGenNV, glPathFogGenNV, glGetPathColorGenivNV, glGetPathColorGenfvNV, glGetPathTexGenivNV, glGetPathTexGenfvNV, glPixelDataRangeNV, glFlushPixelDataRangeNV, glPointParameteriNV, + glPointParameterivNV, glPresentFrameKeyedNV, glPresentFrameDualFillNV, glGetVideoivNV, glGetVideouivNV, glGetVideoi64vNV, glGetVideoui64vNV, glPrimitiveRestartNV, glPrimitiveRestartIndexNV, glQueryResourceNV, glGenQueryResourceTagNV, glDeleteQueryResourceTagNV, glQueryResourceTagNV, glCombinerParameterfvNV, glCombinerParameterfNV, glCombinerParameterivNV, + glCombinerParameteriNV, glCombinerInputNV, glCombinerOutputNV, glFinalCombinerInputNV, glGetCombinerInputParameterfvNV, glGetCombinerInputParameterivNV, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterivNV, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterivNV, glCombinerStageParameterfvNV, glGetCombinerStageParameterfvNV, glFramebufferSampleLocationsfvNV, glNamedFramebufferSampleLocationsfvNV, glResolveDepthValuesNV, glScissorExclusiveNV, + glScissorExclusiveArrayvNV, glMakeBufferResidentNV, glMakeBufferNonResidentNV, glIsBufferResidentNV, glMakeNamedBufferResidentNV, glMakeNamedBufferNonResidentNV, glIsNamedBufferResidentNV, glGetBufferParameterui64vNV, glGetNamedBufferParameterui64vNV, glGetIntegerui64vNV, glUniformui64NV, glUniformui64vNV, glProgramUniformui64NV, glProgramUniformui64vNV, glBindShadingRateImageNV, glGetShadingRateImagePaletteNV, + glGetShadingRateSampleLocationivNV, glShadingRateImageBarrierNV, glShadingRateImagePaletteNV, glShadingRateSampleOrderNV, glShadingRateSampleOrderCustomNV, glTextureBarrierNV, glTexImage2DMultisampleCoverageNV, glTexImage3DMultisampleCoverageNV, glTextureImage2DMultisampleNV, glTextureImage3DMultisampleNV, glTextureImage2DMultisampleCoverageNV, glTextureImage3DMultisampleCoverageNV, glCreateSemaphoresNV, glSemaphoreParameterivNV, glGetSemaphoreParameterivNV, glBeginTransformFeedbackNV, + glEndTransformFeedbackNV, glTransformFeedbackAttribsNV, glBindBufferRangeNV, glBindBufferOffsetNV, glBindBufferBaseNV, glTransformFeedbackVaryingsNV, glActiveVaryingNV, glGetVaryingLocationNV, glGetActiveVaryingNV, glGetTransformFeedbackVaryingNV, glTransformFeedbackStreamAttribsNV, glBindTransformFeedbackNV, glDeleteTransformFeedbacksNV, glGenTransformFeedbacksNV, glIsTransformFeedbackNV, glPauseTransformFeedbackNV, + glResumeTransformFeedbackNV, glDrawTransformFeedbackNV, glVDPAUInitNV, glVDPAUFiniNV, glVDPAURegisterVideoSurfaceNV, glVDPAURegisterOutputSurfaceNV, glVDPAUIsSurfaceNV, glVDPAUUnregisterSurfaceNV, glVDPAUGetSurfaceivNV, glVDPAUSurfaceAccessNV, glVDPAUMapSurfacesNV, glVDPAUUnmapSurfacesNV, glVDPAURegisterVideoSurfaceWithPictureStructureNV, glFlushVertexArrayRangeNV, glVertexArrayRangeNV, glVertexAttribL1i64NV, + glVertexAttribL2i64NV, glVertexAttribL3i64NV, glVertexAttribL4i64NV, glVertexAttribL1i64vNV, glVertexAttribL2i64vNV, glVertexAttribL3i64vNV, glVertexAttribL4i64vNV, glVertexAttribL1ui64NV, glVertexAttribL2ui64NV, glVertexAttribL3ui64NV, glVertexAttribL4ui64NV, glVertexAttribL1ui64vNV, glVertexAttribL2ui64vNV, glVertexAttribL3ui64vNV, glVertexAttribL4ui64vNV, glGetVertexAttribLi64vNV, + glGetVertexAttribLui64vNV, glVertexAttribLFormatNV, glBufferAddressRangeNV, glVertexFormatNV, glNormalFormatNV, glColorFormatNV, glIndexFormatNV, glTexCoordFormatNV, glEdgeFlagFormatNV, glSecondaryColorFormatNV, glFogCoordFormatNV, glVertexAttribFormatNV, glVertexAttribIFormatNV, glGetIntegerui64i_vNV, glAreProgramsResidentNV, glBindProgramNV, + glDeleteProgramsNV, glExecuteProgramNV, glGenProgramsNV, glGetProgramParameterdvNV, glGetProgramParameterfvNV, glGetProgramivNV, glGetProgramStringNV, glGetTrackMatrixivNV, glGetVertexAttribdvNV, glGetVertexAttribfvNV, glGetVertexAttribivNV, glGetVertexAttribPointervNV, glIsProgramNV, glLoadProgramNV, glProgramParameter4dNV, glProgramParameter4dvNV, + glProgramParameter4fNV, glProgramParameter4fvNV, glProgramParameters4dvNV, glProgramParameters4fvNV, glRequestResidentProgramsNV, glTrackMatrixNV, glVertexAttribPointerNV, glVertexAttrib1dNV, glVertexAttrib1dvNV, glVertexAttrib1fNV, glVertexAttrib1fvNV, glVertexAttrib1sNV, glVertexAttrib1svNV, glVertexAttrib2dNV, glVertexAttrib2dvNV, glVertexAttrib2fNV, + glVertexAttrib2fvNV, glVertexAttrib2sNV, glVertexAttrib2svNV, glVertexAttrib3dNV, glVertexAttrib3dvNV, glVertexAttrib3fNV, glVertexAttrib3fvNV, glVertexAttrib3sNV, glVertexAttrib3svNV, glVertexAttrib4dNV, glVertexAttrib4dvNV, glVertexAttrib4fNV, glVertexAttrib4fvNV, glVertexAttrib4sNV, glVertexAttrib4svNV, glVertexAttrib4ubNV, + glVertexAttrib4ubvNV, glVertexAttribs1dvNV, glVertexAttribs1fvNV, glVertexAttribs1svNV, glVertexAttribs2dvNV, glVertexAttribs2fvNV, glVertexAttribs2svNV, glVertexAttribs3dvNV, glVertexAttribs3fvNV, glVertexAttribs3svNV, glVertexAttribs4dvNV, glVertexAttribs4fvNV, glVertexAttribs4svNV, glVertexAttribs4ubvNV, glBeginVideoCaptureNV, glBindVideoCaptureStreamBufferNV, + glBindVideoCaptureStreamTextureNV, glEndVideoCaptureNV, glGetVideoCaptureivNV, glGetVideoCaptureStreamivNV, glGetVideoCaptureStreamfvNV, glGetVideoCaptureStreamdvNV, glVideoCaptureNV, glVideoCaptureStreamParameterivNV, glVideoCaptureStreamParameterfvNV, glVideoCaptureStreamParameterdvNV, glViewportSwizzleNV, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, glFogFuncSGIS, + glGetFogFuncSGIS, glSampleMaskSGIS, glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, glTexSubImage4DSGIS, glTextureColorMaskSGIS, + glGetTexFilterFuncSGIS, glTexFilterFuncSGIS, glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, glFlushRasterSGIX, glFragmentColorMaterialSGIX, glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, glFragmentLightModelfSGIX, glFragmentLightModelfvSGIX, + glFragmentLightModeliSGIX, glFragmentLightModelivSGIX, glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, glInstrumentsBufferSGIX, glPollInstrumentsSGIX, + glReadInstrumentsSGIX, glStartInstrumentsSGIX, glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, glListParameterivSGIX, glPixelTexGenSGIX, glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, glReferencePlaneSGIX, glSpriteParameterfSGIX, + glSpriteParameterfvSGIX, glSpriteParameteriSGIX, glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, glGetColorTableSGI, glGetColorTableParameterfvSGI, glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, + glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, + glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, + glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, + glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; void load(GLLoadFunc load) { GLARBES32Compatibility.load(this, load); @@ -272,6 +278,25 @@ void load(GLLoadFunc load) { GLEXTFramebufferBlitLayers.load(this, load); GLEXTFramebufferMultisample.load(this, load); GLEXTFramebufferObject.load(this, load); + GLEXTGeometryShader4.load(this, load); + GLEXTGpuProgramParameters.load(this, load); + GLEXTGpuShader4.load(this, load); + GLEXTHistogram.load(this, load); + GLEXTIndexFunc.load(this, load); + GLEXTIndexMaterial.load(this, load); + GLEXTLightTexture.load(this, load); + GLEXTMemoryObject.load(this, load); + GLEXTMemoryObjectFd.load(this, load); + GLEXTMemoryObjectWin32.load(this, load); + GLEXTMultiDrawArrays.load(this, load); + GLEXTMultisample.load(this, load); + GLEXTPalettedTexture.load(this, load); + GLEXTPixelTransform.load(this, load); + GLEXTPointParameters.load(this, load); + GLEXTPolygonOffset.load(this, load); + GLEXTPolygonOffsetClamp.load(this, load); + GLEXTProvokingVertex.load(this, load); + GLEXTRasterMultisample.load(this, load); GLGREMEDYFrameTerminator.load(this, load); GLGREMEDYStringMarker.load(this, load); GLHPImageTransform.load(this, load); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTGeometryShader4.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTGeometryShader4.java new file mode 100644 index 00000000..18cf7b24 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTGeometryShader4.java @@ -0,0 +1,63 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_geometry_shader4} + */ +public final class GLEXTGeometryShader4 { + public static final int GL_GEOMETRY_SHADER_EXT = 0x8DD9; + public static final int GL_GEOMETRY_VERTICES_OUT_EXT = 0x8DDA; + public static final int GL_GEOMETRY_INPUT_TYPE_EXT = 0x8DDB; + public static final int GL_GEOMETRY_OUTPUT_TYPE_EXT = 0x8DDC; + public static final int GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT = 0x8C29; + public static final int GL_MAX_GEOMETRY_VARYING_COMPONENTS_EXT = 0x8DDD; + public static final int GL_MAX_VERTEX_VARYING_COMPONENTS_EXT = 0x8DDE; + public static final int GL_MAX_VARYING_COMPONENTS_EXT = 0x8B4B; + public static final int GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT = 0x8DDF; + public static final int GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT = 0x8DE0; + public static final int GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT = 0x8DE1; + public static final int GL_LINES_ADJACENCY_EXT = 0x000A; + public static final int GL_LINE_STRIP_ADJACENCY_EXT = 0x000B; + public static final int GL_TRIANGLES_ADJACENCY_EXT = 0x000C; + public static final int GL_TRIANGLE_STRIP_ADJACENCY_EXT = 0x000D; + public static final int GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT = 0x8DA8; + public static final int GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_EXT = 0x8DA9; + public static final int GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT = 0x8DA7; + public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT = 0x8CD4; + public static final int GL_PROGRAM_POINT_SIZE_EXT = 0x8642; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_geometry_shader4) return; + ext.glProgramParameteriEXT = load.invoke("glProgramParameteriEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glProgramParameteriEXT(int program, int pname, int value) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramParameteriEXT).invokeExact(program, pname, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTGpuProgramParameters.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTGpuProgramParameters.java new file mode 100644 index 00000000..0ddf4f41 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTGpuProgramParameters.java @@ -0,0 +1,51 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_gpu_program_parameters} + */ +public final class GLEXTGpuProgramParameters { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_gpu_program_parameters) return; + ext.glProgramEnvParameters4fvEXT = load.invoke("glProgramEnvParameters4fvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glProgramLocalParameters4fvEXT = load.invoke("glProgramLocalParameters4fvEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glProgramEnvParameters4fvEXT(int target, int index, int count, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramEnvParameters4fvEXT).invokeExact(target, index, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glProgramLocalParameters4fvEXT(int target, int index, int count, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glProgramLocalParameters4fvEXT).invokeExact(target, index, count, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTGpuShader4.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTGpuShader4.java new file mode 100644 index 00000000..11c322ec --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTGpuShader4.java @@ -0,0 +1,336 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_gpu_shader4} + */ +public final class GLEXTGpuShader4 { + public static final int GL_SAMPLER_1D_ARRAY_EXT = 0x8DC0; + public static final int GL_SAMPLER_2D_ARRAY_EXT = 0x8DC1; + public static final int GL_SAMPLER_BUFFER_EXT = 0x8DC2; + public static final int GL_SAMPLER_1D_ARRAY_SHADOW_EXT = 0x8DC3; + public static final int GL_SAMPLER_2D_ARRAY_SHADOW_EXT = 0x8DC4; + public static final int GL_SAMPLER_CUBE_SHADOW_EXT = 0x8DC5; + public static final int GL_UNSIGNED_INT_VEC2_EXT = 0x8DC6; + public static final int GL_UNSIGNED_INT_VEC3_EXT = 0x8DC7; + public static final int GL_UNSIGNED_INT_VEC4_EXT = 0x8DC8; + public static final int GL_INT_SAMPLER_1D_EXT = 0x8DC9; + public static final int GL_INT_SAMPLER_2D_EXT = 0x8DCA; + public static final int GL_INT_SAMPLER_3D_EXT = 0x8DCB; + public static final int GL_INT_SAMPLER_CUBE_EXT = 0x8DCC; + public static final int GL_INT_SAMPLER_2D_RECT_EXT = 0x8DCD; + public static final int GL_INT_SAMPLER_1D_ARRAY_EXT = 0x8DCE; + public static final int GL_INT_SAMPLER_2D_ARRAY_EXT = 0x8DCF; + public static final int GL_INT_SAMPLER_BUFFER_EXT = 0x8DD0; + public static final int GL_UNSIGNED_INT_SAMPLER_1D_EXT = 0x8DD1; + public static final int GL_UNSIGNED_INT_SAMPLER_2D_EXT = 0x8DD2; + public static final int GL_UNSIGNED_INT_SAMPLER_3D_EXT = 0x8DD3; + public static final int GL_UNSIGNED_INT_SAMPLER_CUBE_EXT = 0x8DD4; + public static final int GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT = 0x8DD5; + public static final int GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT = 0x8DD6; + public static final int GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT = 0x8DD7; + public static final int GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT = 0x8DD8; + public static final int GL_MIN_PROGRAM_TEXEL_OFFSET_EXT = 0x8904; + public static final int GL_MAX_PROGRAM_TEXEL_OFFSET_EXT = 0x8905; + public static final int GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT = 0x88FD; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_gpu_shader4) return; + ext.glGetUniformuivEXT = load.invoke("glGetUniformuivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glBindFragDataLocationEXT = load.invoke("glBindFragDataLocationEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetFragDataLocationEXT = load.invoke("glGetFragDataLocationEXT", of(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform1uiEXT = load.invoke("glUniform1uiEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glUniform2uiEXT = load.invoke("glUniform2uiEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glUniform3uiEXT = load.invoke("glUniform3uiEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glUniform4uiEXT = load.invoke("glUniform4uiEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glUniform1uivEXT = load.invoke("glUniform1uivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform2uivEXT = load.invoke("glUniform2uivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform3uivEXT = load.invoke("glUniform3uivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glUniform4uivEXT = load.invoke("glUniform4uivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexAttribI1iEXT = load.invoke("glVertexAttribI1iEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glVertexAttribI2iEXT = load.invoke("glVertexAttribI2iEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glVertexAttribI3iEXT = load.invoke("glVertexAttribI3iEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glVertexAttribI4iEXT = load.invoke("glVertexAttribI4iEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glVertexAttribI1uiEXT = load.invoke("glVertexAttribI1uiEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glVertexAttribI2uiEXT = load.invoke("glVertexAttribI2uiEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glVertexAttribI3uiEXT = load.invoke("glVertexAttribI3uiEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glVertexAttribI4uiEXT = load.invoke("glVertexAttribI4uiEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glVertexAttribI1ivEXT = load.invoke("glVertexAttribI1ivEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribI2ivEXT = load.invoke("glVertexAttribI2ivEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribI3ivEXT = load.invoke("glVertexAttribI3ivEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribI4ivEXT = load.invoke("glVertexAttribI4ivEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribI1uivEXT = load.invoke("glVertexAttribI1uivEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribI2uivEXT = load.invoke("glVertexAttribI2uivEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribI3uivEXT = load.invoke("glVertexAttribI3uivEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribI4uivEXT = load.invoke("glVertexAttribI4uivEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribI4bvEXT = load.invoke("glVertexAttribI4bvEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribI4svEXT = load.invoke("glVertexAttribI4svEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribI4ubvEXT = load.invoke("glVertexAttribI4ubvEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribI4usvEXT = load.invoke("glVertexAttribI4usvEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribIPointerEXT = load.invoke("glVertexAttribIPointerEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVertexAttribIivEXT = load.invoke("glGetVertexAttribIivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVertexAttribIuivEXT = load.invoke("glGetVertexAttribIuivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glGetUniformuivEXT(int program, int location, @NativeType("GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetUniformuivEXT).invokeExact(program, location, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBindFragDataLocationEXT(int program, int color, @NativeType("const GLchar *") MemorySegment name) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindFragDataLocationEXT).invokeExact(program, color, name); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glGetFragDataLocationEXT(int program, @NativeType("const GLchar *") MemorySegment name) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glGetFragDataLocationEXT).invokeExact(program, name); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform1uiEXT(int location, int v0) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform1uiEXT).invokeExact(location, v0); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform2uiEXT(int location, int v0, int v1) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform2uiEXT).invokeExact(location, v0, v1); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform3uiEXT(int location, int v0, int v1, int v2) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform3uiEXT).invokeExact(location, v0, v1, v2); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform4uiEXT(int location, int v0, int v1, int v2, int v3) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform4uiEXT).invokeExact(location, v0, v1, v2, v3); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform1uivEXT(int location, int count, @NativeType("const GLuint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform1uivEXT).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform2uivEXT(int location, int count, @NativeType("const GLuint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform2uivEXT).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform3uivEXT(int location, int count, @NativeType("const GLuint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform3uivEXT).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glUniform4uivEXT(int location, int count, @NativeType("const GLuint *") MemorySegment value) { + final var ext = getExtCapabilities(); + try { + check(ext.glUniform4uivEXT).invokeExact(location, count, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI1iEXT(int index, int x) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI1iEXT).invokeExact(index, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI2iEXT(int index, int x, int y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI2iEXT).invokeExact(index, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI3iEXT(int index, int x, int y, int z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI3iEXT).invokeExact(index, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI4iEXT(int index, int x, int y, int z, int w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI4iEXT).invokeExact(index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI1uiEXT(int index, int x) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI1uiEXT).invokeExact(index, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI2uiEXT(int index, int x, int y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI2uiEXT).invokeExact(index, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI3uiEXT(int index, int x, int y, int z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI3uiEXT).invokeExact(index, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI4uiEXT(int index, int x, int y, int z, int w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI4uiEXT).invokeExact(index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI1ivEXT(int index, @NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI1ivEXT).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI2ivEXT(int index, @NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI2ivEXT).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI3ivEXT(int index, @NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI3ivEXT).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI4ivEXT(int index, @NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI4ivEXT).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI1uivEXT(int index, @NativeType("const GLuint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI1uivEXT).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI2uivEXT(int index, @NativeType("const GLuint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI2uivEXT).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI3uivEXT(int index, @NativeType("const GLuint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI3uivEXT).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI4uivEXT(int index, @NativeType("const GLuint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI4uivEXT).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI4bvEXT(int index, @NativeType("const GLbyte *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI4bvEXT).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI4svEXT(int index, @NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI4svEXT).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI4ubvEXT(int index, @NativeType("const GLubyte *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI4ubvEXT).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribI4usvEXT(int index, @NativeType("const GLushort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribI4usvEXT).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribIPointerEXT(int index, int size, int type, int stride, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribIPointerEXT).invokeExact(index, size, type, stride, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVertexAttribIivEXT(int index, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexAttribIivEXT).invokeExact(index, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVertexAttribIuivEXT(int index, int pname, @NativeType("GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexAttribIuivEXT).invokeExact(index, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTHistogram.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTHistogram.java new file mode 100644 index 00000000..a3ae7104 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTHistogram.java @@ -0,0 +1,129 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_histogram} + */ +public final class GLEXTHistogram { + public static final int GL_HISTOGRAM_EXT = 0x8024; + public static final int GL_PROXY_HISTOGRAM_EXT = 0x8025; + public static final int GL_HISTOGRAM_WIDTH_EXT = 0x8026; + public static final int GL_HISTOGRAM_FORMAT_EXT = 0x8027; + public static final int GL_HISTOGRAM_RED_SIZE_EXT = 0x8028; + public static final int GL_HISTOGRAM_GREEN_SIZE_EXT = 0x8029; + public static final int GL_HISTOGRAM_BLUE_SIZE_EXT = 0x802A; + public static final int GL_HISTOGRAM_ALPHA_SIZE_EXT = 0x802B; + public static final int GL_HISTOGRAM_LUMINANCE_SIZE_EXT = 0x802C; + public static final int GL_HISTOGRAM_SINK_EXT = 0x802D; + public static final int GL_MINMAX_EXT = 0x802E; + public static final int GL_MINMAX_FORMAT_EXT = 0x802F; + public static final int GL_MINMAX_SINK_EXT = 0x8030; + public static final int GL_TABLE_TOO_LARGE_EXT = 0x8031; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_histogram) return; + ext.glGetHistogramEXT = load.invoke("glGetHistogramEXT", ofVoid(JAVA_INT, JAVA_BYTE, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetHistogramParameterfvEXT = load.invoke("glGetHistogramParameterfvEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetHistogramParameterivEXT = load.invoke("glGetHistogramParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMinmaxEXT = load.invoke("glGetMinmaxEXT", ofVoid(JAVA_INT, JAVA_BYTE, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMinmaxParameterfvEXT = load.invoke("glGetMinmaxParameterfvEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMinmaxParameterivEXT = load.invoke("glGetMinmaxParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glHistogramEXT = load.invoke("glHistogramEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE)); + ext.glMinmaxEXT = load.invoke("glMinmaxEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_BYTE)); + ext.glResetHistogramEXT = load.invoke("glResetHistogramEXT", ofVoid(JAVA_INT)); + ext.glResetMinmaxEXT = load.invoke("glResetMinmaxEXT", ofVoid(JAVA_INT)); + } + + public static void glGetHistogramEXT(int target, boolean reset, int format, int type, @NativeType("void *") MemorySegment values) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetHistogramEXT).invokeExact(target, reset, format, type, values); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetHistogramParameterfvEXT(int target, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetHistogramParameterfvEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetHistogramParameterivEXT(int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetHistogramParameterivEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMinmaxEXT(int target, boolean reset, int format, int type, @NativeType("void *") MemorySegment values) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMinmaxEXT).invokeExact(target, reset, format, type, values); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMinmaxParameterfvEXT(int target, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMinmaxParameterfvEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMinmaxParameterivEXT(int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMinmaxParameterivEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glHistogramEXT(int target, int width, int internalformat, boolean sink) { + final var ext = getExtCapabilities(); + try { + check(ext.glHistogramEXT).invokeExact(target, width, internalformat, sink); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMinmaxEXT(int target, int internalformat, boolean sink) { + final var ext = getExtCapabilities(); + try { + check(ext.glMinmaxEXT).invokeExact(target, internalformat, sink); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glResetHistogramEXT(int target) { + final var ext = getExtCapabilities(); + try { + check(ext.glResetHistogramEXT).invokeExact(target); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glResetMinmaxEXT(int target) { + final var ext = getExtCapabilities(); + try { + check(ext.glResetMinmaxEXT).invokeExact(target); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTIndexArrayFormats.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTIndexArrayFormats.java new file mode 100644 index 00000000..b2141943 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTIndexArrayFormats.java @@ -0,0 +1,39 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_index_array_formats} + */ +public final class GLEXTIndexArrayFormats { + public static final int GL_IUI_V2F_EXT = 0x81AD; + public static final int GL_IUI_V3F_EXT = 0x81AE; + public static final int GL_IUI_N3F_V2F_EXT = 0x81AF; + public static final int GL_IUI_N3F_V3F_EXT = 0x81B0; + public static final int GL_T2F_IUI_V2F_EXT = 0x81B1; + public static final int GL_T2F_IUI_V3F_EXT = 0x81B2; + public static final int GL_T2F_IUI_N3F_V2F_EXT = 0x81B3; + public static final int GL_T2F_IUI_N3F_V3F_EXT = 0x81B4; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTIndexFunc.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTIndexFunc.java new file mode 100644 index 00000000..36239c4e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTIndexFunc.java @@ -0,0 +1,46 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_index_func} + */ +public final class GLEXTIndexFunc { + public static final int GL_INDEX_TEST_EXT = 0x81B5; + public static final int GL_INDEX_TEST_FUNC_EXT = 0x81B6; + public static final int GL_INDEX_TEST_REF_EXT = 0x81B7; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_index_func) return; + ext.glIndexFuncEXT = load.invoke("glIndexFuncEXT", ofVoid(JAVA_INT, JAVA_FLOAT)); + } + + public static void glIndexFuncEXT(int func, float ref) { + final var ext = getExtCapabilities(); + try { + check(ext.glIndexFuncEXT).invokeExact(func, ref); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTIndexMaterial.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTIndexMaterial.java new file mode 100644 index 00000000..12351e30 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTIndexMaterial.java @@ -0,0 +1,46 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_index_material} + */ +public final class GLEXTIndexMaterial { + public static final int GL_INDEX_MATERIAL_EXT = 0x81B8; + public static final int GL_INDEX_MATERIAL_PARAMETER_EXT = 0x81B9; + public static final int GL_INDEX_MATERIAL_FACE_EXT = 0x81BA; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_index_material) return; + ext.glIndexMaterialEXT = load.invoke("glIndexMaterialEXT", ofVoid(JAVA_INT, JAVA_INT)); + } + + public static void glIndexMaterialEXT(int face, int mode) { + final var ext = getExtCapabilities(); + try { + check(ext.glIndexMaterialEXT).invokeExact(face, mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTLightTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTLightTexture.java new file mode 100644 index 00000000..290a3618 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTLightTexture.java @@ -0,0 +1,68 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_light_texture} + */ +public final class GLEXTLightTexture { + public static final int GL_FRAGMENT_MATERIAL_EXT = 0x8349; + public static final int GL_FRAGMENT_NORMAL_EXT = 0x834A; + public static final int GL_FRAGMENT_COLOR_EXT = 0x834C; + public static final int GL_ATTENUATION_EXT = 0x834D; + public static final int GL_SHADOW_ATTENUATION_EXT = 0x834E; + public static final int GL_TEXTURE_APPLICATION_MODE_EXT = 0x834F; + public static final int GL_TEXTURE_LIGHT_EXT = 0x8350; + public static final int GL_TEXTURE_MATERIAL_FACE_EXT = 0x8351; + public static final int GL_TEXTURE_MATERIAL_PARAMETER_EXT = 0x8352; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_light_texture) return; + ext.glApplyTextureEXT = load.invoke("glApplyTextureEXT", ofVoid(JAVA_INT)); + ext.glTextureLightEXT = load.invoke("glTextureLightEXT", ofVoid(JAVA_INT)); + ext.glTextureMaterialEXT = load.invoke("glTextureMaterialEXT", ofVoid(JAVA_INT, JAVA_INT)); + } + + public static void glApplyTextureEXT(int mode) { + final var ext = getExtCapabilities(); + try { + check(ext.glApplyTextureEXT).invokeExact(mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureLightEXT(int pname) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureLightEXT).invokeExact(pname); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureMaterialEXT(int face, int mode) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureMaterialEXT).invokeExact(face, mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMemoryObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMemoryObject.java new file mode 100644 index 00000000..1063fc39 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMemoryObject.java @@ -0,0 +1,199 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_memory_object} + */ +public final class GLEXTMemoryObject { + public static final int GL_TEXTURE_TILING_EXT = 0x9580; + public static final int GL_DEDICATED_MEMORY_OBJECT_EXT = 0x9581; + public static final int GL_PROTECTED_MEMORY_OBJECT_EXT = 0x959B; + public static final int GL_NUM_TILING_TYPES_EXT = 0x9582; + public static final int GL_TILING_TYPES_EXT = 0x9583; + public static final int GL_OPTIMAL_TILING_EXT = 0x9584; + public static final int GL_LINEAR_TILING_EXT = 0x9585; + public static final int GL_NUM_DEVICE_UUIDS_EXT = 0x9596; + public static final int GL_DEVICE_UUID_EXT = 0x9597; + public static final int GL_DRIVER_UUID_EXT = 0x9598; + public static final int GL_UUID_SIZE_EXT = 16; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_memory_object) return; + ext.glGetUnsignedBytevEXT = load.invoke("glGetUnsignedBytevEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glGetUnsignedBytei_vEXT = load.invoke("glGetUnsignedBytei_vEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glDeleteMemoryObjectsEXT = load.invoke("glDeleteMemoryObjectsEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glIsMemoryObjectEXT = load.invoke("glIsMemoryObjectEXT", of(JAVA_BYTE, JAVA_INT)); + ext.glCreateMemoryObjectsEXT = load.invoke("glCreateMemoryObjectsEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glMemoryObjectParameterivEXT = load.invoke("glMemoryObjectParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetMemoryObjectParameterivEXT = load.invoke("glGetMemoryObjectParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glTexStorageMem2DEXT = load.invoke("glTexStorageMem2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glTexStorageMem2DMultisampleEXT = load.invoke("glTexStorageMem2DMultisampleEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, JAVA_INT, JAVA_LONG)); + ext.glTexStorageMem3DEXT = load.invoke("glTexStorageMem3DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glTexStorageMem3DMultisampleEXT = load.invoke("glTexStorageMem3DMultisampleEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, JAVA_INT, JAVA_LONG)); + ext.glBufferStorageMemEXT = load.invoke("glBufferStorageMemEXT", ofVoid(JAVA_INT, JAVA_LONG, JAVA_INT, JAVA_LONG)); + ext.glTextureStorageMem2DEXT = load.invoke("glTextureStorageMem2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glTextureStorageMem2DMultisampleEXT = load.invoke("glTextureStorageMem2DMultisampleEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, JAVA_INT, JAVA_LONG)); + ext.glTextureStorageMem3DEXT = load.invoke("glTextureStorageMem3DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glTextureStorageMem3DMultisampleEXT = load.invoke("glTextureStorageMem3DMultisampleEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, JAVA_INT, JAVA_LONG)); + ext.glNamedBufferStorageMemEXT = load.invoke("glNamedBufferStorageMemEXT", ofVoid(JAVA_INT, JAVA_LONG, JAVA_INT, JAVA_LONG)); + ext.glTexStorageMem1DEXT = load.invoke("glTexStorageMem1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glTextureStorageMem1DEXT = load.invoke("glTextureStorageMem1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + } + + public static void glGetUnsignedBytevEXT(int pname, @NativeType("GLubyte *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetUnsignedBytevEXT).invokeExact(pname, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetUnsignedBytei_vEXT(int target, int index, @NativeType("GLubyte *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetUnsignedBytei_vEXT).invokeExact(target, index, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeleteMemoryObjectsEXT(int n, @NativeType("const GLuint *") MemorySegment memoryObjects) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeleteMemoryObjectsEXT).invokeExact(n, memoryObjects); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsMemoryObjectEXT(int memoryObject) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsMemoryObjectEXT).invokeExact(memoryObject); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glCreateMemoryObjectsEXT(int n, @NativeType("GLuint *") MemorySegment memoryObjects) { + final var ext = getExtCapabilities(); + try { + check(ext.glCreateMemoryObjectsEXT).invokeExact(n, memoryObjects); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMemoryObjectParameterivEXT(int memoryObject, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glMemoryObjectParameterivEXT).invokeExact(memoryObject, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetMemoryObjectParameterivEXT(int memoryObject, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetMemoryObjectParameterivEXT).invokeExact(memoryObject, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexStorageMem2DEXT(int target, int levels, int internalFormat, int width, int height, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexStorageMem2DEXT).invokeExact(target, levels, internalFormat, width, height, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexStorageMem2DMultisampleEXT(int target, int samples, int internalFormat, int width, int height, boolean fixedSampleLocations, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexStorageMem2DMultisampleEXT).invokeExact(target, samples, internalFormat, width, height, fixedSampleLocations, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexStorageMem3DEXT(int target, int levels, int internalFormat, int width, int height, int depth, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexStorageMem3DEXT).invokeExact(target, levels, internalFormat, width, height, depth, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexStorageMem3DMultisampleEXT(int target, int samples, int internalFormat, int width, int height, int depth, boolean fixedSampleLocations, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexStorageMem3DMultisampleEXT).invokeExact(target, samples, internalFormat, width, height, depth, fixedSampleLocations, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBufferStorageMemEXT(int target, long size, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glBufferStorageMemEXT).invokeExact(target, size, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureStorageMem2DEXT(int texture, int levels, int internalFormat, int width, int height, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureStorageMem2DEXT).invokeExact(texture, levels, internalFormat, width, height, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureStorageMem2DMultisampleEXT(int texture, int samples, int internalFormat, int width, int height, boolean fixedSampleLocations, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureStorageMem2DMultisampleEXT).invokeExact(texture, samples, internalFormat, width, height, fixedSampleLocations, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureStorageMem3DEXT(int texture, int levels, int internalFormat, int width, int height, int depth, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureStorageMem3DEXT).invokeExact(texture, levels, internalFormat, width, height, depth, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureStorageMem3DMultisampleEXT(int texture, int samples, int internalFormat, int width, int height, int depth, boolean fixedSampleLocations, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureStorageMem3DMultisampleEXT).invokeExact(texture, samples, internalFormat, width, height, depth, fixedSampleLocations, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNamedBufferStorageMemEXT(int buffer, long size, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glNamedBufferStorageMemEXT).invokeExact(buffer, size, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexStorageMem1DEXT(int target, int levels, int internalFormat, int width, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexStorageMem1DEXT).invokeExact(target, levels, internalFormat, width, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTextureStorageMem1DEXT(int texture, int levels, int internalFormat, int width, int memory, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureStorageMem1DEXT).invokeExact(texture, levels, internalFormat, width, memory, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMemoryObjectFd.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMemoryObjectFd.java new file mode 100644 index 00000000..0c70e4f1 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMemoryObjectFd.java @@ -0,0 +1,44 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_memory_object_fd} + */ +public final class GLEXTMemoryObjectFd { + public static final int GL_HANDLE_TYPE_OPAQUE_FD_EXT = 0x9586; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_memory_object_fd) return; + ext.glImportMemoryFdEXT = load.invoke("glImportMemoryFdEXT", ofVoid(JAVA_INT, JAVA_LONG, JAVA_INT, JAVA_INT)); + } + + public static void glImportMemoryFdEXT(int memory, long size, int handleType, int fd) { + final var ext = getExtCapabilities(); + try { + check(ext.glImportMemoryFdEXT).invokeExact(memory, size, handleType, fd); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMemoryObjectWin32.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMemoryObjectWin32.java new file mode 100644 index 00000000..1f3c4110 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMemoryObjectWin32.java @@ -0,0 +1,60 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_memory_object_win32} + */ +public final class GLEXTMemoryObjectWin32 { + public static final int GL_HANDLE_TYPE_OPAQUE_WIN32_EXT = 0x9587; + public static final int GL_HANDLE_TYPE_OPAQUE_WIN32_KMT_EXT = 0x9588; + public static final int GL_DEVICE_LUID_EXT = 0x9599; + public static final int GL_DEVICE_NODE_MASK_EXT = 0x959A; + public static final int GL_LUID_SIZE_EXT = 8; + public static final int GL_HANDLE_TYPE_D3D12_TILEPOOL_EXT = 0x9589; + public static final int GL_HANDLE_TYPE_D3D12_RESOURCE_EXT = 0x958A; + public static final int GL_HANDLE_TYPE_D3D11_IMAGE_EXT = 0x958B; + public static final int GL_HANDLE_TYPE_D3D11_IMAGE_KMT_EXT = 0x958C; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_memory_object_win32) return; + ext.glImportMemoryWin32HandleEXT = load.invoke("glImportMemoryWin32HandleEXT", ofVoid(JAVA_INT, JAVA_LONG, JAVA_INT, ADDRESS)); + ext.glImportMemoryWin32NameEXT = load.invoke("glImportMemoryWin32NameEXT", ofVoid(JAVA_INT, JAVA_LONG, JAVA_INT, ADDRESS)); + } + + public static void glImportMemoryWin32HandleEXT(int memory, long size, int handleType, @NativeType("void *") MemorySegment handle) { + final var ext = getExtCapabilities(); + try { + check(ext.glImportMemoryWin32HandleEXT).invokeExact(memory, size, handleType, handle); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glImportMemoryWin32NameEXT(int memory, long size, int handleType, @NativeType("const void *") MemorySegment name) { + final var ext = getExtCapabilities(); + try { + check(ext.glImportMemoryWin32NameEXT).invokeExact(memory, size, handleType, name); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMultiDrawArrays.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMultiDrawArrays.java new file mode 100644 index 00000000..3989033f --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMultiDrawArrays.java @@ -0,0 +1,51 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_multi_draw_arrays} + */ +public final class GLEXTMultiDrawArrays { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_multi_draw_arrays) return; + ext.glMultiDrawArraysEXT = load.invoke("glMultiDrawArraysEXT", ofVoid(JAVA_INT, ADDRESS, ADDRESS, JAVA_INT)); + ext.glMultiDrawElementsEXT = load.invoke("glMultiDrawElementsEXT", ofVoid(JAVA_INT, ADDRESS, JAVA_INT, ADDRESS, JAVA_INT)); + } + + public static void glMultiDrawArraysEXT(int mode, @NativeType("const GLint *") MemorySegment first, @NativeType("const GLsizei *") MemorySegment count, int primcount) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiDrawArraysEXT).invokeExact(mode, first, count, primcount); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMultiDrawElementsEXT(int mode, @NativeType("const GLsizei *") MemorySegment count, int type, @NativeType("const void *const*") MemorySegment indices, int primcount) { + final var ext = getExtCapabilities(); + try { + check(ext.glMultiDrawElementsEXT).invokeExact(mode, count, type, indices, primcount); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMultisample.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMultisample.java new file mode 100644 index 00000000..6523fbd9 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTMultisample.java @@ -0,0 +1,68 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_multisample} + */ +public final class GLEXTMultisample { + public static final int GL_MULTISAMPLE_EXT = 0x809D; + public static final int GL_SAMPLE_ALPHA_TO_MASK_EXT = 0x809E; + public static final int GL_SAMPLE_ALPHA_TO_ONE_EXT = 0x809F; + public static final int GL_SAMPLE_MASK_EXT = 0x80A0; + public static final int GL_1PASS_EXT = 0x80A1; + public static final int GL_2PASS_0_EXT = 0x80A2; + public static final int GL_2PASS_1_EXT = 0x80A3; + public static final int GL_4PASS_0_EXT = 0x80A4; + public static final int GL_4PASS_1_EXT = 0x80A5; + public static final int GL_4PASS_2_EXT = 0x80A6; + public static final int GL_4PASS_3_EXT = 0x80A7; + public static final int GL_SAMPLE_BUFFERS_EXT = 0x80A8; + public static final int GL_SAMPLES_EXT = 0x80A9; + public static final int GL_SAMPLE_MASK_VALUE_EXT = 0x80AA; + public static final int GL_SAMPLE_MASK_INVERT_EXT = 0x80AB; + public static final int GL_SAMPLE_PATTERN_EXT = 0x80AC; + public static final int GL_MULTISAMPLE_BIT_EXT = 0x20000000; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_multisample) return; + ext.glSampleMaskEXT = load.invoke("glSampleMaskEXT", ofVoid(JAVA_FLOAT, JAVA_BYTE)); + ext.glSamplePatternEXT = load.invoke("glSamplePatternEXT", ofVoid(JAVA_INT)); + } + + public static void glSampleMaskEXT(float value, boolean invert) { + final var ext = getExtCapabilities(); + try { + check(ext.glSampleMaskEXT).invokeExact(value, invert); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSamplePatternEXT(int pattern) { + final var ext = getExtCapabilities(); + try { + check(ext.glSamplePatternEXT).invokeExact(pattern); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPackedDepthStencil.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPackedDepthStencil.java new file mode 100644 index 00000000..d9499cff --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPackedDepthStencil.java @@ -0,0 +1,35 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_packed_depth_stencil} + */ +public final class GLEXTPackedDepthStencil { + public static final int GL_DEPTH_STENCIL_EXT = 0x84F9; + public static final int GL_UNSIGNED_INT_24_8_EXT = 0x84FA; + public static final int GL_DEPTH24_STENCIL8_EXT = 0x88F0; + public static final int GL_TEXTURE_STENCIL_SIZE_EXT = 0x88F1; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPackedFloat.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPackedFloat.java new file mode 100644 index 00000000..c9424fc7 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPackedFloat.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_packed_float} + */ +public final class GLEXTPackedFloat { + public static final int GL_R11F_G11F_B10F_EXT = 0x8C3A; + public static final int GL_UNSIGNED_INT_10F_11F_11F_REV_EXT = 0x8C3B; + public static final int GL_RGBA_SIGNED_COMPONENTS_EXT = 0x8C3C; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPackedPixels.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPackedPixels.java new file mode 100644 index 00000000..b8a22606 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPackedPixels.java @@ -0,0 +1,36 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_packed_pixels} + */ +public final class GLEXTPackedPixels { + public static final int GL_UNSIGNED_BYTE_3_3_2_EXT = 0x8032; + public static final int GL_UNSIGNED_SHORT_4_4_4_4_EXT = 0x8033; + public static final int GL_UNSIGNED_SHORT_5_5_5_1_EXT = 0x8034; + public static final int GL_UNSIGNED_INT_8_8_8_8_EXT = 0x8035; + public static final int GL_UNSIGNED_INT_10_10_10_2_EXT = 0x8036; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPalettedTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPalettedTexture.java new file mode 100644 index 00000000..8efe224e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPalettedTexture.java @@ -0,0 +1,74 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_paletted_texture} + */ +public final class GLEXTPalettedTexture { + public static final int GL_COLOR_INDEX1_EXT = 0x80E2; + public static final int GL_COLOR_INDEX2_EXT = 0x80E3; + public static final int GL_COLOR_INDEX4_EXT = 0x80E4; + public static final int GL_COLOR_INDEX8_EXT = 0x80E5; + public static final int GL_COLOR_INDEX12_EXT = 0x80E6; + public static final int GL_COLOR_INDEX16_EXT = 0x80E7; + public static final int GL_TEXTURE_INDEX_SIZE_EXT = 0x80ED; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_paletted_texture) return; + ext.glColorTableEXT = load.invoke("glColorTableEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetColorTableEXT = load.invoke("glGetColorTableEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetColorTableParameterivEXT = load.invoke("glGetColorTableParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetColorTableParameterfvEXT = load.invoke("glGetColorTableParameterfvEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glColorTableEXT(int target, int internalFormat, int width, int format, int type, @NativeType("const void *") MemorySegment table) { + final var ext = getExtCapabilities(); + try { + check(ext.glColorTableEXT).invokeExact(target, internalFormat, width, format, type, table); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetColorTableEXT(int target, int format, int type, @NativeType("void *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetColorTableEXT).invokeExact(target, format, type, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetColorTableParameterivEXT(int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetColorTableParameterivEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetColorTableParameterfvEXT(int target, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetColorTableParameterfvEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPixelBufferObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPixelBufferObject.java new file mode 100644 index 00000000..1652e0e4 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPixelBufferObject.java @@ -0,0 +1,35 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_pixel_buffer_object} + */ +public final class GLEXTPixelBufferObject { + public static final int GL_PIXEL_PACK_BUFFER_EXT = 0x88EB; + public static final int GL_PIXEL_UNPACK_BUFFER_EXT = 0x88EC; + public static final int GL_PIXEL_PACK_BUFFER_BINDING_EXT = 0x88ED; + public static final int GL_PIXEL_UNPACK_BUFFER_BINDING_EXT = 0x88EF; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPixelTransform.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPixelTransform.java new file mode 100644 index 00000000..f953f74c --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPixelTransform.java @@ -0,0 +1,92 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_pixel_transform} + */ +public final class GLEXTPixelTransform { + public static final int GL_PIXEL_TRANSFORM_2D_EXT = 0x8330; + public static final int GL_PIXEL_MAG_FILTER_EXT = 0x8331; + public static final int GL_PIXEL_MIN_FILTER_EXT = 0x8332; + public static final int GL_PIXEL_CUBIC_WEIGHT_EXT = 0x8333; + public static final int GL_CUBIC_EXT = 0x8334; + public static final int GL_AVERAGE_EXT = 0x8335; + public static final int GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT = 0x8336; + public static final int GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT = 0x8337; + public static final int GL_PIXEL_TRANSFORM_2D_MATRIX_EXT = 0x8338; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_pixel_transform) return; + ext.glPixelTransformParameteriEXT = load.invoke("glPixelTransformParameteriEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glPixelTransformParameterfEXT = load.invoke("glPixelTransformParameterfEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_FLOAT)); + ext.glPixelTransformParameterivEXT = load.invoke("glPixelTransformParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glPixelTransformParameterfvEXT = load.invoke("glPixelTransformParameterfvEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPixelTransformParameterivEXT = load.invoke("glGetPixelTransformParameterivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPixelTransformParameterfvEXT = load.invoke("glGetPixelTransformParameterfvEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glPixelTransformParameteriEXT(int target, int pname, int param) { + final var ext = getExtCapabilities(); + try { + check(ext.glPixelTransformParameteriEXT).invokeExact(target, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPixelTransformParameterfEXT(int target, int pname, float param) { + final var ext = getExtCapabilities(); + try { + check(ext.glPixelTransformParameterfEXT).invokeExact(target, pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPixelTransformParameterivEXT(int target, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glPixelTransformParameterivEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPixelTransformParameterfvEXT(int target, int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glPixelTransformParameterfvEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPixelTransformParameterivEXT(int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPixelTransformParameterivEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPixelTransformParameterfvEXT(int target, int pname, @NativeType("GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPixelTransformParameterfvEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPointParameters.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPointParameters.java new file mode 100644 index 00000000..f3e9e1b9 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPointParameters.java @@ -0,0 +1,55 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_point_parameters} + */ +public final class GLEXTPointParameters { + public static final int GL_POINT_SIZE_MIN_EXT = 0x8126; + public static final int GL_POINT_SIZE_MAX_EXT = 0x8127; + public static final int GL_POINT_FADE_THRESHOLD_SIZE_EXT = 0x8128; + public static final int GL_DISTANCE_ATTENUATION_EXT = 0x8129; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_point_parameters) return; + ext.glPointParameterfEXT = load.invoke("glPointParameterfEXT", ofVoid(JAVA_INT, JAVA_FLOAT)); + ext.glPointParameterfvEXT = load.invoke("glPointParameterfvEXT", ofVoid(JAVA_INT, ADDRESS)); + } + + public static void glPointParameterfEXT(int pname, float param) { + final var ext = getExtCapabilities(); + try { + check(ext.glPointParameterfEXT).invokeExact(pname, param); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPointParameterfvEXT(int pname, @NativeType("const GLfloat *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glPointParameterfvEXT).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPolygonOffset.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPolygonOffset.java new file mode 100644 index 00000000..caba52c5 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPolygonOffset.java @@ -0,0 +1,46 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_polygon_offset} + */ +public final class GLEXTPolygonOffset { + public static final int GL_POLYGON_OFFSET_EXT = 0x8037; + public static final int GL_POLYGON_OFFSET_FACTOR_EXT = 0x8038; + public static final int GL_POLYGON_OFFSET_BIAS_EXT = 0x8039; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_polygon_offset) return; + ext.glPolygonOffsetEXT = load.invoke("glPolygonOffsetEXT", ofVoid(JAVA_FLOAT, JAVA_FLOAT)); + } + + public static void glPolygonOffsetEXT(float factor, float bias) { + final var ext = getExtCapabilities(); + try { + check(ext.glPolygonOffsetEXT).invokeExact(factor, bias); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPolygonOffsetClamp.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPolygonOffsetClamp.java new file mode 100644 index 00000000..542a5292 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTPolygonOffsetClamp.java @@ -0,0 +1,44 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_polygon_offset_clamp} + */ +public final class GLEXTPolygonOffsetClamp { + public static final int GL_POLYGON_OFFSET_CLAMP_EXT = 0x8E1B; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_polygon_offset_clamp) return; + ext.glPolygonOffsetClampEXT = load.invoke("glPolygonOffsetClampEXT", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + } + + public static void glPolygonOffsetClampEXT(float factor, float units, float clamp) { + final var ext = getExtCapabilities(); + try { + check(ext.glPolygonOffsetClampEXT).invokeExact(factor, units, clamp); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTProvokingVertex.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTProvokingVertex.java new file mode 100644 index 00000000..a33550a0 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTProvokingVertex.java @@ -0,0 +1,47 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_provoking_vertex} + */ +public final class GLEXTProvokingVertex { + public static final int GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT = 0x8E4C; + public static final int GL_FIRST_VERTEX_CONVENTION_EXT = 0x8E4D; + public static final int GL_LAST_VERTEX_CONVENTION_EXT = 0x8E4E; + public static final int GL_PROVOKING_VERTEX_EXT = 0x8E4F; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_provoking_vertex) return; + ext.glProvokingVertexEXT = load.invoke("glProvokingVertexEXT", ofVoid(JAVA_INT)); + } + + public static void glProvokingVertexEXT(int mode) { + final var ext = getExtCapabilities(); + try { + check(ext.glProvokingVertexEXT).invokeExact(mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTRasterMultisample.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTRasterMultisample.java new file mode 100644 index 00000000..aa73e81e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTRasterMultisample.java @@ -0,0 +1,49 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_raster_multisample} + */ +public final class GLEXTRasterMultisample { + public static final int GL_RASTER_MULTISAMPLE_EXT = 0x9327; + public static final int GL_RASTER_SAMPLES_EXT = 0x9328; + public static final int GL_MAX_RASTER_SAMPLES_EXT = 0x9329; + public static final int GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT = 0x932A; + public static final int GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT = 0x932B; + public static final int GL_EFFECTIVE_RASTER_SAMPLES_EXT = 0x932C; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_raster_multisample) return; + ext.glRasterSamplesEXT = load.invoke("glRasterSamplesEXT", ofVoid(JAVA_INT, JAVA_BYTE)); + } + + public static void glRasterSamplesEXT(int samples, boolean fixedsamplelocations) { + final var ext = getExtCapabilities(); + try { + check(ext.glRasterSamplesEXT).invokeExact(samples, fixedsamplelocations); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTRescaleNormal.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTRescaleNormal.java new file mode 100644 index 00000000..29e22b98 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTRescaleNormal.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_rescale_normal} + */ +public final class GLEXTRescaleNormal { + public static final int GL_RESCALE_NORMAL_EXT = 0x803A; +} From 65eacd1483c7588a964465336be6f3d8e19784b8 Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Sat, 23 Dec 2023 15:20:17 +0800 Subject: [PATCH 18/20] [OpenGL] Update extensions --- .../kotlin/overrungl/opengl/GLEXT.kt | 80 ++++++++ .../main/java/overrungl/opengl/GLExtCaps.java | 91 ++++----- .../opengl/ext/ext/GLEXTSecondaryColor.java | 178 ++++++++++++++++++ .../opengl/ext/ext/GLEXTSemaphore.java | 101 ++++++++++ .../opengl/ext/ext/GLEXTSemaphoreFd.java | 43 +++++ .../opengl/ext/ext/GLEXTSemaphoreWin32.java | 53 ++++++ 6 files changed, 503 insertions(+), 43 deletions(-) create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSecondaryColor.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSemaphore.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSemaphoreFd.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSemaphoreWin32.java diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLEXT.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLEXT.kt index f9d1ae17..fb76eb8a 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLEXT.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLEXT.kt @@ -2661,4 +2661,84 @@ fun ext() { "glRasterSamplesEXT"(void, GLuint("samples"), GLboolean("fixedsamplelocations")) } file("RescaleNormal", EXT, "GL_EXT_rescale_normal", "GL_RESCALE_NORMAL_EXT" to "0x803A") + file("SecondaryColor", EXT, "GL_EXT_secondary_color") { + "GL_COLOR_SUM_EXT"("0x8458") + "GL_CURRENT_SECONDARY_COLOR_EXT"("0x8459") + "GL_SECONDARY_COLOR_ARRAY_SIZE_EXT"("0x845A") + "GL_SECONDARY_COLOR_ARRAY_TYPE_EXT"("0x845B") + "GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT"("0x845C") + "GL_SECONDARY_COLOR_ARRAY_POINTER_EXT"("0x845D") + "GL_SECONDARY_COLOR_ARRAY_EXT"("0x845E") + "glSecondaryColor3bEXT"(void, GLbyte("red"), GLbyte("green"), GLbyte("blue")) + "glSecondaryColor3bvEXT"(void, address("v", "const GLbyte *")) + "glSecondaryColor3dEXT"(void, GLdouble("red"), GLdouble("green"), GLdouble("blue")) + "glSecondaryColor3dvEXT"(void, address("v", "const GLdouble *")) + "glSecondaryColor3fEXT"(void, GLfloat("red"), GLfloat("green"), GLfloat("blue")) + "glSecondaryColor3fvEXT"(void, address("v", "const GLfloat *")) + "glSecondaryColor3iEXT"(void, GLint("red"), GLint("green"), GLint("blue")) + "glSecondaryColor3ivEXT"(void, address("v", "const GLint *")) + "glSecondaryColor3sEXT"(void, GLshort("red"), GLshort("green"), GLshort("blue")) + "glSecondaryColor3svEXT"(void, address("v", "const GLshort *")) + "glSecondaryColor3ubEXT"(void, GLubyte("red"), GLubyte("green"), GLubyte("blue")) + "glSecondaryColor3ubvEXT"(void, address("v", "const GLubyte *")) + "glSecondaryColor3uiEXT"(void, GLuint("red"), GLuint("green"), GLuint("blue")) + "glSecondaryColor3uivEXT"(void, address("v", "const GLuint *")) + "glSecondaryColor3usEXT"(void, GLushort("red"), GLushort("green"), GLushort("blue")) + "glSecondaryColor3usvEXT"(void, address("v", "const GLushort *")) + "glSecondaryColorPointerEXT"( + void, + GLint("size"), + GLenum("type"), + GLsizei("stride"), + address("pointer", "const void *") + ) + } + file("Semaphore", EXT, "GL_EXT_semaphore") { + "GL_LAYOUT_GENERAL_EXT"("0x958D") + "GL_LAYOUT_COLOR_ATTACHMENT_EXT"("0x958E") + "GL_LAYOUT_DEPTH_STENCIL_ATTACHMENT_EXT"("0x958F") + "GL_LAYOUT_DEPTH_STENCIL_READ_ONLY_EXT"("0x9590") + "GL_LAYOUT_SHADER_READ_ONLY_EXT"("0x9591") + "GL_LAYOUT_TRANSFER_SRC_EXT"("0x9592") + "GL_LAYOUT_TRANSFER_DST_EXT"("0x9593") + "GL_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_EXT"("0x9530") + "GL_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_EXT"("0x9531") + "glGenSemaphoresEXT"(void, GLsizei("n"), address("semaphores", "GLuint *")) + "glDeleteSemaphoresEXT"(void, GLsizei("n"), address("semaphores", "const GLuint *")) + "glIsSemaphoreEXT"(GLboolean, GLuint("semaphore")) + "glSemaphoreParameterui64vEXT"( + void, + GLuint("semaphore"), + GLenum("pname"), + address("params", "const GLuint64 *") + ) + "glGetSemaphoreParameterui64vEXT"(void, GLuint("semaphore"), GLenum("pname"), address("params", "GLuint64 *")) + "glWaitSemaphoreEXT"( + void, + GLuint("semaphore"), + GLuint("numBufferBarriers"), + address("buffers", "const GLuint *"), + GLuint("numTextureBarriers"), + address("textures", "const GLuint *"), + address("srcLayouts", "const GLenum *") + ) + "glSignalSemaphoreEXT"( + void, + GLuint("semaphore"), + GLuint("numBufferBarriers"), + address("buffers", "const GLuint *"), + GLuint("numTextureBarriers"), + address("textures", "const GLuint *"), + address("dstLayouts", "const GLenum *") + ) + } + file("SemaphoreFd", EXT, "GL_EXT_semaphore_fd") { + "glImportSemaphoreFdEXT"(void, GLuint("semaphore"), GLenum("handleType"), GLint("fd")) + } + file("SemaphoreWin32", EXT, "GL_EXT_semaphore_win32") { + "GL_HANDLE_TYPE_D3D12_FENCE_EXT"("0x9594") + "GL_D3D12_FENCE_VALUE_EXT"("0x9595") + "glImportSemaphoreWin32HandleEXT"(void, GLuint("semaphore"), GLenum("handleType"), address("handle", "void * ")) + "glImportSemaphoreWin32NameEXT"(void, GLuint("semaphore"), GLenum("handleType"), address("name", "const void *")) + } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java index 3e849f8d..239f76c6 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java @@ -131,49 +131,50 @@ public GLExtCaps(GLCapabilities caps) { glMinmaxEXT, glResetHistogramEXT, glResetMinmaxEXT, glIndexFuncEXT, glIndexMaterialEXT, glApplyTextureEXT, glTextureLightEXT, glTextureMaterialEXT, glGetUnsignedBytevEXT, glGetUnsignedBytei_vEXT, glDeleteMemoryObjectsEXT, glIsMemoryObjectEXT, glCreateMemoryObjectsEXT, glMemoryObjectParameterivEXT, glGetMemoryObjectParameterivEXT, glTexStorageMem2DEXT, glTexStorageMem2DMultisampleEXT, glTexStorageMem3DEXT, glTexStorageMem3DMultisampleEXT, glBufferStorageMemEXT, glTextureStorageMem2DEXT, glTextureStorageMem2DMultisampleEXT, glTextureStorageMem3DEXT, glTextureStorageMem3DMultisampleEXT, glNamedBufferStorageMemEXT, glTexStorageMem1DEXT, glTextureStorageMem1DEXT, glImportMemoryFdEXT, glImportMemoryWin32HandleEXT, glImportMemoryWin32NameEXT, glMultiDrawArraysEXT, glMultiDrawElementsEXT, glSampleMaskEXT, glSamplePatternEXT, glColorTableEXT, glGetColorTableEXT, glGetColorTableParameterivEXT, glGetColorTableParameterfvEXT, glPixelTransformParameteriEXT, glPixelTransformParameterfEXT, glPixelTransformParameterivEXT, glPixelTransformParameterfvEXT, glGetPixelTransformParameterivEXT, glGetPixelTransformParameterfvEXT, glPointParameterfEXT, glPointParameterfvEXT, glPolygonOffsetEXT, glPolygonOffsetClampEXT, - glProvokingVertexEXT, glRasterSamplesEXT, glFrameTerminatorGREMEDY, glStringMarkerGREMEDY, glImageTransformParameteriHP, glImageTransformParameterfHP, glImageTransformParameterivHP, glImageTransformParameterfvHP, glGetImageTransformParameterivHP, glGetImageTransformParameterfvHP, glMultiModeDrawArraysIBM, glMultiModeDrawElementsIBM, glFlushStaticDataIBM, glColorPointerListIBM, glSecondaryColorPointerListIBM, glEdgeFlagPointerListIBM, - glFogCoordPointerListIBM, glIndexPointerListIBM, glNormalPointerListIBM, glTexCoordPointerListIBM, glVertexPointerListIBM, glBlendFuncSeparateINGR, glApplyFramebufferAttachmentCMAAINTEL, glSyncTextureINTEL, glUnmapTexture2DINTEL, glMapTexture2DINTEL, glVertexPointervINTEL, glNormalPointervINTEL, glColorPointervINTEL, glTexCoordPointervINTEL, glBeginPerfQueryINTEL, glCreatePerfQueryINTEL, - glDeletePerfQueryINTEL, glEndPerfQueryINTEL, glGetFirstPerfQueryIdINTEL, glGetNextPerfQueryIdINTEL, glGetPerfCounterInfoINTEL, glGetPerfQueryDataINTEL, glGetPerfQueryIdByNameINTEL, glGetPerfQueryInfoINTEL, glFramebufferParameteriMESA, glGetFramebufferParameterivMESA, glResizeBuffersMESA, glWindowPos2dMESA, glWindowPos2dvMESA, glWindowPos2fMESA, glWindowPos2fvMESA, glWindowPos2iMESA, - glWindowPos2ivMESA, glWindowPos2sMESA, glWindowPos2svMESA, glWindowPos3dMESA, glWindowPos3dvMESA, glWindowPos3fMESA, glWindowPos3fvMESA, glWindowPos3iMESA, glWindowPos3ivMESA, glWindowPos3sMESA, glWindowPos3svMESA, glWindowPos4dMESA, glWindowPos4dvMESA, glWindowPos4fMESA, glWindowPos4fvMESA, glWindowPos4iMESA, - glWindowPos4ivMESA, glWindowPos4sMESA, glWindowPos4svMESA, glBeginConditionalRenderNVX, glEndConditionalRenderNVX, glUploadGpuMaskNVX, glMulticastViewportArrayvNVX, glMulticastViewportPositionWScaleNVX, glMulticastScissorArrayvNVX, glAsyncCopyBufferSubDataNVX, glAsyncCopyImageSubDataNVX, glLGPUNamedBufferSubDataNVX, glLGPUCopyImageSubDataNVX, glLGPUInterlockNVX, glCreateProgressFenceNVX, glSignalSemaphoreui64NVX, - glWaitSemaphoreui64NVX, glClientWaitSemaphoreui64NVX, glAlphaToCoverageDitherControlNV, glMultiDrawArraysIndirectBindlessNV, glMultiDrawElementsIndirectBindlessNV, glMultiDrawArraysIndirectBindlessCountNV, glMultiDrawElementsIndirectBindlessCountNV, glGetTextureHandleNV, glGetTextureSamplerHandleNV, glMakeTextureHandleResidentNV, glMakeTextureHandleNonResidentNV, glGetImageHandleNV, glMakeImageHandleResidentNV, glMakeImageHandleNonResidentNV, glUniformHandleui64NV, glUniformHandleui64vNV, - glProgramUniformHandleui64NV, glProgramUniformHandleui64vNV, glIsTextureHandleResidentNV, glIsImageHandleResidentNV, glBlendParameteriNV, glBlendBarrierNV, glViewportPositionWScaleNV, glCreateStatesNV, glDeleteStatesNV, glIsStateNV, glStateCaptureNV, glGetCommandHeaderNV, glGetStageIndexNV, glDrawCommandsNV, glDrawCommandsAddressNV, glDrawCommandsStatesNV, - glDrawCommandsStatesAddressNV, glCreateCommandListsNV, glDeleteCommandListsNV, glIsCommandListNV, glListDrawCommandsStatesClientNV, glCommandListSegmentsNV, glCompileCommandListNV, glCallCommandListNV, glBeginConditionalRenderNV, glEndConditionalRenderNV, glSubpixelPrecisionBiasNV, glConservativeRasterParameterfNV, glConservativeRasterParameteriNV, glCopyImageSubDataNV, glDepthRangedNV, glClearDepthdNV, - glDepthBoundsdNV, glDrawTextureNV, glDrawVkImageNV, glGetVkProcAddrNV, glWaitVkSemaphoreNV, glSignalVkSemaphoreNV, glSignalVkFenceNV, glMapControlPointsNV, glMapParameterivNV, glMapParameterfvNV, glGetMapControlPointsNV, glGetMapParameterivNV, glGetMapParameterfvNV, glGetMapAttribParameterivNV, glGetMapAttribParameterfvNV, glEvalMapsNV, - glGetMultisamplefvNV, glSampleMaskIndexedNV, glTexRenderbufferNV, glDeleteFencesNV, glGenFencesNV, glIsFenceNV, glTestFenceNV, glGetFenceivNV, glFinishFenceNV, glSetFenceNV, glFragmentCoverageColorNV, glProgramNamedParameter4fNV, glProgramNamedParameter4fvNV, glProgramNamedParameter4dNV, glProgramNamedParameter4dvNV, glGetProgramNamedParameterfvNV, - glGetProgramNamedParameterdvNV, glCoverageModulationTableNV, glGetCoverageModulationTableNV, glCoverageModulationNV, glRenderbufferStorageMultisampleCoverageNV, glProgramVertexLimitNV, glFramebufferTextureEXT, glFramebufferTextureFaceEXT, glRenderGpuMaskNV, glMulticastBufferSubDataNV, glMulticastCopyBufferSubDataNV, glMulticastCopyImageSubDataNV, glMulticastBlitFramebufferNV, glMulticastFramebufferSampleLocationsfvNV, glMulticastBarrierNV, glMulticastWaitSyncNV, - glMulticastGetQueryObjectivNV, glMulticastGetQueryObjectuivNV, glMulticastGetQueryObjecti64vNV, glMulticastGetQueryObjectui64vNV, glProgramLocalParameterI4iNV, glProgramLocalParameterI4ivNV, glProgramLocalParametersI4ivNV, glProgramLocalParameterI4uiNV, glProgramLocalParameterI4uivNV, glProgramLocalParametersI4uivNV, glProgramEnvParameterI4iNV, glProgramEnvParameterI4ivNV, glProgramEnvParametersI4ivNV, glProgramEnvParameterI4uiNV, glProgramEnvParameterI4uivNV, glProgramEnvParametersI4uivNV, - glGetProgramLocalParameterIivNV, glGetProgramLocalParameterIuivNV, glGetProgramEnvParameterIivNV, glGetProgramEnvParameterIuivNV, glProgramSubroutineParametersuivNV, glGetProgramSubroutineParameteruivNV, glVertex2hNV, glVertex2hvNV, glVertex3hNV, glVertex3hvNV, glVertex4hNV, glVertex4hvNV, glNormal3hNV, glNormal3hvNV, glColor3hNV, glColor3hvNV, - glColor4hNV, glColor4hvNV, glTexCoord1hNV, glTexCoord1hvNV, glTexCoord2hNV, glTexCoord2hvNV, glTexCoord3hNV, glTexCoord3hvNV, glTexCoord4hNV, glTexCoord4hvNV, glMultiTexCoord1hNV, glMultiTexCoord1hvNV, glMultiTexCoord2hNV, glMultiTexCoord2hvNV, glMultiTexCoord3hNV, glMultiTexCoord3hvNV, - glMultiTexCoord4hNV, glMultiTexCoord4hvNV, glVertexAttrib1hNV, glVertexAttrib1hvNV, glVertexAttrib2hNV, glVertexAttrib2hvNV, glVertexAttrib3hNV, glVertexAttrib3hvNV, glVertexAttrib4hNV, glVertexAttrib4hvNV, glVertexAttribs1hvNV, glVertexAttribs2hvNV, glVertexAttribs3hvNV, glVertexAttribs4hvNV, glFogCoordhNV, glFogCoordhvNV, - glSecondaryColor3hNV, glSecondaryColor3hvNV, glVertexWeighthNV, glVertexWeighthvNV, glGetInternalformatSampleivNV, glGetMemoryObjectDetachedResourcesuivNV, glResetMemoryObjectParameterNV, glTexAttachMemoryNV, glBufferAttachMemoryNV, glTextureAttachMemoryNV, glNamedBufferAttachMemoryNV, glBufferPageCommitmentMemNV, glTexPageCommitmentMemNV, glNamedBufferPageCommitmentMemNV, glTexturePageCommitmentMemNV, glDrawMeshTasksNV, - glDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectCountNV, glGenOcclusionQueriesNV, glDeleteOcclusionQueriesNV, glIsOcclusionQueryNV, glBeginOcclusionQueryNV, glEndOcclusionQueryNV, glGetOcclusionQueryivNV, glGetOcclusionQueryuivNV, glProgramBufferParametersfvNV, glProgramBufferParametersIivNV, glProgramBufferParametersIuivNV, glGenPathsNV, glDeletePathsNV, glIsPathNV, - glPathCommandsNV, glPathCoordsNV, glPathSubCommandsNV, glPathSubCoordsNV, glPathStringNV, glPathGlyphsNV, glPathGlyphRangeNV, glWeightPathsNV, glCopyPathNV, glInterpolatePathsNV, glTransformPathNV, glPathParameterivNV, glPathParameteriNV, glPathParameterfvNV, glPathParameterfNV, glPathDashArrayNV, - glPathStencilFuncNV, glPathStencilDepthOffsetNV, glStencilFillPathNV, glStencilStrokePathNV, glStencilFillPathInstancedNV, glStencilStrokePathInstancedNV, glPathCoverDepthFuncNV, glCoverFillPathNV, glCoverStrokePathNV, glCoverFillPathInstancedNV, glCoverStrokePathInstancedNV, glGetPathParameterivNV, glGetPathParameterfvNV, glGetPathCommandsNV, glGetPathCoordsNV, glGetPathDashArrayNV, - glGetPathMetricsNV, glGetPathMetricRangeNV, glGetPathSpacingNV, glIsPointInFillPathNV, glIsPointInStrokePathNV, glGetPathLengthNV, glPointAlongPathNV, glMatrixLoad3x2fNV, glMatrixLoad3x3fNV, glMatrixLoadTranspose3x3fNV, glMatrixMult3x2fNV, glMatrixMult3x3fNV, glMatrixMultTranspose3x3fNV, glStencilThenCoverFillPathNV, glStencilThenCoverStrokePathNV, glStencilThenCoverFillPathInstancedNV, - glStencilThenCoverStrokePathInstancedNV, glPathGlyphIndexRangeNV, glPathGlyphIndexArrayNV, glPathMemoryGlyphIndexArrayNV, glProgramPathFragmentInputGenNV, glGetProgramResourcefvNV, glPathColorGenNV, glPathTexGenNV, glPathFogGenNV, glGetPathColorGenivNV, glGetPathColorGenfvNV, glGetPathTexGenivNV, glGetPathTexGenfvNV, glPixelDataRangeNV, glFlushPixelDataRangeNV, glPointParameteriNV, - glPointParameterivNV, glPresentFrameKeyedNV, glPresentFrameDualFillNV, glGetVideoivNV, glGetVideouivNV, glGetVideoi64vNV, glGetVideoui64vNV, glPrimitiveRestartNV, glPrimitiveRestartIndexNV, glQueryResourceNV, glGenQueryResourceTagNV, glDeleteQueryResourceTagNV, glQueryResourceTagNV, glCombinerParameterfvNV, glCombinerParameterfNV, glCombinerParameterivNV, - glCombinerParameteriNV, glCombinerInputNV, glCombinerOutputNV, glFinalCombinerInputNV, glGetCombinerInputParameterfvNV, glGetCombinerInputParameterivNV, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterivNV, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterivNV, glCombinerStageParameterfvNV, glGetCombinerStageParameterfvNV, glFramebufferSampleLocationsfvNV, glNamedFramebufferSampleLocationsfvNV, glResolveDepthValuesNV, glScissorExclusiveNV, - glScissorExclusiveArrayvNV, glMakeBufferResidentNV, glMakeBufferNonResidentNV, glIsBufferResidentNV, glMakeNamedBufferResidentNV, glMakeNamedBufferNonResidentNV, glIsNamedBufferResidentNV, glGetBufferParameterui64vNV, glGetNamedBufferParameterui64vNV, glGetIntegerui64vNV, glUniformui64NV, glUniformui64vNV, glProgramUniformui64NV, glProgramUniformui64vNV, glBindShadingRateImageNV, glGetShadingRateImagePaletteNV, - glGetShadingRateSampleLocationivNV, glShadingRateImageBarrierNV, glShadingRateImagePaletteNV, glShadingRateSampleOrderNV, glShadingRateSampleOrderCustomNV, glTextureBarrierNV, glTexImage2DMultisampleCoverageNV, glTexImage3DMultisampleCoverageNV, glTextureImage2DMultisampleNV, glTextureImage3DMultisampleNV, glTextureImage2DMultisampleCoverageNV, glTextureImage3DMultisampleCoverageNV, glCreateSemaphoresNV, glSemaphoreParameterivNV, glGetSemaphoreParameterivNV, glBeginTransformFeedbackNV, - glEndTransformFeedbackNV, glTransformFeedbackAttribsNV, glBindBufferRangeNV, glBindBufferOffsetNV, glBindBufferBaseNV, glTransformFeedbackVaryingsNV, glActiveVaryingNV, glGetVaryingLocationNV, glGetActiveVaryingNV, glGetTransformFeedbackVaryingNV, glTransformFeedbackStreamAttribsNV, glBindTransformFeedbackNV, glDeleteTransformFeedbacksNV, glGenTransformFeedbacksNV, glIsTransformFeedbackNV, glPauseTransformFeedbackNV, - glResumeTransformFeedbackNV, glDrawTransformFeedbackNV, glVDPAUInitNV, glVDPAUFiniNV, glVDPAURegisterVideoSurfaceNV, glVDPAURegisterOutputSurfaceNV, glVDPAUIsSurfaceNV, glVDPAUUnregisterSurfaceNV, glVDPAUGetSurfaceivNV, glVDPAUSurfaceAccessNV, glVDPAUMapSurfacesNV, glVDPAUUnmapSurfacesNV, glVDPAURegisterVideoSurfaceWithPictureStructureNV, glFlushVertexArrayRangeNV, glVertexArrayRangeNV, glVertexAttribL1i64NV, - glVertexAttribL2i64NV, glVertexAttribL3i64NV, glVertexAttribL4i64NV, glVertexAttribL1i64vNV, glVertexAttribL2i64vNV, glVertexAttribL3i64vNV, glVertexAttribL4i64vNV, glVertexAttribL1ui64NV, glVertexAttribL2ui64NV, glVertexAttribL3ui64NV, glVertexAttribL4ui64NV, glVertexAttribL1ui64vNV, glVertexAttribL2ui64vNV, glVertexAttribL3ui64vNV, glVertexAttribL4ui64vNV, glGetVertexAttribLi64vNV, - glGetVertexAttribLui64vNV, glVertexAttribLFormatNV, glBufferAddressRangeNV, glVertexFormatNV, glNormalFormatNV, glColorFormatNV, glIndexFormatNV, glTexCoordFormatNV, glEdgeFlagFormatNV, glSecondaryColorFormatNV, glFogCoordFormatNV, glVertexAttribFormatNV, glVertexAttribIFormatNV, glGetIntegerui64i_vNV, glAreProgramsResidentNV, glBindProgramNV, - glDeleteProgramsNV, glExecuteProgramNV, glGenProgramsNV, glGetProgramParameterdvNV, glGetProgramParameterfvNV, glGetProgramivNV, glGetProgramStringNV, glGetTrackMatrixivNV, glGetVertexAttribdvNV, glGetVertexAttribfvNV, glGetVertexAttribivNV, glGetVertexAttribPointervNV, glIsProgramNV, glLoadProgramNV, glProgramParameter4dNV, glProgramParameter4dvNV, - glProgramParameter4fNV, glProgramParameter4fvNV, glProgramParameters4dvNV, glProgramParameters4fvNV, glRequestResidentProgramsNV, glTrackMatrixNV, glVertexAttribPointerNV, glVertexAttrib1dNV, glVertexAttrib1dvNV, glVertexAttrib1fNV, glVertexAttrib1fvNV, glVertexAttrib1sNV, glVertexAttrib1svNV, glVertexAttrib2dNV, glVertexAttrib2dvNV, glVertexAttrib2fNV, - glVertexAttrib2fvNV, glVertexAttrib2sNV, glVertexAttrib2svNV, glVertexAttrib3dNV, glVertexAttrib3dvNV, glVertexAttrib3fNV, glVertexAttrib3fvNV, glVertexAttrib3sNV, glVertexAttrib3svNV, glVertexAttrib4dNV, glVertexAttrib4dvNV, glVertexAttrib4fNV, glVertexAttrib4fvNV, glVertexAttrib4sNV, glVertexAttrib4svNV, glVertexAttrib4ubNV, - glVertexAttrib4ubvNV, glVertexAttribs1dvNV, glVertexAttribs1fvNV, glVertexAttribs1svNV, glVertexAttribs2dvNV, glVertexAttribs2fvNV, glVertexAttribs2svNV, glVertexAttribs3dvNV, glVertexAttribs3fvNV, glVertexAttribs3svNV, glVertexAttribs4dvNV, glVertexAttribs4fvNV, glVertexAttribs4svNV, glVertexAttribs4ubvNV, glBeginVideoCaptureNV, glBindVideoCaptureStreamBufferNV, - glBindVideoCaptureStreamTextureNV, glEndVideoCaptureNV, glGetVideoCaptureivNV, glGetVideoCaptureStreamivNV, glGetVideoCaptureStreamfvNV, glGetVideoCaptureStreamdvNV, glVideoCaptureNV, glVideoCaptureStreamParameterivNV, glVideoCaptureStreamParameterfvNV, glVideoCaptureStreamParameterdvNV, glViewportSwizzleNV, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, glFogFuncSGIS, - glGetFogFuncSGIS, glSampleMaskSGIS, glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, glTexSubImage4DSGIS, glTextureColorMaskSGIS, - glGetTexFilterFuncSGIS, glTexFilterFuncSGIS, glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, glFlushRasterSGIX, glFragmentColorMaterialSGIX, glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, glFragmentLightModelfSGIX, glFragmentLightModelfvSGIX, - glFragmentLightModeliSGIX, glFragmentLightModelivSGIX, glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, glInstrumentsBufferSGIX, glPollInstrumentsSGIX, - glReadInstrumentsSGIX, glStartInstrumentsSGIX, glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, glListParameterivSGIX, glPixelTexGenSGIX, glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, glReferencePlaneSGIX, glSpriteParameterfSGIX, - glSpriteParameterfvSGIX, glSpriteParameteriSGIX, glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, glGetColorTableSGI, glGetColorTableParameterfvSGI, glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, - glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, - glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, - glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, - glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; + glProvokingVertexEXT, glRasterSamplesEXT, glSecondaryColor3bEXT, glSecondaryColor3bvEXT, glSecondaryColor3dEXT, glSecondaryColor3dvEXT, glSecondaryColor3fEXT, glSecondaryColor3fvEXT, glSecondaryColor3iEXT, glSecondaryColor3ivEXT, glSecondaryColor3sEXT, glSecondaryColor3svEXT, glSecondaryColor3ubEXT, glSecondaryColor3ubvEXT, glSecondaryColor3uiEXT, glSecondaryColor3uivEXT, + glSecondaryColor3usEXT, glSecondaryColor3usvEXT, glSecondaryColorPointerEXT, glGenSemaphoresEXT, glDeleteSemaphoresEXT, glIsSemaphoreEXT, glSemaphoreParameterui64vEXT, glGetSemaphoreParameterui64vEXT, glWaitSemaphoreEXT, glSignalSemaphoreEXT, glImportSemaphoreFdEXT, glImportSemaphoreWin32HandleEXT, glImportSemaphoreWin32NameEXT, glFrameTerminatorGREMEDY, glStringMarkerGREMEDY, glImageTransformParameteriHP, + glImageTransformParameterfHP, glImageTransformParameterivHP, glImageTransformParameterfvHP, glGetImageTransformParameterivHP, glGetImageTransformParameterfvHP, glMultiModeDrawArraysIBM, glMultiModeDrawElementsIBM, glFlushStaticDataIBM, glColorPointerListIBM, glSecondaryColorPointerListIBM, glEdgeFlagPointerListIBM, glFogCoordPointerListIBM, glIndexPointerListIBM, glNormalPointerListIBM, glTexCoordPointerListIBM, glVertexPointerListIBM, + glBlendFuncSeparateINGR, glApplyFramebufferAttachmentCMAAINTEL, glSyncTextureINTEL, glUnmapTexture2DINTEL, glMapTexture2DINTEL, glVertexPointervINTEL, glNormalPointervINTEL, glColorPointervINTEL, glTexCoordPointervINTEL, glBeginPerfQueryINTEL, glCreatePerfQueryINTEL, glDeletePerfQueryINTEL, glEndPerfQueryINTEL, glGetFirstPerfQueryIdINTEL, glGetNextPerfQueryIdINTEL, glGetPerfCounterInfoINTEL, + glGetPerfQueryDataINTEL, glGetPerfQueryIdByNameINTEL, glGetPerfQueryInfoINTEL, glFramebufferParameteriMESA, glGetFramebufferParameterivMESA, glResizeBuffersMESA, glWindowPos2dMESA, glWindowPos2dvMESA, glWindowPos2fMESA, glWindowPos2fvMESA, glWindowPos2iMESA, glWindowPos2ivMESA, glWindowPos2sMESA, glWindowPos2svMESA, glWindowPos3dMESA, glWindowPos3dvMESA, + glWindowPos3fMESA, glWindowPos3fvMESA, glWindowPos3iMESA, glWindowPos3ivMESA, glWindowPos3sMESA, glWindowPos3svMESA, glWindowPos4dMESA, glWindowPos4dvMESA, glWindowPos4fMESA, glWindowPos4fvMESA, glWindowPos4iMESA, glWindowPos4ivMESA, glWindowPos4sMESA, glWindowPos4svMESA, glBeginConditionalRenderNVX, glEndConditionalRenderNVX, + glUploadGpuMaskNVX, glMulticastViewportArrayvNVX, glMulticastViewportPositionWScaleNVX, glMulticastScissorArrayvNVX, glAsyncCopyBufferSubDataNVX, glAsyncCopyImageSubDataNVX, glLGPUNamedBufferSubDataNVX, glLGPUCopyImageSubDataNVX, glLGPUInterlockNVX, glCreateProgressFenceNVX, glSignalSemaphoreui64NVX, glWaitSemaphoreui64NVX, glClientWaitSemaphoreui64NVX, glAlphaToCoverageDitherControlNV, glMultiDrawArraysIndirectBindlessNV, glMultiDrawElementsIndirectBindlessNV, + glMultiDrawArraysIndirectBindlessCountNV, glMultiDrawElementsIndirectBindlessCountNV, glGetTextureHandleNV, glGetTextureSamplerHandleNV, glMakeTextureHandleResidentNV, glMakeTextureHandleNonResidentNV, glGetImageHandleNV, glMakeImageHandleResidentNV, glMakeImageHandleNonResidentNV, glUniformHandleui64NV, glUniformHandleui64vNV, glProgramUniformHandleui64NV, glProgramUniformHandleui64vNV, glIsTextureHandleResidentNV, glIsImageHandleResidentNV, glBlendParameteriNV, + glBlendBarrierNV, glViewportPositionWScaleNV, glCreateStatesNV, glDeleteStatesNV, glIsStateNV, glStateCaptureNV, glGetCommandHeaderNV, glGetStageIndexNV, glDrawCommandsNV, glDrawCommandsAddressNV, glDrawCommandsStatesNV, glDrawCommandsStatesAddressNV, glCreateCommandListsNV, glDeleteCommandListsNV, glIsCommandListNV, glListDrawCommandsStatesClientNV, + glCommandListSegmentsNV, glCompileCommandListNV, glCallCommandListNV, glBeginConditionalRenderNV, glEndConditionalRenderNV, glSubpixelPrecisionBiasNV, glConservativeRasterParameterfNV, glConservativeRasterParameteriNV, glCopyImageSubDataNV, glDepthRangedNV, glClearDepthdNV, glDepthBoundsdNV, glDrawTextureNV, glDrawVkImageNV, glGetVkProcAddrNV, glWaitVkSemaphoreNV, + glSignalVkSemaphoreNV, glSignalVkFenceNV, glMapControlPointsNV, glMapParameterivNV, glMapParameterfvNV, glGetMapControlPointsNV, glGetMapParameterivNV, glGetMapParameterfvNV, glGetMapAttribParameterivNV, glGetMapAttribParameterfvNV, glEvalMapsNV, glGetMultisamplefvNV, glSampleMaskIndexedNV, glTexRenderbufferNV, glDeleteFencesNV, glGenFencesNV, + glIsFenceNV, glTestFenceNV, glGetFenceivNV, glFinishFenceNV, glSetFenceNV, glFragmentCoverageColorNV, glProgramNamedParameter4fNV, glProgramNamedParameter4fvNV, glProgramNamedParameter4dNV, glProgramNamedParameter4dvNV, glGetProgramNamedParameterfvNV, glGetProgramNamedParameterdvNV, glCoverageModulationTableNV, glGetCoverageModulationTableNV, glCoverageModulationNV, glRenderbufferStorageMultisampleCoverageNV, + glProgramVertexLimitNV, glFramebufferTextureEXT, glFramebufferTextureFaceEXT, glRenderGpuMaskNV, glMulticastBufferSubDataNV, glMulticastCopyBufferSubDataNV, glMulticastCopyImageSubDataNV, glMulticastBlitFramebufferNV, glMulticastFramebufferSampleLocationsfvNV, glMulticastBarrierNV, glMulticastWaitSyncNV, glMulticastGetQueryObjectivNV, glMulticastGetQueryObjectuivNV, glMulticastGetQueryObjecti64vNV, glMulticastGetQueryObjectui64vNV, glProgramLocalParameterI4iNV, + glProgramLocalParameterI4ivNV, glProgramLocalParametersI4ivNV, glProgramLocalParameterI4uiNV, glProgramLocalParameterI4uivNV, glProgramLocalParametersI4uivNV, glProgramEnvParameterI4iNV, glProgramEnvParameterI4ivNV, glProgramEnvParametersI4ivNV, glProgramEnvParameterI4uiNV, glProgramEnvParameterI4uivNV, glProgramEnvParametersI4uivNV, glGetProgramLocalParameterIivNV, glGetProgramLocalParameterIuivNV, glGetProgramEnvParameterIivNV, glGetProgramEnvParameterIuivNV, glProgramSubroutineParametersuivNV, + glGetProgramSubroutineParameteruivNV, glVertex2hNV, glVertex2hvNV, glVertex3hNV, glVertex3hvNV, glVertex4hNV, glVertex4hvNV, glNormal3hNV, glNormal3hvNV, glColor3hNV, glColor3hvNV, glColor4hNV, glColor4hvNV, glTexCoord1hNV, glTexCoord1hvNV, glTexCoord2hNV, + glTexCoord2hvNV, glTexCoord3hNV, glTexCoord3hvNV, glTexCoord4hNV, glTexCoord4hvNV, glMultiTexCoord1hNV, glMultiTexCoord1hvNV, glMultiTexCoord2hNV, glMultiTexCoord2hvNV, glMultiTexCoord3hNV, glMultiTexCoord3hvNV, glMultiTexCoord4hNV, glMultiTexCoord4hvNV, glVertexAttrib1hNV, glVertexAttrib1hvNV, glVertexAttrib2hNV, + glVertexAttrib2hvNV, glVertexAttrib3hNV, glVertexAttrib3hvNV, glVertexAttrib4hNV, glVertexAttrib4hvNV, glVertexAttribs1hvNV, glVertexAttribs2hvNV, glVertexAttribs3hvNV, glVertexAttribs4hvNV, glFogCoordhNV, glFogCoordhvNV, glSecondaryColor3hNV, glSecondaryColor3hvNV, glVertexWeighthNV, glVertexWeighthvNV, glGetInternalformatSampleivNV, + glGetMemoryObjectDetachedResourcesuivNV, glResetMemoryObjectParameterNV, glTexAttachMemoryNV, glBufferAttachMemoryNV, glTextureAttachMemoryNV, glNamedBufferAttachMemoryNV, glBufferPageCommitmentMemNV, glTexPageCommitmentMemNV, glNamedBufferPageCommitmentMemNV, glTexturePageCommitmentMemNV, glDrawMeshTasksNV, glDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectCountNV, glGenOcclusionQueriesNV, glDeleteOcclusionQueriesNV, + glIsOcclusionQueryNV, glBeginOcclusionQueryNV, glEndOcclusionQueryNV, glGetOcclusionQueryivNV, glGetOcclusionQueryuivNV, glProgramBufferParametersfvNV, glProgramBufferParametersIivNV, glProgramBufferParametersIuivNV, glGenPathsNV, glDeletePathsNV, glIsPathNV, glPathCommandsNV, glPathCoordsNV, glPathSubCommandsNV, glPathSubCoordsNV, glPathStringNV, + glPathGlyphsNV, glPathGlyphRangeNV, glWeightPathsNV, glCopyPathNV, glInterpolatePathsNV, glTransformPathNV, glPathParameterivNV, glPathParameteriNV, glPathParameterfvNV, glPathParameterfNV, glPathDashArrayNV, glPathStencilFuncNV, glPathStencilDepthOffsetNV, glStencilFillPathNV, glStencilStrokePathNV, glStencilFillPathInstancedNV, + glStencilStrokePathInstancedNV, glPathCoverDepthFuncNV, glCoverFillPathNV, glCoverStrokePathNV, glCoverFillPathInstancedNV, glCoverStrokePathInstancedNV, glGetPathParameterivNV, glGetPathParameterfvNV, glGetPathCommandsNV, glGetPathCoordsNV, glGetPathDashArrayNV, glGetPathMetricsNV, glGetPathMetricRangeNV, glGetPathSpacingNV, glIsPointInFillPathNV, glIsPointInStrokePathNV, + glGetPathLengthNV, glPointAlongPathNV, glMatrixLoad3x2fNV, glMatrixLoad3x3fNV, glMatrixLoadTranspose3x3fNV, glMatrixMult3x2fNV, glMatrixMult3x3fNV, glMatrixMultTranspose3x3fNV, glStencilThenCoverFillPathNV, glStencilThenCoverStrokePathNV, glStencilThenCoverFillPathInstancedNV, glStencilThenCoverStrokePathInstancedNV, glPathGlyphIndexRangeNV, glPathGlyphIndexArrayNV, glPathMemoryGlyphIndexArrayNV, glProgramPathFragmentInputGenNV, + glGetProgramResourcefvNV, glPathColorGenNV, glPathTexGenNV, glPathFogGenNV, glGetPathColorGenivNV, glGetPathColorGenfvNV, glGetPathTexGenivNV, glGetPathTexGenfvNV, glPixelDataRangeNV, glFlushPixelDataRangeNV, glPointParameteriNV, glPointParameterivNV, glPresentFrameKeyedNV, glPresentFrameDualFillNV, glGetVideoivNV, glGetVideouivNV, + glGetVideoi64vNV, glGetVideoui64vNV, glPrimitiveRestartNV, glPrimitiveRestartIndexNV, glQueryResourceNV, glGenQueryResourceTagNV, glDeleteQueryResourceTagNV, glQueryResourceTagNV, glCombinerParameterfvNV, glCombinerParameterfNV, glCombinerParameterivNV, glCombinerParameteriNV, glCombinerInputNV, glCombinerOutputNV, glFinalCombinerInputNV, glGetCombinerInputParameterfvNV, + glGetCombinerInputParameterivNV, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterivNV, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterivNV, glCombinerStageParameterfvNV, glGetCombinerStageParameterfvNV, glFramebufferSampleLocationsfvNV, glNamedFramebufferSampleLocationsfvNV, glResolveDepthValuesNV, glScissorExclusiveNV, glScissorExclusiveArrayvNV, glMakeBufferResidentNV, glMakeBufferNonResidentNV, glIsBufferResidentNV, glMakeNamedBufferResidentNV, + glMakeNamedBufferNonResidentNV, glIsNamedBufferResidentNV, glGetBufferParameterui64vNV, glGetNamedBufferParameterui64vNV, glGetIntegerui64vNV, glUniformui64NV, glUniformui64vNV, glProgramUniformui64NV, glProgramUniformui64vNV, glBindShadingRateImageNV, glGetShadingRateImagePaletteNV, glGetShadingRateSampleLocationivNV, glShadingRateImageBarrierNV, glShadingRateImagePaletteNV, glShadingRateSampleOrderNV, glShadingRateSampleOrderCustomNV, + glTextureBarrierNV, glTexImage2DMultisampleCoverageNV, glTexImage3DMultisampleCoverageNV, glTextureImage2DMultisampleNV, glTextureImage3DMultisampleNV, glTextureImage2DMultisampleCoverageNV, glTextureImage3DMultisampleCoverageNV, glCreateSemaphoresNV, glSemaphoreParameterivNV, glGetSemaphoreParameterivNV, glBeginTransformFeedbackNV, glEndTransformFeedbackNV, glTransformFeedbackAttribsNV, glBindBufferRangeNV, glBindBufferOffsetNV, glBindBufferBaseNV, + glTransformFeedbackVaryingsNV, glActiveVaryingNV, glGetVaryingLocationNV, glGetActiveVaryingNV, glGetTransformFeedbackVaryingNV, glTransformFeedbackStreamAttribsNV, glBindTransformFeedbackNV, glDeleteTransformFeedbacksNV, glGenTransformFeedbacksNV, glIsTransformFeedbackNV, glPauseTransformFeedbackNV, glResumeTransformFeedbackNV, glDrawTransformFeedbackNV, glVDPAUInitNV, glVDPAUFiniNV, glVDPAURegisterVideoSurfaceNV, + glVDPAURegisterOutputSurfaceNV, glVDPAUIsSurfaceNV, glVDPAUUnregisterSurfaceNV, glVDPAUGetSurfaceivNV, glVDPAUSurfaceAccessNV, glVDPAUMapSurfacesNV, glVDPAUUnmapSurfacesNV, glVDPAURegisterVideoSurfaceWithPictureStructureNV, glFlushVertexArrayRangeNV, glVertexArrayRangeNV, glVertexAttribL1i64NV, glVertexAttribL2i64NV, glVertexAttribL3i64NV, glVertexAttribL4i64NV, glVertexAttribL1i64vNV, glVertexAttribL2i64vNV, + glVertexAttribL3i64vNV, glVertexAttribL4i64vNV, glVertexAttribL1ui64NV, glVertexAttribL2ui64NV, glVertexAttribL3ui64NV, glVertexAttribL4ui64NV, glVertexAttribL1ui64vNV, glVertexAttribL2ui64vNV, glVertexAttribL3ui64vNV, glVertexAttribL4ui64vNV, glGetVertexAttribLi64vNV, glGetVertexAttribLui64vNV, glVertexAttribLFormatNV, glBufferAddressRangeNV, glVertexFormatNV, glNormalFormatNV, + glColorFormatNV, glIndexFormatNV, glTexCoordFormatNV, glEdgeFlagFormatNV, glSecondaryColorFormatNV, glFogCoordFormatNV, glVertexAttribFormatNV, glVertexAttribIFormatNV, glGetIntegerui64i_vNV, glAreProgramsResidentNV, glBindProgramNV, glDeleteProgramsNV, glExecuteProgramNV, glGenProgramsNV, glGetProgramParameterdvNV, glGetProgramParameterfvNV, + glGetProgramivNV, glGetProgramStringNV, glGetTrackMatrixivNV, glGetVertexAttribdvNV, glGetVertexAttribfvNV, glGetVertexAttribivNV, glGetVertexAttribPointervNV, glIsProgramNV, glLoadProgramNV, glProgramParameter4dNV, glProgramParameter4dvNV, glProgramParameter4fNV, glProgramParameter4fvNV, glProgramParameters4dvNV, glProgramParameters4fvNV, glRequestResidentProgramsNV, + glTrackMatrixNV, glVertexAttribPointerNV, glVertexAttrib1dNV, glVertexAttrib1dvNV, glVertexAttrib1fNV, glVertexAttrib1fvNV, glVertexAttrib1sNV, glVertexAttrib1svNV, glVertexAttrib2dNV, glVertexAttrib2dvNV, glVertexAttrib2fNV, glVertexAttrib2fvNV, glVertexAttrib2sNV, glVertexAttrib2svNV, glVertexAttrib3dNV, glVertexAttrib3dvNV, + glVertexAttrib3fNV, glVertexAttrib3fvNV, glVertexAttrib3sNV, glVertexAttrib3svNV, glVertexAttrib4dNV, glVertexAttrib4dvNV, glVertexAttrib4fNV, glVertexAttrib4fvNV, glVertexAttrib4sNV, glVertexAttrib4svNV, glVertexAttrib4ubNV, glVertexAttrib4ubvNV, glVertexAttribs1dvNV, glVertexAttribs1fvNV, glVertexAttribs1svNV, glVertexAttribs2dvNV, + glVertexAttribs2fvNV, glVertexAttribs2svNV, glVertexAttribs3dvNV, glVertexAttribs3fvNV, glVertexAttribs3svNV, glVertexAttribs4dvNV, glVertexAttribs4fvNV, glVertexAttribs4svNV, glVertexAttribs4ubvNV, glBeginVideoCaptureNV, glBindVideoCaptureStreamBufferNV, glBindVideoCaptureStreamTextureNV, glEndVideoCaptureNV, glGetVideoCaptureivNV, glGetVideoCaptureStreamivNV, glGetVideoCaptureStreamfvNV, + glGetVideoCaptureStreamdvNV, glVideoCaptureNV, glVideoCaptureStreamParameterivNV, glVideoCaptureStreamParameterfvNV, glVideoCaptureStreamParameterdvNV, glViewportSwizzleNV, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, glFogFuncSGIS, glGetFogFuncSGIS, glSampleMaskSGIS, glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, + glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, glTexSubImage4DSGIS, glTextureColorMaskSGIS, glGetTexFilterFuncSGIS, glTexFilterFuncSGIS, glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, + glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, glFlushRasterSGIX, glFragmentColorMaterialSGIX, glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, glFragmentLightModelfSGIX, glFragmentLightModelfvSGIX, glFragmentLightModeliSGIX, glFragmentLightModelivSGIX, glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, + glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, glInstrumentsBufferSGIX, glPollInstrumentsSGIX, glReadInstrumentsSGIX, glStartInstrumentsSGIX, glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, + glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, glListParameterivSGIX, glPixelTexGenSGIX, glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, glReferencePlaneSGIX, glSpriteParameterfSGIX, glSpriteParameterfvSGIX, glSpriteParameteriSGIX, glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, + glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, glGetColorTableSGI, glGetColorTableParameterfvSGI, glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, + glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, + glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, + glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; void load(GLLoadFunc load) { GLARBES32Compatibility.load(this, load); @@ -297,6 +298,10 @@ void load(GLLoadFunc load) { GLEXTPolygonOffsetClamp.load(this, load); GLEXTProvokingVertex.load(this, load); GLEXTRasterMultisample.load(this, load); + GLEXTSecondaryColor.load(this, load); + GLEXTSemaphore.load(this, load); + GLEXTSemaphoreFd.load(this, load); + GLEXTSemaphoreWin32.load(this, load); GLGREMEDYFrameTerminator.load(this, load); GLGREMEDYStringMarker.load(this, load); GLHPImageTransform.load(this, load); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSecondaryColor.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSecondaryColor.java new file mode 100644 index 00000000..1d622f29 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSecondaryColor.java @@ -0,0 +1,178 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_secondary_color} + */ +public final class GLEXTSecondaryColor { + public static final int GL_COLOR_SUM_EXT = 0x8458; + public static final int GL_CURRENT_SECONDARY_COLOR_EXT = 0x8459; + public static final int GL_SECONDARY_COLOR_ARRAY_SIZE_EXT = 0x845A; + public static final int GL_SECONDARY_COLOR_ARRAY_TYPE_EXT = 0x845B; + public static final int GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT = 0x845C; + public static final int GL_SECONDARY_COLOR_ARRAY_POINTER_EXT = 0x845D; + public static final int GL_SECONDARY_COLOR_ARRAY_EXT = 0x845E; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_secondary_color) return; + ext.glSecondaryColor3bEXT = load.invoke("glSecondaryColor3bEXT", ofVoid(JAVA_BYTE, JAVA_BYTE, JAVA_BYTE)); + ext.glSecondaryColor3bvEXT = load.invoke("glSecondaryColor3bvEXT", ofVoid(ADDRESS)); + ext.glSecondaryColor3dEXT = load.invoke("glSecondaryColor3dEXT", ofVoid(JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glSecondaryColor3dvEXT = load.invoke("glSecondaryColor3dvEXT", ofVoid(ADDRESS)); + ext.glSecondaryColor3fEXT = load.invoke("glSecondaryColor3fEXT", ofVoid(JAVA_FLOAT, JAVA_FLOAT, JAVA_FLOAT)); + ext.glSecondaryColor3fvEXT = load.invoke("glSecondaryColor3fvEXT", ofVoid(ADDRESS)); + ext.glSecondaryColor3iEXT = load.invoke("glSecondaryColor3iEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glSecondaryColor3ivEXT = load.invoke("glSecondaryColor3ivEXT", ofVoid(ADDRESS)); + ext.glSecondaryColor3sEXT = load.invoke("glSecondaryColor3sEXT", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glSecondaryColor3svEXT = load.invoke("glSecondaryColor3svEXT", ofVoid(ADDRESS)); + ext.glSecondaryColor3ubEXT = load.invoke("glSecondaryColor3ubEXT", ofVoid(JAVA_BYTE, JAVA_BYTE, JAVA_BYTE)); + ext.glSecondaryColor3ubvEXT = load.invoke("glSecondaryColor3ubvEXT", ofVoid(ADDRESS)); + ext.glSecondaryColor3uiEXT = load.invoke("glSecondaryColor3uiEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glSecondaryColor3uivEXT = load.invoke("glSecondaryColor3uivEXT", ofVoid(ADDRESS)); + ext.glSecondaryColor3usEXT = load.invoke("glSecondaryColor3usEXT", ofVoid(JAVA_SHORT, JAVA_SHORT, JAVA_SHORT)); + ext.glSecondaryColor3usvEXT = load.invoke("glSecondaryColor3usvEXT", ofVoid(ADDRESS)); + ext.glSecondaryColorPointerEXT = load.invoke("glSecondaryColorPointerEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glSecondaryColor3bEXT(byte red, byte green, byte blue) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3bEXT).invokeExact(red, green, blue); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColor3bvEXT(@NativeType("const GLbyte *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3bvEXT).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColor3dEXT(double red, double green, double blue) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3dEXT).invokeExact(red, green, blue); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColor3dvEXT(@NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3dvEXT).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColor3fEXT(float red, float green, float blue) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3fEXT).invokeExact(red, green, blue); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColor3fvEXT(@NativeType("const GLfloat *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3fvEXT).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColor3iEXT(int red, int green, int blue) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3iEXT).invokeExact(red, green, blue); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColor3ivEXT(@NativeType("const GLint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3ivEXT).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColor3sEXT(short red, short green, short blue) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3sEXT).invokeExact(red, green, blue); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColor3svEXT(@NativeType("const GLshort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3svEXT).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColor3ubEXT(byte red, byte green, byte blue) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3ubEXT).invokeExact(red, green, blue); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColor3ubvEXT(@NativeType("const GLubyte *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3ubvEXT).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColor3uiEXT(int red, int green, int blue) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3uiEXT).invokeExact(red, green, blue); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColor3uivEXT(@NativeType("const GLuint *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3uivEXT).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColor3usEXT(short red, short green, short blue) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3usEXT).invokeExact(red, green, blue); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColor3usvEXT(@NativeType("const GLushort *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColor3usvEXT).invokeExact(v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSecondaryColorPointerEXT(int size, int type, int stride, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glSecondaryColorPointerEXT).invokeExact(size, type, stride, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSemaphore.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSemaphore.java new file mode 100644 index 00000000..2c63bec0 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSemaphore.java @@ -0,0 +1,101 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_semaphore} + */ +public final class GLEXTSemaphore { + public static final int GL_LAYOUT_GENERAL_EXT = 0x958D; + public static final int GL_LAYOUT_COLOR_ATTACHMENT_EXT = 0x958E; + public static final int GL_LAYOUT_DEPTH_STENCIL_ATTACHMENT_EXT = 0x958F; + public static final int GL_LAYOUT_DEPTH_STENCIL_READ_ONLY_EXT = 0x9590; + public static final int GL_LAYOUT_SHADER_READ_ONLY_EXT = 0x9591; + public static final int GL_LAYOUT_TRANSFER_SRC_EXT = 0x9592; + public static final int GL_LAYOUT_TRANSFER_DST_EXT = 0x9593; + public static final int GL_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_EXT = 0x9530; + public static final int GL_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_EXT = 0x9531; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_semaphore) return; + ext.glGenSemaphoresEXT = load.invoke("glGenSemaphoresEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glDeleteSemaphoresEXT = load.invoke("glDeleteSemaphoresEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glIsSemaphoreEXT = load.invoke("glIsSemaphoreEXT", of(JAVA_BYTE, JAVA_INT)); + ext.glSemaphoreParameterui64vEXT = load.invoke("glSemaphoreParameterui64vEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetSemaphoreParameterui64vEXT = load.invoke("glGetSemaphoreParameterui64vEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glWaitSemaphoreEXT = load.invoke("glWaitSemaphoreEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, ADDRESS, ADDRESS)); + ext.glSignalSemaphoreEXT = load.invoke("glSignalSemaphoreEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT, ADDRESS, ADDRESS)); + } + + public static void glGenSemaphoresEXT(int n, @NativeType("GLuint *") MemorySegment semaphores) { + final var ext = getExtCapabilities(); + try { + check(ext.glGenSemaphoresEXT).invokeExact(n, semaphores); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeleteSemaphoresEXT(int n, @NativeType("const GLuint *") MemorySegment semaphores) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeleteSemaphoresEXT).invokeExact(n, semaphores); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsSemaphoreEXT(int semaphore) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsSemaphoreEXT).invokeExact(semaphore); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSemaphoreParameterui64vEXT(int semaphore, int pname, @NativeType("const GLuint64 *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glSemaphoreParameterui64vEXT).invokeExact(semaphore, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetSemaphoreParameterui64vEXT(int semaphore, int pname, @NativeType("GLuint64 *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetSemaphoreParameterui64vEXT).invokeExact(semaphore, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWaitSemaphoreEXT(int semaphore, int numBufferBarriers, @NativeType("const GLuint *") MemorySegment buffers, int numTextureBarriers, @NativeType("const GLuint *") MemorySegment textures, @NativeType("const GLenum *") MemorySegment srcLayouts) { + final var ext = getExtCapabilities(); + try { + check(ext.glWaitSemaphoreEXT).invokeExact(semaphore, numBufferBarriers, buffers, numTextureBarriers, textures, srcLayouts); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSignalSemaphoreEXT(int semaphore, int numBufferBarriers, @NativeType("const GLuint *") MemorySegment buffers, int numTextureBarriers, @NativeType("const GLuint *") MemorySegment textures, @NativeType("const GLenum *") MemorySegment dstLayouts) { + final var ext = getExtCapabilities(); + try { + check(ext.glSignalSemaphoreEXT).invokeExact(semaphore, numBufferBarriers, buffers, numTextureBarriers, textures, dstLayouts); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSemaphoreFd.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSemaphoreFd.java new file mode 100644 index 00000000..87c76872 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSemaphoreFd.java @@ -0,0 +1,43 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_semaphore_fd} + */ +public final class GLEXTSemaphoreFd { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_semaphore_fd) return; + ext.glImportSemaphoreFdEXT = load.invoke("glImportSemaphoreFdEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glImportSemaphoreFdEXT(int semaphore, int handleType, int fd) { + final var ext = getExtCapabilities(); + try { + check(ext.glImportSemaphoreFdEXT).invokeExact(semaphore, handleType, fd); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSemaphoreWin32.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSemaphoreWin32.java new file mode 100644 index 00000000..2ff6618a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSemaphoreWin32.java @@ -0,0 +1,53 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_semaphore_win32} + */ +public final class GLEXTSemaphoreWin32 { + public static final int GL_HANDLE_TYPE_D3D12_FENCE_EXT = 0x9594; + public static final int GL_D3D12_FENCE_VALUE_EXT = 0x9595; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_semaphore_win32) return; + ext.glImportSemaphoreWin32HandleEXT = load.invoke("glImportSemaphoreWin32HandleEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glImportSemaphoreWin32NameEXT = load.invoke("glImportSemaphoreWin32NameEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glImportSemaphoreWin32HandleEXT(int semaphore, int handleType, @NativeType("void * ") MemorySegment handle) { + final var ext = getExtCapabilities(); + try { + check(ext.glImportSemaphoreWin32HandleEXT).invokeExact(semaphore, handleType, handle); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glImportSemaphoreWin32NameEXT(int semaphore, int handleType, @NativeType("const void *") MemorySegment name) { + final var ext = getExtCapabilities(); + try { + check(ext.glImportSemaphoreWin32NameEXT).invokeExact(semaphore, handleType, name); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} From 1acec2c5509c4c5cd8b0eb4d944e700fd2b802f2 Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Fri, 29 Dec 2023 13:49:46 +0800 Subject: [PATCH 19/20] [OpenGL] Updated extensions. --- .../kotlin/overrungl/opengl/GLEXT.kt | 877 ++++++++++++++++++ .../main/java/overrungl/opengl/GLExtCaps.java | 115 ++- .../ext/ext/GLEXTSeparateShaderObjects.java | 61 ++ .../ext/ext/GLEXTSeparateSpecularColor.java | 34 + .../ext/ext/GLEXTShaderFramebufferFetch.java | 32 + ...LEXTShaderFramebufferFetchNonCoherent.java | 43 + .../ext/ext/GLEXTShaderImageLoadStore.java | 106 +++ .../ext/ext/GLEXTSharedTexturePalette.java | 32 + .../opengl/ext/ext/GLEXTStencilClearTag.java | 45 + .../opengl/ext/ext/GLEXTStencilTwoSide.java | 45 + .../opengl/ext/ext/GLEXTStencilWrap.java | 33 + .../opengl/ext/ext/GLEXTSubtexture.java | 51 + .../opengl/ext/ext/GLEXTTexture.java | 74 ++ .../opengl/ext/ext/GLEXTTexture3D.java | 60 ++ .../opengl/ext/ext/GLEXTTextureArray.java | 51 + .../ext/ext/GLEXTTextureBufferObject.java | 48 + .../ext/ext/GLEXTTextureCompressionLatc.java | 35 + .../ext/ext/GLEXTTextureCompressionRgtc.java | 35 + .../ext/ext/GLEXTTextureCompressionS3tc.java | 35 + .../opengl/ext/ext/GLEXTTextureCubeMap.java | 43 + .../ext/ext/GLEXTTextureEnvCombine.java | 52 ++ .../opengl/ext/ext/GLEXTTextureEnvDot3.java | 33 + .../ext/GLEXTTextureFilterAnisotropic.java | 33 + .../ext/ext/GLEXTTextureFilterMinmax.java | 33 + .../opengl/ext/ext/GLEXTTextureInteger.java | 130 +++ .../opengl/ext/ext/GLEXTTextureLodBias.java | 34 + .../ext/ext/GLEXTTextureMirrorClamp.java | 34 + .../opengl/ext/ext/GLEXTTextureObject.java | 90 ++ .../ext/ext/GLEXTTexturePerturbNormal.java | 45 + .../ext/ext/GLEXTTextureSharedExponent.java | 34 + .../opengl/ext/ext/GLEXTTextureSnorm.java | 47 + .../opengl/ext/ext/GLEXTTextureSrgb.java | 47 + .../ext/ext/GLEXTTextureSrgbDecode.java | 34 + .../opengl/ext/ext/GLEXTTextureSrgbR8.java | 32 + .../opengl/ext/ext/GLEXTTextureSrgbRGB.java | 32 + .../opengl/ext/ext/GLEXTTextureStorage.java | 77 ++ .../opengl/ext/ext/GLEXTTextureSwizzle.java | 36 + .../opengl/ext/ext/GLEXTTimerQuery.java | 52 ++ .../ext/ext/GLEXTTransformFeedback.java | 106 +++ .../opengl/ext/ext/GLEXTVertexArray.java | 139 +++ .../ext/ext/GLEXTVertexAttrib64bit.java | 127 +++ .../opengl/ext/ext/GLEXTVertexShader.java | 489 ++++++++++ .../opengl/ext/ext/GLEXTVertexWeighting.java | 72 ++ .../opengl/ext/ext/GLEXTWin32KeyedMutex.java | 53 ++ .../opengl/ext/ext/GLEXTWindowRectangles.java | 49 + .../opengl/ext/ext/GLEXTX11SyncObject.java | 45 + 46 files changed, 3767 insertions(+), 43 deletions(-) create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSeparateShaderObjects.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSeparateSpecularColor.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTShaderFramebufferFetch.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTShaderFramebufferFetchNonCoherent.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTShaderImageLoadStore.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSharedTexturePalette.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTStencilClearTag.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTStencilTwoSide.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTStencilWrap.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSubtexture.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTexture.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTexture3D.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureArray.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureBufferObject.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureCompressionLatc.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureCompressionRgtc.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureCompressionS3tc.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureCubeMap.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureEnvCombine.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureEnvDot3.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureFilterAnisotropic.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureFilterMinmax.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureInteger.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureLodBias.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureMirrorClamp.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureObject.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTexturePerturbNormal.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSharedExponent.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSnorm.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSrgb.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSrgbDecode.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSrgbR8.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSrgbRGB.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureStorage.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSwizzle.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTimerQuery.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTransformFeedback.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTVertexArray.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTVertexAttrib64bit.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTVertexShader.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTVertexWeighting.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTWin32KeyedMutex.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTWindowRectangles.java create mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTX11SyncObject.java diff --git a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLEXT.kt b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLEXT.kt index fb76eb8a..0bb3a3de 100644 --- a/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLEXT.kt +++ b/modules/overrungl.opengl/src/generator/kotlin/overrungl/opengl/GLEXT.kt @@ -2741,4 +2741,881 @@ fun ext() { "glImportSemaphoreWin32HandleEXT"(void, GLuint("semaphore"), GLenum("handleType"), address("handle", "void * ")) "glImportSemaphoreWin32NameEXT"(void, GLuint("semaphore"), GLenum("handleType"), address("name", "const void *")) } + file("SeparateShaderObjects", EXT, "GL_EXT_separate_shader_objects") { + "GL_ACTIVE_PROGRAM_EXT"("0x8B8D") + "glUseShaderProgramEXT"(void, GLenum("type"), GLuint("program")) + "glActiveProgramEXT"(void, GLuint("program")) + "glCreateShaderProgramEXT"(GLuint, GLenum("type"), address("string", "const GLchar *")) + } + file( + "SeparateSpecularColor", EXT, "GL_EXT_separate_specular_color", + "GL_LIGHT_MODEL_COLOR_CONTROL_EXT" to "0x81F8", + "GL_SINGLE_COLOR_EXT" to "0x81F9", + "GL_SEPARATE_SPECULAR_COLOR_EXT" to "0x81FA" + ) + file("ShaderFramebufferFetch", EXT, "GL_EXT_shader_framebuffer_fetch", "GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT" to "0x8A52") + file("ShaderFramebufferFetchNonCoherent", EXT, "GL_EXT_shader_framebuffer_fetch_non_coherent") { + "glFramebufferFetchBarrierEXT"(void) + } + file("ShaderImageLoadStore", EXT, "GL_EXT_shader_image_load_store") { + "GL_MAX_IMAGE_UNITS_EXT"("0x8F38") + "GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS_EXT"("0x8F39") + "GL_IMAGE_BINDING_NAME_EXT"("0x8F3A") + "GL_IMAGE_BINDING_LEVEL_EXT"("0x8F3B") + "GL_IMAGE_BINDING_LAYERED_EXT"("0x8F3C") + "GL_IMAGE_BINDING_LAYER_EXT"("0x8F3D") + "GL_IMAGE_BINDING_ACCESS_EXT"("0x8F3E") + "GL_IMAGE_1D_EXT"("0x904C") + "GL_IMAGE_2D_EXT"("0x904D") + "GL_IMAGE_3D_EXT"("0x904E") + "GL_IMAGE_2D_RECT_EXT"("0x904F") + "GL_IMAGE_CUBE_EXT"("0x9050") + "GL_IMAGE_BUFFER_EXT"("0x9051") + "GL_IMAGE_1D_ARRAY_EXT"("0x9052") + "GL_IMAGE_2D_ARRAY_EXT"("0x9053") + "GL_IMAGE_CUBE_MAP_ARRAY_EXT"("0x9054") + "GL_IMAGE_2D_MULTISAMPLE_EXT"("0x9055") + "GL_IMAGE_2D_MULTISAMPLE_ARRAY_EXT"("0x9056") + "GL_INT_IMAGE_1D_EXT"("0x9057") + "GL_INT_IMAGE_2D_EXT"("0x9058") + "GL_INT_IMAGE_3D_EXT"("0x9059") + "GL_INT_IMAGE_2D_RECT_EXT"("0x905A") + "GL_INT_IMAGE_CUBE_EXT"("0x905B") + "GL_INT_IMAGE_BUFFER_EXT"("0x905C") + "GL_INT_IMAGE_1D_ARRAY_EXT"("0x905D") + "GL_INT_IMAGE_2D_ARRAY_EXT"("0x905E") + "GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT"("0x905F") + "GL_INT_IMAGE_2D_MULTISAMPLE_EXT"("0x9060") + "GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT"("0x9061") + "GL_UNSIGNED_INT_IMAGE_1D_EXT"("0x9062") + "GL_UNSIGNED_INT_IMAGE_2D_EXT"("0x9063") + "GL_UNSIGNED_INT_IMAGE_3D_EXT"("0x9064") + "GL_UNSIGNED_INT_IMAGE_2D_RECT_EXT"("0x9065") + "GL_UNSIGNED_INT_IMAGE_CUBE_EXT"("0x9066") + "GL_UNSIGNED_INT_IMAGE_BUFFER_EXT"("0x9067") + "GL_UNSIGNED_INT_IMAGE_1D_ARRAY_EXT"("0x9068") + "GL_UNSIGNED_INT_IMAGE_2D_ARRAY_EXT"("0x9069") + "GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT"("0x906A") + "GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_EXT"("0x906B") + "GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT"("0x906C") + "GL_MAX_IMAGE_SAMPLES_EXT"("0x906D") + "GL_IMAGE_BINDING_FORMAT_EXT"("0x906E") + "GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT"("0x00000001") + "GL_ELEMENT_ARRAY_BARRIER_BIT_EXT"("0x00000002") + "GL_UNIFORM_BARRIER_BIT_EXT"("0x00000004") + "GL_TEXTURE_FETCH_BARRIER_BIT_EXT"("0x00000008") + "GL_SHADER_IMAGE_ACCESS_BARRIER_BIT_EXT"("0x00000020") + "GL_COMMAND_BARRIER_BIT_EXT"("0x00000040") + "GL_PIXEL_BUFFER_BARRIER_BIT_EXT"("0x00000080") + "GL_TEXTURE_UPDATE_BARRIER_BIT_EXT"("0x00000100") + "GL_BUFFER_UPDATE_BARRIER_BIT_EXT"("0x00000200") + "GL_FRAMEBUFFER_BARRIER_BIT_EXT"("0x00000400") + "GL_TRANSFORM_FEEDBACK_BARRIER_BIT_EXT"("0x00000800") + "GL_ATOMIC_COUNTER_BARRIER_BIT_EXT"("0x00001000") + "GL_ALL_BARRIER_BITS_EXT"("0xFFFFFFFF") + "glBindImageTextureEXT"( + void, + GLuint("index"), + GLuint("texture"), + GLint("level"), + GLboolean("layered"), + GLint("layer"), + GLenum("access"), + GLint("format") + ) + "glMemoryBarrierEXT"(void, GLbitfield("barriers")) + } + file("SharedTexturePalette", EXT, "GL_EXT_shared_texture_palette", "GL_SHARED_TEXTURE_PALETTE_EXT" to "0x81FB") + file("StencilClearTag", EXT, "GL_EXT_stencil_clear_tag") { + "GL_STENCIL_TAG_BITS_EXT"("0x88F2") + "GL_STENCIL_CLEAR_TAG_VALUE_EXT"("0x88F3") + "glStencilClearTagEXT"(void, GLsizei("stencilTagBits"), GLuint("stencilClearTag")) + } + file("StencilTwoSide", EXT, "GL_EXT_stencil_two_side") { + "GL_STENCIL_TEST_TWO_SIDE_EXT"("0x8910") + "GL_ACTIVE_STENCIL_FACE_EXT"("0x8911") + "glActiveStencilFaceEXT"(void, GLenum("face")) + } + file( + "StencilWrap", EXT, "GL_EXT_stencil_wrap", + "GL_INCR_WRAP_EXT" to "0x8507", + "GL_DECR_WRAP_EXT" to "0x8508" + ) + file("Subtexture", EXT, "GL_EXT_subtexture") { + "glTexSubImage1DEXT"( + void, + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLsizei("width"), + GLenum("format"), + GLenum("type"), + address("pixels", "const void *") + ) + "glTexSubImage2DEXT"( + void, + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLsizei("width"), + GLsizei("height"), + GLenum("format"), + GLenum("type"), + address("pixels", "const void *") + ) + } + file( + "Texture", EXT, "GL_EXT_texture", + "GL_ALPHA4_EXT" to "0x803B", + "GL_ALPHA8_EXT" to "0x803C", + "GL_ALPHA12_EXT" to "0x803D", + "GL_ALPHA16_EXT" to "0x803E", + "GL_LUMINANCE4_EXT" to "0x803F", + "GL_LUMINANCE8_EXT" to "0x8040", + "GL_LUMINANCE12_EXT" to "0x8041", + "GL_LUMINANCE16_EXT" to "0x8042", + "GL_LUMINANCE4_ALPHA4_EXT" to "0x8043", + "GL_LUMINANCE6_ALPHA2_EXT" to "0x8044", + "GL_LUMINANCE8_ALPHA8_EXT" to "0x8045", + "GL_LUMINANCE12_ALPHA4_EXT" to "0x8046", + "GL_LUMINANCE12_ALPHA12_EXT" to "0x8047", + "GL_LUMINANCE16_ALPHA16_EXT" to "0x8048", + "GL_INTENSITY_EXT" to "0x8049", + "GL_INTENSITY4_EXT" to "0x804A", + "GL_INTENSITY8_EXT" to "0x804B", + "GL_INTENSITY12_EXT" to "0x804C", + "GL_INTENSITY16_EXT" to "0x804D", + "GL_RGB2_EXT" to "0x804E", + "GL_RGB4_EXT" to "0x804F", + "GL_RGB5_EXT" to "0x8050", + "GL_RGB8_EXT" to "0x8051", + "GL_RGB10_EXT" to "0x8052", + "GL_RGB12_EXT" to "0x8053", + "GL_RGB16_EXT" to "0x8054", + "GL_RGBA2_EXT" to "0x8055", + "GL_RGBA4_EXT" to "0x8056", + "GL_RGB5_A1_EXT" to "0x8057", + "GL_RGBA8_EXT" to "0x8058", + "GL_RGB10_A2_EXT" to "0x8059", + "GL_RGBA12_EXT" to "0x805A", + "GL_RGBA16_EXT" to "0x805B", + "GL_TEXTURE_RED_SIZE_EXT" to "0x805C", + "GL_TEXTURE_GREEN_SIZE_EXT" to "0x805D", + "GL_TEXTURE_BLUE_SIZE_EXT" to "0x805E", + "GL_TEXTURE_ALPHA_SIZE_EXT" to "0x805F", + "GL_TEXTURE_LUMINANCE_SIZE_EXT" to "0x8060", + "GL_TEXTURE_INTENSITY_SIZE_EXT" to "0x8061", + "GL_REPLACE_EXT" to "0x8062", + "GL_PROXY_TEXTURE_1D_EXT" to "0x8063", + "GL_PROXY_TEXTURE_2D_EXT" to "0x8064", + "GL_TEXTURE_TOO_LARGE_EXT" to "0x8065" + ) + file("Texture3D", EXT, "GL_EXT_texture3D") { + "GL_PACK_SKIP_IMAGES_EXT"("0x806B") + "GL_PACK_IMAGE_HEIGHT_EXT"("0x806C") + "GL_UNPACK_SKIP_IMAGES_EXT"("0x806D") + "GL_UNPACK_IMAGE_HEIGHT_EXT"("0x806E") + "GL_TEXTURE_3D_EXT"("0x806F") + "GL_PROXY_TEXTURE_3D_EXT"("0x8070") + "GL_TEXTURE_DEPTH_EXT"("0x8071") + "GL_TEXTURE_WRAP_R_EXT"("0x8072") + "GL_MAX_3D_TEXTURE_SIZE_EXT"("0x8073") + "glTexImage3DEXT"( + void, + GLenum("target"), + GLint("level"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLint("border"), + GLenum("format"), + GLenum("type"), + address("pixels", "const void *") + ) + "glTexSubImage3DEXT"( + void, + GLenum("target"), + GLint("level"), + GLint("xoffset"), + GLint("yoffset"), + GLint("zoffset"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth"), + GLenum("format"), + GLenum("type"), + address("pixels", "const void *") + ) + } + file("TextureArray", EXT, "GL_EXT_texture_array") { + "GL_TEXTURE_1D_ARRAY_EXT"("0x8C18") + "GL_PROXY_TEXTURE_1D_ARRAY_EXT"("0x8C19") + "GL_TEXTURE_2D_ARRAY_EXT"("0x8C1A") + "GL_PROXY_TEXTURE_2D_ARRAY_EXT"("0x8C1B") + "GL_TEXTURE_BINDING_1D_ARRAY_EXT"("0x8C1C") + "GL_TEXTURE_BINDING_2D_ARRAY_EXT"("0x8C1D") + "GL_MAX_ARRAY_TEXTURE_LAYERS_EXT"("0x88FF") + "GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT"("0x884E") + "glFramebufferTextureLayerEXT"( + void, + GLenum("target"), + GLenum("attachment"), + GLuint("texture"), + GLint("level"), + GLint("layer") + ) + } + file("TextureBufferObject", EXT, "GL_EXT_texture_buffer_object") { + "GL_TEXTURE_BUFFER_EXT"("0x8C2A") + "GL_MAX_TEXTURE_BUFFER_SIZE_EXT"("0x8C2B") + "GL_TEXTURE_BINDING_BUFFER_EXT"("0x8C2C") + "GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT"("0x8C2D") + "GL_TEXTURE_BUFFER_FORMAT_EXT"("0x8C2E") + "glTexBufferEXT"(void, GLenum("target"), GLenum("internalformat"), GLuint("buffer")) + } + file( + "TextureCompressionLatc", EXT, "GL_EXT_texture_compression_latc", + "GL_COMPRESSED_LUMINANCE_LATC1_EXT" to "0x8C70", + "GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT" to "0x8C71", + "GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT" to "0x8C72", + "GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT" to "0x8C73" + ) + file( + "TextureCompressionRgtc", EXT, "GL_EXT_texture_compression_rgtc", + "GL_COMPRESSED_RED_RGTC1_EXT" to "0x8DBB", + "GL_COMPRESSED_SIGNED_RED_RGTC1_EXT" to "0x8DBC", + "GL_COMPRESSED_RED_GREEN_RGTC2_EXT" to "0x8DBD", + "GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT" to "0x8DBE" + ) + file( + "TextureCompressionS3tc", EXT, "GL_EXT_texture_compression_s3tc", + "GL_COMPRESSED_RGB_S3TC_DXT1_EXT" to "0x83F0", + "GL_COMPRESSED_RGBA_S3TC_DXT1_EXT" to "0x83F1", + "GL_COMPRESSED_RGBA_S3TC_DXT3_EXT" to "0x83F2", + "GL_COMPRESSED_RGBA_S3TC_DXT5_EXT" to "0x83F3" + ) + file( + "TextureCubeMap", EXT, "GL_EXT_texture_cube_map", + "GL_NORMAL_MAP_EXT" to "0x8511", + "GL_REFLECTION_MAP_EXT" to "0x8512", + "GL_TEXTURE_CUBE_MAP_EXT" to "0x8513", + "GL_TEXTURE_BINDING_CUBE_MAP_EXT" to "0x8514", + "GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT" to "0x8515", + "GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT" to "0x8516", + "GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT" to "0x8517", + "GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT" to "0x8518", + "GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT" to "0x8519", + "GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT" to "0x851A", + "GL_PROXY_TEXTURE_CUBE_MAP_EXT" to "0x851B", + "GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT" to "0x851C" + ) + file( + "TextureEnvCombine", EXT, "GL_EXT_texture_env_combine", + "GL_COMBINE_EXT" to "0x8570", + "GL_COMBINE_RGB_EXT" to "0x8571", + "GL_COMBINE_ALPHA_EXT" to "0x8572", + "GL_RGB_SCALE_EXT" to "0x8573", + "GL_ADD_SIGNED_EXT" to "0x8574", + "GL_INTERPOLATE_EXT" to "0x8575", + "GL_CONSTANT_EXT" to "0x8576", + "GL_PRIMARY_COLOR_EXT" to "0x8577", + "GL_PREVIOUS_EXT" to "0x8578", + "GL_SOURCE0_RGB_EXT" to "0x8580", + "GL_SOURCE1_RGB_EXT" to "0x8581", + "GL_SOURCE2_RGB_EXT" to "0x8582", + "GL_SOURCE0_ALPHA_EXT" to "0x8588", + "GL_SOURCE1_ALPHA_EXT" to "0x8589", + "GL_SOURCE2_ALPHA_EXT" to "0x858A", + "GL_OPERAND0_RGB_EXT" to "0x8590", + "GL_OPERAND1_RGB_EXT" to "0x8591", + "GL_OPERAND2_RGB_EXT" to "0x8592", + "GL_OPERAND0_ALPHA_EXT" to "0x8598", + "GL_OPERAND1_ALPHA_EXT" to "0x8599", + "GL_OPERAND2_ALPHA_EXT" to "0x859A" + ) + file( + "TextureEnvDot3", EXT, "GL_EXT_texture_env_dot3", + "GL_DOT3_RGB_EXT" to "0x8740", + "GL_DOT3_RGBA_EXT" to "0x8741" + ) + file( + "TextureFilterAnisotropic", EXT, "GL_EXT_texture_filter_anisotropic", + "GL_TEXTURE_MAX_ANISOTROPY_EXT" to "0x84FE", + "GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT" to "0x84FF" + ) + file( + "TextureFilterMinmax", EXT, "GL_EXT_texture_filter_minmax", + "GL_TEXTURE_REDUCTION_MODE_EXT" to "0x9366", + "GL_WEIGHTED_AVERAGE_EXT" to "0x9367" + ) + file("TextureInteger", EXT, "GL_EXT_texture_integer") { + "GL_RGBA32UI_EXT"("0x8D70") + "GL_RGB32UI_EXT"("0x8D71") + "GL_ALPHA32UI_EXT"("0x8D72") + "GL_INTENSITY32UI_EXT"("0x8D73") + "GL_LUMINANCE32UI_EXT"("0x8D74") + "GL_LUMINANCE_ALPHA32UI_EXT"("0x8D75") + "GL_RGBA16UI_EXT"("0x8D76") + "GL_RGB16UI_EXT"("0x8D77") + "GL_ALPHA16UI_EXT"("0x8D78") + "GL_INTENSITY16UI_EXT"("0x8D79") + "GL_LUMINANCE16UI_EXT"("0x8D7A") + "GL_LUMINANCE_ALPHA16UI_EXT"("0x8D7B") + "GL_RGBA8UI_EXT"("0x8D7C") + "GL_RGB8UI_EXT"("0x8D7D") + "GL_ALPHA8UI_EXT"("0x8D7E") + "GL_INTENSITY8UI_EXT"("0x8D7F") + "GL_LUMINANCE8UI_EXT"("0x8D80") + "GL_LUMINANCE_ALPHA8UI_EXT"("0x8D81") + "GL_RGBA32I_EXT"("0x8D82") + "GL_RGB32I_EXT"("0x8D83") + "GL_ALPHA32I_EXT"("0x8D84") + "GL_INTENSITY32I_EXT"("0x8D85") + "GL_LUMINANCE32I_EXT"("0x8D86") + "GL_LUMINANCE_ALPHA32I_EXT"("0x8D87") + "GL_RGBA16I_EXT"("0x8D88") + "GL_RGB16I_EXT"("0x8D89") + "GL_ALPHA16I_EXT"("0x8D8A") + "GL_INTENSITY16I_EXT"("0x8D8B") + "GL_LUMINANCE16I_EXT"("0x8D8C") + "GL_LUMINANCE_ALPHA16I_EXT"("0x8D8D") + "GL_RGBA8I_EXT"("0x8D8E") + "GL_RGB8I_EXT"("0x8D8F") + "GL_ALPHA8I_EXT"("0x8D90") + "GL_INTENSITY8I_EXT"("0x8D91") + "GL_LUMINANCE8I_EXT"("0x8D92") + "GL_LUMINANCE_ALPHA8I_EXT"("0x8D93") + "GL_RED_INTEGER_EXT"("0x8D94") + "GL_GREEN_INTEGER_EXT"("0x8D95") + "GL_BLUE_INTEGER_EXT"("0x8D96") + "GL_ALPHA_INTEGER_EXT"("0x8D97") + "GL_RGB_INTEGER_EXT"("0x8D98") + "GL_RGBA_INTEGER_EXT"("0x8D99") + "GL_BGR_INTEGER_EXT"("0x8D9A") + "GL_BGRA_INTEGER_EXT"("0x8D9B") + "GL_LUMINANCE_INTEGER_EXT"("0x8D9C") + "GL_LUMINANCE_ALPHA_INTEGER_EXT"("0x8D9D") + "GL_RGBA_INTEGER_MODE_EXT"("0x8D9E") + "glTexParameterIivEXT"(void, GLenum("target"), GLenum("pname"), address("params", "const GLint *")) + "glTexParameterIuivEXT"(void, GLenum("target"), GLenum("pname"), address("params", "const GLuint *")) + "glGetTexParameterIivEXT"(void, GLenum("target"), GLenum("pname"), address("params", "GLint *")) + "glGetTexParameterIuivEXT"(void, GLenum("target"), GLenum("pname"), address("params", "GLuint *")) + "glClearColorIiEXT"(void, GLint("red"), GLint("green"), GLint("blue"), GLint("alpha")) + "glClearColorIuiEXT"(void, GLuint("red"), GLuint("green"), GLuint("blue"), GLuint("alpha")) + } + file( + "TextureLodBias", EXT, "GL_EXT_texture_lod_bias", + "GL_MAX_TEXTURE_LOD_BIAS_EXT" to "0x84FD", + "GL_TEXTURE_FILTER_CONTROL_EXT" to "0x8500", + "GL_TEXTURE_LOD_BIAS_EXT" to "0x8501" + ) + file( + "TextureMirrorClamp", EXT, "GL_EXT_texture_mirror_clamp", + "GL_MIRROR_CLAMP_EXT" to "0x8742", + "GL_MIRROR_CLAMP_TO_EDGE_EXT" to "0x8743", + "GL_MIRROR_CLAMP_TO_BORDER_EXT" to "0x8912" + ) + file("TextureObject", EXT, "GL_EXT_texture_object") { + "GL_TEXTURE_PRIORITY_EXT"("0x8066") + "GL_TEXTURE_RESIDENT_EXT"("0x8067") + "GL_TEXTURE_1D_BINDING_EXT"("0x8068") + "GL_TEXTURE_2D_BINDING_EXT"("0x8069") + "GL_TEXTURE_3D_BINDING_EXT"("0x806A") + "glAreTexturesResidentEXT"( + GLboolean, + GLsizei("n"), + address("textures", "const GLuint *"), + address("residences", "GLboolean *") + ) + "glBindTextureEXT"(void, GLenum("target"), GLuint("texture")) + "glDeleteTexturesEXT"(void, GLsizei("n"), address("textures", "const GLuint *")) + "glGenTexturesEXT"(void, GLsizei("n"), address("textures", "GLuint *")) + "glIsTextureEXT"(GLboolean, GLuint("texture")) + "glPrioritizeTexturesEXT"( + void, + GLsizei("n"), + address("textures", "const GLuint *"), + address("priorities", "const GLclampf *") + ) + } + file("TexturePerturbNormal", EXT, "GL_EXT_texture_perturb_normal") { + "GL_PERTURB_EXT"("0x85AE") + "GL_TEXTURE_NORMAL_EXT"("0x85AF") + "glTextureNormalEXT"(void, GLenum("mode")) + } + file( + "TextureSrgb", EXT, "GL_EXT_texture_sRGB", + "GL_SRGB_EXT" to "0x8C40", + "GL_SRGB8_EXT" to "0x8C41", + "GL_SRGB_ALPHA_EXT" to "0x8C42", + "GL_SRGB8_ALPHA8_EXT" to "0x8C43", + "GL_SLUMINANCE_ALPHA_EXT" to "0x8C44", + "GL_SLUMINANCE8_ALPHA8_EXT" to "0x8C45", + "GL_SLUMINANCE_EXT" to "0x8C46", + "GL_SLUMINANCE8_EXT" to "0x8C47", + "GL_COMPRESSED_SRGB_EXT" to "0x8C48", + "GL_COMPRESSED_SRGB_ALPHA_EXT" to "0x8C49", + "GL_COMPRESSED_SLUMINANCE_EXT" to "0x8C4A", + "GL_COMPRESSED_SLUMINANCE_ALPHA_EXT" to "0x8C4B", + "GL_COMPRESSED_SRGB_S3TC_DXT1_EXT" to "0x8C4C", + "GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT" to "0x8C4D", + "GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT" to "0x8C4E", + "GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT" to "0x8C4F" + ) + file("TextureSrgbR8", EXT, "GL_EXT_texture_sRGB_R8", "GL_SR8_EXT" to "0x8FBD") + file("TextureSrgbRGB", EXT, "GL_EXT_texture_sRGB_RG8", "GL_SRG8_EXT" to "0x8FBE") + file( + "TextureSrgbDecode", EXT, "GL_EXT_texture_sRGB_decode", + "GL_TEXTURE_SRGB_DECODE_EXT" to "0x8A48", + "GL_DECODE_EXT" to "0x8A49", + "GL_SKIP_DECODE_EXT" to "0x8A4A" + ) + file( + "TextureSharedExponent", EXT, "GL_EXT_texture_shared_exponent", + "GL_RGB9_E5_EXT" to "0x8C3D", + "GL_UNSIGNED_INT_5_9_9_9_REV_EXT" to "0x8C3E", + "GL_TEXTURE_SHARED_SIZE_EXT" to "0x8C3F", + ) + file( + "TextureSnorm", EXT, "GL_EXT_texture_snorm", + "GL_ALPHA_SNORM" to "0x9010", + "GL_LUMINANCE_SNORM" to "0x9011", + "GL_LUMINANCE_ALPHA_SNORM" to "0x9012", + "GL_INTENSITY_SNORM" to "0x9013", + "GL_ALPHA8_SNORM" to "0x9014", + "GL_LUMINANCE8_SNORM" to "0x9015", + "GL_LUMINANCE8_ALPHA8_SNORM" to "0x9016", + "GL_INTENSITY8_SNORM" to "0x9017", + "GL_ALPHA16_SNORM" to "0x9018", + "GL_LUMINANCE16_SNORM" to "0x9019", + "GL_LUMINANCE16_ALPHA16_SNORM" to "0x901A", + "GL_INTENSITY16_SNORM" to "0x901B", + "GL_RED_SNORM" to "0x8F90", + "GL_RG_SNORM" to "0x8F91", + "GL_RGB_SNORM" to "0x8F92", + "GL_RGBA_SNORM" to "0x8F93", + ) + file("TextureStorage", EXT, "GL_EXT_texture_storage") { + "GL_TEXTURE_IMMUTABLE_FORMAT_EXT"("0x912F") + "GL_RGBA32F_EXT"("0x8814") + "GL_RGB32F_EXT"("0x8815") + "GL_ALPHA32F_EXT"("0x8816") + "GL_LUMINANCE32F_EXT"("0x8818") + "GL_LUMINANCE_ALPHA32F_EXT"("0x8819") + "GL_RGBA16F_EXT"("0x881A") + "GL_RGB16F_EXT"("0x881B") + "GL_ALPHA16F_EXT"("0x881C") + "GL_LUMINANCE16F_EXT"("0x881E") + "GL_LUMINANCE_ALPHA16F_EXT"("0x881F") + "GL_BGRA8_EXT"("0x93A1") + "GL_R8_EXT"("0x8229") + "GL_RG8_EXT"("0x822B") + "GL_R32F_EXT"("0x822E") + "GL_RG32F_EXT"("0x8230") + "GL_R16F_EXT"("0x822D") + "GL_RG16F_EXT"("0x822F") + "glTexStorage1DEXT"(void, GLenum("target"), GLsizei("levels"), GLenum("internalformat"), GLsizei("width")) + "glTexStorage2DEXT"( + void, + GLenum("target"), + GLsizei("levels"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height") + ) + "glTexStorage3DEXT"( + void, + GLenum("target"), + GLsizei("levels"), + GLenum("internalformat"), + GLsizei("width"), + GLsizei("height"), + GLsizei("depth") + ) + } + file( + "TextureSwizzle", EXT, "GL_EXT_texture_swizzle", + "GL_TEXTURE_SWIZZLE_R_EXT" to "0x8E42", + "GL_TEXTURE_SWIZZLE_G_EXT" to "0x8E43", + "GL_TEXTURE_SWIZZLE_B_EXT" to "0x8E44", + "GL_TEXTURE_SWIZZLE_A_EXT" to "0x8E45", + "GL_TEXTURE_SWIZZLE_RGBA_EXT" to "0x8E46" + ) + file("TimerQuery", EXT, "GL_EXT_timer_query") { + "GL_TIME_ELAPSED_EXT"("0x88BF") + "glGetQueryObjecti64vEXT"(void, GLuint("id"), GLenum("pname"), address("params", "GLint64 *")) + "glGetQueryObjectui64vEXT"(void, GLuint("id"), GLenum("pname"), address("params", "GLuint64 *")) + } + file("TransformFeedback", EXT, "GL_EXT_transform_feedback") { + "GL_TRANSFORM_FEEDBACK_BUFFER_EXT"("0x8C8E") + "GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT"("0x8C84") + "GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT"("0x8C85") + "GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT"("0x8C8F") + "GL_INTERLEAVED_ATTRIBS_EXT"("0x8C8C") + "GL_SEPARATE_ATTRIBS_EXT"("0x8C8D") + "GL_PRIMITIVES_GENERATED_EXT"("0x8C87") + "GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT"("0x8C88") + "GL_RASTERIZER_DISCARD_EXT"("0x8C89") + "GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT"("0x8C8A") + "GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT"("0x8C8B") + "GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT"("0x8C80") + "GL_TRANSFORM_FEEDBACK_VARYINGS_EXT"("0x8C83") + "GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT"("0x8C7F") + "GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT"("0x8C76") + "glBeginTransformFeedbackEXT"(void, GLenum("primitiveMode")) + "glEndTransformFeedbackEXT"(void) + "glBindBufferRangeEXT"( + void, + GLenum("target"), + GLuint("index"), + GLuint("buffer"), + GLintptr("offset"), + GLsizeiptr("size") + ) + "glBindBufferOffsetEXT"(void, GLenum("target"), GLuint("index"), GLuint("buffer"), GLintptr("offset")) + "glBindBufferBaseEXT"(void, GLenum("target"), GLuint("index"), GLuint("buffer")) + "glTransformFeedbackVaryingsEXT"( + void, + GLuint("program"), + GLsizei("count"), + address("varyings", "const GLchar *const*"), + GLenum("bufferMode") + ) + "glGetTransformFeedbackVaryingEXT"( + void, + GLuint("program"), + GLuint("index"), + GLsizei("bufSize"), + address("length", "GLsizei *"), + address("size", "GLsizei *"), + address("type", "GLenum *"), + address("name", "GLchar *") + ) + } + file("VertexArray", EXT, "GL_EXT_vertex_array") { + "GL_VERTEX_ARRAY_EXT"("0x8074") + "GL_NORMAL_ARRAY_EXT"("0x8075") + "GL_COLOR_ARRAY_EXT"("0x8076") + "GL_INDEX_ARRAY_EXT"("0x8077") + "GL_TEXTURE_COORD_ARRAY_EXT"("0x8078") + "GL_EDGE_FLAG_ARRAY_EXT"("0x8079") + "GL_VERTEX_ARRAY_SIZE_EXT"("0x807A") + "GL_VERTEX_ARRAY_TYPE_EXT"("0x807B") + "GL_VERTEX_ARRAY_STRIDE_EXT"("0x807C") + "GL_VERTEX_ARRAY_COUNT_EXT"("0x807D") + "GL_NORMAL_ARRAY_TYPE_EXT"("0x807E") + "GL_NORMAL_ARRAY_STRIDE_EXT"("0x807F") + "GL_NORMAL_ARRAY_COUNT_EXT"("0x8080") + "GL_COLOR_ARRAY_SIZE_EXT"("0x8081") + "GL_COLOR_ARRAY_TYPE_EXT"("0x8082") + "GL_COLOR_ARRAY_STRIDE_EXT"("0x8083") + "GL_COLOR_ARRAY_COUNT_EXT"("0x8084") + "GL_INDEX_ARRAY_TYPE_EXT"("0x8085") + "GL_INDEX_ARRAY_STRIDE_EXT"("0x8086") + "GL_INDEX_ARRAY_COUNT_EXT"("0x8087") + "GL_TEXTURE_COORD_ARRAY_SIZE_EXT"("0x8088") + "GL_TEXTURE_COORD_ARRAY_TYPE_EXT"("0x8089") + "GL_TEXTURE_COORD_ARRAY_STRIDE_EXT"("0x808A") + "GL_TEXTURE_COORD_ARRAY_COUNT_EXT"("0x808B") + "GL_EDGE_FLAG_ARRAY_STRIDE_EXT"("0x808C") + "GL_EDGE_FLAG_ARRAY_COUNT_EXT"("0x808D") + "GL_VERTEX_ARRAY_POINTER_EXT"("0x808E") + "GL_NORMAL_ARRAY_POINTER_EXT"("0x808F") + "GL_COLOR_ARRAY_POINTER_EXT"("0x8090") + "GL_INDEX_ARRAY_POINTER_EXT"("0x8091") + "GL_TEXTURE_COORD_ARRAY_POINTER_EXT"("0x8092") + "GL_EDGE_FLAG_ARRAY_POINTER_EXT"("0x8093") + "glArrayElementEXT"(void, GLint("i")) + "glColorPointerEXT"( + void, + GLint("size"), + GLenum("type"), + GLsizei("stride"), + GLsizei("count"), + address("pointer", "const void *") + ) + "glDrawArraysEXT"(void, GLenum("mode"), GLint("first"), GLsizei("count")) + "glEdgeFlagPointerEXT"(void, GLsizei("stride"), GLsizei("count"), address("pointer", "const GLboolean *")) + "glGetPointervEXT"(void, GLenum("pname"), address("params", "void **")) + "glIndexPointerEXT"( + void, + GLenum("type"), + GLsizei("stride"), + GLsizei("count"), + address("pointer", "const void *") + ) + "glNormalPointerEXT"( + void, + GLenum("type"), + GLsizei("stride"), + GLsizei("count"), + address("pointer", "const void *") + ) + "glTexCoordPointerEXT"( + void, + GLint("size"), + GLenum("type"), + GLsizei("stride"), + GLsizei("count"), + address("pointer", "const void *") + ) + "glVertexPointerEXT"( + void, + GLint("size"), + GLenum("type"), + GLsizei("stride"), + GLsizei("count"), + address("pointer", "const void *") + ) + } + file("VertexAttrib64bit", EXT, "GL_EXT_vertex_attrib_64bit") { + "GL_DOUBLE_VEC2_EXT"("0x8FFC") + "GL_DOUBLE_VEC3_EXT"("0x8FFD") + "GL_DOUBLE_VEC4_EXT"("0x8FFE") + "GL_DOUBLE_MAT2_EXT"("0x8F46") + "GL_DOUBLE_MAT3_EXT"("0x8F47") + "GL_DOUBLE_MAT4_EXT"("0x8F48") + "GL_DOUBLE_MAT2x3_EXT"("0x8F49") + "GL_DOUBLE_MAT2x4_EXT"("0x8F4A") + "GL_DOUBLE_MAT3x2_EXT"("0x8F4B") + "GL_DOUBLE_MAT3x4_EXT"("0x8F4C") + "GL_DOUBLE_MAT4x2_EXT"("0x8F4D") + "GL_DOUBLE_MAT4x3_EXT"("0x8F4E") + "glVertexAttribL1dEXT"(void, GLuint("index"), GLdouble("x")) + "glVertexAttribL2dEXT"(void, GLuint("index"), GLdouble("x"), GLdouble("y")) + "glVertexAttribL3dEXT"(void, GLuint("index"), GLdouble("x"), GLdouble("y"), GLdouble("z")) + "glVertexAttribL4dEXT"(void, GLuint("index"), GLdouble("x"), GLdouble("y"), GLdouble("z"), GLdouble("w")) + "glVertexAttribL1dvEXT"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttribL2dvEXT"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttribL3dvEXT"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttribL4dvEXT"(void, GLuint("index"), address("v", "const GLdouble *")) + "glVertexAttribLPointerEXT"( + void, + GLuint("index"), + GLint("size"), + GLenum("type"), + GLsizei("stride"), + address("pointer", "const void *") + ) + "glGetVertexAttribLdvEXT"(void, GLuint("index"), GLenum("pname"), address("params", "GLdouble *")) + } + file("VertexShader", EXT, "GL_EXT_vertex_shader") { + "GL_VERTEX_SHADER_EXT"("0x8780") + "GL_VERTEX_SHADER_BINDING_EXT"("0x8781") + "GL_OP_INDEX_EXT"("0x8782") + "GL_OP_NEGATE_EXT"("0x8783") + "GL_OP_DOT3_EXT"("0x8784") + "GL_OP_DOT4_EXT"("0x8785") + "GL_OP_MUL_EXT"("0x8786") + "GL_OP_ADD_EXT"("0x8787") + "GL_OP_MADD_EXT"("0x8788") + "GL_OP_FRAC_EXT"("0x8789") + "GL_OP_MAX_EXT"("0x878A") + "GL_OP_MIN_EXT"("0x878B") + "GL_OP_SET_GE_EXT"("0x878C") + "GL_OP_SET_LT_EXT"("0x878D") + "GL_OP_CLAMP_EXT"("0x878E") + "GL_OP_FLOOR_EXT"("0x878F") + "GL_OP_ROUND_EXT"("0x8790") + "GL_OP_EXP_BASE_2_EXT"("0x8791") + "GL_OP_LOG_BASE_2_EXT"("0x8792") + "GL_OP_POWER_EXT"("0x8793") + "GL_OP_RECIP_EXT"("0x8794") + "GL_OP_RECIP_SQRT_EXT"("0x8795") + "GL_OP_SUB_EXT"("0x8796") + "GL_OP_CROSS_PRODUCT_EXT"("0x8797") + "GL_OP_MULTIPLY_MATRIX_EXT"("0x8798") + "GL_OP_MOV_EXT"("0x8799") + "GL_OUTPUT_VERTEX_EXT"("0x879A") + "GL_OUTPUT_COLOR0_EXT"("0x879B") + "GL_OUTPUT_COLOR1_EXT"("0x879C") + "GL_OUTPUT_TEXTURE_COORD0_EXT"("0x879D") + "GL_OUTPUT_TEXTURE_COORD1_EXT"("0x879E") + "GL_OUTPUT_TEXTURE_COORD2_EXT"("0x879F") + "GL_OUTPUT_TEXTURE_COORD3_EXT"("0x87A0") + "GL_OUTPUT_TEXTURE_COORD4_EXT"("0x87A1") + "GL_OUTPUT_TEXTURE_COORD5_EXT"("0x87A2") + "GL_OUTPUT_TEXTURE_COORD6_EXT"("0x87A3") + "GL_OUTPUT_TEXTURE_COORD7_EXT"("0x87A4") + "GL_OUTPUT_TEXTURE_COORD8_EXT"("0x87A5") + "GL_OUTPUT_TEXTURE_COORD9_EXT"("0x87A6") + "GL_OUTPUT_TEXTURE_COORD10_EXT"("0x87A7") + "GL_OUTPUT_TEXTURE_COORD11_EXT"("0x87A8") + "GL_OUTPUT_TEXTURE_COORD12_EXT"("0x87A9") + "GL_OUTPUT_TEXTURE_COORD13_EXT"("0x87AA") + "GL_OUTPUT_TEXTURE_COORD14_EXT"("0x87AB") + "GL_OUTPUT_TEXTURE_COORD15_EXT"("0x87AC") + "GL_OUTPUT_TEXTURE_COORD16_EXT"("0x87AD") + "GL_OUTPUT_TEXTURE_COORD17_EXT"("0x87AE") + "GL_OUTPUT_TEXTURE_COORD18_EXT"("0x87AF") + "GL_OUTPUT_TEXTURE_COORD19_EXT"("0x87B0") + "GL_OUTPUT_TEXTURE_COORD20_EXT"("0x87B1") + "GL_OUTPUT_TEXTURE_COORD21_EXT"("0x87B2") + "GL_OUTPUT_TEXTURE_COORD22_EXT"("0x87B3") + "GL_OUTPUT_TEXTURE_COORD23_EXT"("0x87B4") + "GL_OUTPUT_TEXTURE_COORD24_EXT"("0x87B5") + "GL_OUTPUT_TEXTURE_COORD25_EXT"("0x87B6") + "GL_OUTPUT_TEXTURE_COORD26_EXT"("0x87B7") + "GL_OUTPUT_TEXTURE_COORD27_EXT"("0x87B8") + "GL_OUTPUT_TEXTURE_COORD28_EXT"("0x87B9") + "GL_OUTPUT_TEXTURE_COORD29_EXT"("0x87BA") + "GL_OUTPUT_TEXTURE_COORD30_EXT"("0x87BB") + "GL_OUTPUT_TEXTURE_COORD31_EXT"("0x87BC") + "GL_OUTPUT_FOG_EXT"("0x87BD") + "GL_SCALAR_EXT"("0x87BE") + "GL_VECTOR_EXT"("0x87BF") + "GL_MATRIX_EXT"("0x87C0") + "GL_VARIANT_EXT"("0x87C1") + "GL_INVARIANT_EXT"("0x87C2") + "GL_LOCAL_CONSTANT_EXT"("0x87C3") + "GL_LOCAL_EXT"("0x87C4") + "GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT"("0x87C5") + "GL_MAX_VERTEX_SHADER_VARIANTS_EXT"("0x87C6") + "GL_MAX_VERTEX_SHADER_INVARIANTS_EXT"("0x87C7") + "GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT"("0x87C8") + "GL_MAX_VERTEX_SHADER_LOCALS_EXT"("0x87C9") + "GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT"("0x87CA") + "GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT"("0x87CB") + "GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT"("0x87CC") + "GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT"("0x87CD") + "GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT"("0x87CE") + "GL_VERTEX_SHADER_INSTRUCTIONS_EXT"("0x87CF") + "GL_VERTEX_SHADER_VARIANTS_EXT"("0x87D0") + "GL_VERTEX_SHADER_INVARIANTS_EXT"("0x87D1") + "GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT"("0x87D2") + "GL_VERTEX_SHADER_LOCALS_EXT"("0x87D3") + "GL_VERTEX_SHADER_OPTIMIZED_EXT"("0x87D4") + "GL_X_EXT"("0x87D5") + "GL_Y_EXT"("0x87D6") + "GL_Z_EXT"("0x87D7") + "GL_W_EXT"("0x87D8") + "GL_NEGATIVE_X_EXT"("0x87D9") + "GL_NEGATIVE_Y_EXT"("0x87DA") + "GL_NEGATIVE_Z_EXT"("0x87DB") + "GL_NEGATIVE_W_EXT"("0x87DC") + "GL_ZERO_EXT"("0x87DD") + "GL_ONE_EXT"("0x87DE") + "GL_NEGATIVE_ONE_EXT"("0x87DF") + "GL_NORMALIZED_RANGE_EXT"("0x87E0") + "GL_FULL_RANGE_EXT"("0x87E1") + "GL_CURRENT_VERTEX_EXT"("0x87E2") + "GL_MVP_MATRIX_EXT"("0x87E3") + "GL_VARIANT_VALUE_EXT"("0x87E4") + "GL_VARIANT_DATATYPE_EXT"("0x87E5") + "GL_VARIANT_ARRAY_STRIDE_EXT"("0x87E6") + "GL_VARIANT_ARRAY_TYPE_EXT"("0x87E7") + "GL_VARIANT_ARRAY_EXT"("0x87E8") + "GL_VARIANT_ARRAY_POINTER_EXT"("0x87E9") + "GL_INVARIANT_VALUE_EXT"("0x87EA") + "GL_INVARIANT_DATATYPE_EXT"("0x87EB") + "GL_LOCAL_CONSTANT_VALUE_EXT"("0x87EC") + "GL_LOCAL_CONSTANT_DATATYPE_EXT"("0x87ED") + "glBeginVertexShaderEXT"(void) + "glEndVertexShaderEXT"(void) + "glBindVertexShaderEXT"(void, GLuint("id")) + "glGenVertexShadersEXT"(GLuint, GLuint("range")) + "glDeleteVertexShaderEXT"(void, GLuint("id")) + "glShaderOp1EXT"(void, GLenum("op"), GLuint("res"), GLuint("arg1")) + "glShaderOp2EXT"(void, GLenum("op"), GLuint("res"), GLuint("arg1"), GLuint("arg2")) + "glShaderOp3EXT"(void, GLenum("op"), GLuint("res"), GLuint("arg1"), GLuint("arg2"), GLuint("arg3")) + "glSwizzleEXT"( + void, + GLuint("res"), + GLuint("in"), + GLenum("outX"), + GLenum("outY"), + GLenum("outZ"), + GLenum("outW") + ) + "glWriteMaskEXT"( + void, + GLuint("res"), + GLuint("in"), + GLenum("outX"), + GLenum("outY"), + GLenum("outZ"), + GLenum("outW") + ) + "glInsertComponentEXT"(void, GLuint("res"), GLuint("src"), GLuint("num")) + "glExtractComponentEXT"(void, GLuint("res"), GLuint("src"), GLuint("num")) + "glGenSymbolsEXT"(GLuint, GLenum("datatype"), GLenum("storagetype"), GLenum("range"), GLuint("components")) + "glSetInvariantEXT"(void, GLuint("id"), GLenum("type"), address("addr", "const void *")) + "glSetLocalConstantEXT"(void, GLuint("id"), GLenum("type"), address("addr", "const void *")) + "glVariantbvEXT"(void, GLuint("id"), address("addr", "const GLbyte *")) + "glVariantsvEXT"(void, GLuint("id"), address("addr", "const GLshort *")) + "glVariantivEXT"(void, GLuint("id"), address("addr", "const GLint *")) + "glVariantfvEXT"(void, GLuint("id"), address("addr", "const GLfloat *")) + "glVariantdvEXT"(void, GLuint("id"), address("addr", "const GLdouble *")) + "glVariantubvEXT"(void, GLuint("id"), address("addr", "const GLubyte *")) + "glVariantusvEXT"(void, GLuint("id"), address("addr", "const GLushort *")) + "glVariantuivEXT"(void, GLuint("id"), address("addr", "const GLuint *")) + "glVariantPointerEXT"(void, GLuint("id"), GLenum("type"), GLuint("stride"), address("addr", "const void *")) + "glEnableVariantClientStateEXT"(void, GLuint("id")) + "glDisableVariantClientStateEXT"(void, GLuint("id")) + "glBindLightParameterEXT"(GLuint, GLenum("light"), GLenum("value")) + "glBindMaterialParameterEXT"(GLuint, GLenum("face"), GLenum("value")) + "glBindTexGenParameterEXT"(GLuint, GLenum("unit"), GLenum("coord"), GLenum("value")) + "glBindTextureUnitParameterEXT"(GLuint, GLenum("unit"), GLenum("value")) + "glBindParameterEXT"(GLuint, GLenum("value")) + "glIsVariantEnabledEXT"(GLboolean, GLuint("id"), GLenum("cap")) + "glGetVariantBooleanvEXT"(void, GLuint("id"), GLenum("value"), address("data", "GLboolean *")) + "glGetVariantIntegervEXT"(void, GLuint("id"), GLenum("value"), address("data", "GLint *")) + "glGetVariantFloatvEXT"(void, GLuint("id"), GLenum("value"), address("data", "GLfloat *")) + "glGetVariantPointervEXT"(void, GLuint("id"), GLenum("value"), address("data", "void **")) + "glGetInvariantBooleanvEXT"(void, GLuint("id"), GLenum("value"), address("data", "GLboolean *")) + "glGetInvariantIntegervEXT"(void, GLuint("id"), GLenum("value"), address("data", "GLint *")) + "glGetInvariantFloatvEXT"(void, GLuint("id"), GLenum("value"), address("data", "GLfloat *")) + "glGetLocalConstantBooleanvEXT"(void, GLuint("id"), GLenum("value"), address("data", "GLboolean *")) + "glGetLocalConstantIntegervEXT"(void, GLuint("id"), GLenum("value"), address("data", "GLint *")) + "glGetLocalConstantFloatvEXT"(void, GLuint("id"), GLenum("value"), address("data", "GLfloat *")) + } + file("VertexWeighting", EXT, "GL_EXT_vertex_weighting") { + "GL_MODELVIEW0_STACK_DEPTH_EXT"("0x0BA3") + "GL_MODELVIEW1_STACK_DEPTH_EXT"("0x8502") + "GL_MODELVIEW0_MATRIX_EXT"("0x0BA6") + "GL_MODELVIEW1_MATRIX_EXT"("0x8506") + "GL_VERTEX_WEIGHTING_EXT"("0x8509") + "GL_MODELVIEW0_EXT"("0x1700") + "GL_MODELVIEW1_EXT"("0x850A") + "GL_CURRENT_VERTEX_WEIGHT_EXT"("0x850B") + "GL_VERTEX_WEIGHT_ARRAY_EXT"("0x850C") + "GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT"("0x850D") + "GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT"("0x850E") + "GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT"("0x850F") + "GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT"("0x8510") + "glVertexWeightfEXT"(void, GLfloat("weight")) + "glVertexWeightfvEXT"(void, address("weight", "const GLfloat *")) + "glVertexWeightPointerEXT"( + void, + GLint("size"), + GLenum("type"), + GLsizei("stride"), + address("pointer", "const void *") + ) + } + file("Win32KeyedMutex", EXT, "GL_EXT_win32_keyed_mutex") { + "glAcquireKeyedMutexWin32EXT"(GLboolean, GLuint("memory"), GLuint64("key"), GLuint("timeout")) + "glReleaseKeyedMutexWin32EXT"(GLboolean, GLuint("memory"), GLuint64("key")) + } + file("WindowRectangles", EXT, "GL_EXT_window_rectangles") { + "GL_INCLUSIVE_EXT"("0x8F10") + "GL_EXCLUSIVE_EXT"("0x8F11") + "GL_WINDOW_RECTANGLE_EXT"("0x8F12") + "GL_WINDOW_RECTANGLE_MODE_EXT"("0x8F13") + "GL_MAX_WINDOW_RECTANGLES_EXT"("0x8F14") + "GL_NUM_WINDOW_RECTANGLES_EXT"("0x8F15") + "glWindowRectanglesEXT"(void, GLenum("mode"), GLsizei("count"), address("box", "const GLint *")) + } + file("X11SyncObject", EXT, "GL_EXT_x11_sync_object") { + "GL_SYNC_X11_FENCE_EXT"("0x90E1") + "glImportSyncEXT"( + address, + GLenum("external_sync_type"), + GLintptr("external_sync"), + GLbitfield("flags"), + nativeType = "GLsync" + ) + } } diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java index 239f76c6..344bc8b7 100644 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLExtCaps.java @@ -132,49 +132,56 @@ public GLExtCaps(GLCapabilities caps) { glTexStorageMem2DMultisampleEXT, glTexStorageMem3DEXT, glTexStorageMem3DMultisampleEXT, glBufferStorageMemEXT, glTextureStorageMem2DEXT, glTextureStorageMem2DMultisampleEXT, glTextureStorageMem3DEXT, glTextureStorageMem3DMultisampleEXT, glNamedBufferStorageMemEXT, glTexStorageMem1DEXT, glTextureStorageMem1DEXT, glImportMemoryFdEXT, glImportMemoryWin32HandleEXT, glImportMemoryWin32NameEXT, glMultiDrawArraysEXT, glMultiDrawElementsEXT, glSampleMaskEXT, glSamplePatternEXT, glColorTableEXT, glGetColorTableEXT, glGetColorTableParameterivEXT, glGetColorTableParameterfvEXT, glPixelTransformParameteriEXT, glPixelTransformParameterfEXT, glPixelTransformParameterivEXT, glPixelTransformParameterfvEXT, glGetPixelTransformParameterivEXT, glGetPixelTransformParameterfvEXT, glPointParameterfEXT, glPointParameterfvEXT, glPolygonOffsetEXT, glPolygonOffsetClampEXT, glProvokingVertexEXT, glRasterSamplesEXT, glSecondaryColor3bEXT, glSecondaryColor3bvEXT, glSecondaryColor3dEXT, glSecondaryColor3dvEXT, glSecondaryColor3fEXT, glSecondaryColor3fvEXT, glSecondaryColor3iEXT, glSecondaryColor3ivEXT, glSecondaryColor3sEXT, glSecondaryColor3svEXT, glSecondaryColor3ubEXT, glSecondaryColor3ubvEXT, glSecondaryColor3uiEXT, glSecondaryColor3uivEXT, - glSecondaryColor3usEXT, glSecondaryColor3usvEXT, glSecondaryColorPointerEXT, glGenSemaphoresEXT, glDeleteSemaphoresEXT, glIsSemaphoreEXT, glSemaphoreParameterui64vEXT, glGetSemaphoreParameterui64vEXT, glWaitSemaphoreEXT, glSignalSemaphoreEXT, glImportSemaphoreFdEXT, glImportSemaphoreWin32HandleEXT, glImportSemaphoreWin32NameEXT, glFrameTerminatorGREMEDY, glStringMarkerGREMEDY, glImageTransformParameteriHP, - glImageTransformParameterfHP, glImageTransformParameterivHP, glImageTransformParameterfvHP, glGetImageTransformParameterivHP, glGetImageTransformParameterfvHP, glMultiModeDrawArraysIBM, glMultiModeDrawElementsIBM, glFlushStaticDataIBM, glColorPointerListIBM, glSecondaryColorPointerListIBM, glEdgeFlagPointerListIBM, glFogCoordPointerListIBM, glIndexPointerListIBM, glNormalPointerListIBM, glTexCoordPointerListIBM, glVertexPointerListIBM, - glBlendFuncSeparateINGR, glApplyFramebufferAttachmentCMAAINTEL, glSyncTextureINTEL, glUnmapTexture2DINTEL, glMapTexture2DINTEL, glVertexPointervINTEL, glNormalPointervINTEL, glColorPointervINTEL, glTexCoordPointervINTEL, glBeginPerfQueryINTEL, glCreatePerfQueryINTEL, glDeletePerfQueryINTEL, glEndPerfQueryINTEL, glGetFirstPerfQueryIdINTEL, glGetNextPerfQueryIdINTEL, glGetPerfCounterInfoINTEL, - glGetPerfQueryDataINTEL, glGetPerfQueryIdByNameINTEL, glGetPerfQueryInfoINTEL, glFramebufferParameteriMESA, glGetFramebufferParameterivMESA, glResizeBuffersMESA, glWindowPos2dMESA, glWindowPos2dvMESA, glWindowPos2fMESA, glWindowPos2fvMESA, glWindowPos2iMESA, glWindowPos2ivMESA, glWindowPos2sMESA, glWindowPos2svMESA, glWindowPos3dMESA, glWindowPos3dvMESA, - glWindowPos3fMESA, glWindowPos3fvMESA, glWindowPos3iMESA, glWindowPos3ivMESA, glWindowPos3sMESA, glWindowPos3svMESA, glWindowPos4dMESA, glWindowPos4dvMESA, glWindowPos4fMESA, glWindowPos4fvMESA, glWindowPos4iMESA, glWindowPos4ivMESA, glWindowPos4sMESA, glWindowPos4svMESA, glBeginConditionalRenderNVX, glEndConditionalRenderNVX, - glUploadGpuMaskNVX, glMulticastViewportArrayvNVX, glMulticastViewportPositionWScaleNVX, glMulticastScissorArrayvNVX, glAsyncCopyBufferSubDataNVX, glAsyncCopyImageSubDataNVX, glLGPUNamedBufferSubDataNVX, glLGPUCopyImageSubDataNVX, glLGPUInterlockNVX, glCreateProgressFenceNVX, glSignalSemaphoreui64NVX, glWaitSemaphoreui64NVX, glClientWaitSemaphoreui64NVX, glAlphaToCoverageDitherControlNV, glMultiDrawArraysIndirectBindlessNV, glMultiDrawElementsIndirectBindlessNV, - glMultiDrawArraysIndirectBindlessCountNV, glMultiDrawElementsIndirectBindlessCountNV, glGetTextureHandleNV, glGetTextureSamplerHandleNV, glMakeTextureHandleResidentNV, glMakeTextureHandleNonResidentNV, glGetImageHandleNV, glMakeImageHandleResidentNV, glMakeImageHandleNonResidentNV, glUniformHandleui64NV, glUniformHandleui64vNV, glProgramUniformHandleui64NV, glProgramUniformHandleui64vNV, glIsTextureHandleResidentNV, glIsImageHandleResidentNV, glBlendParameteriNV, - glBlendBarrierNV, glViewportPositionWScaleNV, glCreateStatesNV, glDeleteStatesNV, glIsStateNV, glStateCaptureNV, glGetCommandHeaderNV, glGetStageIndexNV, glDrawCommandsNV, glDrawCommandsAddressNV, glDrawCommandsStatesNV, glDrawCommandsStatesAddressNV, glCreateCommandListsNV, glDeleteCommandListsNV, glIsCommandListNV, glListDrawCommandsStatesClientNV, - glCommandListSegmentsNV, glCompileCommandListNV, glCallCommandListNV, glBeginConditionalRenderNV, glEndConditionalRenderNV, glSubpixelPrecisionBiasNV, glConservativeRasterParameterfNV, glConservativeRasterParameteriNV, glCopyImageSubDataNV, glDepthRangedNV, glClearDepthdNV, glDepthBoundsdNV, glDrawTextureNV, glDrawVkImageNV, glGetVkProcAddrNV, glWaitVkSemaphoreNV, - glSignalVkSemaphoreNV, glSignalVkFenceNV, glMapControlPointsNV, glMapParameterivNV, glMapParameterfvNV, glGetMapControlPointsNV, glGetMapParameterivNV, glGetMapParameterfvNV, glGetMapAttribParameterivNV, glGetMapAttribParameterfvNV, glEvalMapsNV, glGetMultisamplefvNV, glSampleMaskIndexedNV, glTexRenderbufferNV, glDeleteFencesNV, glGenFencesNV, - glIsFenceNV, glTestFenceNV, glGetFenceivNV, glFinishFenceNV, glSetFenceNV, glFragmentCoverageColorNV, glProgramNamedParameter4fNV, glProgramNamedParameter4fvNV, glProgramNamedParameter4dNV, glProgramNamedParameter4dvNV, glGetProgramNamedParameterfvNV, glGetProgramNamedParameterdvNV, glCoverageModulationTableNV, glGetCoverageModulationTableNV, glCoverageModulationNV, glRenderbufferStorageMultisampleCoverageNV, - glProgramVertexLimitNV, glFramebufferTextureEXT, glFramebufferTextureFaceEXT, glRenderGpuMaskNV, glMulticastBufferSubDataNV, glMulticastCopyBufferSubDataNV, glMulticastCopyImageSubDataNV, glMulticastBlitFramebufferNV, glMulticastFramebufferSampleLocationsfvNV, glMulticastBarrierNV, glMulticastWaitSyncNV, glMulticastGetQueryObjectivNV, glMulticastGetQueryObjectuivNV, glMulticastGetQueryObjecti64vNV, glMulticastGetQueryObjectui64vNV, glProgramLocalParameterI4iNV, - glProgramLocalParameterI4ivNV, glProgramLocalParametersI4ivNV, glProgramLocalParameterI4uiNV, glProgramLocalParameterI4uivNV, glProgramLocalParametersI4uivNV, glProgramEnvParameterI4iNV, glProgramEnvParameterI4ivNV, glProgramEnvParametersI4ivNV, glProgramEnvParameterI4uiNV, glProgramEnvParameterI4uivNV, glProgramEnvParametersI4uivNV, glGetProgramLocalParameterIivNV, glGetProgramLocalParameterIuivNV, glGetProgramEnvParameterIivNV, glGetProgramEnvParameterIuivNV, glProgramSubroutineParametersuivNV, - glGetProgramSubroutineParameteruivNV, glVertex2hNV, glVertex2hvNV, glVertex3hNV, glVertex3hvNV, glVertex4hNV, glVertex4hvNV, glNormal3hNV, glNormal3hvNV, glColor3hNV, glColor3hvNV, glColor4hNV, glColor4hvNV, glTexCoord1hNV, glTexCoord1hvNV, glTexCoord2hNV, - glTexCoord2hvNV, glTexCoord3hNV, glTexCoord3hvNV, glTexCoord4hNV, glTexCoord4hvNV, glMultiTexCoord1hNV, glMultiTexCoord1hvNV, glMultiTexCoord2hNV, glMultiTexCoord2hvNV, glMultiTexCoord3hNV, glMultiTexCoord3hvNV, glMultiTexCoord4hNV, glMultiTexCoord4hvNV, glVertexAttrib1hNV, glVertexAttrib1hvNV, glVertexAttrib2hNV, - glVertexAttrib2hvNV, glVertexAttrib3hNV, glVertexAttrib3hvNV, glVertexAttrib4hNV, glVertexAttrib4hvNV, glVertexAttribs1hvNV, glVertexAttribs2hvNV, glVertexAttribs3hvNV, glVertexAttribs4hvNV, glFogCoordhNV, glFogCoordhvNV, glSecondaryColor3hNV, glSecondaryColor3hvNV, glVertexWeighthNV, glVertexWeighthvNV, glGetInternalformatSampleivNV, - glGetMemoryObjectDetachedResourcesuivNV, glResetMemoryObjectParameterNV, glTexAttachMemoryNV, glBufferAttachMemoryNV, glTextureAttachMemoryNV, glNamedBufferAttachMemoryNV, glBufferPageCommitmentMemNV, glTexPageCommitmentMemNV, glNamedBufferPageCommitmentMemNV, glTexturePageCommitmentMemNV, glDrawMeshTasksNV, glDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectCountNV, glGenOcclusionQueriesNV, glDeleteOcclusionQueriesNV, - glIsOcclusionQueryNV, glBeginOcclusionQueryNV, glEndOcclusionQueryNV, glGetOcclusionQueryivNV, glGetOcclusionQueryuivNV, glProgramBufferParametersfvNV, glProgramBufferParametersIivNV, glProgramBufferParametersIuivNV, glGenPathsNV, glDeletePathsNV, glIsPathNV, glPathCommandsNV, glPathCoordsNV, glPathSubCommandsNV, glPathSubCoordsNV, glPathStringNV, - glPathGlyphsNV, glPathGlyphRangeNV, glWeightPathsNV, glCopyPathNV, glInterpolatePathsNV, glTransformPathNV, glPathParameterivNV, glPathParameteriNV, glPathParameterfvNV, glPathParameterfNV, glPathDashArrayNV, glPathStencilFuncNV, glPathStencilDepthOffsetNV, glStencilFillPathNV, glStencilStrokePathNV, glStencilFillPathInstancedNV, - glStencilStrokePathInstancedNV, glPathCoverDepthFuncNV, glCoverFillPathNV, glCoverStrokePathNV, glCoverFillPathInstancedNV, glCoverStrokePathInstancedNV, glGetPathParameterivNV, glGetPathParameterfvNV, glGetPathCommandsNV, glGetPathCoordsNV, glGetPathDashArrayNV, glGetPathMetricsNV, glGetPathMetricRangeNV, glGetPathSpacingNV, glIsPointInFillPathNV, glIsPointInStrokePathNV, - glGetPathLengthNV, glPointAlongPathNV, glMatrixLoad3x2fNV, glMatrixLoad3x3fNV, glMatrixLoadTranspose3x3fNV, glMatrixMult3x2fNV, glMatrixMult3x3fNV, glMatrixMultTranspose3x3fNV, glStencilThenCoverFillPathNV, glStencilThenCoverStrokePathNV, glStencilThenCoverFillPathInstancedNV, glStencilThenCoverStrokePathInstancedNV, glPathGlyphIndexRangeNV, glPathGlyphIndexArrayNV, glPathMemoryGlyphIndexArrayNV, glProgramPathFragmentInputGenNV, - glGetProgramResourcefvNV, glPathColorGenNV, glPathTexGenNV, glPathFogGenNV, glGetPathColorGenivNV, glGetPathColorGenfvNV, glGetPathTexGenivNV, glGetPathTexGenfvNV, glPixelDataRangeNV, glFlushPixelDataRangeNV, glPointParameteriNV, glPointParameterivNV, glPresentFrameKeyedNV, glPresentFrameDualFillNV, glGetVideoivNV, glGetVideouivNV, - glGetVideoi64vNV, glGetVideoui64vNV, glPrimitiveRestartNV, glPrimitiveRestartIndexNV, glQueryResourceNV, glGenQueryResourceTagNV, glDeleteQueryResourceTagNV, glQueryResourceTagNV, glCombinerParameterfvNV, glCombinerParameterfNV, glCombinerParameterivNV, glCombinerParameteriNV, glCombinerInputNV, glCombinerOutputNV, glFinalCombinerInputNV, glGetCombinerInputParameterfvNV, - glGetCombinerInputParameterivNV, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterivNV, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterivNV, glCombinerStageParameterfvNV, glGetCombinerStageParameterfvNV, glFramebufferSampleLocationsfvNV, glNamedFramebufferSampleLocationsfvNV, glResolveDepthValuesNV, glScissorExclusiveNV, glScissorExclusiveArrayvNV, glMakeBufferResidentNV, glMakeBufferNonResidentNV, glIsBufferResidentNV, glMakeNamedBufferResidentNV, - glMakeNamedBufferNonResidentNV, glIsNamedBufferResidentNV, glGetBufferParameterui64vNV, glGetNamedBufferParameterui64vNV, glGetIntegerui64vNV, glUniformui64NV, glUniformui64vNV, glProgramUniformui64NV, glProgramUniformui64vNV, glBindShadingRateImageNV, glGetShadingRateImagePaletteNV, glGetShadingRateSampleLocationivNV, glShadingRateImageBarrierNV, glShadingRateImagePaletteNV, glShadingRateSampleOrderNV, glShadingRateSampleOrderCustomNV, - glTextureBarrierNV, glTexImage2DMultisampleCoverageNV, glTexImage3DMultisampleCoverageNV, glTextureImage2DMultisampleNV, glTextureImage3DMultisampleNV, glTextureImage2DMultisampleCoverageNV, glTextureImage3DMultisampleCoverageNV, glCreateSemaphoresNV, glSemaphoreParameterivNV, glGetSemaphoreParameterivNV, glBeginTransformFeedbackNV, glEndTransformFeedbackNV, glTransformFeedbackAttribsNV, glBindBufferRangeNV, glBindBufferOffsetNV, glBindBufferBaseNV, - glTransformFeedbackVaryingsNV, glActiveVaryingNV, glGetVaryingLocationNV, glGetActiveVaryingNV, glGetTransformFeedbackVaryingNV, glTransformFeedbackStreamAttribsNV, glBindTransformFeedbackNV, glDeleteTransformFeedbacksNV, glGenTransformFeedbacksNV, glIsTransformFeedbackNV, glPauseTransformFeedbackNV, glResumeTransformFeedbackNV, glDrawTransformFeedbackNV, glVDPAUInitNV, glVDPAUFiniNV, glVDPAURegisterVideoSurfaceNV, - glVDPAURegisterOutputSurfaceNV, glVDPAUIsSurfaceNV, glVDPAUUnregisterSurfaceNV, glVDPAUGetSurfaceivNV, glVDPAUSurfaceAccessNV, glVDPAUMapSurfacesNV, glVDPAUUnmapSurfacesNV, glVDPAURegisterVideoSurfaceWithPictureStructureNV, glFlushVertexArrayRangeNV, glVertexArrayRangeNV, glVertexAttribL1i64NV, glVertexAttribL2i64NV, glVertexAttribL3i64NV, glVertexAttribL4i64NV, glVertexAttribL1i64vNV, glVertexAttribL2i64vNV, - glVertexAttribL3i64vNV, glVertexAttribL4i64vNV, glVertexAttribL1ui64NV, glVertexAttribL2ui64NV, glVertexAttribL3ui64NV, glVertexAttribL4ui64NV, glVertexAttribL1ui64vNV, glVertexAttribL2ui64vNV, glVertexAttribL3ui64vNV, glVertexAttribL4ui64vNV, glGetVertexAttribLi64vNV, glGetVertexAttribLui64vNV, glVertexAttribLFormatNV, glBufferAddressRangeNV, glVertexFormatNV, glNormalFormatNV, - glColorFormatNV, glIndexFormatNV, glTexCoordFormatNV, glEdgeFlagFormatNV, glSecondaryColorFormatNV, glFogCoordFormatNV, glVertexAttribFormatNV, glVertexAttribIFormatNV, glGetIntegerui64i_vNV, glAreProgramsResidentNV, glBindProgramNV, glDeleteProgramsNV, glExecuteProgramNV, glGenProgramsNV, glGetProgramParameterdvNV, glGetProgramParameterfvNV, - glGetProgramivNV, glGetProgramStringNV, glGetTrackMatrixivNV, glGetVertexAttribdvNV, glGetVertexAttribfvNV, glGetVertexAttribivNV, glGetVertexAttribPointervNV, glIsProgramNV, glLoadProgramNV, glProgramParameter4dNV, glProgramParameter4dvNV, glProgramParameter4fNV, glProgramParameter4fvNV, glProgramParameters4dvNV, glProgramParameters4fvNV, glRequestResidentProgramsNV, - glTrackMatrixNV, glVertexAttribPointerNV, glVertexAttrib1dNV, glVertexAttrib1dvNV, glVertexAttrib1fNV, glVertexAttrib1fvNV, glVertexAttrib1sNV, glVertexAttrib1svNV, glVertexAttrib2dNV, glVertexAttrib2dvNV, glVertexAttrib2fNV, glVertexAttrib2fvNV, glVertexAttrib2sNV, glVertexAttrib2svNV, glVertexAttrib3dNV, glVertexAttrib3dvNV, - glVertexAttrib3fNV, glVertexAttrib3fvNV, glVertexAttrib3sNV, glVertexAttrib3svNV, glVertexAttrib4dNV, glVertexAttrib4dvNV, glVertexAttrib4fNV, glVertexAttrib4fvNV, glVertexAttrib4sNV, glVertexAttrib4svNV, glVertexAttrib4ubNV, glVertexAttrib4ubvNV, glVertexAttribs1dvNV, glVertexAttribs1fvNV, glVertexAttribs1svNV, glVertexAttribs2dvNV, - glVertexAttribs2fvNV, glVertexAttribs2svNV, glVertexAttribs3dvNV, glVertexAttribs3fvNV, glVertexAttribs3svNV, glVertexAttribs4dvNV, glVertexAttribs4fvNV, glVertexAttribs4svNV, glVertexAttribs4ubvNV, glBeginVideoCaptureNV, glBindVideoCaptureStreamBufferNV, glBindVideoCaptureStreamTextureNV, glEndVideoCaptureNV, glGetVideoCaptureivNV, glGetVideoCaptureStreamivNV, glGetVideoCaptureStreamfvNV, - glGetVideoCaptureStreamdvNV, glVideoCaptureNV, glVideoCaptureStreamParameterivNV, glVideoCaptureStreamParameterfvNV, glVideoCaptureStreamParameterdvNV, glViewportSwizzleNV, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, glFogFuncSGIS, glGetFogFuncSGIS, glSampleMaskSGIS, glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, - glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, glTexSubImage4DSGIS, glTextureColorMaskSGIS, glGetTexFilterFuncSGIS, glTexFilterFuncSGIS, glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, - glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, glFlushRasterSGIX, glFragmentColorMaterialSGIX, glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, glFragmentLightModelfSGIX, glFragmentLightModelfvSGIX, glFragmentLightModeliSGIX, glFragmentLightModelivSGIX, glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, - glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, glInstrumentsBufferSGIX, glPollInstrumentsSGIX, glReadInstrumentsSGIX, glStartInstrumentsSGIX, glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, - glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, glListParameterivSGIX, glPixelTexGenSGIX, glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, glReferencePlaneSGIX, glSpriteParameterfSGIX, glSpriteParameterfvSGIX, glSpriteParameteriSGIX, glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, - glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, glGetColorTableSGI, glGetColorTableParameterfvSGI, glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, - glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, - glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, - glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; + glSecondaryColor3usEXT, glSecondaryColor3usvEXT, glSecondaryColorPointerEXT, glGenSemaphoresEXT, glDeleteSemaphoresEXT, glIsSemaphoreEXT, glSemaphoreParameterui64vEXT, glGetSemaphoreParameterui64vEXT, glWaitSemaphoreEXT, glSignalSemaphoreEXT, glImportSemaphoreFdEXT, glImportSemaphoreWin32HandleEXT, glImportSemaphoreWin32NameEXT, glUseShaderProgramEXT, glActiveProgramEXT, glCreateShaderProgramEXT, + glFramebufferFetchBarrierEXT, glBindImageTextureEXT, glMemoryBarrierEXT, glStencilClearTagEXT, glActiveStencilFaceEXT, glTexSubImage1DEXT, glTexSubImage2DEXT, glTexImage3DEXT, glTexSubImage3DEXT, glFramebufferTextureLayerEXT, glTexBufferEXT, glTexParameterIivEXT, glTexParameterIuivEXT, glGetTexParameterIivEXT, glGetTexParameterIuivEXT, glClearColorIiEXT, + glClearColorIuiEXT, glAreTexturesResidentEXT, glBindTextureEXT, glDeleteTexturesEXT, glGenTexturesEXT, glIsTextureEXT, glPrioritizeTexturesEXT, glTextureNormalEXT, glTexStorage1DEXT, glTexStorage2DEXT, glTexStorage3DEXT, glGetQueryObjecti64vEXT, glGetQueryObjectui64vEXT, glBeginTransformFeedbackEXT, glEndTransformFeedbackEXT, glBindBufferRangeEXT, + glBindBufferOffsetEXT, glBindBufferBaseEXT, glTransformFeedbackVaryingsEXT, glGetTransformFeedbackVaryingEXT, glArrayElementEXT, glColorPointerEXT, glDrawArraysEXT, glEdgeFlagPointerEXT, glGetPointervEXT, glIndexPointerEXT, glNormalPointerEXT, glTexCoordPointerEXT, glVertexPointerEXT, glVertexAttribL1dEXT, glVertexAttribL2dEXT, glVertexAttribL3dEXT, + glVertexAttribL4dEXT, glVertexAttribL1dvEXT, glVertexAttribL2dvEXT, glVertexAttribL3dvEXT, glVertexAttribL4dvEXT, glVertexAttribLPointerEXT, glGetVertexAttribLdvEXT, glBeginVertexShaderEXT, glEndVertexShaderEXT, glBindVertexShaderEXT, glGenVertexShadersEXT, glDeleteVertexShaderEXT, glShaderOp1EXT, glShaderOp2EXT, glShaderOp3EXT, glSwizzleEXT, + glWriteMaskEXT, glInsertComponentEXT, glExtractComponentEXT, glGenSymbolsEXT, glSetInvariantEXT, glSetLocalConstantEXT, glVariantbvEXT, glVariantsvEXT, glVariantivEXT, glVariantfvEXT, glVariantdvEXT, glVariantubvEXT, glVariantusvEXT, glVariantuivEXT, glVariantPointerEXT, glEnableVariantClientStateEXT, + glDisableVariantClientStateEXT, glBindLightParameterEXT, glBindMaterialParameterEXT, glBindTexGenParameterEXT, glBindTextureUnitParameterEXT, glBindParameterEXT, glIsVariantEnabledEXT, glGetVariantBooleanvEXT, glGetVariantIntegervEXT, glGetVariantFloatvEXT, glGetVariantPointervEXT, glGetInvariantBooleanvEXT, glGetInvariantIntegervEXT, glGetInvariantFloatvEXT, glGetLocalConstantBooleanvEXT, glGetLocalConstantIntegervEXT, + glGetLocalConstantFloatvEXT, glVertexWeightfEXT, glVertexWeightfvEXT, glVertexWeightPointerEXT, glAcquireKeyedMutexWin32EXT, glReleaseKeyedMutexWin32EXT, glWindowRectanglesEXT, glImportSyncEXT, glFrameTerminatorGREMEDY, glStringMarkerGREMEDY, glImageTransformParameteriHP, glImageTransformParameterfHP, glImageTransformParameterivHP, glImageTransformParameterfvHP, glGetImageTransformParameterivHP, glGetImageTransformParameterfvHP, + glMultiModeDrawArraysIBM, glMultiModeDrawElementsIBM, glFlushStaticDataIBM, glColorPointerListIBM, glSecondaryColorPointerListIBM, glEdgeFlagPointerListIBM, glFogCoordPointerListIBM, glIndexPointerListIBM, glNormalPointerListIBM, glTexCoordPointerListIBM, glVertexPointerListIBM, glBlendFuncSeparateINGR, glApplyFramebufferAttachmentCMAAINTEL, glSyncTextureINTEL, glUnmapTexture2DINTEL, glMapTexture2DINTEL, + glVertexPointervINTEL, glNormalPointervINTEL, glColorPointervINTEL, glTexCoordPointervINTEL, glBeginPerfQueryINTEL, glCreatePerfQueryINTEL, glDeletePerfQueryINTEL, glEndPerfQueryINTEL, glGetFirstPerfQueryIdINTEL, glGetNextPerfQueryIdINTEL, glGetPerfCounterInfoINTEL, glGetPerfQueryDataINTEL, glGetPerfQueryIdByNameINTEL, glGetPerfQueryInfoINTEL, glFramebufferParameteriMESA, glGetFramebufferParameterivMESA, + glResizeBuffersMESA, glWindowPos2dMESA, glWindowPos2dvMESA, glWindowPos2fMESA, glWindowPos2fvMESA, glWindowPos2iMESA, glWindowPos2ivMESA, glWindowPos2sMESA, glWindowPos2svMESA, glWindowPos3dMESA, glWindowPos3dvMESA, glWindowPos3fMESA, glWindowPos3fvMESA, glWindowPos3iMESA, glWindowPos3ivMESA, glWindowPos3sMESA, + glWindowPos3svMESA, glWindowPos4dMESA, glWindowPos4dvMESA, glWindowPos4fMESA, glWindowPos4fvMESA, glWindowPos4iMESA, glWindowPos4ivMESA, glWindowPos4sMESA, glWindowPos4svMESA, glBeginConditionalRenderNVX, glEndConditionalRenderNVX, glUploadGpuMaskNVX, glMulticastViewportArrayvNVX, glMulticastViewportPositionWScaleNVX, glMulticastScissorArrayvNVX, glAsyncCopyBufferSubDataNVX, + glAsyncCopyImageSubDataNVX, glLGPUNamedBufferSubDataNVX, glLGPUCopyImageSubDataNVX, glLGPUInterlockNVX, glCreateProgressFenceNVX, glSignalSemaphoreui64NVX, glWaitSemaphoreui64NVX, glClientWaitSemaphoreui64NVX, glAlphaToCoverageDitherControlNV, glMultiDrawArraysIndirectBindlessNV, glMultiDrawElementsIndirectBindlessNV, glMultiDrawArraysIndirectBindlessCountNV, glMultiDrawElementsIndirectBindlessCountNV, glGetTextureHandleNV, glGetTextureSamplerHandleNV, glMakeTextureHandleResidentNV, + glMakeTextureHandleNonResidentNV, glGetImageHandleNV, glMakeImageHandleResidentNV, glMakeImageHandleNonResidentNV, glUniformHandleui64NV, glUniformHandleui64vNV, glProgramUniformHandleui64NV, glProgramUniformHandleui64vNV, glIsTextureHandleResidentNV, glIsImageHandleResidentNV, glBlendParameteriNV, glBlendBarrierNV, glViewportPositionWScaleNV, glCreateStatesNV, glDeleteStatesNV, glIsStateNV, + glStateCaptureNV, glGetCommandHeaderNV, glGetStageIndexNV, glDrawCommandsNV, glDrawCommandsAddressNV, glDrawCommandsStatesNV, glDrawCommandsStatesAddressNV, glCreateCommandListsNV, glDeleteCommandListsNV, glIsCommandListNV, glListDrawCommandsStatesClientNV, glCommandListSegmentsNV, glCompileCommandListNV, glCallCommandListNV, glBeginConditionalRenderNV, glEndConditionalRenderNV, + glSubpixelPrecisionBiasNV, glConservativeRasterParameterfNV, glConservativeRasterParameteriNV, glCopyImageSubDataNV, glDepthRangedNV, glClearDepthdNV, glDepthBoundsdNV, glDrawTextureNV, glDrawVkImageNV, glGetVkProcAddrNV, glWaitVkSemaphoreNV, glSignalVkSemaphoreNV, glSignalVkFenceNV, glMapControlPointsNV, glMapParameterivNV, glMapParameterfvNV, + glGetMapControlPointsNV, glGetMapParameterivNV, glGetMapParameterfvNV, glGetMapAttribParameterivNV, glGetMapAttribParameterfvNV, glEvalMapsNV, glGetMultisamplefvNV, glSampleMaskIndexedNV, glTexRenderbufferNV, glDeleteFencesNV, glGenFencesNV, glIsFenceNV, glTestFenceNV, glGetFenceivNV, glFinishFenceNV, glSetFenceNV, + glFragmentCoverageColorNV, glProgramNamedParameter4fNV, glProgramNamedParameter4fvNV, glProgramNamedParameter4dNV, glProgramNamedParameter4dvNV, glGetProgramNamedParameterfvNV, glGetProgramNamedParameterdvNV, glCoverageModulationTableNV, glGetCoverageModulationTableNV, glCoverageModulationNV, glRenderbufferStorageMultisampleCoverageNV, glProgramVertexLimitNV, glFramebufferTextureEXT, glFramebufferTextureFaceEXT, glRenderGpuMaskNV, glMulticastBufferSubDataNV, + glMulticastCopyBufferSubDataNV, glMulticastCopyImageSubDataNV, glMulticastBlitFramebufferNV, glMulticastFramebufferSampleLocationsfvNV, glMulticastBarrierNV, glMulticastWaitSyncNV, glMulticastGetQueryObjectivNV, glMulticastGetQueryObjectuivNV, glMulticastGetQueryObjecti64vNV, glMulticastGetQueryObjectui64vNV, glProgramLocalParameterI4iNV, glProgramLocalParameterI4ivNV, glProgramLocalParametersI4ivNV, glProgramLocalParameterI4uiNV, glProgramLocalParameterI4uivNV, glProgramLocalParametersI4uivNV, + glProgramEnvParameterI4iNV, glProgramEnvParameterI4ivNV, glProgramEnvParametersI4ivNV, glProgramEnvParameterI4uiNV, glProgramEnvParameterI4uivNV, glProgramEnvParametersI4uivNV, glGetProgramLocalParameterIivNV, glGetProgramLocalParameterIuivNV, glGetProgramEnvParameterIivNV, glGetProgramEnvParameterIuivNV, glProgramSubroutineParametersuivNV, glGetProgramSubroutineParameteruivNV, glVertex2hNV, glVertex2hvNV, glVertex3hNV, glVertex3hvNV, + glVertex4hNV, glVertex4hvNV, glNormal3hNV, glNormal3hvNV, glColor3hNV, glColor3hvNV, glColor4hNV, glColor4hvNV, glTexCoord1hNV, glTexCoord1hvNV, glTexCoord2hNV, glTexCoord2hvNV, glTexCoord3hNV, glTexCoord3hvNV, glTexCoord4hNV, glTexCoord4hvNV, + glMultiTexCoord1hNV, glMultiTexCoord1hvNV, glMultiTexCoord2hNV, glMultiTexCoord2hvNV, glMultiTexCoord3hNV, glMultiTexCoord3hvNV, glMultiTexCoord4hNV, glMultiTexCoord4hvNV, glVertexAttrib1hNV, glVertexAttrib1hvNV, glVertexAttrib2hNV, glVertexAttrib2hvNV, glVertexAttrib3hNV, glVertexAttrib3hvNV, glVertexAttrib4hNV, glVertexAttrib4hvNV, + glVertexAttribs1hvNV, glVertexAttribs2hvNV, glVertexAttribs3hvNV, glVertexAttribs4hvNV, glFogCoordhNV, glFogCoordhvNV, glSecondaryColor3hNV, glSecondaryColor3hvNV, glVertexWeighthNV, glVertexWeighthvNV, glGetInternalformatSampleivNV, glGetMemoryObjectDetachedResourcesuivNV, glResetMemoryObjectParameterNV, glTexAttachMemoryNV, glBufferAttachMemoryNV, glTextureAttachMemoryNV, + glNamedBufferAttachMemoryNV, glBufferPageCommitmentMemNV, glTexPageCommitmentMemNV, glNamedBufferPageCommitmentMemNV, glTexturePageCommitmentMemNV, glDrawMeshTasksNV, glDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectCountNV, glGenOcclusionQueriesNV, glDeleteOcclusionQueriesNV, glIsOcclusionQueryNV, glBeginOcclusionQueryNV, glEndOcclusionQueryNV, glGetOcclusionQueryivNV, glGetOcclusionQueryuivNV, + glProgramBufferParametersfvNV, glProgramBufferParametersIivNV, glProgramBufferParametersIuivNV, glGenPathsNV, glDeletePathsNV, glIsPathNV, glPathCommandsNV, glPathCoordsNV, glPathSubCommandsNV, glPathSubCoordsNV, glPathStringNV, glPathGlyphsNV, glPathGlyphRangeNV, glWeightPathsNV, glCopyPathNV, glInterpolatePathsNV, + glTransformPathNV, glPathParameterivNV, glPathParameteriNV, glPathParameterfvNV, glPathParameterfNV, glPathDashArrayNV, glPathStencilFuncNV, glPathStencilDepthOffsetNV, glStencilFillPathNV, glStencilStrokePathNV, glStencilFillPathInstancedNV, glStencilStrokePathInstancedNV, glPathCoverDepthFuncNV, glCoverFillPathNV, glCoverStrokePathNV, glCoverFillPathInstancedNV, + glCoverStrokePathInstancedNV, glGetPathParameterivNV, glGetPathParameterfvNV, glGetPathCommandsNV, glGetPathCoordsNV, glGetPathDashArrayNV, glGetPathMetricsNV, glGetPathMetricRangeNV, glGetPathSpacingNV, glIsPointInFillPathNV, glIsPointInStrokePathNV, glGetPathLengthNV, glPointAlongPathNV, glMatrixLoad3x2fNV, glMatrixLoad3x3fNV, glMatrixLoadTranspose3x3fNV, + glMatrixMult3x2fNV, glMatrixMult3x3fNV, glMatrixMultTranspose3x3fNV, glStencilThenCoverFillPathNV, glStencilThenCoverStrokePathNV, glStencilThenCoverFillPathInstancedNV, glStencilThenCoverStrokePathInstancedNV, glPathGlyphIndexRangeNV, glPathGlyphIndexArrayNV, glPathMemoryGlyphIndexArrayNV, glProgramPathFragmentInputGenNV, glGetProgramResourcefvNV, glPathColorGenNV, glPathTexGenNV, glPathFogGenNV, glGetPathColorGenivNV, + glGetPathColorGenfvNV, glGetPathTexGenivNV, glGetPathTexGenfvNV, glPixelDataRangeNV, glFlushPixelDataRangeNV, glPointParameteriNV, glPointParameterivNV, glPresentFrameKeyedNV, glPresentFrameDualFillNV, glGetVideoivNV, glGetVideouivNV, glGetVideoi64vNV, glGetVideoui64vNV, glPrimitiveRestartNV, glPrimitiveRestartIndexNV, glQueryResourceNV, + glGenQueryResourceTagNV, glDeleteQueryResourceTagNV, glQueryResourceTagNV, glCombinerParameterfvNV, glCombinerParameterfNV, glCombinerParameterivNV, glCombinerParameteriNV, glCombinerInputNV, glCombinerOutputNV, glFinalCombinerInputNV, glGetCombinerInputParameterfvNV, glGetCombinerInputParameterivNV, glGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterivNV, glGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterivNV, + glCombinerStageParameterfvNV, glGetCombinerStageParameterfvNV, glFramebufferSampleLocationsfvNV, glNamedFramebufferSampleLocationsfvNV, glResolveDepthValuesNV, glScissorExclusiveNV, glScissorExclusiveArrayvNV, glMakeBufferResidentNV, glMakeBufferNonResidentNV, glIsBufferResidentNV, glMakeNamedBufferResidentNV, glMakeNamedBufferNonResidentNV, glIsNamedBufferResidentNV, glGetBufferParameterui64vNV, glGetNamedBufferParameterui64vNV, glGetIntegerui64vNV, + glUniformui64NV, glUniformui64vNV, glProgramUniformui64NV, glProgramUniformui64vNV, glBindShadingRateImageNV, glGetShadingRateImagePaletteNV, glGetShadingRateSampleLocationivNV, glShadingRateImageBarrierNV, glShadingRateImagePaletteNV, glShadingRateSampleOrderNV, glShadingRateSampleOrderCustomNV, glTextureBarrierNV, glTexImage2DMultisampleCoverageNV, glTexImage3DMultisampleCoverageNV, glTextureImage2DMultisampleNV, glTextureImage3DMultisampleNV, + glTextureImage2DMultisampleCoverageNV, glTextureImage3DMultisampleCoverageNV, glCreateSemaphoresNV, glSemaphoreParameterivNV, glGetSemaphoreParameterivNV, glBeginTransformFeedbackNV, glEndTransformFeedbackNV, glTransformFeedbackAttribsNV, glBindBufferRangeNV, glBindBufferOffsetNV, glBindBufferBaseNV, glTransformFeedbackVaryingsNV, glActiveVaryingNV, glGetVaryingLocationNV, glGetActiveVaryingNV, glGetTransformFeedbackVaryingNV, + glTransformFeedbackStreamAttribsNV, glBindTransformFeedbackNV, glDeleteTransformFeedbacksNV, glGenTransformFeedbacksNV, glIsTransformFeedbackNV, glPauseTransformFeedbackNV, glResumeTransformFeedbackNV, glDrawTransformFeedbackNV, glVDPAUInitNV, glVDPAUFiniNV, glVDPAURegisterVideoSurfaceNV, glVDPAURegisterOutputSurfaceNV, glVDPAUIsSurfaceNV, glVDPAUUnregisterSurfaceNV, glVDPAUGetSurfaceivNV, glVDPAUSurfaceAccessNV, + glVDPAUMapSurfacesNV, glVDPAUUnmapSurfacesNV, glVDPAURegisterVideoSurfaceWithPictureStructureNV, glFlushVertexArrayRangeNV, glVertexArrayRangeNV, glVertexAttribL1i64NV, glVertexAttribL2i64NV, glVertexAttribL3i64NV, glVertexAttribL4i64NV, glVertexAttribL1i64vNV, glVertexAttribL2i64vNV, glVertexAttribL3i64vNV, glVertexAttribL4i64vNV, glVertexAttribL1ui64NV, glVertexAttribL2ui64NV, glVertexAttribL3ui64NV, + glVertexAttribL4ui64NV, glVertexAttribL1ui64vNV, glVertexAttribL2ui64vNV, glVertexAttribL3ui64vNV, glVertexAttribL4ui64vNV, glGetVertexAttribLi64vNV, glGetVertexAttribLui64vNV, glVertexAttribLFormatNV, glBufferAddressRangeNV, glVertexFormatNV, glNormalFormatNV, glColorFormatNV, glIndexFormatNV, glTexCoordFormatNV, glEdgeFlagFormatNV, glSecondaryColorFormatNV, + glFogCoordFormatNV, glVertexAttribFormatNV, glVertexAttribIFormatNV, glGetIntegerui64i_vNV, glAreProgramsResidentNV, glBindProgramNV, glDeleteProgramsNV, glExecuteProgramNV, glGenProgramsNV, glGetProgramParameterdvNV, glGetProgramParameterfvNV, glGetProgramivNV, glGetProgramStringNV, glGetTrackMatrixivNV, glGetVertexAttribdvNV, glGetVertexAttribfvNV, + glGetVertexAttribivNV, glGetVertexAttribPointervNV, glIsProgramNV, glLoadProgramNV, glProgramParameter4dNV, glProgramParameter4dvNV, glProgramParameter4fNV, glProgramParameter4fvNV, glProgramParameters4dvNV, glProgramParameters4fvNV, glRequestResidentProgramsNV, glTrackMatrixNV, glVertexAttribPointerNV, glVertexAttrib1dNV, glVertexAttrib1dvNV, glVertexAttrib1fNV, + glVertexAttrib1fvNV, glVertexAttrib1sNV, glVertexAttrib1svNV, glVertexAttrib2dNV, glVertexAttrib2dvNV, glVertexAttrib2fNV, glVertexAttrib2fvNV, glVertexAttrib2sNV, glVertexAttrib2svNV, glVertexAttrib3dNV, glVertexAttrib3dvNV, glVertexAttrib3fNV, glVertexAttrib3fvNV, glVertexAttrib3sNV, glVertexAttrib3svNV, glVertexAttrib4dNV, + glVertexAttrib4dvNV, glVertexAttrib4fNV, glVertexAttrib4fvNV, glVertexAttrib4sNV, glVertexAttrib4svNV, glVertexAttrib4ubNV, glVertexAttrib4ubvNV, glVertexAttribs1dvNV, glVertexAttribs1fvNV, glVertexAttribs1svNV, glVertexAttribs2dvNV, glVertexAttribs2fvNV, glVertexAttribs2svNV, glVertexAttribs3dvNV, glVertexAttribs3fvNV, glVertexAttribs3svNV, + glVertexAttribs4dvNV, glVertexAttribs4fvNV, glVertexAttribs4svNV, glVertexAttribs4ubvNV, glBeginVideoCaptureNV, glBindVideoCaptureStreamBufferNV, glBindVideoCaptureStreamTextureNV, glEndVideoCaptureNV, glGetVideoCaptureivNV, glGetVideoCaptureStreamivNV, glGetVideoCaptureStreamfvNV, glGetVideoCaptureStreamdvNV, glVideoCaptureNV, glVideoCaptureStreamParameterivNV, glVideoCaptureStreamParameterfvNV, glVideoCaptureStreamParameterdvNV, + glViewportSwizzleNV, glFramebufferTextureMultiviewOVR, glHintPGI, glDetailTexFuncSGIS, glGetDetailTexFuncSGIS, glFogFuncSGIS, glGetFogFuncSGIS, glSampleMaskSGIS, glSamplePatternSGIS, glPixelTexGenParameteriSGIS, glPixelTexGenParameterivSGIS, glPixelTexGenParameterfSGIS, glPixelTexGenParameterfvSGIS, glGetPixelTexGenParameterivSGIS, glGetPixelTexGenParameterfvSGIS, glPointParameterfSGIS, + glPointParameterfvSGIS, glSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS, glTexImage4DSGIS, glTexSubImage4DSGIS, glTextureColorMaskSGIS, glGetTexFilterFuncSGIS, glTexFilterFuncSGIS, glAsyncMarkerSGIX, glFinishAsyncSGIX, glPollAsyncSGIX, glGenAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX, glIsAsyncMarkerSGIX, glFlushRasterSGIX, glFragmentColorMaterialSGIX, + glFragmentLightfSGIX, glFragmentLightfvSGIX, glFragmentLightiSGIX, glFragmentLightivSGIX, glFragmentLightModelfSGIX, glFragmentLightModelfvSGIX, glFragmentLightModeliSGIX, glFragmentLightModelivSGIX, glFragmentMaterialfSGIX, glFragmentMaterialfvSGIX, glFragmentMaterialiSGIX, glFragmentMaterialivSGIX, glGetFragmentLightfvSGIX, glGetFragmentLightivSGIX, glGetFragmentMaterialfvSGIX, glGetFragmentMaterialivSGIX, + glLightEnviSGIX, glFrameZoomSGIX, glIglooInterfaceSGIX, glGetInstrumentsSGIX, glInstrumentsBufferSGIX, glPollInstrumentsSGIX, glReadInstrumentsSGIX, glStartInstrumentsSGIX, glStopInstrumentsSGIX, glGetListParameterfvSGIX, glGetListParameterivSGIX, glListParameterfSGIX, glListParameterfvSGIX, glListParameteriSGIX, glListParameterivSGIX, glPixelTexGenSGIX, + glDeformationMap3dSGIX, glDeformationMap3fSGIX, glDeformSGIX, glLoadIdentityDeformationMapSGIX, glReferencePlaneSGIX, glSpriteParameterfSGIX, glSpriteParameterfvSGIX, glSpriteParameteriSGIX, glSpriteParameterivSGIX, glTagSampleBufferSGIX, glColorTableSGI, glColorTableParameterfvSGI, glColorTableParameterivSGI, glCopyColorTableSGI, glGetColorTableSGI, glGetColorTableParameterfvSGI, + glGetColorTableParameterivSGI, glFinishTextureSUNX, glGlobalAlphaFactorbSUN, glGlobalAlphaFactorsSUN, glGlobalAlphaFactoriSUN, glGlobalAlphaFactorfSUN, glGlobalAlphaFactordSUN, glGlobalAlphaFactorubSUN, glGlobalAlphaFactorusSUN, glGlobalAlphaFactoruiSUN, glDrawMeshArraysSUN, glReplacementCodeuiSUN, glReplacementCodeusSUN, glReplacementCodeubSUN, glReplacementCodeuivSUN, glReplacementCodeusvSUN, + glReplacementCodeubvSUN, glReplacementCodePointerSUN, glColor4ubVertex2fSUN, glColor4ubVertex2fvSUN, glColor4ubVertex3fSUN, glColor4ubVertex3fvSUN, glColor3fVertex3fSUN, glColor3fVertex3fvSUN, glNormal3fVertex3fSUN, glNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fvSUN, glTexCoord2fVertex3fSUN, glTexCoord2fVertex3fvSUN, glTexCoord4fVertex4fSUN, glTexCoord4fVertex4fvSUN, + glTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN, glReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fvSUN, + glReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN; void load(GLLoadFunc load) { GLARBES32Compatibility.load(this, load); @@ -302,6 +309,28 @@ void load(GLLoadFunc load) { GLEXTSemaphore.load(this, load); GLEXTSemaphoreFd.load(this, load); GLEXTSemaphoreWin32.load(this, load); + GLEXTSeparateShaderObjects.load(this, load); + GLEXTShaderFramebufferFetchNonCoherent.load(this, load); + GLEXTShaderImageLoadStore.load(this, load); + GLEXTStencilClearTag.load(this, load); + GLEXTStencilTwoSide.load(this, load); + GLEXTSubtexture.load(this, load); + GLEXTTexture3D.load(this, load); + GLEXTTextureArray.load(this, load); + GLEXTTextureBufferObject.load(this, load); + GLEXTTextureInteger.load(this, load); + GLEXTTextureObject.load(this, load); + GLEXTTexturePerturbNormal.load(this, load); + GLEXTTextureStorage.load(this, load); + GLEXTTimerQuery.load(this, load); + GLEXTTransformFeedback.load(this, load); + GLEXTVertexArray.load(this, load); + GLEXTVertexAttrib64bit.load(this, load); + GLEXTVertexShader.load(this, load); + GLEXTVertexWeighting.load(this, load); + GLEXTWin32KeyedMutex.load(this, load); + GLEXTWindowRectangles.load(this, load); + GLEXTX11SyncObject.load(this, load); GLGREMEDYFrameTerminator.load(this, load); GLGREMEDYStringMarker.load(this, load); GLHPImageTransform.load(this, load); diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSeparateShaderObjects.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSeparateShaderObjects.java new file mode 100644 index 00000000..2b001c3a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSeparateShaderObjects.java @@ -0,0 +1,61 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_separate_shader_objects} + */ +public final class GLEXTSeparateShaderObjects { + public static final int GL_ACTIVE_PROGRAM_EXT = 0x8B8D; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_separate_shader_objects) return; + ext.glUseShaderProgramEXT = load.invoke("glUseShaderProgramEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glActiveProgramEXT = load.invoke("glActiveProgramEXT", ofVoid(JAVA_INT)); + ext.glCreateShaderProgramEXT = load.invoke("glCreateShaderProgramEXT", of(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glUseShaderProgramEXT(int type, int program) { + final var ext = getExtCapabilities(); + try { + check(ext.glUseShaderProgramEXT).invokeExact(type, program); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glActiveProgramEXT(int program) { + final var ext = getExtCapabilities(); + try { + check(ext.glActiveProgramEXT).invokeExact(program); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glCreateShaderProgramEXT(int type, @NativeType("const GLchar *") MemorySegment string) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glCreateShaderProgramEXT).invokeExact(type, string); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSeparateSpecularColor.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSeparateSpecularColor.java new file mode 100644 index 00000000..1032c587 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSeparateSpecularColor.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_separate_specular_color} + */ +public final class GLEXTSeparateSpecularColor { + public static final int GL_LIGHT_MODEL_COLOR_CONTROL_EXT = 0x81F8; + public static final int GL_SINGLE_COLOR_EXT = 0x81F9; + public static final int GL_SEPARATE_SPECULAR_COLOR_EXT = 0x81FA; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTShaderFramebufferFetch.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTShaderFramebufferFetch.java new file mode 100644 index 00000000..83accc83 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTShaderFramebufferFetch.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_shader_framebuffer_fetch} + */ +public final class GLEXTShaderFramebufferFetch { + public static final int GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT = 0x8A52; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTShaderFramebufferFetchNonCoherent.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTShaderFramebufferFetchNonCoherent.java new file mode 100644 index 00000000..48476f95 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTShaderFramebufferFetchNonCoherent.java @@ -0,0 +1,43 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_shader_framebuffer_fetch_non_coherent} + */ +public final class GLEXTShaderFramebufferFetchNonCoherent { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_shader_framebuffer_fetch_non_coherent) return; + ext.glFramebufferFetchBarrierEXT = load.invoke("glFramebufferFetchBarrierEXT", ofVoid()); + } + + public static void glFramebufferFetchBarrierEXT() { + final var ext = getExtCapabilities(); + try { + check(ext.glFramebufferFetchBarrierEXT).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTShaderImageLoadStore.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTShaderImageLoadStore.java new file mode 100644 index 00000000..646cd6dd --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTShaderImageLoadStore.java @@ -0,0 +1,106 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_shader_image_load_store} + */ +public final class GLEXTShaderImageLoadStore { + public static final int GL_MAX_IMAGE_UNITS_EXT = 0x8F38; + public static final int GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS_EXT = 0x8F39; + public static final int GL_IMAGE_BINDING_NAME_EXT = 0x8F3A; + public static final int GL_IMAGE_BINDING_LEVEL_EXT = 0x8F3B; + public static final int GL_IMAGE_BINDING_LAYERED_EXT = 0x8F3C; + public static final int GL_IMAGE_BINDING_LAYER_EXT = 0x8F3D; + public static final int GL_IMAGE_BINDING_ACCESS_EXT = 0x8F3E; + public static final int GL_IMAGE_1D_EXT = 0x904C; + public static final int GL_IMAGE_2D_EXT = 0x904D; + public static final int GL_IMAGE_3D_EXT = 0x904E; + public static final int GL_IMAGE_2D_RECT_EXT = 0x904F; + public static final int GL_IMAGE_CUBE_EXT = 0x9050; + public static final int GL_IMAGE_BUFFER_EXT = 0x9051; + public static final int GL_IMAGE_1D_ARRAY_EXT = 0x9052; + public static final int GL_IMAGE_2D_ARRAY_EXT = 0x9053; + public static final int GL_IMAGE_CUBE_MAP_ARRAY_EXT = 0x9054; + public static final int GL_IMAGE_2D_MULTISAMPLE_EXT = 0x9055; + public static final int GL_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = 0x9056; + public static final int GL_INT_IMAGE_1D_EXT = 0x9057; + public static final int GL_INT_IMAGE_2D_EXT = 0x9058; + public static final int GL_INT_IMAGE_3D_EXT = 0x9059; + public static final int GL_INT_IMAGE_2D_RECT_EXT = 0x905A; + public static final int GL_INT_IMAGE_CUBE_EXT = 0x905B; + public static final int GL_INT_IMAGE_BUFFER_EXT = 0x905C; + public static final int GL_INT_IMAGE_1D_ARRAY_EXT = 0x905D; + public static final int GL_INT_IMAGE_2D_ARRAY_EXT = 0x905E; + public static final int GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT = 0x905F; + public static final int GL_INT_IMAGE_2D_MULTISAMPLE_EXT = 0x9060; + public static final int GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = 0x9061; + public static final int GL_UNSIGNED_INT_IMAGE_1D_EXT = 0x9062; + public static final int GL_UNSIGNED_INT_IMAGE_2D_EXT = 0x9063; + public static final int GL_UNSIGNED_INT_IMAGE_3D_EXT = 0x9064; + public static final int GL_UNSIGNED_INT_IMAGE_2D_RECT_EXT = 0x9065; + public static final int GL_UNSIGNED_INT_IMAGE_CUBE_EXT = 0x9066; + public static final int GL_UNSIGNED_INT_IMAGE_BUFFER_EXT = 0x9067; + public static final int GL_UNSIGNED_INT_IMAGE_1D_ARRAY_EXT = 0x9068; + public static final int GL_UNSIGNED_INT_IMAGE_2D_ARRAY_EXT = 0x9069; + public static final int GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT = 0x906A; + public static final int GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_EXT = 0x906B; + public static final int GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = 0x906C; + public static final int GL_MAX_IMAGE_SAMPLES_EXT = 0x906D; + public static final int GL_IMAGE_BINDING_FORMAT_EXT = 0x906E; + public static final int GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT = 0x00000001; + public static final int GL_ELEMENT_ARRAY_BARRIER_BIT_EXT = 0x00000002; + public static final int GL_UNIFORM_BARRIER_BIT_EXT = 0x00000004; + public static final int GL_TEXTURE_FETCH_BARRIER_BIT_EXT = 0x00000008; + public static final int GL_SHADER_IMAGE_ACCESS_BARRIER_BIT_EXT = 0x00000020; + public static final int GL_COMMAND_BARRIER_BIT_EXT = 0x00000040; + public static final int GL_PIXEL_BUFFER_BARRIER_BIT_EXT = 0x00000080; + public static final int GL_TEXTURE_UPDATE_BARRIER_BIT_EXT = 0x00000100; + public static final int GL_BUFFER_UPDATE_BARRIER_BIT_EXT = 0x00000200; + public static final int GL_FRAMEBUFFER_BARRIER_BIT_EXT = 0x00000400; + public static final int GL_TRANSFORM_FEEDBACK_BARRIER_BIT_EXT = 0x00000800; + public static final int GL_ATOMIC_COUNTER_BARRIER_BIT_EXT = 0x00001000; + public static final int GL_ALL_BARRIER_BITS_EXT = 0xFFFFFFFF; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_shader_image_load_store) return; + ext.glBindImageTextureEXT = load.invoke("glBindImageTextureEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_BYTE, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glMemoryBarrierEXT = load.invoke("glMemoryBarrierEXT", ofVoid(JAVA_INT)); + } + + public static void glBindImageTextureEXT(int index, int texture, int level, boolean layered, int layer, int access, int format) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindImageTextureEXT).invokeExact(index, texture, level, layered, layer, access, format); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glMemoryBarrierEXT(int barriers) { + final var ext = getExtCapabilities(); + try { + check(ext.glMemoryBarrierEXT).invokeExact(barriers); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSharedTexturePalette.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSharedTexturePalette.java new file mode 100644 index 00000000..27b4544a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSharedTexturePalette.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_shared_texture_palette} + */ +public final class GLEXTSharedTexturePalette { + public static final int GL_SHARED_TEXTURE_PALETTE_EXT = 0x81FB; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTStencilClearTag.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTStencilClearTag.java new file mode 100644 index 00000000..dc830384 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTStencilClearTag.java @@ -0,0 +1,45 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_stencil_clear_tag} + */ +public final class GLEXTStencilClearTag { + public static final int GL_STENCIL_TAG_BITS_EXT = 0x88F2; + public static final int GL_STENCIL_CLEAR_TAG_VALUE_EXT = 0x88F3; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_stencil_clear_tag) return; + ext.glStencilClearTagEXT = load.invoke("glStencilClearTagEXT", ofVoid(JAVA_INT, JAVA_INT)); + } + + public static void glStencilClearTagEXT(int stencilTagBits, int stencilClearTag) { + final var ext = getExtCapabilities(); + try { + check(ext.glStencilClearTagEXT).invokeExact(stencilTagBits, stencilClearTag); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTStencilTwoSide.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTStencilTwoSide.java new file mode 100644 index 00000000..f8912ca0 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTStencilTwoSide.java @@ -0,0 +1,45 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_stencil_two_side} + */ +public final class GLEXTStencilTwoSide { + public static final int GL_STENCIL_TEST_TWO_SIDE_EXT = 0x8910; + public static final int GL_ACTIVE_STENCIL_FACE_EXT = 0x8911; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_stencil_two_side) return; + ext.glActiveStencilFaceEXT = load.invoke("glActiveStencilFaceEXT", ofVoid(JAVA_INT)); + } + + public static void glActiveStencilFaceEXT(int face) { + final var ext = getExtCapabilities(); + try { + check(ext.glActiveStencilFaceEXT).invokeExact(face); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTStencilWrap.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTStencilWrap.java new file mode 100644 index 00000000..93a1b2b9 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTStencilWrap.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_stencil_wrap} + */ +public final class GLEXTStencilWrap { + public static final int GL_INCR_WRAP_EXT = 0x8507; + public static final int GL_DECR_WRAP_EXT = 0x8508; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSubtexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSubtexture.java new file mode 100644 index 00000000..fd362640 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTSubtexture.java @@ -0,0 +1,51 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_subtexture} + */ +public final class GLEXTSubtexture { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_subtexture) return; + ext.glTexSubImage1DEXT = load.invoke("glTexSubImage1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glTexSubImage2DEXT = load.invoke("glTexSubImage2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glTexSubImage1DEXT(int target, int level, int xoffset, int width, int format, int type, @NativeType("const void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexSubImage1DEXT).invokeExact(target, level, xoffset, width, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexSubImage2DEXT(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, @NativeType("const void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexSubImage2DEXT).invokeExact(target, level, xoffset, yoffset, width, height, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTexture.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTexture.java new file mode 100644 index 00000000..2ae29a64 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTexture.java @@ -0,0 +1,74 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture} + */ +public final class GLEXTTexture { + public static final int GL_ALPHA4_EXT = 0x803B; + public static final int GL_ALPHA8_EXT = 0x803C; + public static final int GL_ALPHA12_EXT = 0x803D; + public static final int GL_ALPHA16_EXT = 0x803E; + public static final int GL_LUMINANCE4_EXT = 0x803F; + public static final int GL_LUMINANCE8_EXT = 0x8040; + public static final int GL_LUMINANCE12_EXT = 0x8041; + public static final int GL_LUMINANCE16_EXT = 0x8042; + public static final int GL_LUMINANCE4_ALPHA4_EXT = 0x8043; + public static final int GL_LUMINANCE6_ALPHA2_EXT = 0x8044; + public static final int GL_LUMINANCE8_ALPHA8_EXT = 0x8045; + public static final int GL_LUMINANCE12_ALPHA4_EXT = 0x8046; + public static final int GL_LUMINANCE12_ALPHA12_EXT = 0x8047; + public static final int GL_LUMINANCE16_ALPHA16_EXT = 0x8048; + public static final int GL_INTENSITY_EXT = 0x8049; + public static final int GL_INTENSITY4_EXT = 0x804A; + public static final int GL_INTENSITY8_EXT = 0x804B; + public static final int GL_INTENSITY12_EXT = 0x804C; + public static final int GL_INTENSITY16_EXT = 0x804D; + public static final int GL_RGB2_EXT = 0x804E; + public static final int GL_RGB4_EXT = 0x804F; + public static final int GL_RGB5_EXT = 0x8050; + public static final int GL_RGB8_EXT = 0x8051; + public static final int GL_RGB10_EXT = 0x8052; + public static final int GL_RGB12_EXT = 0x8053; + public static final int GL_RGB16_EXT = 0x8054; + public static final int GL_RGBA2_EXT = 0x8055; + public static final int GL_RGBA4_EXT = 0x8056; + public static final int GL_RGB5_A1_EXT = 0x8057; + public static final int GL_RGBA8_EXT = 0x8058; + public static final int GL_RGB10_A2_EXT = 0x8059; + public static final int GL_RGBA12_EXT = 0x805A; + public static final int GL_RGBA16_EXT = 0x805B; + public static final int GL_TEXTURE_RED_SIZE_EXT = 0x805C; + public static final int GL_TEXTURE_GREEN_SIZE_EXT = 0x805D; + public static final int GL_TEXTURE_BLUE_SIZE_EXT = 0x805E; + public static final int GL_TEXTURE_ALPHA_SIZE_EXT = 0x805F; + public static final int GL_TEXTURE_LUMINANCE_SIZE_EXT = 0x8060; + public static final int GL_TEXTURE_INTENSITY_SIZE_EXT = 0x8061; + public static final int GL_REPLACE_EXT = 0x8062; + public static final int GL_PROXY_TEXTURE_1D_EXT = 0x8063; + public static final int GL_PROXY_TEXTURE_2D_EXT = 0x8064; + public static final int GL_TEXTURE_TOO_LARGE_EXT = 0x8065; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTexture3D.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTexture3D.java new file mode 100644 index 00000000..486e30dc --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTexture3D.java @@ -0,0 +1,60 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture3D} + */ +public final class GLEXTTexture3D { + public static final int GL_PACK_SKIP_IMAGES_EXT = 0x806B; + public static final int GL_PACK_IMAGE_HEIGHT_EXT = 0x806C; + public static final int GL_UNPACK_SKIP_IMAGES_EXT = 0x806D; + public static final int GL_UNPACK_IMAGE_HEIGHT_EXT = 0x806E; + public static final int GL_TEXTURE_3D_EXT = 0x806F; + public static final int GL_PROXY_TEXTURE_3D_EXT = 0x8070; + public static final int GL_TEXTURE_DEPTH_EXT = 0x8071; + public static final int GL_TEXTURE_WRAP_R_EXT = 0x8072; + public static final int GL_MAX_3D_TEXTURE_SIZE_EXT = 0x8073; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_texture3D) return; + ext.glTexImage3DEXT = load.invoke("glTexImage3DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glTexSubImage3DEXT = load.invoke("glTexSubImage3DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glTexImage3DEXT(int target, int level, int internalformat, int width, int height, int depth, int border, int format, int type, @NativeType("const void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexImage3DEXT).invokeExact(target, level, internalformat, width, height, depth, border, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexSubImage3DEXT(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, @NativeType("const void *") MemorySegment pixels) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexSubImage3DEXT).invokeExact(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureArray.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureArray.java new file mode 100644 index 00000000..e6dab75e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureArray.java @@ -0,0 +1,51 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_array} + */ +public final class GLEXTTextureArray { + public static final int GL_TEXTURE_1D_ARRAY_EXT = 0x8C18; + public static final int GL_PROXY_TEXTURE_1D_ARRAY_EXT = 0x8C19; + public static final int GL_TEXTURE_2D_ARRAY_EXT = 0x8C1A; + public static final int GL_PROXY_TEXTURE_2D_ARRAY_EXT = 0x8C1B; + public static final int GL_TEXTURE_BINDING_1D_ARRAY_EXT = 0x8C1C; + public static final int GL_TEXTURE_BINDING_2D_ARRAY_EXT = 0x8C1D; + public static final int GL_MAX_ARRAY_TEXTURE_LAYERS_EXT = 0x88FF; + public static final int GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT = 0x884E; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_texture_array) return; + ext.glFramebufferTextureLayerEXT = load.invoke("glFramebufferTextureLayerEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glFramebufferTextureLayerEXT(int target, int attachment, int texture, int level, int layer) { + final var ext = getExtCapabilities(); + try { + check(ext.glFramebufferTextureLayerEXT).invokeExact(target, attachment, texture, level, layer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureBufferObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureBufferObject.java new file mode 100644 index 00000000..38ffce42 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureBufferObject.java @@ -0,0 +1,48 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_buffer_object} + */ +public final class GLEXTTextureBufferObject { + public static final int GL_TEXTURE_BUFFER_EXT = 0x8C2A; + public static final int GL_MAX_TEXTURE_BUFFER_SIZE_EXT = 0x8C2B; + public static final int GL_TEXTURE_BINDING_BUFFER_EXT = 0x8C2C; + public static final int GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT = 0x8C2D; + public static final int GL_TEXTURE_BUFFER_FORMAT_EXT = 0x8C2E; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_texture_buffer_object) return; + ext.glTexBufferEXT = load.invoke("glTexBufferEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glTexBufferEXT(int target, int internalformat, int buffer) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexBufferEXT).invokeExact(target, internalformat, buffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureCompressionLatc.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureCompressionLatc.java new file mode 100644 index 00000000..112d1d66 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureCompressionLatc.java @@ -0,0 +1,35 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_compression_latc} + */ +public final class GLEXTTextureCompressionLatc { + public static final int GL_COMPRESSED_LUMINANCE_LATC1_EXT = 0x8C70; + public static final int GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT = 0x8C71; + public static final int GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT = 0x8C72; + public static final int GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT = 0x8C73; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureCompressionRgtc.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureCompressionRgtc.java new file mode 100644 index 00000000..61e04e58 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureCompressionRgtc.java @@ -0,0 +1,35 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_compression_rgtc} + */ +public final class GLEXTTextureCompressionRgtc { + public static final int GL_COMPRESSED_RED_RGTC1_EXT = 0x8DBB; + public static final int GL_COMPRESSED_SIGNED_RED_RGTC1_EXT = 0x8DBC; + public static final int GL_COMPRESSED_RED_GREEN_RGTC2_EXT = 0x8DBD; + public static final int GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT = 0x8DBE; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureCompressionS3tc.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureCompressionS3tc.java new file mode 100644 index 00000000..82de3d5f --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureCompressionS3tc.java @@ -0,0 +1,35 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_compression_s3tc} + */ +public final class GLEXTTextureCompressionS3tc { + public static final int GL_COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83F0; + public static final int GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83F1; + public static final int GL_COMPRESSED_RGBA_S3TC_DXT3_EXT = 0x83F2; + public static final int GL_COMPRESSED_RGBA_S3TC_DXT5_EXT = 0x83F3; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureCubeMap.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureCubeMap.java new file mode 100644 index 00000000..22511a64 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureCubeMap.java @@ -0,0 +1,43 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_cube_map} + */ +public final class GLEXTTextureCubeMap { + public static final int GL_NORMAL_MAP_EXT = 0x8511; + public static final int GL_REFLECTION_MAP_EXT = 0x8512; + public static final int GL_TEXTURE_CUBE_MAP_EXT = 0x8513; + public static final int GL_TEXTURE_BINDING_CUBE_MAP_EXT = 0x8514; + public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT = 0x8515; + public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT = 0x8516; + public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT = 0x8517; + public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT = 0x8518; + public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT = 0x8519; + public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT = 0x851A; + public static final int GL_PROXY_TEXTURE_CUBE_MAP_EXT = 0x851B; + public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT = 0x851C; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureEnvCombine.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureEnvCombine.java new file mode 100644 index 00000000..5e127443 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureEnvCombine.java @@ -0,0 +1,52 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_env_combine} + */ +public final class GLEXTTextureEnvCombine { + public static final int GL_COMBINE_EXT = 0x8570; + public static final int GL_COMBINE_RGB_EXT = 0x8571; + public static final int GL_COMBINE_ALPHA_EXT = 0x8572; + public static final int GL_RGB_SCALE_EXT = 0x8573; + public static final int GL_ADD_SIGNED_EXT = 0x8574; + public static final int GL_INTERPOLATE_EXT = 0x8575; + public static final int GL_CONSTANT_EXT = 0x8576; + public static final int GL_PRIMARY_COLOR_EXT = 0x8577; + public static final int GL_PREVIOUS_EXT = 0x8578; + public static final int GL_SOURCE0_RGB_EXT = 0x8580; + public static final int GL_SOURCE1_RGB_EXT = 0x8581; + public static final int GL_SOURCE2_RGB_EXT = 0x8582; + public static final int GL_SOURCE0_ALPHA_EXT = 0x8588; + public static final int GL_SOURCE1_ALPHA_EXT = 0x8589; + public static final int GL_SOURCE2_ALPHA_EXT = 0x858A; + public static final int GL_OPERAND0_RGB_EXT = 0x8590; + public static final int GL_OPERAND1_RGB_EXT = 0x8591; + public static final int GL_OPERAND2_RGB_EXT = 0x8592; + public static final int GL_OPERAND0_ALPHA_EXT = 0x8598; + public static final int GL_OPERAND1_ALPHA_EXT = 0x8599; + public static final int GL_OPERAND2_ALPHA_EXT = 0x859A; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureEnvDot3.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureEnvDot3.java new file mode 100644 index 00000000..d2760d3c --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureEnvDot3.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_env_dot3} + */ +public final class GLEXTTextureEnvDot3 { + public static final int GL_DOT3_RGB_EXT = 0x8740; + public static final int GL_DOT3_RGBA_EXT = 0x8741; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureFilterAnisotropic.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureFilterAnisotropic.java new file mode 100644 index 00000000..8c08803e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureFilterAnisotropic.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_filter_anisotropic} + */ +public final class GLEXTTextureFilterAnisotropic { + public static final int GL_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FE; + public static final int GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FF; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureFilterMinmax.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureFilterMinmax.java new file mode 100644 index 00000000..3661ffe8 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureFilterMinmax.java @@ -0,0 +1,33 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_filter_minmax} + */ +public final class GLEXTTextureFilterMinmax { + public static final int GL_TEXTURE_REDUCTION_MODE_EXT = 0x9366; + public static final int GL_WEIGHTED_AVERAGE_EXT = 0x9367; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureInteger.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureInteger.java new file mode 100644 index 00000000..9ceef17a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureInteger.java @@ -0,0 +1,130 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_integer} + */ +public final class GLEXTTextureInteger { + public static final int GL_RGBA32UI_EXT = 0x8D70; + public static final int GL_RGB32UI_EXT = 0x8D71; + public static final int GL_ALPHA32UI_EXT = 0x8D72; + public static final int GL_INTENSITY32UI_EXT = 0x8D73; + public static final int GL_LUMINANCE32UI_EXT = 0x8D74; + public static final int GL_LUMINANCE_ALPHA32UI_EXT = 0x8D75; + public static final int GL_RGBA16UI_EXT = 0x8D76; + public static final int GL_RGB16UI_EXT = 0x8D77; + public static final int GL_ALPHA16UI_EXT = 0x8D78; + public static final int GL_INTENSITY16UI_EXT = 0x8D79; + public static final int GL_LUMINANCE16UI_EXT = 0x8D7A; + public static final int GL_LUMINANCE_ALPHA16UI_EXT = 0x8D7B; + public static final int GL_RGBA8UI_EXT = 0x8D7C; + public static final int GL_RGB8UI_EXT = 0x8D7D; + public static final int GL_ALPHA8UI_EXT = 0x8D7E; + public static final int GL_INTENSITY8UI_EXT = 0x8D7F; + public static final int GL_LUMINANCE8UI_EXT = 0x8D80; + public static final int GL_LUMINANCE_ALPHA8UI_EXT = 0x8D81; + public static final int GL_RGBA32I_EXT = 0x8D82; + public static final int GL_RGB32I_EXT = 0x8D83; + public static final int GL_ALPHA32I_EXT = 0x8D84; + public static final int GL_INTENSITY32I_EXT = 0x8D85; + public static final int GL_LUMINANCE32I_EXT = 0x8D86; + public static final int GL_LUMINANCE_ALPHA32I_EXT = 0x8D87; + public static final int GL_RGBA16I_EXT = 0x8D88; + public static final int GL_RGB16I_EXT = 0x8D89; + public static final int GL_ALPHA16I_EXT = 0x8D8A; + public static final int GL_INTENSITY16I_EXT = 0x8D8B; + public static final int GL_LUMINANCE16I_EXT = 0x8D8C; + public static final int GL_LUMINANCE_ALPHA16I_EXT = 0x8D8D; + public static final int GL_RGBA8I_EXT = 0x8D8E; + public static final int GL_RGB8I_EXT = 0x8D8F; + public static final int GL_ALPHA8I_EXT = 0x8D90; + public static final int GL_INTENSITY8I_EXT = 0x8D91; + public static final int GL_LUMINANCE8I_EXT = 0x8D92; + public static final int GL_LUMINANCE_ALPHA8I_EXT = 0x8D93; + public static final int GL_RED_INTEGER_EXT = 0x8D94; + public static final int GL_GREEN_INTEGER_EXT = 0x8D95; + public static final int GL_BLUE_INTEGER_EXT = 0x8D96; + public static final int GL_ALPHA_INTEGER_EXT = 0x8D97; + public static final int GL_RGB_INTEGER_EXT = 0x8D98; + public static final int GL_RGBA_INTEGER_EXT = 0x8D99; + public static final int GL_BGR_INTEGER_EXT = 0x8D9A; + public static final int GL_BGRA_INTEGER_EXT = 0x8D9B; + public static final int GL_LUMINANCE_INTEGER_EXT = 0x8D9C; + public static final int GL_LUMINANCE_ALPHA_INTEGER_EXT = 0x8D9D; + public static final int GL_RGBA_INTEGER_MODE_EXT = 0x8D9E; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_texture_integer) return; + ext.glTexParameterIivEXT = load.invoke("glTexParameterIivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glTexParameterIuivEXT = load.invoke("glTexParameterIuivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetTexParameterIivEXT = load.invoke("glGetTexParameterIivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetTexParameterIuivEXT = load.invoke("glGetTexParameterIuivEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glClearColorIiEXT = load.invoke("glClearColorIiEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glClearColorIuiEXT = load.invoke("glClearColorIuiEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glTexParameterIivEXT(int target, int pname, @NativeType("const GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexParameterIivEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexParameterIuivEXT(int target, int pname, @NativeType("const GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexParameterIuivEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetTexParameterIivEXT(int target, int pname, @NativeType("GLint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetTexParameterIivEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetTexParameterIuivEXT(int target, int pname, @NativeType("GLuint *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetTexParameterIuivEXT).invokeExact(target, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glClearColorIiEXT(int red, int green, int blue, int alpha) { + final var ext = getExtCapabilities(); + try { + check(ext.glClearColorIiEXT).invokeExact(red, green, blue, alpha); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glClearColorIuiEXT(int red, int green, int blue, int alpha) { + final var ext = getExtCapabilities(); + try { + check(ext.glClearColorIuiEXT).invokeExact(red, green, blue, alpha); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureLodBias.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureLodBias.java new file mode 100644 index 00000000..4387d6e7 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureLodBias.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_lod_bias} + */ +public final class GLEXTTextureLodBias { + public static final int GL_MAX_TEXTURE_LOD_BIAS_EXT = 0x84FD; + public static final int GL_TEXTURE_FILTER_CONTROL_EXT = 0x8500; + public static final int GL_TEXTURE_LOD_BIAS_EXT = 0x8501; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureMirrorClamp.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureMirrorClamp.java new file mode 100644 index 00000000..7cd56c74 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureMirrorClamp.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_mirror_clamp} + */ +public final class GLEXTTextureMirrorClamp { + public static final int GL_MIRROR_CLAMP_EXT = 0x8742; + public static final int GL_MIRROR_CLAMP_TO_EDGE_EXT = 0x8743; + public static final int GL_MIRROR_CLAMP_TO_BORDER_EXT = 0x8912; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureObject.java new file mode 100644 index 00000000..b1ea171d --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureObject.java @@ -0,0 +1,90 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_object} + */ +public final class GLEXTTextureObject { + public static final int GL_TEXTURE_PRIORITY_EXT = 0x8066; + public static final int GL_TEXTURE_RESIDENT_EXT = 0x8067; + public static final int GL_TEXTURE_1D_BINDING_EXT = 0x8068; + public static final int GL_TEXTURE_2D_BINDING_EXT = 0x8069; + public static final int GL_TEXTURE_3D_BINDING_EXT = 0x806A; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_texture_object) return; + ext.glAreTexturesResidentEXT = load.invoke("glAreTexturesResidentEXT", of(JAVA_BYTE, JAVA_INT, ADDRESS, ADDRESS)); + ext.glBindTextureEXT = load.invoke("glBindTextureEXT", ofVoid(JAVA_INT, JAVA_INT)); + ext.glDeleteTexturesEXT = load.invoke("glDeleteTexturesEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glGenTexturesEXT = load.invoke("glGenTexturesEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glIsTextureEXT = load.invoke("glIsTextureEXT", of(JAVA_BYTE, JAVA_INT)); + ext.glPrioritizeTexturesEXT = load.invoke("glPrioritizeTexturesEXT", ofVoid(JAVA_INT, ADDRESS, ADDRESS)); + } + + public static boolean glAreTexturesResidentEXT(int n, @NativeType("const GLuint *") MemorySegment textures, @NativeType("GLboolean *") MemorySegment residences) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glAreTexturesResidentEXT).invokeExact(n, textures, residences); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBindTextureEXT(int target, int texture) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindTextureEXT).invokeExact(target, texture); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeleteTexturesEXT(int n, @NativeType("const GLuint *") MemorySegment textures) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeleteTexturesEXT).invokeExact(n, textures); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGenTexturesEXT(int n, @NativeType("GLuint *") MemorySegment textures) { + final var ext = getExtCapabilities(); + try { + check(ext.glGenTexturesEXT).invokeExact(n, textures); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsTextureEXT(int texture) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsTextureEXT).invokeExact(texture); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glPrioritizeTexturesEXT(int n, @NativeType("const GLuint *") MemorySegment textures, @NativeType("const GLclampf *") MemorySegment priorities) { + final var ext = getExtCapabilities(); + try { + check(ext.glPrioritizeTexturesEXT).invokeExact(n, textures, priorities); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTexturePerturbNormal.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTexturePerturbNormal.java new file mode 100644 index 00000000..2b005b58 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTexturePerturbNormal.java @@ -0,0 +1,45 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_perturb_normal} + */ +public final class GLEXTTexturePerturbNormal { + public static final int GL_PERTURB_EXT = 0x85AE; + public static final int GL_TEXTURE_NORMAL_EXT = 0x85AF; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_texture_perturb_normal) return; + ext.glTextureNormalEXT = load.invoke("glTextureNormalEXT", ofVoid(JAVA_INT)); + } + + public static void glTextureNormalEXT(int mode) { + final var ext = getExtCapabilities(); + try { + check(ext.glTextureNormalEXT).invokeExact(mode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSharedExponent.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSharedExponent.java new file mode 100644 index 00000000..4630c092 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSharedExponent.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_shared_exponent} + */ +public final class GLEXTTextureSharedExponent { + public static final int GL_RGB9_E5_EXT = 0x8C3D; + public static final int GL_UNSIGNED_INT_5_9_9_9_REV_EXT = 0x8C3E; + public static final int GL_TEXTURE_SHARED_SIZE_EXT = 0x8C3F; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSnorm.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSnorm.java new file mode 100644 index 00000000..9d0cb635 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSnorm.java @@ -0,0 +1,47 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_snorm} + */ +public final class GLEXTTextureSnorm { + public static final int GL_ALPHA_SNORM = 0x9010; + public static final int GL_LUMINANCE_SNORM = 0x9011; + public static final int GL_LUMINANCE_ALPHA_SNORM = 0x9012; + public static final int GL_INTENSITY_SNORM = 0x9013; + public static final int GL_ALPHA8_SNORM = 0x9014; + public static final int GL_LUMINANCE8_SNORM = 0x9015; + public static final int GL_LUMINANCE8_ALPHA8_SNORM = 0x9016; + public static final int GL_INTENSITY8_SNORM = 0x9017; + public static final int GL_ALPHA16_SNORM = 0x9018; + public static final int GL_LUMINANCE16_SNORM = 0x9019; + public static final int GL_LUMINANCE16_ALPHA16_SNORM = 0x901A; + public static final int GL_INTENSITY16_SNORM = 0x901B; + public static final int GL_RED_SNORM = 0x8F90; + public static final int GL_RG_SNORM = 0x8F91; + public static final int GL_RGB_SNORM = 0x8F92; + public static final int GL_RGBA_SNORM = 0x8F93; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSrgb.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSrgb.java new file mode 100644 index 00000000..d235182e --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSrgb.java @@ -0,0 +1,47 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_sRGB} + */ +public final class GLEXTTextureSrgb { + public static final int GL_SRGB_EXT = 0x8C40; + public static final int GL_SRGB8_EXT = 0x8C41; + public static final int GL_SRGB_ALPHA_EXT = 0x8C42; + public static final int GL_SRGB8_ALPHA8_EXT = 0x8C43; + public static final int GL_SLUMINANCE_ALPHA_EXT = 0x8C44; + public static final int GL_SLUMINANCE8_ALPHA8_EXT = 0x8C45; + public static final int GL_SLUMINANCE_EXT = 0x8C46; + public static final int GL_SLUMINANCE8_EXT = 0x8C47; + public static final int GL_COMPRESSED_SRGB_EXT = 0x8C48; + public static final int GL_COMPRESSED_SRGB_ALPHA_EXT = 0x8C49; + public static final int GL_COMPRESSED_SLUMINANCE_EXT = 0x8C4A; + public static final int GL_COMPRESSED_SLUMINANCE_ALPHA_EXT = 0x8C4B; + public static final int GL_COMPRESSED_SRGB_S3TC_DXT1_EXT = 0x8C4C; + public static final int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT = 0x8C4D; + public static final int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT = 0x8C4E; + public static final int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT = 0x8C4F; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSrgbDecode.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSrgbDecode.java new file mode 100644 index 00000000..9528acf6 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSrgbDecode.java @@ -0,0 +1,34 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_sRGB_decode} + */ +public final class GLEXTTextureSrgbDecode { + public static final int GL_TEXTURE_SRGB_DECODE_EXT = 0x8A48; + public static final int GL_DECODE_EXT = 0x8A49; + public static final int GL_SKIP_DECODE_EXT = 0x8A4A; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSrgbR8.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSrgbR8.java new file mode 100644 index 00000000..8db954d1 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSrgbR8.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_sRGB_R8} + */ +public final class GLEXTTextureSrgbR8 { + public static final int GL_SR8_EXT = 0x8FBD; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSrgbRGB.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSrgbRGB.java new file mode 100644 index 00000000..32424b0c --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSrgbRGB.java @@ -0,0 +1,32 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_sRGB_RG8} + */ +public final class GLEXTTextureSrgbRGB { + public static final int GL_SRG8_EXT = 0x8FBE; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureStorage.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureStorage.java new file mode 100644 index 00000000..757893be --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureStorage.java @@ -0,0 +1,77 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_storage} + */ +public final class GLEXTTextureStorage { + public static final int GL_TEXTURE_IMMUTABLE_FORMAT_EXT = 0x912F; + public static final int GL_RGBA32F_EXT = 0x8814; + public static final int GL_RGB32F_EXT = 0x8815; + public static final int GL_ALPHA32F_EXT = 0x8816; + public static final int GL_LUMINANCE32F_EXT = 0x8818; + public static final int GL_LUMINANCE_ALPHA32F_EXT = 0x8819; + public static final int GL_RGBA16F_EXT = 0x881A; + public static final int GL_RGB16F_EXT = 0x881B; + public static final int GL_ALPHA16F_EXT = 0x881C; + public static final int GL_LUMINANCE16F_EXT = 0x881E; + public static final int GL_LUMINANCE_ALPHA16F_EXT = 0x881F; + public static final int GL_BGRA8_EXT = 0x93A1; + public static final int GL_R8_EXT = 0x8229; + public static final int GL_RG8_EXT = 0x822B; + public static final int GL_R32F_EXT = 0x822E; + public static final int GL_RG32F_EXT = 0x8230; + public static final int GL_R16F_EXT = 0x822D; + public static final int GL_RG16F_EXT = 0x822F; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_texture_storage) return; + ext.glTexStorage1DEXT = load.invoke("glTexStorage1DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glTexStorage2DEXT = load.invoke("glTexStorage2DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glTexStorage3DEXT = load.invoke("glTexStorage3DEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + } + + public static void glTexStorage1DEXT(int target, int levels, int internalformat, int width) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexStorage1DEXT).invokeExact(target, levels, internalformat, width); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexStorage2DEXT(int target, int levels, int internalformat, int width, int height) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexStorage2DEXT).invokeExact(target, levels, internalformat, width, height); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexStorage3DEXT(int target, int levels, int internalformat, int width, int height, int depth) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexStorage3DEXT).invokeExact(target, levels, internalformat, width, height, depth); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSwizzle.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSwizzle.java new file mode 100644 index 00000000..6c20fb0b --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTextureSwizzle.java @@ -0,0 +1,36 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_texture_swizzle} + */ +public final class GLEXTTextureSwizzle { + public static final int GL_TEXTURE_SWIZZLE_R_EXT = 0x8E42; + public static final int GL_TEXTURE_SWIZZLE_G_EXT = 0x8E43; + public static final int GL_TEXTURE_SWIZZLE_B_EXT = 0x8E44; + public static final int GL_TEXTURE_SWIZZLE_A_EXT = 0x8E45; + public static final int GL_TEXTURE_SWIZZLE_RGBA_EXT = 0x8E46; +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTimerQuery.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTimerQuery.java new file mode 100644 index 00000000..7b4cd363 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTimerQuery.java @@ -0,0 +1,52 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_timer_query} + */ +public final class GLEXTTimerQuery { + public static final int GL_TIME_ELAPSED_EXT = 0x88BF; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_timer_query) return; + ext.glGetQueryObjecti64vEXT = load.invoke("glGetQueryObjecti64vEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetQueryObjectui64vEXT = load.invoke("glGetQueryObjectui64vEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glGetQueryObjecti64vEXT(int id, int pname, @NativeType("GLint64 *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetQueryObjecti64vEXT).invokeExact(id, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetQueryObjectui64vEXT(int id, int pname, @NativeType("GLuint64 *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetQueryObjectui64vEXT).invokeExact(id, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTransformFeedback.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTransformFeedback.java new file mode 100644 index 00000000..168f9066 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTTransformFeedback.java @@ -0,0 +1,106 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_transform_feedback} + */ +public final class GLEXTTransformFeedback { + public static final int GL_TRANSFORM_FEEDBACK_BUFFER_EXT = 0x8C8E; + public static final int GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT = 0x8C84; + public static final int GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT = 0x8C85; + public static final int GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT = 0x8C8F; + public static final int GL_INTERLEAVED_ATTRIBS_EXT = 0x8C8C; + public static final int GL_SEPARATE_ATTRIBS_EXT = 0x8C8D; + public static final int GL_PRIMITIVES_GENERATED_EXT = 0x8C87; + public static final int GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT = 0x8C88; + public static final int GL_RASTERIZER_DISCARD_EXT = 0x8C89; + public static final int GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT = 0x8C8A; + public static final int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT = 0x8C8B; + public static final int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT = 0x8C80; + public static final int GL_TRANSFORM_FEEDBACK_VARYINGS_EXT = 0x8C83; + public static final int GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT = 0x8C7F; + public static final int GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT = 0x8C76; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_transform_feedback) return; + ext.glBeginTransformFeedbackEXT = load.invoke("glBeginTransformFeedbackEXT", ofVoid(JAVA_INT)); + ext.glEndTransformFeedbackEXT = load.invoke("glEndTransformFeedbackEXT", ofVoid()); + ext.glBindBufferRangeEXT = load.invoke("glBindBufferRangeEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG, JAVA_LONG)); + ext.glBindBufferOffsetEXT = load.invoke("glBindBufferOffsetEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_LONG)); + ext.glBindBufferBaseEXT = load.invoke("glBindBufferBaseEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glTransformFeedbackVaryingsEXT = load.invoke("glTransformFeedbackVaryingsEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS, JAVA_INT)); + ext.glGetTransformFeedbackVaryingEXT = load.invoke("glGetTransformFeedbackVaryingEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS, ADDRESS, ADDRESS, ADDRESS)); + } + + public static void glBeginTransformFeedbackEXT(int primitiveMode) { + final var ext = getExtCapabilities(); + try { + check(ext.glBeginTransformFeedbackEXT).invokeExact(primitiveMode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEndTransformFeedbackEXT() { + final var ext = getExtCapabilities(); + try { + check(ext.glEndTransformFeedbackEXT).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBindBufferRangeEXT(int target, int index, int buffer, long offset, long size) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindBufferRangeEXT).invokeExact(target, index, buffer, offset, size); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBindBufferOffsetEXT(int target, int index, int buffer, long offset) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindBufferOffsetEXT).invokeExact(target, index, buffer, offset); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBindBufferBaseEXT(int target, int index, int buffer) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindBufferBaseEXT).invokeExact(target, index, buffer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTransformFeedbackVaryingsEXT(int program, int count, @NativeType("const GLchar *const*") MemorySegment varyings, int bufferMode) { + final var ext = getExtCapabilities(); + try { + check(ext.glTransformFeedbackVaryingsEXT).invokeExact(program, count, varyings, bufferMode); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetTransformFeedbackVaryingEXT(int program, int index, int bufSize, @NativeType("GLsizei *") MemorySegment length, @NativeType("GLsizei *") MemorySegment size, @NativeType("GLenum *") MemorySegment type, @NativeType("GLchar *") MemorySegment name) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetTransformFeedbackVaryingEXT).invokeExact(program, index, bufSize, length, size, type, name); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTVertexArray.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTVertexArray.java new file mode 100644 index 00000000..25f135ff --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTVertexArray.java @@ -0,0 +1,139 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_vertex_array} + */ +public final class GLEXTVertexArray { + public static final int GL_VERTEX_ARRAY_EXT = 0x8074; + public static final int GL_NORMAL_ARRAY_EXT = 0x8075; + public static final int GL_COLOR_ARRAY_EXT = 0x8076; + public static final int GL_INDEX_ARRAY_EXT = 0x8077; + public static final int GL_TEXTURE_COORD_ARRAY_EXT = 0x8078; + public static final int GL_EDGE_FLAG_ARRAY_EXT = 0x8079; + public static final int GL_VERTEX_ARRAY_SIZE_EXT = 0x807A; + public static final int GL_VERTEX_ARRAY_TYPE_EXT = 0x807B; + public static final int GL_VERTEX_ARRAY_STRIDE_EXT = 0x807C; + public static final int GL_VERTEX_ARRAY_COUNT_EXT = 0x807D; + public static final int GL_NORMAL_ARRAY_TYPE_EXT = 0x807E; + public static final int GL_NORMAL_ARRAY_STRIDE_EXT = 0x807F; + public static final int GL_NORMAL_ARRAY_COUNT_EXT = 0x8080; + public static final int GL_COLOR_ARRAY_SIZE_EXT = 0x8081; + public static final int GL_COLOR_ARRAY_TYPE_EXT = 0x8082; + public static final int GL_COLOR_ARRAY_STRIDE_EXT = 0x8083; + public static final int GL_COLOR_ARRAY_COUNT_EXT = 0x8084; + public static final int GL_INDEX_ARRAY_TYPE_EXT = 0x8085; + public static final int GL_INDEX_ARRAY_STRIDE_EXT = 0x8086; + public static final int GL_INDEX_ARRAY_COUNT_EXT = 0x8087; + public static final int GL_TEXTURE_COORD_ARRAY_SIZE_EXT = 0x8088; + public static final int GL_TEXTURE_COORD_ARRAY_TYPE_EXT = 0x8089; + public static final int GL_TEXTURE_COORD_ARRAY_STRIDE_EXT = 0x808A; + public static final int GL_TEXTURE_COORD_ARRAY_COUNT_EXT = 0x808B; + public static final int GL_EDGE_FLAG_ARRAY_STRIDE_EXT = 0x808C; + public static final int GL_EDGE_FLAG_ARRAY_COUNT_EXT = 0x808D; + public static final int GL_VERTEX_ARRAY_POINTER_EXT = 0x808E; + public static final int GL_NORMAL_ARRAY_POINTER_EXT = 0x808F; + public static final int GL_COLOR_ARRAY_POINTER_EXT = 0x8090; + public static final int GL_INDEX_ARRAY_POINTER_EXT = 0x8091; + public static final int GL_TEXTURE_COORD_ARRAY_POINTER_EXT = 0x8092; + public static final int GL_EDGE_FLAG_ARRAY_POINTER_EXT = 0x8093; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_vertex_array) return; + ext.glArrayElementEXT = load.invoke("glArrayElementEXT", ofVoid(JAVA_INT)); + ext.glColorPointerEXT = load.invoke("glColorPointerEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glDrawArraysEXT = load.invoke("glDrawArraysEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glEdgeFlagPointerEXT = load.invoke("glEdgeFlagPointerEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetPointervEXT = load.invoke("glGetPointervEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glIndexPointerEXT = load.invoke("glIndexPointerEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glNormalPointerEXT = load.invoke("glNormalPointerEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glTexCoordPointerEXT = load.invoke("glTexCoordPointerEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVertexPointerEXT = load.invoke("glVertexPointerEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glArrayElementEXT(int i) { + final var ext = getExtCapabilities(); + try { + check(ext.glArrayElementEXT).invokeExact(i); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glColorPointerEXT(int size, int type, int stride, int count, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glColorPointerEXT).invokeExact(size, type, stride, count, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDrawArraysEXT(int mode, int first, int count) { + final var ext = getExtCapabilities(); + try { + check(ext.glDrawArraysEXT).invokeExact(mode, first, count); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEdgeFlagPointerEXT(int stride, int count, @NativeType("const GLboolean *") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glEdgeFlagPointerEXT).invokeExact(stride, count, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetPointervEXT(int pname, @NativeType("void **") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetPointervEXT).invokeExact(pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glIndexPointerEXT(int type, int stride, int count, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glIndexPointerEXT).invokeExact(type, stride, count, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glNormalPointerEXT(int type, int stride, int count, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glNormalPointerEXT).invokeExact(type, stride, count, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glTexCoordPointerEXT(int size, int type, int stride, int count, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glTexCoordPointerEXT).invokeExact(size, type, stride, count, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexPointerEXT(int size, int type, int stride, int count, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexPointerEXT).invokeExact(size, type, stride, count, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTVertexAttrib64bit.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTVertexAttrib64bit.java new file mode 100644 index 00000000..dc7eac02 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTVertexAttrib64bit.java @@ -0,0 +1,127 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_vertex_attrib_64bit} + */ +public final class GLEXTVertexAttrib64bit { + public static final int GL_DOUBLE_VEC2_EXT = 0x8FFC; + public static final int GL_DOUBLE_VEC3_EXT = 0x8FFD; + public static final int GL_DOUBLE_VEC4_EXT = 0x8FFE; + public static final int GL_DOUBLE_MAT2_EXT = 0x8F46; + public static final int GL_DOUBLE_MAT3_EXT = 0x8F47; + public static final int GL_DOUBLE_MAT4_EXT = 0x8F48; + public static final int GL_DOUBLE_MAT2x3_EXT = 0x8F49; + public static final int GL_DOUBLE_MAT2x4_EXT = 0x8F4A; + public static final int GL_DOUBLE_MAT3x2_EXT = 0x8F4B; + public static final int GL_DOUBLE_MAT3x4_EXT = 0x8F4C; + public static final int GL_DOUBLE_MAT4x2_EXT = 0x8F4D; + public static final int GL_DOUBLE_MAT4x3_EXT = 0x8F4E; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_vertex_attrib_64bit) return; + ext.glVertexAttribL1dEXT = load.invoke("glVertexAttribL1dEXT", ofVoid(JAVA_INT, JAVA_DOUBLE)); + ext.glVertexAttribL2dEXT = load.invoke("glVertexAttribL2dEXT", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glVertexAttribL3dEXT = load.invoke("glVertexAttribL3dEXT", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glVertexAttribL4dEXT = load.invoke("glVertexAttribL4dEXT", ofVoid(JAVA_INT, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE, JAVA_DOUBLE)); + ext.glVertexAttribL1dvEXT = load.invoke("glVertexAttribL1dvEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribL2dvEXT = load.invoke("glVertexAttribL2dvEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribL3dvEXT = load.invoke("glVertexAttribL3dvEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribL4dvEXT = load.invoke("glVertexAttribL4dvEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVertexAttribLPointerEXT = load.invoke("glVertexAttribLPointerEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVertexAttribLdvEXT = load.invoke("glGetVertexAttribLdvEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glVertexAttribL1dEXT(int index, double x) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL1dEXT).invokeExact(index, x); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL2dEXT(int index, double x, double y) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL2dEXT).invokeExact(index, x, y); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL3dEXT(int index, double x, double y, double z) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL3dEXT).invokeExact(index, x, y, z); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL4dEXT(int index, double x, double y, double z, double w) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL4dEXT).invokeExact(index, x, y, z, w); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL1dvEXT(int index, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL1dvEXT).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL2dvEXT(int index, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL2dvEXT).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL3dvEXT(int index, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL3dvEXT).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribL4dvEXT(int index, @NativeType("const GLdouble *") MemorySegment v) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribL4dvEXT).invokeExact(index, v); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexAttribLPointerEXT(int index, int size, int type, int stride, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexAttribLPointerEXT).invokeExact(index, size, type, stride, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVertexAttribLdvEXT(int index, int pname, @NativeType("GLdouble *") MemorySegment params) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVertexAttribLdvEXT).invokeExact(index, pname, params); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTVertexShader.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTVertexShader.java new file mode 100644 index 00000000..3821f511 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTVertexShader.java @@ -0,0 +1,489 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_vertex_shader} + */ +public final class GLEXTVertexShader { + public static final int GL_VERTEX_SHADER_EXT = 0x8780; + public static final int GL_VERTEX_SHADER_BINDING_EXT = 0x8781; + public static final int GL_OP_INDEX_EXT = 0x8782; + public static final int GL_OP_NEGATE_EXT = 0x8783; + public static final int GL_OP_DOT3_EXT = 0x8784; + public static final int GL_OP_DOT4_EXT = 0x8785; + public static final int GL_OP_MUL_EXT = 0x8786; + public static final int GL_OP_ADD_EXT = 0x8787; + public static final int GL_OP_MADD_EXT = 0x8788; + public static final int GL_OP_FRAC_EXT = 0x8789; + public static final int GL_OP_MAX_EXT = 0x878A; + public static final int GL_OP_MIN_EXT = 0x878B; + public static final int GL_OP_SET_GE_EXT = 0x878C; + public static final int GL_OP_SET_LT_EXT = 0x878D; + public static final int GL_OP_CLAMP_EXT = 0x878E; + public static final int GL_OP_FLOOR_EXT = 0x878F; + public static final int GL_OP_ROUND_EXT = 0x8790; + public static final int GL_OP_EXP_BASE_2_EXT = 0x8791; + public static final int GL_OP_LOG_BASE_2_EXT = 0x8792; + public static final int GL_OP_POWER_EXT = 0x8793; + public static final int GL_OP_RECIP_EXT = 0x8794; + public static final int GL_OP_RECIP_SQRT_EXT = 0x8795; + public static final int GL_OP_SUB_EXT = 0x8796; + public static final int GL_OP_CROSS_PRODUCT_EXT = 0x8797; + public static final int GL_OP_MULTIPLY_MATRIX_EXT = 0x8798; + public static final int GL_OP_MOV_EXT = 0x8799; + public static final int GL_OUTPUT_VERTEX_EXT = 0x879A; + public static final int GL_OUTPUT_COLOR0_EXT = 0x879B; + public static final int GL_OUTPUT_COLOR1_EXT = 0x879C; + public static final int GL_OUTPUT_TEXTURE_COORD0_EXT = 0x879D; + public static final int GL_OUTPUT_TEXTURE_COORD1_EXT = 0x879E; + public static final int GL_OUTPUT_TEXTURE_COORD2_EXT = 0x879F; + public static final int GL_OUTPUT_TEXTURE_COORD3_EXT = 0x87A0; + public static final int GL_OUTPUT_TEXTURE_COORD4_EXT = 0x87A1; + public static final int GL_OUTPUT_TEXTURE_COORD5_EXT = 0x87A2; + public static final int GL_OUTPUT_TEXTURE_COORD6_EXT = 0x87A3; + public static final int GL_OUTPUT_TEXTURE_COORD7_EXT = 0x87A4; + public static final int GL_OUTPUT_TEXTURE_COORD8_EXT = 0x87A5; + public static final int GL_OUTPUT_TEXTURE_COORD9_EXT = 0x87A6; + public static final int GL_OUTPUT_TEXTURE_COORD10_EXT = 0x87A7; + public static final int GL_OUTPUT_TEXTURE_COORD11_EXT = 0x87A8; + public static final int GL_OUTPUT_TEXTURE_COORD12_EXT = 0x87A9; + public static final int GL_OUTPUT_TEXTURE_COORD13_EXT = 0x87AA; + public static final int GL_OUTPUT_TEXTURE_COORD14_EXT = 0x87AB; + public static final int GL_OUTPUT_TEXTURE_COORD15_EXT = 0x87AC; + public static final int GL_OUTPUT_TEXTURE_COORD16_EXT = 0x87AD; + public static final int GL_OUTPUT_TEXTURE_COORD17_EXT = 0x87AE; + public static final int GL_OUTPUT_TEXTURE_COORD18_EXT = 0x87AF; + public static final int GL_OUTPUT_TEXTURE_COORD19_EXT = 0x87B0; + public static final int GL_OUTPUT_TEXTURE_COORD20_EXT = 0x87B1; + public static final int GL_OUTPUT_TEXTURE_COORD21_EXT = 0x87B2; + public static final int GL_OUTPUT_TEXTURE_COORD22_EXT = 0x87B3; + public static final int GL_OUTPUT_TEXTURE_COORD23_EXT = 0x87B4; + public static final int GL_OUTPUT_TEXTURE_COORD24_EXT = 0x87B5; + public static final int GL_OUTPUT_TEXTURE_COORD25_EXT = 0x87B6; + public static final int GL_OUTPUT_TEXTURE_COORD26_EXT = 0x87B7; + public static final int GL_OUTPUT_TEXTURE_COORD27_EXT = 0x87B8; + public static final int GL_OUTPUT_TEXTURE_COORD28_EXT = 0x87B9; + public static final int GL_OUTPUT_TEXTURE_COORD29_EXT = 0x87BA; + public static final int GL_OUTPUT_TEXTURE_COORD30_EXT = 0x87BB; + public static final int GL_OUTPUT_TEXTURE_COORD31_EXT = 0x87BC; + public static final int GL_OUTPUT_FOG_EXT = 0x87BD; + public static final int GL_SCALAR_EXT = 0x87BE; + public static final int GL_VECTOR_EXT = 0x87BF; + public static final int GL_MATRIX_EXT = 0x87C0; + public static final int GL_VARIANT_EXT = 0x87C1; + public static final int GL_INVARIANT_EXT = 0x87C2; + public static final int GL_LOCAL_CONSTANT_EXT = 0x87C3; + public static final int GL_LOCAL_EXT = 0x87C4; + public static final int GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87C5; + public static final int GL_MAX_VERTEX_SHADER_VARIANTS_EXT = 0x87C6; + public static final int GL_MAX_VERTEX_SHADER_INVARIANTS_EXT = 0x87C7; + public static final int GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87C8; + public static final int GL_MAX_VERTEX_SHADER_LOCALS_EXT = 0x87C9; + public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87CA; + public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT = 0x87CB; + public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87CC; + public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT = 0x87CD; + public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT = 0x87CE; + public static final int GL_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87CF; + public static final int GL_VERTEX_SHADER_VARIANTS_EXT = 0x87D0; + public static final int GL_VERTEX_SHADER_INVARIANTS_EXT = 0x87D1; + public static final int GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87D2; + public static final int GL_VERTEX_SHADER_LOCALS_EXT = 0x87D3; + public static final int GL_VERTEX_SHADER_OPTIMIZED_EXT = 0x87D4; + public static final int GL_X_EXT = 0x87D5; + public static final int GL_Y_EXT = 0x87D6; + public static final int GL_Z_EXT = 0x87D7; + public static final int GL_W_EXT = 0x87D8; + public static final int GL_NEGATIVE_X_EXT = 0x87D9; + public static final int GL_NEGATIVE_Y_EXT = 0x87DA; + public static final int GL_NEGATIVE_Z_EXT = 0x87DB; + public static final int GL_NEGATIVE_W_EXT = 0x87DC; + public static final int GL_ZERO_EXT = 0x87DD; + public static final int GL_ONE_EXT = 0x87DE; + public static final int GL_NEGATIVE_ONE_EXT = 0x87DF; + public static final int GL_NORMALIZED_RANGE_EXT = 0x87E0; + public static final int GL_FULL_RANGE_EXT = 0x87E1; + public static final int GL_CURRENT_VERTEX_EXT = 0x87E2; + public static final int GL_MVP_MATRIX_EXT = 0x87E3; + public static final int GL_VARIANT_VALUE_EXT = 0x87E4; + public static final int GL_VARIANT_DATATYPE_EXT = 0x87E5; + public static final int GL_VARIANT_ARRAY_STRIDE_EXT = 0x87E6; + public static final int GL_VARIANT_ARRAY_TYPE_EXT = 0x87E7; + public static final int GL_VARIANT_ARRAY_EXT = 0x87E8; + public static final int GL_VARIANT_ARRAY_POINTER_EXT = 0x87E9; + public static final int GL_INVARIANT_VALUE_EXT = 0x87EA; + public static final int GL_INVARIANT_DATATYPE_EXT = 0x87EB; + public static final int GL_LOCAL_CONSTANT_VALUE_EXT = 0x87EC; + public static final int GL_LOCAL_CONSTANT_DATATYPE_EXT = 0x87ED; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_vertex_shader) return; + ext.glBeginVertexShaderEXT = load.invoke("glBeginVertexShaderEXT", ofVoid()); + ext.glEndVertexShaderEXT = load.invoke("glEndVertexShaderEXT", ofVoid()); + ext.glBindVertexShaderEXT = load.invoke("glBindVertexShaderEXT", ofVoid(JAVA_INT)); + ext.glGenVertexShadersEXT = load.invoke("glGenVertexShadersEXT", of(JAVA_INT, JAVA_INT)); + ext.glDeleteVertexShaderEXT = load.invoke("glDeleteVertexShaderEXT", ofVoid(JAVA_INT)); + ext.glShaderOp1EXT = load.invoke("glShaderOp1EXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glShaderOp2EXT = load.invoke("glShaderOp2EXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glShaderOp3EXT = load.invoke("glShaderOp3EXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glSwizzleEXT = load.invoke("glSwizzleEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glWriteMaskEXT = load.invoke("glWriteMaskEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glInsertComponentEXT = load.invoke("glInsertComponentEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glExtractComponentEXT = load.invoke("glExtractComponentEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glGenSymbolsEXT = load.invoke("glGenSymbolsEXT", of(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glSetInvariantEXT = load.invoke("glSetInvariantEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glSetLocalConstantEXT = load.invoke("glSetLocalConstantEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glVariantbvEXT = load.invoke("glVariantbvEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVariantsvEXT = load.invoke("glVariantsvEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVariantivEXT = load.invoke("glVariantivEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVariantfvEXT = load.invoke("glVariantfvEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVariantdvEXT = load.invoke("glVariantdvEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVariantubvEXT = load.invoke("glVariantubvEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVariantusvEXT = load.invoke("glVariantusvEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVariantuivEXT = load.invoke("glVariantuivEXT", ofVoid(JAVA_INT, ADDRESS)); + ext.glVariantPointerEXT = load.invoke("glVariantPointerEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + ext.glEnableVariantClientStateEXT = load.invoke("glEnableVariantClientStateEXT", ofVoid(JAVA_INT)); + ext.glDisableVariantClientStateEXT = load.invoke("glDisableVariantClientStateEXT", ofVoid(JAVA_INT)); + ext.glBindLightParameterEXT = load.invoke("glBindLightParameterEXT", of(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glBindMaterialParameterEXT = load.invoke("glBindMaterialParameterEXT", of(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glBindTexGenParameterEXT = load.invoke("glBindTexGenParameterEXT", of(JAVA_INT, JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glBindTextureUnitParameterEXT = load.invoke("glBindTextureUnitParameterEXT", of(JAVA_INT, JAVA_INT, JAVA_INT)); + ext.glBindParameterEXT = load.invoke("glBindParameterEXT", of(JAVA_INT, JAVA_INT)); + ext.glIsVariantEnabledEXT = load.invoke("glIsVariantEnabledEXT", of(JAVA_BYTE, JAVA_INT, JAVA_INT)); + ext.glGetVariantBooleanvEXT = load.invoke("glGetVariantBooleanvEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVariantIntegervEXT = load.invoke("glGetVariantIntegervEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVariantFloatvEXT = load.invoke("glGetVariantFloatvEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetVariantPointervEXT = load.invoke("glGetVariantPointervEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetInvariantBooleanvEXT = load.invoke("glGetInvariantBooleanvEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetInvariantIntegervEXT = load.invoke("glGetInvariantIntegervEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetInvariantFloatvEXT = load.invoke("glGetInvariantFloatvEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetLocalConstantBooleanvEXT = load.invoke("glGetLocalConstantBooleanvEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetLocalConstantIntegervEXT = load.invoke("glGetLocalConstantIntegervEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + ext.glGetLocalConstantFloatvEXT = load.invoke("glGetLocalConstantFloatvEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glBeginVertexShaderEXT() { + final var ext = getExtCapabilities(); + try { + check(ext.glBeginVertexShaderEXT).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEndVertexShaderEXT() { + final var ext = getExtCapabilities(); + try { + check(ext.glEndVertexShaderEXT).invokeExact(); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glBindVertexShaderEXT(int id) { + final var ext = getExtCapabilities(); + try { + check(ext.glBindVertexShaderEXT).invokeExact(id); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glGenVertexShadersEXT(int range) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glGenVertexShadersEXT).invokeExact(range); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDeleteVertexShaderEXT(int id) { + final var ext = getExtCapabilities(); + try { + check(ext.glDeleteVertexShaderEXT).invokeExact(id); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glShaderOp1EXT(int op, int res, int arg1) { + final var ext = getExtCapabilities(); + try { + check(ext.glShaderOp1EXT).invokeExact(op, res, arg1); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glShaderOp2EXT(int op, int res, int arg1, int arg2) { + final var ext = getExtCapabilities(); + try { + check(ext.glShaderOp2EXT).invokeExact(op, res, arg1, arg2); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glShaderOp3EXT(int op, int res, int arg1, int arg2, int arg3) { + final var ext = getExtCapabilities(); + try { + check(ext.glShaderOp3EXT).invokeExact(op, res, arg1, arg2, arg3); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSwizzleEXT(int res, int in, int outX, int outY, int outZ, int outW) { + final var ext = getExtCapabilities(); + try { + check(ext.glSwizzleEXT).invokeExact(res, in, outX, outY, outZ, outW); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glWriteMaskEXT(int res, int in, int outX, int outY, int outZ, int outW) { + final var ext = getExtCapabilities(); + try { + check(ext.glWriteMaskEXT).invokeExact(res, in, outX, outY, outZ, outW); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glInsertComponentEXT(int res, int src, int num) { + final var ext = getExtCapabilities(); + try { + check(ext.glInsertComponentEXT).invokeExact(res, src, num); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glExtractComponentEXT(int res, int src, int num) { + final var ext = getExtCapabilities(); + try { + check(ext.glExtractComponentEXT).invokeExact(res, src, num); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glGenSymbolsEXT(int datatype, int storagetype, int range, int components) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glGenSymbolsEXT).invokeExact(datatype, storagetype, range, components); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSetInvariantEXT(int id, int type, @NativeType("const void *") MemorySegment addr) { + final var ext = getExtCapabilities(); + try { + check(ext.glSetInvariantEXT).invokeExact(id, type, addr); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glSetLocalConstantEXT(int id, int type, @NativeType("const void *") MemorySegment addr) { + final var ext = getExtCapabilities(); + try { + check(ext.glSetLocalConstantEXT).invokeExact(id, type, addr); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVariantbvEXT(int id, @NativeType("const GLbyte *") MemorySegment addr) { + final var ext = getExtCapabilities(); + try { + check(ext.glVariantbvEXT).invokeExact(id, addr); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVariantsvEXT(int id, @NativeType("const GLshort *") MemorySegment addr) { + final var ext = getExtCapabilities(); + try { + check(ext.glVariantsvEXT).invokeExact(id, addr); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVariantivEXT(int id, @NativeType("const GLint *") MemorySegment addr) { + final var ext = getExtCapabilities(); + try { + check(ext.glVariantivEXT).invokeExact(id, addr); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVariantfvEXT(int id, @NativeType("const GLfloat *") MemorySegment addr) { + final var ext = getExtCapabilities(); + try { + check(ext.glVariantfvEXT).invokeExact(id, addr); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVariantdvEXT(int id, @NativeType("const GLdouble *") MemorySegment addr) { + final var ext = getExtCapabilities(); + try { + check(ext.glVariantdvEXT).invokeExact(id, addr); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVariantubvEXT(int id, @NativeType("const GLubyte *") MemorySegment addr) { + final var ext = getExtCapabilities(); + try { + check(ext.glVariantubvEXT).invokeExact(id, addr); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVariantusvEXT(int id, @NativeType("const GLushort *") MemorySegment addr) { + final var ext = getExtCapabilities(); + try { + check(ext.glVariantusvEXT).invokeExact(id, addr); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVariantuivEXT(int id, @NativeType("const GLuint *") MemorySegment addr) { + final var ext = getExtCapabilities(); + try { + check(ext.glVariantuivEXT).invokeExact(id, addr); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVariantPointerEXT(int id, int type, int stride, @NativeType("const void *") MemorySegment addr) { + final var ext = getExtCapabilities(); + try { + check(ext.glVariantPointerEXT).invokeExact(id, type, stride, addr); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glEnableVariantClientStateEXT(int id) { + final var ext = getExtCapabilities(); + try { + check(ext.glEnableVariantClientStateEXT).invokeExact(id); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glDisableVariantClientStateEXT(int id) { + final var ext = getExtCapabilities(); + try { + check(ext.glDisableVariantClientStateEXT).invokeExact(id); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glBindLightParameterEXT(int light, int value) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glBindLightParameterEXT).invokeExact(light, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glBindMaterialParameterEXT(int face, int value) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glBindMaterialParameterEXT).invokeExact(face, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glBindTexGenParameterEXT(int unit, int coord, int value) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glBindTexGenParameterEXT).invokeExact(unit, coord, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glBindTextureUnitParameterEXT(int unit, int value) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glBindTextureUnitParameterEXT).invokeExact(unit, value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static int glBindParameterEXT(int value) { + final var ext = getExtCapabilities(); + try { + return (int) + check(ext.glBindParameterEXT).invokeExact(value); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glIsVariantEnabledEXT(int id, int cap) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glIsVariantEnabledEXT).invokeExact(id, cap); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVariantBooleanvEXT(int id, int value, @NativeType("GLboolean *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVariantBooleanvEXT).invokeExact(id, value, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVariantIntegervEXT(int id, int value, @NativeType("GLint *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVariantIntegervEXT).invokeExact(id, value, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVariantFloatvEXT(int id, int value, @NativeType("GLfloat *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVariantFloatvEXT).invokeExact(id, value, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetVariantPointervEXT(int id, int value, @NativeType("void **") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetVariantPointervEXT).invokeExact(id, value, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetInvariantBooleanvEXT(int id, int value, @NativeType("GLboolean *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetInvariantBooleanvEXT).invokeExact(id, value, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetInvariantIntegervEXT(int id, int value, @NativeType("GLint *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetInvariantIntegervEXT).invokeExact(id, value, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetInvariantFloatvEXT(int id, int value, @NativeType("GLfloat *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetInvariantFloatvEXT).invokeExact(id, value, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetLocalConstantBooleanvEXT(int id, int value, @NativeType("GLboolean *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetLocalConstantBooleanvEXT).invokeExact(id, value, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetLocalConstantIntegervEXT(int id, int value, @NativeType("GLint *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetLocalConstantIntegervEXT).invokeExact(id, value, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glGetLocalConstantFloatvEXT(int id, int value, @NativeType("GLfloat *") MemorySegment data) { + final var ext = getExtCapabilities(); + try { + check(ext.glGetLocalConstantFloatvEXT).invokeExact(id, value, data); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTVertexWeighting.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTVertexWeighting.java new file mode 100644 index 00000000..e735722a --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTVertexWeighting.java @@ -0,0 +1,72 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_vertex_weighting} + */ +public final class GLEXTVertexWeighting { + public static final int GL_MODELVIEW0_STACK_DEPTH_EXT = 0x0BA3; + public static final int GL_MODELVIEW1_STACK_DEPTH_EXT = 0x8502; + public static final int GL_MODELVIEW0_MATRIX_EXT = 0x0BA6; + public static final int GL_MODELVIEW1_MATRIX_EXT = 0x8506; + public static final int GL_VERTEX_WEIGHTING_EXT = 0x8509; + public static final int GL_MODELVIEW0_EXT = 0x1700; + public static final int GL_MODELVIEW1_EXT = 0x850A; + public static final int GL_CURRENT_VERTEX_WEIGHT_EXT = 0x850B; + public static final int GL_VERTEX_WEIGHT_ARRAY_EXT = 0x850C; + public static final int GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT = 0x850D; + public static final int GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT = 0x850E; + public static final int GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT = 0x850F; + public static final int GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT = 0x8510; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_vertex_weighting) return; + ext.glVertexWeightfEXT = load.invoke("glVertexWeightfEXT", ofVoid(JAVA_FLOAT)); + ext.glVertexWeightfvEXT = load.invoke("glVertexWeightfvEXT", ofVoid(ADDRESS)); + ext.glVertexWeightPointerEXT = load.invoke("glVertexWeightPointerEXT", ofVoid(JAVA_INT, JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glVertexWeightfEXT(float weight) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexWeightfEXT).invokeExact(weight); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexWeightfvEXT(@NativeType("const GLfloat *") MemorySegment weight) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexWeightfvEXT).invokeExact(weight); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static void glVertexWeightPointerEXT(int size, int type, int stride, @NativeType("const void *") MemorySegment pointer) { + final var ext = getExtCapabilities(); + try { + check(ext.glVertexWeightPointerEXT).invokeExact(size, type, stride, pointer); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTWin32KeyedMutex.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTWin32KeyedMutex.java new file mode 100644 index 00000000..f0bf68ad --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTWin32KeyedMutex.java @@ -0,0 +1,53 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_win32_keyed_mutex} + */ +public final class GLEXTWin32KeyedMutex { + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_win32_keyed_mutex) return; + ext.glAcquireKeyedMutexWin32EXT = load.invoke("glAcquireKeyedMutexWin32EXT", of(JAVA_BYTE, JAVA_INT, JAVA_LONG, JAVA_INT)); + ext.glReleaseKeyedMutexWin32EXT = load.invoke("glReleaseKeyedMutexWin32EXT", of(JAVA_BYTE, JAVA_INT, JAVA_LONG)); + } + + public static boolean glAcquireKeyedMutexWin32EXT(int memory, long key, int timeout) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glAcquireKeyedMutexWin32EXT).invokeExact(memory, key, timeout); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + + public static boolean glReleaseKeyedMutexWin32EXT(int memory, long key) { + final var ext = getExtCapabilities(); + try { + return (boolean) + check(ext.glReleaseKeyedMutexWin32EXT).invokeExact(memory, key); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTWindowRectangles.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTWindowRectangles.java new file mode 100644 index 00000000..d6389d67 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTWindowRectangles.java @@ -0,0 +1,49 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_window_rectangles} + */ +public final class GLEXTWindowRectangles { + public static final int GL_INCLUSIVE_EXT = 0x8F10; + public static final int GL_EXCLUSIVE_EXT = 0x8F11; + public static final int GL_WINDOW_RECTANGLE_EXT = 0x8F12; + public static final int GL_WINDOW_RECTANGLE_MODE_EXT = 0x8F13; + public static final int GL_MAX_WINDOW_RECTANGLES_EXT = 0x8F14; + public static final int GL_NUM_WINDOW_RECTANGLES_EXT = 0x8F15; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_window_rectangles) return; + ext.glWindowRectanglesEXT = load.invoke("glWindowRectanglesEXT", ofVoid(JAVA_INT, JAVA_INT, ADDRESS)); + } + + public static void glWindowRectanglesEXT(int mode, int count, @NativeType("const GLint *") MemorySegment box) { + final var ext = getExtCapabilities(); + try { + check(ext.glWindowRectanglesEXT).invokeExact(mode, count, box); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTX11SyncObject.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTX11SyncObject.java new file mode 100644 index 00000000..2b3196b5 --- /dev/null +++ b/modules/overrungl.opengl/src/main/java/overrungl/opengl/ext/ext/GLEXTX11SyncObject.java @@ -0,0 +1,45 @@ +/* + * MIT License + * + * Copyright (c) 2022-present Overrun Organization + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + */ + +// This file is auto-generated. DO NOT EDIT! +package overrungl.opengl.ext.ext; + +import overrungl.*; +import overrungl.opengl.*; +import java.lang.foreign.*; +import static java.lang.foreign.FunctionDescriptor.*; +import static java.lang.foreign.ValueLayout.*; +import static overrungl.opengl.GLLoader.*; + +/** + * {@code GL_EXT_x11_sync_object} + */ +public final class GLEXTX11SyncObject { + public static final int GL_SYNC_X11_FENCE_EXT = 0x90E1; + public static void load(GLExtCaps ext, GLLoadFunc load) { + if (!ext.GL_EXT_x11_sync_object) return; + ext.glImportSyncEXT = load.invoke("glImportSyncEXT", of(ADDRESS, JAVA_INT, JAVA_LONG, JAVA_INT)); + } + + public static @NativeType("GLsync") MemorySegment glImportSyncEXT(int external_sync_type, long external_sync, int flags) { + final var ext = getExtCapabilities(); + try { + return (MemorySegment) + check(ext.glImportSyncEXT).invokeExact(external_sync_type, external_sync, flags); + } catch (Throwable e) { throw new AssertionError("should not reach here", e); } + } + +} From d44845b7c3df8c31a3622a3301344343d40dfc03 Mon Sep 17 00:00:00 2001 From: squid233 <60126026+squid233@users.noreply.github.com> Date: Fri, 29 Dec 2023 13:53:37 +0800 Subject: [PATCH 20/20] [OpenGL] Removed GLConst and GLConstC --- .../main/java/overrungl/opengl/GLConst.java | 204 -- .../main/java/overrungl/opengl/GLConstC.java | 2629 ----------------- 2 files changed, 2833 deletions(-) delete mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/GLConst.java delete mode 100644 modules/overrungl.opengl/src/main/java/overrungl/opengl/GLConstC.java diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLConst.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLConst.java deleted file mode 100644 index c3e802c4..00000000 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLConst.java +++ /dev/null @@ -1,204 +0,0 @@ -/* - * MIT License - * - * Copyright (c) 2022-2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - -package overrungl.opengl; - -/** - * The OpenGL 1.0 ~ 4.6 constants. - * - * @author squid233 - * @since 0.1.0 - */ -@Deprecated(since = "0.1.0") -public final class GLConst extends GLConstC { - public static final int GL_2_BYTES_NV = 0x1407; - public static final int GL_3_BYTES_NV = 0x1408; - public static final int GL_4_BYTES_NV = 0x1409; - public static final int GL_ADD_SIGNED = 0x8574; - public static final int GL_ALPHA_INTEGER = 0x8D97; - public static final int GL_AUTO_NORMAL = 0x0D80; - public static final int GL_CLAMP_FRAGMENT_COLOR = 0x891B; - public static final int GL_CLAMP_VERTEX_COLOR = 0x891A; - public static final int GL_CLIENT_ACTIVE_TEXTURE = 0x84E1; - public static final int GL_COLOR_ARRAY_BUFFER_BINDING = 0x8898; - public static final int GL_COLOR_MATRIX = 0x80B1; - public static final int GL_COLOR_MATRIX_STACK_DEPTH = 0x80B2; - public static final int GL_COLOR_SUM = 0x8458; - public static final int GL_COLOR_TABLE = 0x80D0; - public static final int GL_COLOR_TABLE_ALPHA_SIZE = 0x80DD; - public static final int GL_COLOR_TABLE_BIAS = 0x80D7; - public static final int GL_COLOR_TABLE_BLUE_SIZE = 0x80DC; - public static final int GL_COLOR_TABLE_FORMAT = 0x80D8; - public static final int GL_COLOR_TABLE_GREEN_SIZE = 0x80DB; - public static final int GL_COLOR_TABLE_INTENSITY_SIZE = 0x80DF; - public static final int GL_COLOR_TABLE_LUMINANCE_SIZE = 0x80DE; - public static final int GL_COLOR_TABLE_RED_SIZE = 0x80DA; - public static final int GL_COLOR_TABLE_SCALE = 0x80D6; - public static final int GL_COLOR_TABLE_WIDTH = 0x80D9; - public static final int GL_COMBINE = 0x8570; - public static final int GL_COMBINE_ALPHA = 0x8572; - public static final int GL_COMBINE_RGB = 0x8571; - public static final int GL_COMPARE_R_TO_TEXTURE = 0x884E; - public static final int GL_COMPRESSED_ALPHA = 0x84E9; - public static final int GL_COMPRESSED_INTENSITY = 0x84EC; - public static final int GL_COMPRESSED_LUMINANCE = 0x84EA; - public static final int GL_COMPRESSED_LUMINANCE_ALPHA = 0x84EB; - public static final int GL_COMPRESSED_SLUMINANCE = 0x8C4A; - public static final int GL_COMPRESSED_SLUMINANCE_ALPHA = 0x8C4B; - public static final int GL_CONSTANT = 0x8576; - public static final int GL_CONSTANT_BORDER = 0x8151; - public static final int GL_CONSTANT_NV = 0x8576; - public static final int GL_CONVOLUTION_1D = 0x8010; - public static final int GL_CONVOLUTION_2D = 0x8011; - public static final int GL_CONVOLUTION_BORDER_COLOR = 0x8154; - public static final int GL_CONVOLUTION_BORDER_MODE = 0x8013; - public static final int GL_CONVOLUTION_FILTER_BIAS = 0x8015; - public static final int GL_CONVOLUTION_FILTER_SCALE = 0x8014; - public static final int GL_CONVOLUTION_FORMAT = 0x8017; - public static final int GL_CONVOLUTION_HEIGHT = 0x8019; - public static final int GL_CONVOLUTION_WIDTH = 0x8018; - public static final int GL_COORD_REPLACE = 0x8862; - public static final int GL_CURRENT_FOG_COORD = 0x8453; - public static final int GL_CURRENT_FOG_COORDINATE = 0x8453; - public static final int GL_CURRENT_RASTER_SECONDARY_COLOR = 0x845F; - public static final int GL_CURRENT_SECONDARY_COLOR = 0x8459; - public static final int GL_DEPTH_TEXTURE_MODE = 0x884B; - public static final int GL_DISPLAY_LIST = 0x82E7; - public static final int GL_DOT3_RGB = 0x86AE; - public static final int GL_DOT3_RGBA = 0x86AF; - public static final int GL_EDGE_FLAG_ARRAY_BUFFER_BINDING = 0x889B; - public static final int GL_EYE_LINEAR_NV = 0x2400; - public static final int GL_FOG_COORD = 0x8451; - public static final int GL_FOG_COORDINATE = 0x8451; - public static final int GL_FOG_COORDINATE_ARRAY = 0x8457; - public static final int GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING = 0x889D; - public static final int GL_FOG_COORDINATE_ARRAY_POINTER = 0x8456; - public static final int GL_FOG_COORDINATE_ARRAY_STRIDE = 0x8455; - public static final int GL_FOG_COORDINATE_ARRAY_TYPE = 0x8454; - public static final int GL_FOG_COORDINATE_SOURCE = 0x8450; - public static final int GL_FOG_COORD_ARRAY = 0x8457; - public static final int GL_FOG_COORD_ARRAY_BUFFER_BINDING = 0x889D; - public static final int GL_FOG_COORD_ARRAY_POINTER = 0x8456; - public static final int GL_FOG_COORD_ARRAY_STRIDE = 0x8455; - public static final int GL_FOG_COORD_ARRAY_TYPE = 0x8454; - public static final int GL_FOG_COORD_SRC = 0x8450; - public static final int GL_FRAGMENT_DEPTH = 0x8452; - public static final int GL_GENERATE_MIPMAP = 0x8191; - public static final int GL_GENERATE_MIPMAP_HINT = 0x8192; - public static final int GL_HISTOGRAM = 0x8024; - public static final int GL_HISTOGRAM_ALPHA_SIZE = 0x802B; - public static final int GL_HISTOGRAM_BLUE_SIZE = 0x802A; - public static final int GL_HISTOGRAM_FORMAT = 0x8027; - public static final int GL_HISTOGRAM_GREEN_SIZE = 0x8029; - public static final int GL_HISTOGRAM_LUMINANCE_SIZE = 0x802C; - public static final int GL_HISTOGRAM_RED_SIZE = 0x8028; - public static final int GL_HISTOGRAM_SINK = 0x802D; - public static final int GL_HISTOGRAM_WIDTH = 0x8026; - public static final int GL_INDEX = 0x8222; - public static final int GL_INDEX_ARRAY_BUFFER_BINDING = 0x8899; - public static final int GL_INTERPOLATE = 0x8575; - public static final int GL_MAP_COLOR = 0x0D10; - public static final int GL_MAP_STENCIL = 0x0D11; - public static final int GL_MAX_COLOR_MATRIX_STACK_DEPTH = 0x80B3; - public static final int GL_MAX_CONVOLUTION_HEIGHT = 0x801B; - public static final int GL_MAX_CONVOLUTION_WIDTH = 0x801A; - public static final int GL_MAX_TEXTURE_COORDS = 0x8871; - public static final int GL_MAX_TEXTURE_UNITS = 0x84E2; - public static final int GL_MINMAX = 0x802E; - public static final int GL_MINMAX_FORMAT = 0x802F; - public static final int GL_MINMAX_SINK = 0x8030; - public static final int GL_MULTISAMPLE_BIT = 0x20000000; - public static final int GL_NORMAL_ARRAY_BUFFER_BINDING = 0x8897; - public static final int GL_NORMAL_MAP = 0x8511; - public static final int GL_OBJECT_LINEAR_NV = 0x2401; - public static final int GL_OPERAND0_ALPHA = 0x8598; - public static final int GL_OPERAND0_RGB = 0x8590; - public static final int GL_OPERAND1_ALPHA = 0x8599; - public static final int GL_OPERAND1_RGB = 0x8591; - public static final int GL_OPERAND2_ALPHA = 0x859A; - public static final int GL_OPERAND2_RGB = 0x8592; - public static final int GL_PATH_FOG_GEN_MODE_NV = 0x90AC; - public static final int GL_PATH_GEN_COLOR_FORMAT_NV = 0x90B2; - public static final int GL_POINT_DISTANCE_ATTENUATION = 0x8129; - public static final int GL_POINT_SIZE_MAX = 0x8127; - public static final int GL_POINT_SIZE_MIN = 0x8126; - public static final int GL_POINT_SPRITE = 0x8861; - public static final int GL_POST_COLOR_MATRIX_ALPHA_BIAS = 0x80BB; - public static final int GL_POST_COLOR_MATRIX_ALPHA_SCALE = 0x80B7; - public static final int GL_POST_COLOR_MATRIX_BLUE_BIAS = 0x80BA; - public static final int GL_POST_COLOR_MATRIX_BLUE_SCALE = 0x80B6; - public static final int GL_POST_COLOR_MATRIX_COLOR_TABLE = 0x80D2; - public static final int GL_POST_COLOR_MATRIX_GREEN_BIAS = 0x80B9; - public static final int GL_POST_COLOR_MATRIX_GREEN_SCALE = 0x80B5; - public static final int GL_POST_COLOR_MATRIX_RED_BIAS = 0x80B8; - public static final int GL_POST_COLOR_MATRIX_RED_SCALE = 0x80B4; - public static final int GL_POST_CONVOLUTION_ALPHA_BIAS = 0x8023; - public static final int GL_POST_CONVOLUTION_ALPHA_SCALE = 0x801F; - public static final int GL_POST_CONVOLUTION_BLUE_BIAS = 0x8022; - public static final int GL_POST_CONVOLUTION_BLUE_SCALE = 0x801E; - public static final int GL_POST_CONVOLUTION_COLOR_TABLE = 0x80D1; - public static final int GL_POST_CONVOLUTION_GREEN_BIAS = 0x8021; - public static final int GL_POST_CONVOLUTION_GREEN_SCALE = 0x801D; - public static final int GL_POST_CONVOLUTION_RED_BIAS = 0x8020; - public static final int GL_POST_CONVOLUTION_RED_SCALE = 0x801C; - public static final int GL_PREVIOUS = 0x8578; - public static final int GL_PRIMARY_COLOR = 0x8577; - public static final int GL_PROXY_COLOR_TABLE = 0x80D3; - public static final int GL_PROXY_HISTOGRAM = 0x8025; - public static final int GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE = 0x80D5; - public static final int GL_PROXY_POST_CONVOLUTION_COLOR_TABLE = 0x80D4; - public static final int GL_REDUCE = 0x8016; - public static final int GL_REFLECTION_MAP = 0x8512; - public static final int GL_REPLICATE_BORDER = 0x8153; - public static final int GL_RGB_SCALE = 0x8573; - public static final int GL_S = 0x2000; - public static final int GL_SCISSOR_BIT = 0x00080000; - public static final int GL_SECONDARY_COLOR_ARRAY = 0x845E; - public static final int GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING = 0x889C; - public static final int GL_SECONDARY_COLOR_ARRAY_POINTER = 0x845D; - public static final int GL_SECONDARY_COLOR_ARRAY_SIZE = 0x845A; - public static final int GL_SECONDARY_COLOR_ARRAY_STRIDE = 0x845C; - public static final int GL_SECONDARY_COLOR_ARRAY_TYPE = 0x845B; - public static final int GL_SEPARABLE_2D = 0x8012; - public static final int GL_SLUMINANCE = 0x8C46; - public static final int GL_SLUMINANCE8 = 0x8C47; - public static final int GL_SLUMINANCE8_ALPHA8 = 0x8C45; - public static final int GL_SLUMINANCE_ALPHA = 0x8C44; - public static final int GL_SOURCE0_ALPHA = 0x8588; - public static final int GL_SOURCE0_RGB = 0x8580; - public static final int GL_SOURCE1_RGB = 0x8581; - public static final int GL_SOURCE2_ALPHA = 0x858A; - public static final int GL_SOURCE2_RGB = 0x8582; - public static final int GL_SRC0_ALPHA = 0x8588; - public static final int GL_SRC0_RGB = 0x8580; - public static final int GL_SRC1_RGB = 0x8581; - public static final int GL_SRC2_ALPHA = 0x858A; - public static final int GL_SRC2_RGB = 0x8582; - public static final int GL_SUBTRACT = 0x84E7; - public static final int GL_TABLE_TOO_LARGE = 0x8031; - public static final int GL_TEXTURE_BIT = 0x00040000; - public static final int GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING = 0x889A; - public static final int GL_TEXTURE_FILTER_CONTROL = 0x8500; - public static final int GL_TEXTURE_INTENSITY_TYPE = 0x8C15; - public static final int GL_TEXTURE_LUMINANCE_TYPE = 0x8C14; - public static final int GL_TRANSPOSE_COLOR_MATRIX = 0x84E6; - public static final int GL_TRANSPOSE_MODELVIEW_MATRIX = 0x84E3; - public static final int GL_TRANSPOSE_PROJECTION_MATRIX = 0x84E4; - public static final int GL_TRANSPOSE_TEXTURE_MATRIX = 0x84E5; - public static final int GL_VERTEX_ARRAY_BUFFER_BINDING = 0x8896; - public static final int GL_VERTEX_PROGRAM_TWO_SIDE = 0x8643; - public static final int GL_WEIGHT_ARRAY_BUFFER_BINDING = 0x889E; -} diff --git a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLConstC.java b/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLConstC.java deleted file mode 100644 index 02ff6d4b..00000000 --- a/modules/overrungl.opengl/src/main/java/overrungl/opengl/GLConstC.java +++ /dev/null @@ -1,2629 +0,0 @@ -/* - * MIT License - * - * Copyright (c) 2022-2023 Overrun Organization - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - */ - -package overrungl.opengl; - -/** - * The OpenGL 1.0 ~ 4.6 core profile constants. - * - * @author squid233 - * @since 0.1.0 - */ -@Deprecated(since = "0.1.0") -public sealed class GLConstC permits GLConst { - public static final int GL_1PASS_EXT = 0x80A1; - public static final int GL_1PASS_SGIS = 0x80A1; - public static final int GL_2PASS_0_EXT = 0x80A2; - public static final int GL_2PASS_0_SGIS = 0x80A2; - public static final int GL_2PASS_1_EXT = 0x80A3; - public static final int GL_2PASS_1_SGIS = 0x80A3; - public static final int GL_2X_BIT_ATI = 0x00000001; - public static final int GL_422_AVERAGE_EXT = 0x80CE; - public static final int GL_422_EXT = 0x80CC; - public static final int GL_422_REV_AVERAGE_EXT = 0x80CF; - public static final int GL_422_REV_EXT = 0x80CD; - public static final int GL_4PASS_0_EXT = 0x80A4; - public static final int GL_4PASS_0_SGIS = 0x80A4; - public static final int GL_4PASS_1_EXT = 0x80A5; - public static final int GL_4PASS_1_SGIS = 0x80A5; - public static final int GL_4PASS_2_EXT = 0x80A6; - public static final int GL_4PASS_2_SGIS = 0x80A6; - public static final int GL_4PASS_3_EXT = 0x80A7; - public static final int GL_4PASS_3_SGIS = 0x80A7; - public static final int GL_4X_BIT_ATI = 0x00000002; - public static final int GL_8X_BIT_ATI = 0x00000004; - public static final int GL_ABGR_EXT = 0x8000; - public static final int GL_ACCUM_ADJACENT_PAIRS_NV = 0x90AD; - public static final int GL_ACTIVE_PROGRAM_EXT = 0x8B8D; - public static final int GL_ACTIVE_STENCIL_FACE_EXT = 0x8911; - public static final int GL_ACTIVE_TEXTURE_ARB = 0x84E0; - public static final int GL_ACTIVE_VARYINGS_NV = 0x8C81; - public static final int GL_ACTIVE_VARYING_MAX_LENGTH_NV = 0x8C82; - public static final int GL_ADD_ATI = 0x8963; - public static final int GL_ADD_SIGNED_EXT = 0x8574; - public static final int GL_ADJACENT_PAIRS_NV = 0x90AE; - public static final int GL_AFFINE_2D_NV = 0x9092; - public static final int GL_AFFINE_3D_NV = 0x9094; - public static final int GL_ALLOW_DRAW_FRG_HINT_PGI = 0x1A210; - public static final int GL_ALLOW_DRAW_MEM_HINT_PGI = 0x1A211; - public static final int GL_ALLOW_DRAW_OBJ_HINT_PGI = 0x1A20E; - public static final int GL_ALLOW_DRAW_WIN_HINT_PGI = 0x1A20F; - public static final int GL_ALL_BARRIER_BITS_EXT = 0xFFFFFFFF; - public static final int GL_ALL_COMPLETED_NV = 0x84F2; - public static final int GL_ALL_PIXELS_AMD = 0xFFFFFFFF; - public static final int GL_ALL_STATIC_DATA_IBM = 103060; - public static final int GL_ALPHA12_EXT = 0x803D; - public static final int GL_ALPHA16F_EXT = 0x881C; - public static final int GL_ALPHA16I_EXT = 0x8D8A; - public static final int GL_ALPHA16UI_EXT = 0x8D78; - public static final int GL_ALPHA16_EXT = 0x803E; - public static final int GL_ALPHA32F_EXT = 0x8816; - public static final int GL_ALPHA32I_EXT = 0x8D84; - public static final int GL_ALPHA32UI_EXT = 0x8D72; - public static final int GL_ALPHA4_EXT = 0x803B; - public static final int GL_ALPHA8I_EXT = 0x8D90; - public static final int GL_ALPHA8UI_EXT = 0x8D7E; - public static final int GL_ALPHA8_EXT = 0x803C; - public static final int GL_ALPHA_FLOAT16_APPLE = 0x881C; - public static final int GL_ALPHA_FLOAT16_ATI = 0x881C; - public static final int GL_ALPHA_FLOAT32_APPLE = 0x8816; - public static final int GL_ALPHA_FLOAT32_ATI = 0x8816; - public static final int GL_ALPHA_INTEGER_EXT = 0x8D97; - public static final int GL_ALPHA_MAX_CLAMP_INGR = 0x8567; - public static final int GL_ALPHA_MAX_SGIX = 0x8321; - public static final int GL_ALPHA_MIN_CLAMP_INGR = 0x8563; - public static final int GL_ALPHA_MIN_SGIX = 0x8320; - public static final int GL_ALPHA_REF_COMMAND_NV = 0x000F; - public static final int GL_ALPHA_TO_COVERAGE_DITHER_DEFAULT_NV = 0x934D; - public static final int GL_ALPHA_TO_COVERAGE_DITHER_DISABLE_NV = 0x934F; - public static final int GL_ALPHA_TO_COVERAGE_DITHER_ENABLE_NV = 0x934E; - public static final int GL_ALPHA_TO_COVERAGE_DITHER_MODE_NV = 0x92BF; - public static final int GL_ALWAYS_FAST_HINT_PGI = 0x1A20C; - public static final int GL_ALWAYS_SOFT_HINT_PGI = 0x1A20D; - public static final int GL_ARC_TO_NV = 0xFE; - public static final int GL_ARRAY_ELEMENT_LOCK_COUNT_EXT = 0x81A9; - public static final int GL_ARRAY_ELEMENT_LOCK_FIRST_EXT = 0x81A8; - public static final int GL_ARRAY_OBJECT_BUFFER_ATI = 0x8766; - public static final int GL_ARRAY_OBJECT_OFFSET_ATI = 0x8767; - public static final int GL_ASYNC_DRAW_PIXELS_SGIX = 0x835D; - public static final int GL_ASYNC_HISTOGRAM_SGIX = 0x832C; - public static final int GL_ASYNC_MARKER_SGIX = 0x8329; - public static final int GL_ASYNC_READ_PIXELS_SGIX = 0x835E; - public static final int GL_ASYNC_TEX_IMAGE_SGIX = 0x835C; - public static final int GL_ATOMIC_COUNTER_BARRIER_BIT_EXT = 0x00001000; - public static final int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_MESH_SHADER_NV = 0x959E; - public static final int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TASK_SHADER_NV = 0x959F; - public static final int GL_ATTACHED_MEMORY_OBJECT_NV = 0x95A4; - public static final int GL_ATTACHED_MEMORY_OFFSET_NV = 0x95A5; - public static final int GL_ATTENUATION_EXT = 0x834D; - public static final int GL_ATTRIBUTE_ADDRESS_COMMAND_NV = 0x0009; - public static final int GL_ATTRIB_ARRAY_POINTER_NV = 0x8645; - public static final int GL_ATTRIB_ARRAY_SIZE_NV = 0x8623; - public static final int GL_ATTRIB_ARRAY_STRIDE_NV = 0x8624; - public static final int GL_ATTRIB_ARRAY_TYPE_NV = 0x8625; - public static final int GL_AUX_DEPTH_STENCIL_APPLE = 0x8A14; - public static final int GL_AVERAGE_EXT = 0x8335; - public static final int GL_AVERAGE_HP = 0x8160; - public static final int GL_BACK_NORMALS_HINT_PGI = 0x1A223; - public static final int GL_BACK_PRIMARY_COLOR_NV = 0x8C77; - public static final int GL_BACK_SECONDARY_COLOR_NV = 0x8C78; - public static final int GL_BEVEL_NV = 0x90A6; - public static final int GL_BGRA8_EXT = 0x93A1; - public static final int GL_BGRA_EXT = 0x80E1; - public static final int GL_BGRA_INTEGER_EXT = 0x8D9B; - public static final int GL_BGR_EXT = 0x80E0; - public static final int GL_BGR_INTEGER_EXT = 0x8D9A; - public static final int GL_BIAS_BIT_ATI = 0x00000008; - public static final int GL_BIAS_BY_NEGATIVE_ONE_HALF_NV = 0x8541; - public static final int GL_BINORMAL_ARRAY_EXT = 0x843A; - public static final int GL_BINORMAL_ARRAY_POINTER_EXT = 0x8443; - public static final int GL_BINORMAL_ARRAY_STRIDE_EXT = 0x8441; - public static final int GL_BINORMAL_ARRAY_TYPE_EXT = 0x8440; - public static final int GL_BLACKHOLE_RENDER_INTEL = 0x83FC; - public static final int GL_BLEND_ADVANCED_COHERENT_NV = 0x9285; - public static final int GL_BLEND_COLOR_COMMAND_NV = 0x000B; - public static final int GL_BLEND_COLOR_EXT = 0x8005; - public static final int GL_BLEND_DST_ALPHA_EXT = 0x80CA; - public static final int GL_BLEND_DST_RGB_EXT = 0x80C8; - public static final int GL_BLEND_EQUATION_ALPHA_EXT = 0x883D; - public static final int GL_BLEND_EQUATION_EXT = 0x8009; - public static final int GL_BLEND_EQUATION_RGB_EXT = 0x8009; - public static final int GL_BLEND_OVERLAP_NV = 0x9281; - public static final int GL_BLEND_PREMULTIPLIED_SRC_NV = 0x9280; - public static final int GL_BLEND_SRC_ALPHA_EXT = 0x80CB; - public static final int GL_BLEND_SRC_RGB_EXT = 0x80C9; - public static final int GL_BLUE_BIT_ATI = 0x00000004; - public static final int GL_BLUE_INTEGER_EXT = 0x8D96; - public static final int GL_BLUE_MAX_CLAMP_INGR = 0x8566; - public static final int GL_BLUE_MIN_CLAMP_INGR = 0x8562; - public static final int GL_BLUE_NV = 0x1905; - public static final int GL_BOLD_BIT_NV = 0x01; - public static final int GL_BOUNDING_BOX_NV = 0x908D; - public static final int GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV = 0x909C; - public static final int GL_BUFFER_FLUSHING_UNMAP_APPLE = 0x8A13; - public static final int GL_BUFFER_GPU_ADDRESS_NV = 0x8F1D; - public static final int GL_BUFFER_OBJECT_APPLE = 0x85B3; - public static final int GL_BUFFER_OBJECT_EXT = 0x9151; - public static final int GL_BUFFER_SERIALIZED_MODIFY_APPLE = 0x8A12; - public static final int GL_BUFFER_UPDATE_BARRIER_BIT_EXT = 0x00000200; - public static final int GL_BUMP_ENVMAP_ATI = 0x877B; - public static final int GL_BUMP_NUM_TEX_UNITS_ATI = 0x8777; - public static final int GL_BUMP_ROT_MATRIX_ATI = 0x8775; - public static final int GL_BUMP_ROT_MATRIX_SIZE_ATI = 0x8776; - public static final int GL_BUMP_TARGET_ATI = 0x877C; - public static final int GL_BUMP_TEX_UNITS_ATI = 0x8778; - public static final int GL_CALLIGRAPHIC_FRAGMENT_SGIX = 0x8183; - public static final int GL_CIRCULAR_CCW_ARC_TO_NV = 0xF8; - public static final int GL_CIRCULAR_CW_ARC_TO_NV = 0xFA; - public static final int GL_CIRCULAR_TANGENT_ARC_TO_NV = 0xFC; - public static final int GL_CLAMP_FRAGMENT_COLOR_ARB = 0x891B; - public static final int GL_CLAMP_READ_COLOR_ARB = 0x891C; - public static final int GL_CLAMP_TO_BORDER_SGIS = 0x812D; - public static final int GL_CLAMP_TO_EDGE_SGIS = 0x812F; - public static final int GL_CLAMP_VERTEX_COLOR_ARB = 0x891A; - public static final int GL_CLIENT_ACTIVE_TEXTURE_ARB = 0x84E1; - public static final int GL_CLIP_DISTANCE_NV = 0x8C7A; - public static final int GL_CLIP_FAR_HINT_PGI = 0x1A221; - public static final int GL_CLIP_NEAR_HINT_PGI = 0x1A220; - public static final int GL_CLIP_VOLUME_CLIPPING_HINT_EXT = 0x80F0; - public static final int GL_CLOSE_PATH_NV = 0x00; - public static final int GL_CMYKA_EXT = 0x800D; - public static final int GL_CMYK_EXT = 0x800C; - public static final int GL_CND0_ATI = 0x896B; - public static final int GL_CND_ATI = 0x896A; - public static final int GL_COLOR3_BIT_PGI = 0x00010000; - public static final int GL_COLOR4_BIT_PGI = 0x00020000; - public static final int GL_COLORBURN_NV = 0x929A; - public static final int GL_COLORDODGE_NV = 0x9299; - public static final int GL_COLOR_ALPHA_PAIRING_ATI = 0x8975; - public static final int GL_COLOR_ARRAY_ADDRESS_NV = 0x8F23; - public static final int GL_COLOR_ARRAY_COUNT_EXT = 0x8084; - public static final int GL_COLOR_ARRAY_EXT = 0x8076; - public static final int GL_COLOR_ARRAY_LENGTH_NV = 0x8F2D; - public static final int GL_COLOR_ARRAY_LIST_IBM = 103072; - public static final int GL_COLOR_ARRAY_LIST_STRIDE_IBM = 103082; - public static final int GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F7; - public static final int GL_COLOR_ARRAY_POINTER_EXT = 0x8090; - public static final int GL_COLOR_ARRAY_SIZE_EXT = 0x8081; - public static final int GL_COLOR_ARRAY_STRIDE_EXT = 0x8083; - public static final int GL_COLOR_ARRAY_TYPE_EXT = 0x8082; - public static final int GL_COLOR_ATTACHMENT0_EXT = 0x8CE0; - public static final int GL_COLOR_ATTACHMENT10_EXT = 0x8CEA; - public static final int GL_COLOR_ATTACHMENT11_EXT = 0x8CEB; - public static final int GL_COLOR_ATTACHMENT12_EXT = 0x8CEC; - public static final int GL_COLOR_ATTACHMENT13_EXT = 0x8CED; - public static final int GL_COLOR_ATTACHMENT14_EXT = 0x8CEE; - public static final int GL_COLOR_ATTACHMENT15_EXT = 0x8CEF; - public static final int GL_COLOR_ATTACHMENT1_EXT = 0x8CE1; - public static final int GL_COLOR_ATTACHMENT2_EXT = 0x8CE2; - public static final int GL_COLOR_ATTACHMENT3_EXT = 0x8CE3; - public static final int GL_COLOR_ATTACHMENT4_EXT = 0x8CE4; - public static final int GL_COLOR_ATTACHMENT5_EXT = 0x8CE5; - public static final int GL_COLOR_ATTACHMENT6_EXT = 0x8CE6; - public static final int GL_COLOR_ATTACHMENT7_EXT = 0x8CE7; - public static final int GL_COLOR_ATTACHMENT8_EXT = 0x8CE8; - public static final int GL_COLOR_ATTACHMENT9_EXT = 0x8CE9; - public static final int GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI = 0x8835; - public static final int GL_COLOR_FLOAT_APPLE = 0x8A0F; - public static final int GL_COLOR_INDEX12_EXT = 0x80E6; - public static final int GL_COLOR_INDEX16_EXT = 0x80E7; - public static final int GL_COLOR_INDEX1_EXT = 0x80E2; - public static final int GL_COLOR_INDEX2_EXT = 0x80E3; - public static final int GL_COLOR_INDEX4_EXT = 0x80E4; - public static final int GL_COLOR_INDEX8_EXT = 0x80E5; - public static final int GL_COLOR_MATRIX_SGI = 0x80B1; - public static final int GL_COLOR_MATRIX_STACK_DEPTH_SGI = 0x80B2; - public static final int GL_COLOR_SAMPLES_NV = 0x8E20; - public static final int GL_COLOR_SUM_CLAMP_NV = 0x854F; - public static final int GL_COLOR_SUM_EXT = 0x8458; - public static final int GL_COLOR_TABLE_ALPHA_SIZE_SGI = 0x80DD; - public static final int GL_COLOR_TABLE_BIAS_SGI = 0x80D7; - public static final int GL_COLOR_TABLE_BLUE_SIZE_SGI = 0x80DC; - public static final int GL_COLOR_TABLE_FORMAT_SGI = 0x80D8; - public static final int GL_COLOR_TABLE_GREEN_SIZE_SGI = 0x80DB; - public static final int GL_COLOR_TABLE_INTENSITY_SIZE_SGI = 0x80DF; - public static final int GL_COLOR_TABLE_LUMINANCE_SIZE_SGI = 0x80DE; - public static final int GL_COLOR_TABLE_RED_SIZE_SGI = 0x80DA; - public static final int GL_COLOR_TABLE_SCALE_SGI = 0x80D6; - public static final int GL_COLOR_TABLE_SGI = 0x80D0; - public static final int GL_COLOR_TABLE_WIDTH_SGI = 0x80D9; - public static final int GL_COMBINE4_NV = 0x8503; - public static final int GL_COMBINER0_NV = 0x8550; - public static final int GL_COMBINER1_NV = 0x8551; - public static final int GL_COMBINER2_NV = 0x8552; - public static final int GL_COMBINER3_NV = 0x8553; - public static final int GL_COMBINER4_NV = 0x8554; - public static final int GL_COMBINER5_NV = 0x8555; - public static final int GL_COMBINER6_NV = 0x8556; - public static final int GL_COMBINER7_NV = 0x8557; - public static final int GL_COMBINER_AB_DOT_PRODUCT_NV = 0x8545; - public static final int GL_COMBINER_AB_OUTPUT_NV = 0x854A; - public static final int GL_COMBINER_BIAS_NV = 0x8549; - public static final int GL_COMBINER_CD_DOT_PRODUCT_NV = 0x8546; - public static final int GL_COMBINER_CD_OUTPUT_NV = 0x854B; - public static final int GL_COMBINER_COMPONENT_USAGE_NV = 0x8544; - public static final int GL_COMBINER_INPUT_NV = 0x8542; - public static final int GL_COMBINER_MAPPING_NV = 0x8543; - public static final int GL_COMBINER_MUX_SUM_NV = 0x8547; - public static final int GL_COMBINER_SCALE_NV = 0x8548; - public static final int GL_COMBINER_SUM_OUTPUT_NV = 0x854C; - public static final int GL_COMBINE_ALPHA_EXT = 0x8572; - public static final int GL_COMBINE_EXT = 0x8570; - public static final int GL_COMBINE_RGB_EXT = 0x8571; - public static final int GL_COMMAND_BARRIER_BIT_EXT = 0x00000040; - public static final int GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT = 0x884E; - public static final int GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT = 0x8C72; - public static final int GL_COMPRESSED_LUMINANCE_LATC1_EXT = 0x8C70; - public static final int GL_COMPRESSED_RED_GREEN_RGTC2_EXT = 0x8DBD; - public static final int GL_COMPRESSED_RED_RGTC1_EXT = 0x8DBB; - public static final int GL_COMPRESSED_RGBA_FXT1_3DFX = 0x86B1; - public static final int GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83F1; - public static final int GL_COMPRESSED_RGBA_S3TC_DXT3_EXT = 0x83F2; - public static final int GL_COMPRESSED_RGBA_S3TC_DXT5_EXT = 0x83F3; - public static final int GL_COMPRESSED_RGB_FXT1_3DFX = 0x86B0; - public static final int GL_COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83F0; - public static final int GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT = 0x8C73; - public static final int GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT = 0x8C71; - public static final int GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT = 0x8DBE; - public static final int GL_COMPRESSED_SIGNED_RED_RGTC1_EXT = 0x8DBC; - public static final int GL_COMPRESSED_SLUMINANCE_ALPHA_EXT = 0x8C4B; - public static final int GL_COMPRESSED_SLUMINANCE_EXT = 0x8C4A; - public static final int GL_COMPRESSED_SRGB_ALPHA_EXT = 0x8C49; - public static final int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT = 0x8C4D; - public static final int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT = 0x8C4E; - public static final int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT = 0x8C4F; - public static final int GL_COMPRESSED_SRGB_EXT = 0x8C48; - public static final int GL_COMPRESSED_SRGB_S3TC_DXT1_EXT = 0x8C4C; - public static final int GL_COMPUTE_PROGRAM_NV = 0x90FB; - public static final int GL_COMPUTE_PROGRAM_PARAMETER_BUFFER_NV = 0x90FC; - public static final int GL_COMP_BIT_ATI = 0x00000002; - public static final int GL_CONFORMANT_NV = 0x9374; - public static final int GL_CONIC_CURVE_TO_NV = 0x1A; - public static final int GL_CONJOINT_NV = 0x9284; - public static final int GL_CONSERVATIVE_RASTERIZATION_INTEL = 0x83FE; - public static final int GL_CONSERVATIVE_RASTERIZATION_NV = 0x9346; - public static final int GL_CONSERVATIVE_RASTER_DILATE_GRANULARITY_NV = 0x937B; - public static final int GL_CONSERVATIVE_RASTER_DILATE_NV = 0x9379; - public static final int GL_CONSERVATIVE_RASTER_DILATE_RANGE_NV = 0x937A; - public static final int GL_CONSERVATIVE_RASTER_MODE_NV = 0x954D; - public static final int GL_CONSERVATIVE_RASTER_MODE_POST_SNAP_NV = 0x954E; - public static final int GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_NV = 0x9550; - public static final int GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_TRIANGLES_NV = 0x954F; - public static final int GL_CONSERVE_MEMORY_HINT_PGI = 0x1A1FD; - public static final int GL_CONSTANT_ALPHA_EXT = 0x8003; - public static final int GL_CONSTANT_BORDER_HP = 0x8151; - public static final int GL_CONSTANT_COLOR0_NV = 0x852A; - public static final int GL_CONSTANT_COLOR1_NV = 0x852B; - public static final int GL_CONSTANT_COLOR_EXT = 0x8001; - public static final int GL_CONSTANT_EXT = 0x8576; - public static final int GL_CONST_EYE_NV = 0x86E5; - public static final int GL_CONTINUOUS_AMD = 0x9007; - public static final int GL_CONTRAST_NV = 0x92A1; - public static final int GL_CONVEX_HULL_NV = 0x908B; - public static final int GL_CONVOLUTION_1D_EXT = 0x8010; - public static final int GL_CONVOLUTION_2D_EXT = 0x8011; - public static final int GL_CONVOLUTION_BORDER_COLOR_HP = 0x8154; - public static final int GL_CONVOLUTION_BORDER_MODE_EXT = 0x8013; - public static final int GL_CONVOLUTION_FILTER_BIAS_EXT = 0x8015; - public static final int GL_CONVOLUTION_FILTER_SCALE_EXT = 0x8014; - public static final int GL_CONVOLUTION_FORMAT_EXT = 0x8017; - public static final int GL_CONVOLUTION_HEIGHT_EXT = 0x8019; - public static final int GL_CONVOLUTION_HINT_SGIX = 0x8316; - public static final int GL_CONVOLUTION_WIDTH_EXT = 0x8018; - public static final int GL_CON_0_ATI = 0x8941; - public static final int GL_CON_10_ATI = 0x894B; - public static final int GL_CON_11_ATI = 0x894C; - public static final int GL_CON_12_ATI = 0x894D; - public static final int GL_CON_13_ATI = 0x894E; - public static final int GL_CON_14_ATI = 0x894F; - public static final int GL_CON_15_ATI = 0x8950; - public static final int GL_CON_16_ATI = 0x8951; - public static final int GL_CON_17_ATI = 0x8952; - public static final int GL_CON_18_ATI = 0x8953; - public static final int GL_CON_19_ATI = 0x8954; - public static final int GL_CON_1_ATI = 0x8942; - public static final int GL_CON_20_ATI = 0x8955; - public static final int GL_CON_21_ATI = 0x8956; - public static final int GL_CON_22_ATI = 0x8957; - public static final int GL_CON_23_ATI = 0x8958; - public static final int GL_CON_24_ATI = 0x8959; - public static final int GL_CON_25_ATI = 0x895A; - public static final int GL_CON_26_ATI = 0x895B; - public static final int GL_CON_27_ATI = 0x895C; - public static final int GL_CON_28_ATI = 0x895D; - public static final int GL_CON_29_ATI = 0x895E; - public static final int GL_CON_2_ATI = 0x8943; - public static final int GL_CON_30_ATI = 0x895F; - public static final int GL_CON_31_ATI = 0x8960; - public static final int GL_CON_3_ATI = 0x8944; - public static final int GL_CON_4_ATI = 0x8945; - public static final int GL_CON_5_ATI = 0x8946; - public static final int GL_CON_6_ATI = 0x8947; - public static final int GL_CON_7_ATI = 0x8948; - public static final int GL_CON_8_ATI = 0x8949; - public static final int GL_CON_9_ATI = 0x894A; - public static final int GL_COORD_REPLACE_ARB = 0x8862; - public static final int GL_COORD_REPLACE_NV = 0x8862; - public static final int GL_COUNTER_RANGE_AMD = 0x8BC1; - public static final int GL_COUNTER_TYPE_AMD = 0x8BC0; - public static final int GL_COUNT_DOWN_NV = 0x9089; - public static final int GL_COUNT_UP_NV = 0x9088; - public static final int GL_COVERAGE_MODULATION_NV = 0x9332; - public static final int GL_COVERAGE_MODULATION_TABLE_NV = 0x9331; - public static final int GL_COVERAGE_MODULATION_TABLE_SIZE_NV = 0x9333; - public static final int GL_CUBIC_CURVE_TO_NV = 0x0C; - public static final int GL_CUBIC_EXT = 0x8334; - public static final int GL_CUBIC_HP = 0x815F; - public static final int GL_CULL_FRAGMENT_NV = 0x86E7; - public static final int GL_CULL_MODES_NV = 0x86E0; - public static final int GL_CULL_VERTEX_EXT = 0x81AA; - public static final int GL_CULL_VERTEX_EYE_POSITION_EXT = 0x81AB; - public static final int GL_CULL_VERTEX_IBM = 103050; - public static final int GL_CULL_VERTEX_OBJECT_POSITION_EXT = 0x81AC; - public static final int GL_CURRENT_ATTRIB_NV = 0x8626; - public static final int GL_CURRENT_BINORMAL_EXT = 0x843C; - public static final int GL_CURRENT_FOG_COORDINATE_EXT = 0x8453; - public static final int GL_CURRENT_MATRIX_ARB = 0x8641; - public static final int GL_CURRENT_MATRIX_INDEX_ARB = 0x8845; - public static final int GL_CURRENT_MATRIX_NV = 0x8641; - public static final int GL_CURRENT_MATRIX_STACK_DEPTH_ARB = 0x8640; - public static final int GL_CURRENT_MATRIX_STACK_DEPTH_NV = 0x8640; - public static final int GL_CURRENT_OCCLUSION_QUERY_ID_NV = 0x8865; - public static final int GL_CURRENT_PALETTE_MATRIX_ARB = 0x8843; - public static final int GL_CURRENT_RASTER_NORMAL_SGIX = 0x8406; - public static final int GL_CURRENT_SECONDARY_COLOR_EXT = 0x8459; - public static final int GL_CURRENT_TANGENT_EXT = 0x843B; - public static final int GL_CURRENT_TIME_NV = 0x8E28; - public static final int GL_CURRENT_VERTEX_EXT = 0x87E2; - public static final int GL_CURRENT_VERTEX_WEIGHT_EXT = 0x850B; - public static final int GL_D3D12_FENCE_VALUE_EXT = 0x9595; - public static final int GL_DARKEN_NV = 0x9297; - public static final int GL_DATA_BUFFER_AMD = 0x9151; - public static final int GL_DECODE_EXT = 0x8A49; - public static final int GL_DECR_WRAP_EXT = 0x8508; - public static final int GL_DEDICATED_MEMORY_OBJECT_EXT = 0x9581; - public static final int GL_DEFORMATIONS_MASK_SGIX = 0x8196; - public static final int GL_DEPENDENT_AR_TEXTURE_2D_NV = 0x86E9; - public static final int GL_DEPENDENT_GB_TEXTURE_2D_NV = 0x86EA; - public static final int GL_DEPENDENT_HILO_TEXTURE_2D_NV = 0x8858; - public static final int GL_DEPENDENT_RGB_TEXTURE_3D_NV = 0x8859; - public static final int GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV = 0x885A; - public static final int GL_DEPTH24_STENCIL8_EXT = 0x88F0; - public static final int GL_DEPTH32F_STENCIL8_NV = 0x8DAC; - public static final int GL_DEPTH_ATTACHMENT_EXT = 0x8D00; - public static final int GL_DEPTH_BOUNDS_EXT = 0x8891; - public static final int GL_DEPTH_BOUNDS_TEST_EXT = 0x8890; - public static final int GL_DEPTH_BUFFER_FLOAT_MODE_NV = 0x8DAF; - public static final int GL_DEPTH_CLAMP_FAR_AMD = 0x901F; - public static final int GL_DEPTH_CLAMP_NEAR_AMD = 0x901E; - public static final int GL_DEPTH_CLAMP_NV = 0x864F; - public static final int GL_DEPTH_COMPONENT16_ARB = 0x81A5; - public static final int GL_DEPTH_COMPONENT16_SGIX = 0x81A5; - public static final int GL_DEPTH_COMPONENT24_ARB = 0x81A6; - public static final int GL_DEPTH_COMPONENT24_SGIX = 0x81A6; - public static final int GL_DEPTH_COMPONENT32F = 0x8CAC; - public static final int GL_DEPTH_COMPONENT32F_NV = 0x8DAB; - public static final int GL_DEPTH_COMPONENT32_ARB = 0x81A7; - public static final int GL_DEPTH_COMPONENT32_SGIX = 0x81A7; - public static final int GL_DEPTH_SAMPLES_NV = 0x932D; - public static final int GL_DEPTH_STENCIL_EXT = 0x84F9; - public static final int GL_DEPTH_STENCIL_NV = 0x84F9; - public static final int GL_DEPTH_STENCIL_TO_BGRA_NV = 0x886F; - public static final int GL_DEPTH_STENCIL_TO_RGBA_NV = 0x886E; - public static final int GL_DEPTH_TEXTURE_MODE_ARB = 0x884B; - public static final int GL_DETACHED_BUFFERS_NV = 0x95AB; - public static final int GL_DETACHED_MEMORY_INCARNATION_NV = 0x95A9; - public static final int GL_DETACHED_TEXTURES_NV = 0x95AA; - public static final int GL_DETAIL_TEXTURE_2D_BINDING_SGIS = 0x8096; - public static final int GL_DETAIL_TEXTURE_2D_SGIS = 0x8095; - public static final int GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS = 0x809C; - public static final int GL_DETAIL_TEXTURE_LEVEL_SGIS = 0x809A; - public static final int GL_DETAIL_TEXTURE_MODE_SGIS = 0x809B; - public static final int GL_DEVICE_LUID_EXT = 0x9599; - public static final int GL_DEVICE_NODE_MASK_EXT = 0x959A; - public static final int GL_DEVICE_UUID_EXT = 0x9597; - public static final int GL_DIFFERENCE_NV = 0x929E; - public static final int GL_DISCARD_ATI = 0x8763; - public static final int GL_DISCARD_NV = 0x8530; - public static final int GL_DISCRETE_AMD = 0x9006; - public static final int GL_DISJOINT_NV = 0x9283; - public static final int GL_DISTANCE_ATTENUATION_EXT = 0x8129; - public static final int GL_DISTANCE_ATTENUATION_SGIS = 0x8129; - public static final int GL_DOT2_ADD_ATI = 0x896C; - public static final int GL_DOT3_ATI = 0x8966; - public static final int GL_DOT3_RGBA_EXT = 0x8741; - public static final int GL_DOT3_RGB_EXT = 0x8740; - public static final int GL_DOT4_ATI = 0x8967; - public static final int GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV = 0x885D; - public static final int GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV = 0x86F3; - public static final int GL_DOT_PRODUCT_DEPTH_REPLACE_NV = 0x86ED; - public static final int GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV = 0x86F1; - public static final int GL_DOT_PRODUCT_NV = 0x86EC; - public static final int GL_DOT_PRODUCT_PASS_THROUGH_NV = 0x885B; - public static final int GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV = 0x86F2; - public static final int GL_DOT_PRODUCT_TEXTURE_1D_NV = 0x885C; - public static final int GL_DOT_PRODUCT_TEXTURE_2D_NV = 0x86EE; - public static final int GL_DOT_PRODUCT_TEXTURE_3D_NV = 0x86EF; - public static final int GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV = 0x86F0; - public static final int GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV = 0x864E; - public static final int GL_DOUBLE_MAT2_EXT = 0x8F46; - public static final int GL_DOUBLE_MAT2x3_EXT = 0x8F49; - public static final int GL_DOUBLE_MAT2x4_EXT = 0x8F4A; - public static final int GL_DOUBLE_MAT3_EXT = 0x8F47; - public static final int GL_DOUBLE_MAT3x2_EXT = 0x8F4B; - public static final int GL_DOUBLE_MAT3x4_EXT = 0x8F4C; - public static final int GL_DOUBLE_MAT4_EXT = 0x8F48; - public static final int GL_DOUBLE_MAT4x2_EXT = 0x8F4D; - public static final int GL_DOUBLE_MAT4x3_EXT = 0x8F4E; - public static final int GL_DOUBLE_VEC2_EXT = 0x8FFC; - public static final int GL_DOUBLE_VEC3_EXT = 0x8FFD; - public static final int GL_DOUBLE_VEC4_EXT = 0x8FFE; - public static final int GL_DRAW_ARRAYS_COMMAND_NV = 0x0003; - public static final int GL_DRAW_ARRAYS_INSTANCED_COMMAND_NV = 0x0007; - public static final int GL_DRAW_ARRAYS_STRIP_COMMAND_NV = 0x0005; - public static final int GL_DRAW_BUFFER0_ARB = 0x8825; - public static final int GL_DRAW_BUFFER0_ATI = 0x8825; - public static final int GL_DRAW_BUFFER10_ARB = 0x882F; - public static final int GL_DRAW_BUFFER10_ATI = 0x882F; - public static final int GL_DRAW_BUFFER11_ARB = 0x8830; - public static final int GL_DRAW_BUFFER11_ATI = 0x8830; - public static final int GL_DRAW_BUFFER12_ARB = 0x8831; - public static final int GL_DRAW_BUFFER12_ATI = 0x8831; - public static final int GL_DRAW_BUFFER13_ARB = 0x8832; - public static final int GL_DRAW_BUFFER13_ATI = 0x8832; - public static final int GL_DRAW_BUFFER14_ARB = 0x8833; - public static final int GL_DRAW_BUFFER14_ATI = 0x8833; - public static final int GL_DRAW_BUFFER15_ARB = 0x8834; - public static final int GL_DRAW_BUFFER15_ATI = 0x8834; - public static final int GL_DRAW_BUFFER1_ARB = 0x8826; - public static final int GL_DRAW_BUFFER1_ATI = 0x8826; - public static final int GL_DRAW_BUFFER2_ARB = 0x8827; - public static final int GL_DRAW_BUFFER2_ATI = 0x8827; - public static final int GL_DRAW_BUFFER3_ARB = 0x8828; - public static final int GL_DRAW_BUFFER3_ATI = 0x8828; - public static final int GL_DRAW_BUFFER4_ARB = 0x8829; - public static final int GL_DRAW_BUFFER4_ATI = 0x8829; - public static final int GL_DRAW_BUFFER5_ARB = 0x882A; - public static final int GL_DRAW_BUFFER5_ATI = 0x882A; - public static final int GL_DRAW_BUFFER6_ARB = 0x882B; - public static final int GL_DRAW_BUFFER6_ATI = 0x882B; - public static final int GL_DRAW_BUFFER7_ARB = 0x882C; - public static final int GL_DRAW_BUFFER7_ATI = 0x882C; - public static final int GL_DRAW_BUFFER8_ARB = 0x882D; - public static final int GL_DRAW_BUFFER8_ATI = 0x882D; - public static final int GL_DRAW_BUFFER9_ARB = 0x882E; - public static final int GL_DRAW_BUFFER9_ATI = 0x882E; - public static final int GL_DRAW_ELEMENTS_COMMAND_NV = 0x0002; - public static final int GL_DRAW_ELEMENTS_INSTANCED_COMMAND_NV = 0x0006; - public static final int GL_DRAW_ELEMENTS_STRIP_COMMAND_NV = 0x0004; - public static final int GL_DRAW_FRAMEBUFFER_BINDING_EXT = 0x8CA6; - public static final int GL_DRAW_FRAMEBUFFER_EXT = 0x8CA9; - public static final int GL_DRAW_INDIRECT_ADDRESS_NV = 0x8F41; - public static final int GL_DRAW_INDIRECT_LENGTH_NV = 0x8F42; - public static final int GL_DRAW_INDIRECT_UNIFIED_NV = 0x8F40; - public static final int GL_DRAW_PIXELS_APPLE = 0x8A0A; - public static final int GL_DRIVER_UUID_EXT = 0x9598; - public static final int GL_DSDT8_MAG8_INTENSITY8_NV = 0x870B; - public static final int GL_DSDT8_MAG8_NV = 0x870A; - public static final int GL_DSDT8_NV = 0x8709; - public static final int GL_DSDT_MAG_INTENSITY_NV = 0x86DC; - public static final int GL_DSDT_MAG_NV = 0x86F6; - public static final int GL_DSDT_MAG_VIB_NV = 0x86F7; - public static final int GL_DSDT_NV = 0x86F5; - public static final int GL_DST_ATOP_NV = 0x928F; - public static final int GL_DST_IN_NV = 0x928B; - public static final int GL_DST_NV = 0x9287; - public static final int GL_DST_OUT_NV = 0x928D; - public static final int GL_DST_OVER_NV = 0x9289; - public static final int GL_DS_BIAS_NV = 0x8716; - public static final int GL_DS_SCALE_NV = 0x8710; - public static final int GL_DT_BIAS_NV = 0x8717; - public static final int GL_DT_SCALE_NV = 0x8711; - public static final int GL_DU8DV8_ATI = 0x877A; - public static final int GL_DUAL_ALPHA12_SGIS = 0x8112; - public static final int GL_DUAL_ALPHA16_SGIS = 0x8113; - public static final int GL_DUAL_ALPHA4_SGIS = 0x8110; - public static final int GL_DUAL_ALPHA8_SGIS = 0x8111; - public static final int GL_DUAL_INTENSITY12_SGIS = 0x811A; - public static final int GL_DUAL_INTENSITY16_SGIS = 0x811B; - public static final int GL_DUAL_INTENSITY4_SGIS = 0x8118; - public static final int GL_DUAL_INTENSITY8_SGIS = 0x8119; - public static final int GL_DUAL_LUMINANCE12_SGIS = 0x8116; - public static final int GL_DUAL_LUMINANCE16_SGIS = 0x8117; - public static final int GL_DUAL_LUMINANCE4_SGIS = 0x8114; - public static final int GL_DUAL_LUMINANCE8_SGIS = 0x8115; - public static final int GL_DUAL_LUMINANCE_ALPHA4_SGIS = 0x811C; - public static final int GL_DUAL_LUMINANCE_ALPHA8_SGIS = 0x811D; - public static final int GL_DUAL_TEXTURE_SELECT_SGIS = 0x8124; - public static final int GL_DUDV_ATI = 0x8779; - public static final int GL_DUP_FIRST_CUBIC_CURVE_TO_NV = 0xF2; - public static final int GL_DUP_LAST_CUBIC_CURVE_TO_NV = 0xF4; - public static final int GL_DYNAMIC_ATI = 0x8761; - public static final int GL_EDGEFLAG_BIT_PGI = 0x00040000; - public static final int GL_EDGE_FLAG_ARRAY_ADDRESS_NV = 0x8F26; - public static final int GL_EDGE_FLAG_ARRAY_COUNT_EXT = 0x808D; - public static final int GL_EDGE_FLAG_ARRAY_EXT = 0x8079; - public static final int GL_EDGE_FLAG_ARRAY_LENGTH_NV = 0x8F30; - public static final int GL_EDGE_FLAG_ARRAY_LIST_IBM = 103075; - public static final int GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM = 103085; - public static final int GL_EDGE_FLAG_ARRAY_POINTER_EXT = 0x8093; - public static final int GL_EDGE_FLAG_ARRAY_STRIDE_EXT = 0x808C; - public static final int GL_EFFECTIVE_RASTER_SAMPLES_EXT = 0x932C; - public static final int GL_EIGHTH_BIT_ATI = 0x00000020; - public static final int GL_ELEMENT_ADDRESS_COMMAND_NV = 0x0008; - public static final int GL_ELEMENT_ARRAY_ADDRESS_NV = 0x8F29; - public static final int GL_ELEMENT_ARRAY_APPLE = 0x8A0C; - public static final int GL_ELEMENT_ARRAY_ATI = 0x8768; - public static final int GL_ELEMENT_ARRAY_BARRIER_BIT_EXT = 0x00000002; - public static final int GL_ELEMENT_ARRAY_LENGTH_NV = 0x8F33; - public static final int GL_ELEMENT_ARRAY_POINTER_APPLE = 0x8A0E; - public static final int GL_ELEMENT_ARRAY_POINTER_ATI = 0x876A; - public static final int GL_ELEMENT_ARRAY_TYPE_APPLE = 0x8A0D; - public static final int GL_ELEMENT_ARRAY_TYPE_ATI = 0x8769; - public static final int GL_ELEMENT_ARRAY_UNIFIED_NV = 0x8F1F; - public static final int GL_EMBOSS_CONSTANT_NV = 0x855E; - public static final int GL_EMBOSS_LIGHT_NV = 0x855D; - public static final int GL_EMBOSS_MAP_NV = 0x855F; - public static final int GL_EVAL_2D_NV = 0x86C0; - public static final int GL_EVAL_FRACTIONAL_TESSELLATION_NV = 0x86C5; - public static final int GL_EVAL_TRIANGULAR_2D_NV = 0x86C1; - public static final int GL_EVAL_VERTEX_ATTRIB0_NV = 0x86C6; - public static final int GL_EVAL_VERTEX_ATTRIB10_NV = 0x86D0; - public static final int GL_EVAL_VERTEX_ATTRIB11_NV = 0x86D1; - public static final int GL_EVAL_VERTEX_ATTRIB12_NV = 0x86D2; - public static final int GL_EVAL_VERTEX_ATTRIB13_NV = 0x86D3; - public static final int GL_EVAL_VERTEX_ATTRIB14_NV = 0x86D4; - public static final int GL_EVAL_VERTEX_ATTRIB15_NV = 0x86D5; - public static final int GL_EVAL_VERTEX_ATTRIB1_NV = 0x86C7; - public static final int GL_EVAL_VERTEX_ATTRIB2_NV = 0x86C8; - public static final int GL_EVAL_VERTEX_ATTRIB3_NV = 0x86C9; - public static final int GL_EVAL_VERTEX_ATTRIB4_NV = 0x86CA; - public static final int GL_EVAL_VERTEX_ATTRIB5_NV = 0x86CB; - public static final int GL_EVAL_VERTEX_ATTRIB6_NV = 0x86CC; - public static final int GL_EVAL_VERTEX_ATTRIB7_NV = 0x86CD; - public static final int GL_EVAL_VERTEX_ATTRIB8_NV = 0x86CE; - public static final int GL_EVAL_VERTEX_ATTRIB9_NV = 0x86CF; - public static final int GL_EXCLUSION_NV = 0x92A0; - public static final int GL_EXCLUSIVE_EXT = 0x8F11; - public static final int GL_EXPAND_NEGATE_NV = 0x8539; - public static final int GL_EXPAND_NORMAL_NV = 0x8538; - public static final int GL_EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD = 0x9160; - public static final int GL_EYE_DISTANCE_TO_LINE_SGIS = 0x81F2; - public static final int GL_EYE_DISTANCE_TO_POINT_SGIS = 0x81F0; - public static final int GL_EYE_LINE_SGIS = 0x81F6; - public static final int GL_EYE_PLANE_ABSOLUTE_NV = 0x855C; - public static final int GL_EYE_POINT_SGIS = 0x81F4; - public static final int GL_EYE_RADIAL_NV = 0x855B; - public static final int GL_E_TIMES_F_NV = 0x8531; - public static final int GL_FACTOR_MAX_AMD = 0x901D; - public static final int GL_FACTOR_MIN_AMD = 0x901C; - public static final int GL_FAILURE_NV = 0x9030; - public static final int GL_FENCE_APPLE = 0x8A0B; - public static final int GL_FENCE_CONDITION_NV = 0x84F4; - public static final int GL_FENCE_STATUS_NV = 0x84F3; - public static final int GL_FIELDS_NV = 0x8E27; - public static final int GL_FIELD_LOWER_NV = 0x9023; - public static final int GL_FIELD_UPPER_NV = 0x9022; - public static final int GL_FILE_NAME_NV = 0x9074; - public static final int GL_FILL_RECTANGLE_NV = 0x933C; - public static final int GL_FILTER4_SGIS = 0x8146; - public static final int GL_FIRST_TO_REST_NV = 0x90AF; - public static final int GL_FIRST_VERTEX_CONVENTION_EXT = 0x8E4D; - public static final int GL_FIXED_OES = 0x140C; - public static final int GL_FIXED_ONLY_ARB = 0x891D; - public static final int GL_FLOAT16_MAT2_AMD = 0x91C5; - public static final int GL_FLOAT16_MAT2x3_AMD = 0x91C8; - public static final int GL_FLOAT16_MAT2x4_AMD = 0x91C9; - public static final int GL_FLOAT16_MAT3_AMD = 0x91C6; - public static final int GL_FLOAT16_MAT3x2_AMD = 0x91CA; - public static final int GL_FLOAT16_MAT3x4_AMD = 0x91CB; - public static final int GL_FLOAT16_MAT4_AMD = 0x91C7; - public static final int GL_FLOAT16_MAT4x2_AMD = 0x91CC; - public static final int GL_FLOAT16_MAT4x3_AMD = 0x91CD; - public static final int GL_FLOAT16_NV = 0x8FF8; - public static final int GL_FLOAT16_VEC2_NV = 0x8FF9; - public static final int GL_FLOAT16_VEC3_NV = 0x8FFA; - public static final int GL_FLOAT16_VEC4_NV = 0x8FFB; - public static final int GL_FLOAT_32_UNSIGNED_INT_24_8_REV_NV = 0x8DAD; - public static final int GL_FLOAT_CLEAR_COLOR_VALUE_NV = 0x888D; - public static final int GL_FLOAT_R16_NV = 0x8884; - public static final int GL_FLOAT_R32_NV = 0x8885; - public static final int GL_FLOAT_RG16_NV = 0x8886; - public static final int GL_FLOAT_RG32_NV = 0x8887; - public static final int GL_FLOAT_RGB16_NV = 0x8888; - public static final int GL_FLOAT_RGB32_NV = 0x8889; - public static final int GL_FLOAT_RGBA16_NV = 0x888A; - public static final int GL_FLOAT_RGBA32_NV = 0x888B; - public static final int GL_FLOAT_RGBA_MODE_NV = 0x888E; - public static final int GL_FLOAT_RGBA_NV = 0x8883; - public static final int GL_FLOAT_RGB_NV = 0x8882; - public static final int GL_FLOAT_RG_NV = 0x8881; - public static final int GL_FLOAT_R_NV = 0x8880; - public static final int GL_FOG_COORDINATE_ARRAY_EXT = 0x8457; - public static final int GL_FOG_COORDINATE_ARRAY_LIST_IBM = 103076; - public static final int GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM = 103086; - public static final int GL_FOG_COORDINATE_ARRAY_POINTER_EXT = 0x8456; - public static final int GL_FOG_COORDINATE_ARRAY_STRIDE_EXT = 0x8455; - public static final int GL_FOG_COORDINATE_ARRAY_TYPE_EXT = 0x8454; - public static final int GL_FOG_COORDINATE_EXT = 0x8451; - public static final int GL_FOG_COORDINATE_SOURCE_EXT = 0x8450; - public static final int GL_FOG_COORD_ARRAY_ADDRESS_NV = 0x8F28; - public static final int GL_FOG_COORD_ARRAY_LENGTH_NV = 0x8F32; - public static final int GL_FOG_DISTANCE_MODE_NV = 0x855A; - public static final int GL_FOG_FUNC_POINTS_SGIS = 0x812B; - public static final int GL_FOG_FUNC_SGIS = 0x812A; - public static final int GL_FOG_OFFSET_SGIX = 0x8198; - public static final int GL_FOG_OFFSET_VALUE_SGIX = 0x8199; - public static final int GL_FOG_SPECULAR_TEXTURE_WIN = 0x80EC; - public static final int GL_FONT_ASCENDER_BIT_NV = 0x00200000; - public static final int GL_FONT_DESCENDER_BIT_NV = 0x00400000; - public static final int GL_FONT_GLYPHS_AVAILABLE_NV = 0x9368; - public static final int GL_FONT_HAS_KERNING_BIT_NV = 0x10000000; - public static final int GL_FONT_HEIGHT_BIT_NV = 0x00800000; - public static final int GL_FONT_MAX_ADVANCE_HEIGHT_BIT_NV = 0x02000000; - public static final int GL_FONT_MAX_ADVANCE_WIDTH_BIT_NV = 0x01000000; - public static final int GL_FONT_NUM_GLYPH_INDICES_BIT_NV = 0x20000000; - public static final int GL_FONT_TARGET_UNAVAILABLE_NV = 0x9369; - public static final int GL_FONT_UNAVAILABLE_NV = 0x936A; - public static final int GL_FONT_UNDERLINE_POSITION_BIT_NV = 0x04000000; - public static final int GL_FONT_UNDERLINE_THICKNESS_BIT_NV = 0x08000000; - public static final int GL_FONT_UNINTELLIGIBLE_NV = 0x936B; - public static final int GL_FONT_UNITS_PER_EM_BIT_NV = 0x00100000; - public static final int GL_FONT_X_MAX_BOUNDS_BIT_NV = 0x00040000; - public static final int GL_FONT_X_MIN_BOUNDS_BIT_NV = 0x00010000; - public static final int GL_FONT_Y_MAX_BOUNDS_BIT_NV = 0x00080000; - public static final int GL_FONT_Y_MIN_BOUNDS_BIT_NV = 0x00020000; - public static final int GL_FORCE_BLUE_TO_ONE_NV = 0x8860; - public static final int GL_FORMAT_SUBSAMPLE_244_244_OML = 0x8983; - public static final int GL_FORMAT_SUBSAMPLE_24_24_OML = 0x8982; - public static final int GL_FRAGMENT_COLOR_EXT = 0x834C; - public static final int GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX = 0x8402; - public static final int GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX = 0x8403; - public static final int GL_FRAGMENT_COLOR_MATERIAL_SGIX = 0x8401; - public static final int GL_FRAGMENT_COVERAGE_COLOR_NV = 0x92DE; - public static final int GL_FRAGMENT_COVERAGE_TO_COLOR_NV = 0x92DD; - public static final int GL_FRAGMENT_DEPTH_EXT = 0x8452; - public static final int GL_FRAGMENT_INPUT_NV = 0x936D; - public static final int GL_FRAGMENT_LIGHT0_SGIX = 0x840C; - public static final int GL_FRAGMENT_LIGHT1_SGIX = 0x840D; - public static final int GL_FRAGMENT_LIGHT2_SGIX = 0x840E; - public static final int GL_FRAGMENT_LIGHT3_SGIX = 0x840F; - public static final int GL_FRAGMENT_LIGHT4_SGIX = 0x8410; - public static final int GL_FRAGMENT_LIGHT5_SGIX = 0x8411; - public static final int GL_FRAGMENT_LIGHT6_SGIX = 0x8412; - public static final int GL_FRAGMENT_LIGHT7_SGIX = 0x8413; - public static final int GL_FRAGMENT_LIGHTING_SGIX = 0x8400; - public static final int GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX = 0x840A; - public static final int GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX = 0x8408; - public static final int GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX = 0x840B; - public static final int GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX = 0x8409; - public static final int GL_FRAGMENT_MATERIAL_EXT = 0x8349; - public static final int GL_FRAGMENT_NORMAL_EXT = 0x834A; - public static final int GL_FRAGMENT_PROGRAM_ARB = 0x8804; - public static final int GL_FRAGMENT_PROGRAM_BINDING_NV = 0x8873; - public static final int GL_FRAGMENT_PROGRAM_INTERPOLATION_OFFSET_BITS_NV = 0x8E5D; - public static final int GL_FRAGMENT_PROGRAM_NV = 0x8870; - public static final int GL_FRAGMENT_PROGRAM_PARAMETER_BUFFER_NV = 0x8DA4; - public static final int GL_FRAGMENT_SHADER_ARB = 0x8B30; - public static final int GL_FRAGMENT_SHADER_ATI = 0x8920; - public static final int GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB = 0x8B8B; - public static final int GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT = 0x8A52; - public static final int GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT = 0x8DA7; - public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT = 0x8CD1; - public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT = 0x8CD0; - public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT = 0x8CD4; - public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT = 0x8CD3; - public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT = 0x8CD4; - public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT = 0x8CD2; - public static final int GL_FRAMEBUFFER_BARRIER_BIT_EXT = 0x00000400; - public static final int GL_FRAMEBUFFER_BINDING_EXT = 0x8CA6; - public static final int GL_FRAMEBUFFER_COMPLETE_EXT = 0x8CD5; - public static final int GL_FRAMEBUFFER_EXT = 0x8D40; - public static final int GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT = 0x8CD6; - public static final int GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT = 0x8CD9; - public static final int GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT = 0x8CDB; - public static final int GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT = 0x8CDA; - public static final int GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_EXT = 0x8DA9; - public static final int GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT = 0x8DA8; - public static final int GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT = 0x8CD7; - public static final int GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT = 0x8D56; - public static final int GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT = 0x8CDC; - public static final int GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_NV = 0x9342; - public static final int GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_NV = 0x9343; - public static final int GL_FRAMEBUFFER_SRGB_CAPABLE_EXT = 0x8DBA; - public static final int GL_FRAMEBUFFER_SRGB_EXT = 0x8DB9; - public static final int GL_FRAMEBUFFER_UNSUPPORTED_EXT = 0x8CDD; - public static final int GL_FRAMEZOOM_FACTOR_SGIX = 0x818C; - public static final int GL_FRAMEZOOM_SGIX = 0x818B; - public static final int GL_FRAME_NV = 0x8E26; - public static final int GL_FRONT_FACE_COMMAND_NV = 0x0012; - public static final int GL_FULL_RANGE_EXT = 0x87E1; - public static final int GL_FULL_STIPPLE_HINT_PGI = 0x1A219; - public static final int GL_FUNC_ADD_EXT = 0x8006; - public static final int GL_FUNC_REVERSE_SUBTRACT_EXT = 0x800B; - public static final int GL_FUNC_SUBTRACT_EXT = 0x800A; - public static final int GL_GENERATE_MIPMAP_HINT_SGIS = 0x8192; - public static final int GL_GENERATE_MIPMAP_SGIS = 0x8191; - public static final int GL_GENERIC_ATTRIB_NV = 0x8C7D; - public static final int GL_GEOMETRY_DEFORMATION_BIT_SGIX = 0x00000002; - public static final int GL_GEOMETRY_DEFORMATION_SGIX = 0x8194; - public static final int GL_GEOMETRY_INPUT_TYPE_EXT = 0x8DDB; - public static final int GL_GEOMETRY_OUTPUT_TYPE_EXT = 0x8DDC; - public static final int GL_GEOMETRY_PROGRAM_NV = 0x8C26; - public static final int GL_GEOMETRY_PROGRAM_PARAMETER_BUFFER_NV = 0x8DA3; - public static final int GL_GEOMETRY_SHADER_EXT = 0x8DD9; - public static final int GL_GEOMETRY_VERTICES_OUT_EXT = 0x8DDA; - public static final int GL_GLOBAL_ALPHA_FACTOR_SUN = 0x81DA; - public static final int GL_GLOBAL_ALPHA_SUN = 0x81D9; - public static final int GL_GLYPH_HAS_KERNING_BIT_NV = 0x100; - public static final int GL_GLYPH_HEIGHT_BIT_NV = 0x02; - public static final int GL_GLYPH_HORIZONTAL_BEARING_ADVANCE_BIT_NV = 0x10; - public static final int GL_GLYPH_HORIZONTAL_BEARING_X_BIT_NV = 0x04; - public static final int GL_GLYPH_HORIZONTAL_BEARING_Y_BIT_NV = 0x08; - public static final int GL_GLYPH_VERTICAL_BEARING_ADVANCE_BIT_NV = 0x80; - public static final int GL_GLYPH_VERTICAL_BEARING_X_BIT_NV = 0x20; - public static final int GL_GLYPH_VERTICAL_BEARING_Y_BIT_NV = 0x40; - public static final int GL_GLYPH_WIDTH_BIT_NV = 0x01; - public static final int GL_GPU_ADDRESS_NV = 0x8F34; - public static final int GL_GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX = 0x9049; - public static final int GL_GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX = 0x9047; - public static final int GL_GPU_MEMORY_INFO_EVICTED_MEMORY_NVX = 0x904B; - public static final int GL_GPU_MEMORY_INFO_EVICTION_COUNT_NVX = 0x904A; - public static final int GL_GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX = 0x9048; - public static final int GL_GREEN_BIT_ATI = 0x00000002; - public static final int GL_GREEN_INTEGER_EXT = 0x8D95; - public static final int GL_GREEN_MAX_CLAMP_INGR = 0x8565; - public static final int GL_GREEN_MIN_CLAMP_INGR = 0x8561; - public static final int GL_GREEN_NV = 0x1904; - public static final int GL_HALF_APPLE = 0x140B; - public static final int GL_HALF_BIAS_NEGATE_NV = 0x853B; - public static final int GL_HALF_BIAS_NORMAL_NV = 0x853A; - public static final int GL_HALF_BIT_ATI = 0x00000008; - public static final int GL_HALF_FLOAT_ARB = 0x140B; - public static final int GL_HALF_FLOAT_NV = 0x140B; - public static final int GL_HANDLE_TYPE_D3D11_IMAGE_EXT = 0x958B; - public static final int GL_HANDLE_TYPE_D3D11_IMAGE_KMT_EXT = 0x958C; - public static final int GL_HANDLE_TYPE_D3D12_FENCE_EXT = 0x9594; - public static final int GL_HANDLE_TYPE_D3D12_RESOURCE_EXT = 0x958A; - public static final int GL_HANDLE_TYPE_D3D12_TILEPOOL_EXT = 0x9589; - public static final int GL_HANDLE_TYPE_OPAQUE_FD_EXT = 0x9586; - public static final int GL_HANDLE_TYPE_OPAQUE_WIN32_EXT = 0x9587; - public static final int GL_HANDLE_TYPE_OPAQUE_WIN32_KMT_EXT = 0x9588; - public static final int GL_HARDLIGHT_NV = 0x929B; - public static final int GL_HARDMIX_NV = 0x92A9; - public static final int GL_HILO16_NV = 0x86F8; - public static final int GL_HILO8_NV = 0x885E; - public static final int GL_HILO_NV = 0x86F4; - public static final int GL_HISTOGRAM_ALPHA_SIZE_EXT = 0x802B; - public static final int GL_HISTOGRAM_BLUE_SIZE_EXT = 0x802A; - public static final int GL_HISTOGRAM_EXT = 0x8024; - public static final int GL_HISTOGRAM_FORMAT_EXT = 0x8027; - public static final int GL_HISTOGRAM_GREEN_SIZE_EXT = 0x8029; - public static final int GL_HISTOGRAM_LUMINANCE_SIZE_EXT = 0x802C; - public static final int GL_HISTOGRAM_RED_SIZE_EXT = 0x8028; - public static final int GL_HISTOGRAM_SINK_EXT = 0x802D; - public static final int GL_HISTOGRAM_WIDTH_EXT = 0x8026; - public static final int GL_HI_BIAS_NV = 0x8714; - public static final int GL_HI_SCALE_NV = 0x870E; - public static final int GL_HORIZONTAL_LINE_TO_NV = 0x06; - public static final int GL_HSL_COLOR_NV = 0x92AF; - public static final int GL_HSL_HUE_NV = 0x92AD; - public static final int GL_HSL_LUMINOSITY_NV = 0x92B0; - public static final int GL_HSL_SATURATION_NV = 0x92AE; - public static final int GL_IDENTITY_NV = 0x862A; - public static final int GL_IGNORE_BORDER_HP = 0x8150; - public static final int GL_IMAGE_1D_ARRAY_EXT = 0x9052; - public static final int GL_IMAGE_1D_EXT = 0x904C; - public static final int GL_IMAGE_2D_ARRAY_EXT = 0x9053; - public static final int GL_IMAGE_2D_EXT = 0x904D; - public static final int GL_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = 0x9056; - public static final int GL_IMAGE_2D_MULTISAMPLE_EXT = 0x9055; - public static final int GL_IMAGE_2D_RECT_EXT = 0x904F; - public static final int GL_IMAGE_3D_EXT = 0x904E; - public static final int GL_IMAGE_BINDING_ACCESS_EXT = 0x8F3E; - public static final int GL_IMAGE_BINDING_FORMAT_EXT = 0x906E; - public static final int GL_IMAGE_BINDING_LAYERED_EXT = 0x8F3C; - public static final int GL_IMAGE_BINDING_LAYER_EXT = 0x8F3D; - public static final int GL_IMAGE_BINDING_LEVEL_EXT = 0x8F3B; - public static final int GL_IMAGE_BINDING_NAME_EXT = 0x8F3A; - public static final int GL_IMAGE_BUFFER_EXT = 0x9051; - public static final int GL_IMAGE_CUBE_EXT = 0x9050; - public static final int GL_IMAGE_CUBE_MAP_ARRAY_EXT = 0x9054; - public static final int GL_IMAGE_CUBIC_WEIGHT_HP = 0x815E; - public static final int GL_IMAGE_MAG_FILTER_HP = 0x815C; - public static final int GL_IMAGE_MIN_FILTER_HP = 0x815D; - public static final int GL_IMAGE_ROTATE_ANGLE_HP = 0x8159; - public static final int GL_IMAGE_ROTATE_ORIGIN_X_HP = 0x815A; - public static final int GL_IMAGE_ROTATE_ORIGIN_Y_HP = 0x815B; - public static final int GL_IMAGE_SCALE_X_HP = 0x8155; - public static final int GL_IMAGE_SCALE_Y_HP = 0x8156; - public static final int GL_IMAGE_TRANSFORM_2D_HP = 0x8161; - public static final int GL_IMAGE_TRANSLATE_X_HP = 0x8157; - public static final int GL_IMAGE_TRANSLATE_Y_HP = 0x8158; - public static final int GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES = 0x8B9B; - public static final int GL_IMPLEMENTATION_COLOR_READ_TYPE_OES = 0x8B9A; - public static final int GL_INCLUSIVE_EXT = 0x8F10; - public static final int GL_INCR_WRAP_EXT = 0x8507; - public static final int GL_INDEX_ARRAY_ADDRESS_NV = 0x8F24; - public static final int GL_INDEX_ARRAY_COUNT_EXT = 0x8087; - public static final int GL_INDEX_ARRAY_EXT = 0x8077; - public static final int GL_INDEX_ARRAY_LENGTH_NV = 0x8F2E; - public static final int GL_INDEX_ARRAY_LIST_IBM = 103073; - public static final int GL_INDEX_ARRAY_LIST_STRIDE_IBM = 103083; - public static final int GL_INDEX_ARRAY_POINTER_EXT = 0x8091; - public static final int GL_INDEX_ARRAY_STRIDE_EXT = 0x8086; - public static final int GL_INDEX_ARRAY_TYPE_EXT = 0x8085; - public static final int GL_INDEX_BIT_PGI = 0x00080000; - public static final int GL_INDEX_MATERIAL_EXT = 0x81B8; - public static final int GL_INDEX_MATERIAL_FACE_EXT = 0x81BA; - public static final int GL_INDEX_MATERIAL_PARAMETER_EXT = 0x81B9; - public static final int GL_INDEX_TEST_EXT = 0x81B5; - public static final int GL_INDEX_TEST_FUNC_EXT = 0x81B6; - public static final int GL_INDEX_TEST_REF_EXT = 0x81B7; - public static final int GL_INSTRUMENT_BUFFER_POINTER_SGIX = 0x8180; - public static final int GL_INSTRUMENT_MEASUREMENTS_SGIX = 0x8181; - public static final int GL_INT16_NV = 0x8FE4; - public static final int GL_INT16_VEC2_NV = 0x8FE5; - public static final int GL_INT16_VEC3_NV = 0x8FE6; - public static final int GL_INT16_VEC4_NV = 0x8FE7; - public static final int GL_INT64_NV = 0x140E; - public static final int GL_INT64_VEC2_NV = 0x8FE9; - public static final int GL_INT64_VEC3_NV = 0x8FEA; - public static final int GL_INT64_VEC4_NV = 0x8FEB; - public static final int GL_INT8_NV = 0x8FE0; - public static final int GL_INT8_VEC2_NV = 0x8FE1; - public static final int GL_INT8_VEC3_NV = 0x8FE2; - public static final int GL_INT8_VEC4_NV = 0x8FE3; - public static final int GL_INTENSITY12_EXT = 0x804C; - public static final int GL_INTENSITY16I_EXT = 0x8D8B; - public static final int GL_INTENSITY16UI_EXT = 0x8D79; - public static final int GL_INTENSITY16_EXT = 0x804D; - public static final int GL_INTENSITY32I_EXT = 0x8D85; - public static final int GL_INTENSITY32UI_EXT = 0x8D73; - public static final int GL_INTENSITY4_EXT = 0x804A; - public static final int GL_INTENSITY8I_EXT = 0x8D91; - public static final int GL_INTENSITY8UI_EXT = 0x8D7F; - public static final int GL_INTENSITY8_EXT = 0x804B; - public static final int GL_INTENSITY_EXT = 0x8049; - public static final int GL_INTENSITY_FLOAT16_APPLE = 0x881D; - public static final int GL_INTENSITY_FLOAT16_ATI = 0x881D; - public static final int GL_INTENSITY_FLOAT32_APPLE = 0x8817; - public static final int GL_INTENSITY_FLOAT32_ATI = 0x8817; - public static final int GL_INTERLACE_OML = 0x8980; - public static final int GL_INTERLACE_READ_INGR = 0x8568; - public static final int GL_INTERLACE_READ_OML = 0x8981; - public static final int GL_INTERLACE_SGIX = 0x8094; - public static final int GL_INTERLEAVED_ATTRIBS_EXT = 0x8C8C; - public static final int GL_INTERLEAVED_ATTRIBS_NV = 0x8C8C; - public static final int GL_INTERPOLATE_EXT = 0x8575; - public static final int GL_INT_IMAGE_1D_ARRAY_EXT = 0x905D; - public static final int GL_INT_IMAGE_1D_EXT = 0x9057; - public static final int GL_INT_IMAGE_2D_ARRAY_EXT = 0x905E; - public static final int GL_INT_IMAGE_2D_EXT = 0x9058; - public static final int GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = 0x9061; - public static final int GL_INT_IMAGE_2D_MULTISAMPLE_EXT = 0x9060; - public static final int GL_INT_IMAGE_2D_RECT_EXT = 0x905A; - public static final int GL_INT_IMAGE_3D_EXT = 0x9059; - public static final int GL_INT_IMAGE_BUFFER_EXT = 0x905C; - public static final int GL_INT_IMAGE_CUBE_EXT = 0x905B; - public static final int GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT = 0x905F; - public static final int GL_INT_SAMPLER_1D_ARRAY_EXT = 0x8DCE; - public static final int GL_INT_SAMPLER_1D_EXT = 0x8DC9; - public static final int GL_INT_SAMPLER_2D_ARRAY_EXT = 0x8DCF; - public static final int GL_INT_SAMPLER_2D_EXT = 0x8DCA; - public static final int GL_INT_SAMPLER_2D_RECT_EXT = 0x8DCD; - public static final int GL_INT_SAMPLER_3D_EXT = 0x8DCB; - public static final int GL_INT_SAMPLER_BUFFER_AMD = 0x9002; - public static final int GL_INT_SAMPLER_BUFFER_EXT = 0x8DD0; - public static final int GL_INT_SAMPLER_CUBE_EXT = 0x8DCC; - public static final int GL_INT_SAMPLER_RENDERBUFFER_NV = 0x8E57; - public static final int GL_INVALID_FRAMEBUFFER_OPERATION_EXT = 0x0506; - public static final int GL_INVARIANT_DATATYPE_EXT = 0x87EB; - public static final int GL_INVARIANT_EXT = 0x87C2; - public static final int GL_INVARIANT_VALUE_EXT = 0x87EA; - public static final int GL_INVERSE_NV = 0x862B; - public static final int GL_INVERSE_TRANSPOSE_NV = 0x862D; - public static final int GL_INVERT_OVG_NV = 0x92B4; - public static final int GL_INVERT_RGB_NV = 0x92A3; - public static final int GL_IR_INSTRUMENT1_SGIX = 0x817F; - public static final int GL_ITALIC_BIT_NV = 0x02; - public static final int GL_IUI_N3F_V2F_EXT = 0x81AF; - public static final int GL_IUI_N3F_V3F_EXT = 0x81B0; - public static final int GL_IUI_V2F_EXT = 0x81AD; - public static final int GL_IUI_V3F_EXT = 0x81AE; - public static final int GL_LARGE_CCW_ARC_TO_NV = 0x16; - public static final int GL_LARGE_CW_ARC_TO_NV = 0x18; - public static final int GL_LAST_VERTEX_CONVENTION_EXT = 0x8E4E; - public static final int GL_LAST_VIDEO_CAPTURE_STATUS_NV = 0x9027; - public static final int GL_LAYER_NV = 0x8DAA; - public static final int GL_LAYOUT_COLOR_ATTACHMENT_EXT = 0x958E; - public static final int GL_LAYOUT_DEFAULT_INTEL = 0; - public static final int GL_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_EXT = 0x9531; - public static final int GL_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_EXT = 0x9530; - public static final int GL_LAYOUT_DEPTH_STENCIL_ATTACHMENT_EXT = 0x958F; - public static final int GL_LAYOUT_DEPTH_STENCIL_READ_ONLY_EXT = 0x9590; - public static final int GL_LAYOUT_GENERAL_EXT = 0x958D; - public static final int GL_LAYOUT_LINEAR_CPU_CACHED_INTEL = 2; - public static final int GL_LAYOUT_LINEAR_INTEL = 1; - public static final int GL_LAYOUT_SHADER_READ_ONLY_EXT = 0x9591; - public static final int GL_LAYOUT_TRANSFER_DST_EXT = 0x9593; - public static final int GL_LAYOUT_TRANSFER_SRC_EXT = 0x9592; - public static final int GL_LERP_ATI = 0x8969; - public static final int GL_LGPU_SEPARATE_STORAGE_BIT_NVX = 0x0800; - public static final int GL_LIGHTEN_NV = 0x9298; - public static final int GL_LIGHT_ENV_MODE_SGIX = 0x8407; - public static final int GL_LIGHT_MODEL_COLOR_CONTROL_EXT = 0x81F8; - public static final int GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE = 0x85B0; - public static final int GL_LINEARBURN_NV = 0x92A5; - public static final int GL_LINEARDODGE_NV = 0x92A4; - public static final int GL_LINEARLIGHT_NV = 0x92A7; - public static final int GL_LINEAR_CLIPMAP_LINEAR_SGIX = 0x8170; - public static final int GL_LINEAR_CLIPMAP_NEAREST_SGIX = 0x844F; - public static final int GL_LINEAR_DETAIL_ALPHA_SGIS = 0x8098; - public static final int GL_LINEAR_DETAIL_COLOR_SGIS = 0x8099; - public static final int GL_LINEAR_DETAIL_SGIS = 0x8097; - public static final int GL_LINEAR_SHARPEN_ALPHA_SGIS = 0x80AE; - public static final int GL_LINEAR_SHARPEN_COLOR_SGIS = 0x80AF; - public static final int GL_LINEAR_SHARPEN_SGIS = 0x80AD; - public static final int GL_LINEAR_TILING_EXT = 0x9585; - public static final int GL_LINES_ADJACENCY_EXT = 0x000A; - public static final int GL_LINE_STRIP_ADJACENCY_EXT = 0x000B; - public static final int GL_LINE_TO_NV = 0x04; - public static final int GL_LINE_WIDTH_COMMAND_NV = 0x000D; - public static final int GL_LIST_PRIORITY_SGIX = 0x8182; - public static final int GL_LOCAL_CONSTANT_DATATYPE_EXT = 0x87ED; - public static final int GL_LOCAL_CONSTANT_EXT = 0x87C3; - public static final int GL_LOCAL_CONSTANT_VALUE_EXT = 0x87EC; - public static final int GL_LOCAL_EXT = 0x87C4; - public static final int GL_LO_BIAS_NV = 0x8715; - public static final int GL_LO_SCALE_NV = 0x870F; - public static final int GL_LUID_SIZE_EXT = 8; - public static final int GL_LUMINANCE12_ALPHA12_EXT = 0x8047; - public static final int GL_LUMINANCE12_ALPHA4_EXT = 0x8046; - public static final int GL_LUMINANCE12_EXT = 0x8041; - public static final int GL_LUMINANCE16F_EXT = 0x881E; - public static final int GL_LUMINANCE16I_EXT = 0x8D8C; - public static final int GL_LUMINANCE16UI_EXT = 0x8D7A; - public static final int GL_LUMINANCE16_ALPHA16_EXT = 0x8048; - public static final int GL_LUMINANCE16_EXT = 0x8042; - public static final int GL_LUMINANCE32F_EXT = 0x8818; - public static final int GL_LUMINANCE32I_EXT = 0x8D86; - public static final int GL_LUMINANCE32UI_EXT = 0x8D74; - public static final int GL_LUMINANCE4_ALPHA4_EXT = 0x8043; - public static final int GL_LUMINANCE4_EXT = 0x803F; - public static final int GL_LUMINANCE6_ALPHA2_EXT = 0x8044; - public static final int GL_LUMINANCE8I_EXT = 0x8D92; - public static final int GL_LUMINANCE8UI_EXT = 0x8D80; - public static final int GL_LUMINANCE8_ALPHA8_EXT = 0x8045; - public static final int GL_LUMINANCE8_EXT = 0x8040; - public static final int GL_LUMINANCE_ALPHA16F_EXT = 0x881F; - public static final int GL_LUMINANCE_ALPHA16I_EXT = 0x8D8D; - public static final int GL_LUMINANCE_ALPHA16UI_EXT = 0x8D7B; - public static final int GL_LUMINANCE_ALPHA32F_EXT = 0x8819; - public static final int GL_LUMINANCE_ALPHA32I_EXT = 0x8D87; - public static final int GL_LUMINANCE_ALPHA32UI_EXT = 0x8D75; - public static final int GL_LUMINANCE_ALPHA8I_EXT = 0x8D93; - public static final int GL_LUMINANCE_ALPHA8UI_EXT = 0x8D81; - public static final int GL_LUMINANCE_ALPHA_FLOAT16_APPLE = 0x881F; - public static final int GL_LUMINANCE_ALPHA_FLOAT16_ATI = 0x881F; - public static final int GL_LUMINANCE_ALPHA_FLOAT32_APPLE = 0x8819; - public static final int GL_LUMINANCE_ALPHA_FLOAT32_ATI = 0x8819; - public static final int GL_LUMINANCE_ALPHA_INTEGER_EXT = 0x8D9D; - public static final int GL_LUMINANCE_FLOAT16_APPLE = 0x881E; - public static final int GL_LUMINANCE_FLOAT16_ATI = 0x881E; - public static final int GL_LUMINANCE_FLOAT32_APPLE = 0x8818; - public static final int GL_LUMINANCE_FLOAT32_ATI = 0x8818; - public static final int GL_LUMINANCE_INTEGER_EXT = 0x8D9C; - public static final int GL_MAD_ATI = 0x8968; - public static final int GL_MAGNITUDE_BIAS_NV = 0x8718; - public static final int GL_MAGNITUDE_SCALE_NV = 0x8712; - public static final int GL_MAP1_BINORMAL_EXT = 0x8446; - public static final int GL_MAP1_TANGENT_EXT = 0x8444; - public static final int GL_MAP1_VERTEX_ATTRIB0_4_NV = 0x8660; - public static final int GL_MAP1_VERTEX_ATTRIB10_4_NV = 0x866A; - public static final int GL_MAP1_VERTEX_ATTRIB11_4_NV = 0x866B; - public static final int GL_MAP1_VERTEX_ATTRIB12_4_NV = 0x866C; - public static final int GL_MAP1_VERTEX_ATTRIB13_4_NV = 0x866D; - public static final int GL_MAP1_VERTEX_ATTRIB14_4_NV = 0x866E; - public static final int GL_MAP1_VERTEX_ATTRIB15_4_NV = 0x866F; - public static final int GL_MAP1_VERTEX_ATTRIB1_4_NV = 0x8661; - public static final int GL_MAP1_VERTEX_ATTRIB2_4_NV = 0x8662; - public static final int GL_MAP1_VERTEX_ATTRIB3_4_NV = 0x8663; - public static final int GL_MAP1_VERTEX_ATTRIB4_4_NV = 0x8664; - public static final int GL_MAP1_VERTEX_ATTRIB5_4_NV = 0x8665; - public static final int GL_MAP1_VERTEX_ATTRIB6_4_NV = 0x8666; - public static final int GL_MAP1_VERTEX_ATTRIB7_4_NV = 0x8667; - public static final int GL_MAP1_VERTEX_ATTRIB8_4_NV = 0x8668; - public static final int GL_MAP1_VERTEX_ATTRIB9_4_NV = 0x8669; - public static final int GL_MAP2_BINORMAL_EXT = 0x8447; - public static final int GL_MAP2_TANGENT_EXT = 0x8445; - public static final int GL_MAP2_VERTEX_ATTRIB0_4_NV = 0x8670; - public static final int GL_MAP2_VERTEX_ATTRIB10_4_NV = 0x867A; - public static final int GL_MAP2_VERTEX_ATTRIB11_4_NV = 0x867B; - public static final int GL_MAP2_VERTEX_ATTRIB12_4_NV = 0x867C; - public static final int GL_MAP2_VERTEX_ATTRIB13_4_NV = 0x867D; - public static final int GL_MAP2_VERTEX_ATTRIB14_4_NV = 0x867E; - public static final int GL_MAP2_VERTEX_ATTRIB15_4_NV = 0x867F; - public static final int GL_MAP2_VERTEX_ATTRIB1_4_NV = 0x8671; - public static final int GL_MAP2_VERTEX_ATTRIB2_4_NV = 0x8672; - public static final int GL_MAP2_VERTEX_ATTRIB3_4_NV = 0x8673; - public static final int GL_MAP2_VERTEX_ATTRIB4_4_NV = 0x8674; - public static final int GL_MAP2_VERTEX_ATTRIB5_4_NV = 0x8675; - public static final int GL_MAP2_VERTEX_ATTRIB6_4_NV = 0x8676; - public static final int GL_MAP2_VERTEX_ATTRIB7_4_NV = 0x8677; - public static final int GL_MAP2_VERTEX_ATTRIB8_4_NV = 0x8678; - public static final int GL_MAP2_VERTEX_ATTRIB9_4_NV = 0x8679; - public static final int GL_MAP_ATTRIB_U_ORDER_NV = 0x86C3; - public static final int GL_MAP_ATTRIB_V_ORDER_NV = 0x86C4; - public static final int GL_MAP_TESSELLATION_NV = 0x86C2; - public static final int GL_MATERIAL_SIDE_HINT_PGI = 0x1A22C; - public static final int GL_MATRIX0_ARB = 0x88C0; - public static final int GL_MATRIX0_NV = 0x8630; - public static final int GL_MATRIX10_ARB = 0x88CA; - public static final int GL_MATRIX11_ARB = 0x88CB; - public static final int GL_MATRIX12_ARB = 0x88CC; - public static final int GL_MATRIX13_ARB = 0x88CD; - public static final int GL_MATRIX14_ARB = 0x88CE; - public static final int GL_MATRIX15_ARB = 0x88CF; - public static final int GL_MATRIX16_ARB = 0x88D0; - public static final int GL_MATRIX17_ARB = 0x88D1; - public static final int GL_MATRIX18_ARB = 0x88D2; - public static final int GL_MATRIX19_ARB = 0x88D3; - public static final int GL_MATRIX1_ARB = 0x88C1; - public static final int GL_MATRIX1_NV = 0x8631; - public static final int GL_MATRIX20_ARB = 0x88D4; - public static final int GL_MATRIX21_ARB = 0x88D5; - public static final int GL_MATRIX22_ARB = 0x88D6; - public static final int GL_MATRIX23_ARB = 0x88D7; - public static final int GL_MATRIX24_ARB = 0x88D8; - public static final int GL_MATRIX25_ARB = 0x88D9; - public static final int GL_MATRIX26_ARB = 0x88DA; - public static final int GL_MATRIX27_ARB = 0x88DB; - public static final int GL_MATRIX28_ARB = 0x88DC; - public static final int GL_MATRIX29_ARB = 0x88DD; - public static final int GL_MATRIX2_ARB = 0x88C2; - public static final int GL_MATRIX2_NV = 0x8632; - public static final int GL_MATRIX30_ARB = 0x88DE; - public static final int GL_MATRIX31_ARB = 0x88DF; - public static final int GL_MATRIX3_ARB = 0x88C3; - public static final int GL_MATRIX3_NV = 0x8633; - public static final int GL_MATRIX4_ARB = 0x88C4; - public static final int GL_MATRIX4_NV = 0x8634; - public static final int GL_MATRIX5_ARB = 0x88C5; - public static final int GL_MATRIX5_NV = 0x8635; - public static final int GL_MATRIX6_ARB = 0x88C6; - public static final int GL_MATRIX6_NV = 0x8636; - public static final int GL_MATRIX7_ARB = 0x88C7; - public static final int GL_MATRIX7_NV = 0x8637; - public static final int GL_MATRIX8_ARB = 0x88C8; - public static final int GL_MATRIX9_ARB = 0x88C9; - public static final int GL_MATRIX_EXT = 0x87C0; - public static final int GL_MATRIX_INDEX_ARRAY_ARB = 0x8844; - public static final int GL_MATRIX_INDEX_ARRAY_POINTER_ARB = 0x8849; - public static final int GL_MATRIX_INDEX_ARRAY_SIZE_ARB = 0x8846; - public static final int GL_MATRIX_INDEX_ARRAY_STRIDE_ARB = 0x8848; - public static final int GL_MATRIX_INDEX_ARRAY_TYPE_ARB = 0x8847; - public static final int GL_MATRIX_PALETTE_ARB = 0x8840; - public static final int GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI = 0x00200000; - public static final int GL_MAT_AMBIENT_BIT_PGI = 0x00100000; - public static final int GL_MAT_COLOR_INDEXES_BIT_PGI = 0x01000000; - public static final int GL_MAT_DIFFUSE_BIT_PGI = 0x00400000; - public static final int GL_MAT_EMISSION_BIT_PGI = 0x00800000; - public static final int GL_MAT_SHININESS_BIT_PGI = 0x02000000; - public static final int GL_MAT_SPECULAR_BIT_PGI = 0x04000000; - public static final int GL_MAX_3D_TEXTURE_SIZE_EXT = 0x8073; - public static final int GL_MAX_4D_TEXTURE_SIZE_SGIS = 0x8138; - public static final int GL_MAX_ACTIVE_LIGHTS_SGIX = 0x8405; - public static final int GL_MAX_ARRAY_TEXTURE_LAYERS_EXT = 0x88FF; - public static final int GL_MAX_ASYNC_DRAW_PIXELS_SGIX = 0x8360; - public static final int GL_MAX_ASYNC_HISTOGRAM_SGIX = 0x832D; - public static final int GL_MAX_ASYNC_READ_PIXELS_SGIX = 0x8361; - public static final int GL_MAX_ASYNC_TEX_IMAGE_SGIX = 0x835F; - public static final int GL_MAX_BINDABLE_UNIFORM_SIZE_EXT = 0x8DED; - public static final int GL_MAX_CLIPMAP_DEPTH_SGIX = 0x8177; - public static final int GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX = 0x8178; - public static final int GL_MAX_COARSE_FRAGMENT_SAMPLES_NV = 0x955F; - public static final int GL_MAX_COLOR_ATTACHMENTS_EXT = 0x8CDF; - public static final int GL_MAX_COLOR_FRAMEBUFFER_SAMPLES_AMD = 0x91B3; - public static final int GL_MAX_COLOR_FRAMEBUFFER_STORAGE_SAMPLES_AMD = 0x91B4; - public static final int GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI = 0x80B3; - public static final int GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS_EXT = 0x8F39; - public static final int GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NV = 0x8E67; - public static final int GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NV = 0x8E6F; - public static final int GL_MAX_CONVOLUTION_HEIGHT_EXT = 0x801B; - public static final int GL_MAX_CONVOLUTION_WIDTH_EXT = 0x801A; - public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT = 0x851C; - public static final int GL_MAX_DEEP_3D_TEXTURE_DEPTH_NV = 0x90D1; - public static final int GL_MAX_DEEP_3D_TEXTURE_WIDTH_HEIGHT_NV = 0x90D0; - public static final int GL_MAX_DEFORMATION_ORDER_SGIX = 0x8197; - public static final int GL_MAX_DEPTH_STENCIL_FRAMEBUFFER_SAMPLES_AMD = 0x91B5; - public static final int GL_MAX_DETACHED_BUFFERS_NV = 0x95AD; - public static final int GL_MAX_DETACHED_TEXTURES_NV = 0x95AC; - public static final int GL_MAX_DRAW_BUFFERS_ARB = 0x8824; - public static final int GL_MAX_DRAW_BUFFERS_ATI = 0x8824; - public static final int GL_MAX_DRAW_MESH_TASKS_COUNT_NV = 0x953D; - public static final int GL_MAX_ELEMENTS_INDICES_EXT = 0x80E9; - public static final int GL_MAX_ELEMENTS_VERTICES_EXT = 0x80E8; - public static final int GL_MAX_EXT = 0x8008; - public static final int GL_MAX_FOG_FUNC_POINTS_SGIS = 0x812C; - public static final int GL_MAX_FRAGMENT_BINDABLE_UNIFORMS_EXT = 0x8DE3; - public static final int GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_NV = 0x8E5C; - public static final int GL_MAX_FRAGMENT_LIGHTS_SGIX = 0x8404; - public static final int GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV = 0x8868; - public static final int GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB = 0x8B49; - public static final int GL_MAX_FRAMEZOOM_FACTOR_SGIX = 0x818D; - public static final int GL_MAX_GENERAL_COMBINERS_NV = 0x854D; - public static final int GL_MAX_GEOMETRY_BINDABLE_UNIFORMS_EXT = 0x8DE4; - public static final int GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT = 0x8DE0; - public static final int GL_MAX_GEOMETRY_PROGRAM_INVOCATIONS_NV = 0x8E5A; - public static final int GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT = 0x8C29; - public static final int GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT = 0x8DE1; - public static final int GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT = 0x8DDF; - public static final int GL_MAX_GEOMETRY_VARYING_COMPONENTS_EXT = 0x8DDD; - public static final int GL_MAX_IMAGE_SAMPLES_EXT = 0x906D; - public static final int GL_MAX_IMAGE_UNITS_EXT = 0x8F38; - public static final int GL_MAX_LGPU_GPUS_NVX = 0x92BA; - public static final int GL_MAX_MAP_TESSELLATION_NV = 0x86D6; - public static final int GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB = 0x8841; - public static final int GL_MAX_MESH_ATOMIC_COUNTERS_NV = 0x8E65; - public static final int GL_MAX_MESH_ATOMIC_COUNTER_BUFFERS_NV = 0x8E64; - public static final int GL_MAX_MESH_IMAGE_UNIFORMS_NV = 0x8E62; - public static final int GL_MAX_MESH_OUTPUT_PRIMITIVES_NV = 0x9539; - public static final int GL_MAX_MESH_OUTPUT_VERTICES_NV = 0x9538; - public static final int GL_MAX_MESH_SHADER_STORAGE_BLOCKS_NV = 0x8E66; - public static final int GL_MAX_MESH_TEXTURE_IMAGE_UNITS_NV = 0x8E61; - public static final int GL_MAX_MESH_TOTAL_MEMORY_SIZE_NV = 0x9536; - public static final int GL_MAX_MESH_UNIFORM_BLOCKS_NV = 0x8E60; - public static final int GL_MAX_MESH_UNIFORM_COMPONENTS_NV = 0x8E63; - public static final int GL_MAX_MESH_VIEWS_NV = 0x9557; - public static final int GL_MAX_MESH_WORK_GROUP_INVOCATIONS_NV = 0x95A2; - public static final int GL_MAX_MESH_WORK_GROUP_SIZE_NV = 0x953B; - public static final int GL_MAX_MULTISAMPLE_COVERAGE_MODES_NV = 0x8E11; - public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87CA; - public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT = 0x87CD; - public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT = 0x87CE; - public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87CC; - public static final int GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT = 0x87CB; - public static final int GL_MAX_PALETTE_MATRICES_ARB = 0x8842; - public static final int GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT = 0x8337; - public static final int GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI = 0x87F1; - public static final int GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB = 0x880B; - public static final int GL_MAX_PROGRAM_ATTRIBS_ARB = 0x88AD; - public static final int GL_MAX_PROGRAM_ATTRIB_COMPONENTS_NV = 0x8908; - public static final int GL_MAX_PROGRAM_CALL_DEPTH_NV = 0x88F5; - public static final int GL_MAX_PROGRAM_ENV_PARAMETERS_ARB = 0x88B5; - public static final int GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV = 0x88F4; - public static final int GL_MAX_PROGRAM_GENERIC_ATTRIBS_NV = 0x8DA5; - public static final int GL_MAX_PROGRAM_GENERIC_RESULTS_NV = 0x8DA6; - public static final int GL_MAX_PROGRAM_IF_DEPTH_NV = 0x88F6; - public static final int GL_MAX_PROGRAM_INSTRUCTIONS_ARB = 0x88A1; - public static final int GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB = 0x88B4; - public static final int GL_MAX_PROGRAM_LOOP_COUNT_NV = 0x88F8; - public static final int GL_MAX_PROGRAM_LOOP_DEPTH_NV = 0x88F7; - public static final int GL_MAX_PROGRAM_MATRICES_ARB = 0x862F; - public static final int GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB = 0x862E; - public static final int GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = 0x880E; - public static final int GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AF; - public static final int GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A3; - public static final int GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB = 0x88AB; - public static final int GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88A7; - public static final int GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = 0x8810; - public static final int GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = 0x880F; - public static final int GL_MAX_PROGRAM_OUTPUT_VERTICES_NV = 0x8C27; - public static final int GL_MAX_PROGRAM_PARAMETERS_ARB = 0x88A9; - public static final int GL_MAX_PROGRAM_PARAMETER_BUFFER_BINDINGS_NV = 0x8DA0; - public static final int GL_MAX_PROGRAM_PARAMETER_BUFFER_SIZE_NV = 0x8DA1; - public static final int GL_MAX_PROGRAM_PATCH_ATTRIBS_NV = 0x86D8; - public static final int GL_MAX_PROGRAM_RESULT_COMPONENTS_NV = 0x8909; - public static final int GL_MAX_PROGRAM_SUBROUTINE_NUM_NV = 0x8F45; - public static final int GL_MAX_PROGRAM_SUBROUTINE_PARAMETERS_NV = 0x8F44; - public static final int GL_MAX_PROGRAM_TEMPORARIES_ARB = 0x88A5; - public static final int GL_MAX_PROGRAM_TEXEL_OFFSET_EXT = 0x8905; - public static final int GL_MAX_PROGRAM_TEXEL_OFFSET_NV = 0x8905; - public static final int GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_NV = 0x8E5F; - public static final int GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB = 0x880D; - public static final int GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB = 0x880C; - public static final int GL_MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV = 0x8C28; - public static final int GL_MAX_RASTER_SAMPLES_EXT = 0x9329; - public static final int GL_MAX_RATIONAL_EVAL_ORDER_NV = 0x86D7; - public static final int GL_MAX_RECTANGLE_TEXTURE_SIZE_NV = 0x84F8; - public static final int GL_MAX_RENDERBUFFER_SIZE_EXT = 0x84E8; - public static final int GL_MAX_SAMPLES_EXT = 0x8D57; - public static final int GL_MAX_SAMPLE_MASK_WORDS_NV = 0x8E59; - public static final int GL_MAX_SHADER_BUFFER_ADDRESS_NV = 0x8F35; - public static final int GL_MAX_SHININESS_NV = 0x8504; - public static final int GL_MAX_SPARSE_3D_TEXTURE_SIZE_AMD = 0x9199; - public static final int GL_MAX_SPARSE_TEXTURE_SIZE_AMD = 0x9198; - public static final int GL_MAX_SPOT_EXPONENT_NV = 0x8505; - public static final int GL_MAX_SUBPIXEL_PRECISION_BIAS_BITS_NV = 0x9349; - public static final int GL_MAX_TASK_ATOMIC_COUNTERS_NV = 0x8E6D; - public static final int GL_MAX_TASK_ATOMIC_COUNTER_BUFFERS_NV = 0x8E6C; - public static final int GL_MAX_TASK_IMAGE_UNIFORMS_NV = 0x8E6A; - public static final int GL_MAX_TASK_OUTPUT_COUNT_NV = 0x953A; - public static final int GL_MAX_TASK_SHADER_STORAGE_BLOCKS_NV = 0x8E6E; - public static final int GL_MAX_TASK_TEXTURE_IMAGE_UNITS_NV = 0x8E69; - public static final int GL_MAX_TASK_TOTAL_MEMORY_SIZE_NV = 0x9537; - public static final int GL_MAX_TASK_UNIFORM_BLOCKS_NV = 0x8E68; - public static final int GL_MAX_TASK_UNIFORM_COMPONENTS_NV = 0x8E6B; - public static final int GL_MAX_TASK_WORK_GROUP_INVOCATIONS_NV = 0x95A3; - public static final int GL_MAX_TASK_WORK_GROUP_SIZE_NV = 0x953C; - public static final int GL_MAX_TEXTURE_BUFFER_SIZE_EXT = 0x8C2B; - public static final int GL_MAX_TEXTURE_COORDS_ARB = 0x8871; - public static final int GL_MAX_TEXTURE_COORDS_NV = 0x8871; - public static final int GL_MAX_TEXTURE_IMAGE_UNITS_ARB = 0x8872; - public static final int GL_MAX_TEXTURE_IMAGE_UNITS_NV = 0x8872; - public static final int GL_MAX_TEXTURE_LOD_BIAS_EXT = 0x84FD; - public static final int GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FF; - public static final int GL_MAX_TEXTURE_UNITS_ARB = 0x84E2; - public static final int GL_MAX_TIMELINE_SEMAPHORE_VALUE_DIFFERENCE_NV = 0x95B6; - public static final int GL_MAX_TRACK_MATRICES_NV = 0x862F; - public static final int GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV = 0x862E; - public static final int GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT = 0x8C8A; - public static final int GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_NV = 0x8C8A; - public static final int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT = 0x8C8B; - public static final int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV = 0x8C8B; - public static final int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT = 0x8C80; - public static final int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV = 0x8C80; - public static final int GL_MAX_VARYING_COMPONENTS_EXT = 0x8B4B; - public static final int GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV = 0x8520; - public static final int GL_MAX_VERTEX_BINDABLE_UNIFORMS_EXT = 0x8DE2; - public static final int GL_MAX_VERTEX_HINT_PGI = 0x1A22D; - public static final int GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87C5; - public static final int GL_MAX_VERTEX_SHADER_INVARIANTS_EXT = 0x87C7; - public static final int GL_MAX_VERTEX_SHADER_LOCALS_EXT = 0x87C9; - public static final int GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87C8; - public static final int GL_MAX_VERTEX_SHADER_VARIANTS_EXT = 0x87C6; - public static final int GL_MAX_VERTEX_STREAMS_ATI = 0x876B; - public static final int GL_MAX_VERTEX_VARYING_COMPONENTS_EXT = 0x8DDE; - public static final int GL_MAX_WINDOW_RECTANGLES_EXT = 0x8F14; - public static final int GL_MEMORY_ATTACHABLE_ALIGNMENT_NV = 0x95A6; - public static final int GL_MEMORY_ATTACHABLE_NV = 0x95A8; - public static final int GL_MEMORY_ATTACHABLE_SIZE_NV = 0x95A7; - public static final int GL_MESH_OUTPUT_PER_PRIMITIVE_GRANULARITY_NV = 0x9543; - public static final int GL_MESH_OUTPUT_PER_VERTEX_GRANULARITY_NV = 0x92DF; - public static final int GL_MESH_OUTPUT_TYPE_NV = 0x957B; - public static final int GL_MESH_PRIMITIVES_OUT_NV = 0x957A; - public static final int GL_MESH_SHADER_BIT_NV = 0x00000040; - public static final int GL_MESH_SHADER_NV = 0x9559; - public static final int GL_MESH_SUBROUTINE_NV = 0x957C; - public static final int GL_MESH_SUBROUTINE_UNIFORM_NV = 0x957E; - public static final int GL_MESH_VERTICES_OUT_NV = 0x9579; - public static final int GL_MESH_WORK_GROUP_SIZE_NV = 0x953E; - public static final int GL_MINMAX_EXT = 0x802E; - public static final int GL_MINMAX_FORMAT_EXT = 0x802F; - public static final int GL_MINMAX_SINK_EXT = 0x8030; - public static final int GL_MINUS_CLAMPED_NV = 0x92B3; - public static final int GL_MINUS_NV = 0x929F; - public static final int GL_MIN_EXT = 0x8007; - public static final int GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_NV = 0x8E5B; - public static final int GL_MIN_LOD_WARNING_AMD = 0x919C; - public static final int GL_MIN_PROGRAM_TEXEL_OFFSET_EXT = 0x8904; - public static final int GL_MIN_PROGRAM_TEXEL_OFFSET_NV = 0x8904; - public static final int GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_NV = 0x8E5E; - public static final int GL_MIN_SPARSE_LEVEL_AMD = 0x919B; - public static final int GL_MIRRORED_REPEAT_IBM = 0x8370; - public static final int GL_MIRROR_CLAMP_ATI = 0x8742; - public static final int GL_MIRROR_CLAMP_EXT = 0x8742; - public static final int GL_MIRROR_CLAMP_TO_BORDER_EXT = 0x8912; - public static final int GL_MIRROR_CLAMP_TO_EDGE_ATI = 0x8743; - public static final int GL_MIRROR_CLAMP_TO_EDGE_EXT = 0x8743; - public static final int GL_MITER_REVERT_NV = 0x90A7; - public static final int GL_MITER_TRUNCATE_NV = 0x90A8; - public static final int GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV = 0x932F; - public static final int GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV = 0x9330; - public static final int GL_MODELVIEW0_EXT = 0x1700; - public static final int GL_MODELVIEW0_MATRIX_EXT = 0x0BA6; - public static final int GL_MODELVIEW1_EXT = 0x850A; - public static final int GL_MODELVIEW1_MATRIX_EXT = 0x8506; - public static final int GL_MODELVIEW1_STACK_DEPTH_EXT = 0x8502; - public static final int GL_MODELVIEW_PROJECTION_NV = 0x8629; - public static final int GL_MODULATE_ADD_ATI = 0x8744; - public static final int GL_MODULATE_SIGNED_ADD_ATI = 0x8745; - public static final int GL_MODULATE_SUBTRACT_ATI = 0x8746; - public static final int GL_MOVE_TO_CONTINUES_NV = 0x90B6; - public static final int GL_MOVE_TO_NV = 0x02; - public static final int GL_MOVE_TO_RESETS_NV = 0x90B5; - public static final int GL_MOV_ATI = 0x8961; - public static final int GL_MULTICAST_GPUS_NV = 0x92BA; - public static final int GL_MULTICAST_PROGRAMMABLE_SAMPLE_LOCATION_NV = 0x9549; - public static final int GL_MULTIPLY_NV = 0x9294; - public static final int GL_MULTISAMPLES_NV = 0x9371; - public static final int GL_MULTISAMPLE_3DFX = 0x86B2; - public static final int GL_MULTISAMPLE_ARB = 0x809D; - public static final int GL_MULTISAMPLE_BIT_3DFX = 0x20000000; - public static final int GL_MULTISAMPLE_BIT_ARB = 0x20000000; - public static final int GL_MULTISAMPLE_BIT_EXT = 0x20000000; - public static final int GL_MULTISAMPLE_COVERAGE_MODES_NV = 0x8E12; - public static final int GL_MULTISAMPLE_EXT = 0x809D; - public static final int GL_MULTISAMPLE_FILTER_HINT_NV = 0x8534; - public static final int GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT = 0x932B; - public static final int GL_MULTISAMPLE_SGIS = 0x809D; - public static final int GL_MUL_ATI = 0x8964; - public static final int GL_MVP_MATRIX_EXT = 0x87E3; - public static final int GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI = 0x1A203; - public static final int GL_NATIVE_GRAPHICS_END_HINT_PGI = 0x1A204; - public static final int GL_NATIVE_GRAPHICS_HANDLE_PGI = 0x1A202; - public static final int GL_NEAREST_CLIPMAP_LINEAR_SGIX = 0x844E; - public static final int GL_NEAREST_CLIPMAP_NEAREST_SGIX = 0x844D; - public static final int GL_NEGATE_BIT_ATI = 0x00000004; - public static final int GL_NEGATIVE_ONE_EXT = 0x87DF; - public static final int GL_NEGATIVE_W_EXT = 0x87DC; - public static final int GL_NEGATIVE_X_EXT = 0x87D9; - public static final int GL_NEGATIVE_Y_EXT = 0x87DA; - public static final int GL_NEGATIVE_Z_EXT = 0x87DB; - public static final int GL_NEXT_BUFFER_NV = -2; - public static final int GL_NEXT_VIDEO_CAPTURE_BUFFER_STATUS_NV = 0x9025; - public static final int GL_NOP_COMMAND_NV = 0x0001; - public static final int GL_NORMALIZED_RANGE_EXT = 0x87E0; - public static final int GL_NORMAL_ARRAY_ADDRESS_NV = 0x8F22; - public static final int GL_NORMAL_ARRAY_COUNT_EXT = 0x8080; - public static final int GL_NORMAL_ARRAY_EXT = 0x8075; - public static final int GL_NORMAL_ARRAY_LENGTH_NV = 0x8F2C; - public static final int GL_NORMAL_ARRAY_LIST_IBM = 103071; - public static final int GL_NORMAL_ARRAY_LIST_STRIDE_IBM = 103081; - public static final int GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F6; - public static final int GL_NORMAL_ARRAY_POINTER_EXT = 0x808F; - public static final int GL_NORMAL_ARRAY_STRIDE_EXT = 0x807F; - public static final int GL_NORMAL_ARRAY_TYPE_EXT = 0x807E; - public static final int GL_NORMAL_BIT_PGI = 0x08000000; - public static final int GL_NORMAL_MAP_EXT = 0x8511; - public static final int GL_NORMAL_MAP_NV = 0x8511; - public static final int GL_NUM_DEVICE_UUIDS_EXT = 0x9596; - public static final int GL_NUM_FILL_STREAMS_NV = 0x8E29; - public static final int GL_NUM_FRAGMENT_CONSTANTS_ATI = 0x896F; - public static final int GL_NUM_FRAGMENT_REGISTERS_ATI = 0x896E; - public static final int GL_NUM_GENERAL_COMBINERS_NV = 0x854E; - public static final int GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI = 0x8973; - public static final int GL_NUM_INSTRUCTIONS_PER_PASS_ATI = 0x8971; - public static final int GL_NUM_INSTRUCTIONS_TOTAL_ATI = 0x8972; - public static final int GL_NUM_LOOPBACK_COMPONENTS_ATI = 0x8974; - public static final int GL_NUM_PASSES_ATI = 0x8970; - public static final int GL_NUM_SUPPORTED_MULTISAMPLE_MODES_AMD = 0x91B6; - public static final int GL_NUM_TILING_TYPES_EXT = 0x9582; - public static final int GL_NUM_VIDEO_CAPTURE_STREAMS_NV = 0x9024; - public static final int GL_NUM_WINDOW_RECTANGLES_EXT = 0x8F15; - public static final int GL_OBJECT_BUFFER_SIZE_ATI = 0x8764; - public static final int GL_OBJECT_BUFFER_USAGE_ATI = 0x8765; - public static final int GL_OBJECT_DISTANCE_TO_LINE_SGIS = 0x81F3; - public static final int GL_OBJECT_DISTANCE_TO_POINT_SGIS = 0x81F1; - public static final int GL_OBJECT_LINE_SGIS = 0x81F7; - public static final int GL_OBJECT_POINT_SGIS = 0x81F5; - public static final int GL_OCCLUSION_QUERY_EVENT_MASK_AMD = 0x874F; - public static final int GL_OCCLUSION_TEST_HP = 0x8165; - public static final int GL_OCCLUSION_TEST_RESULT_HP = 0x8166; - public static final int GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV = 0x8856; - public static final int GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV = 0x8857; - public static final int GL_OFFSET_HILO_TEXTURE_2D_NV = 0x8854; - public static final int GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV = 0x8855; - public static final int GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV = 0x8850; - public static final int GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV = 0x8851; - public static final int GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV = 0x8852; - public static final int GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV = 0x8853; - public static final int GL_OFFSET_TEXTURE_2D_BIAS_NV = 0x86E3; - public static final int GL_OFFSET_TEXTURE_2D_MATRIX_NV = 0x86E1; - public static final int GL_OFFSET_TEXTURE_2D_NV = 0x86E8; - public static final int GL_OFFSET_TEXTURE_2D_SCALE_NV = 0x86E2; - public static final int GL_OFFSET_TEXTURE_BIAS_NV = 0x86E3; - public static final int GL_OFFSET_TEXTURE_MATRIX_NV = 0x86E1; - public static final int GL_OFFSET_TEXTURE_RECTANGLE_NV = 0x864C; - public static final int GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV = 0x864D; - public static final int GL_OFFSET_TEXTURE_SCALE_NV = 0x86E2; - public static final int GL_ONE_EXT = 0x87DE; - public static final int GL_ONE_MINUS_CONSTANT_ALPHA_EXT = 0x8004; - public static final int GL_ONE_MINUS_CONSTANT_COLOR_EXT = 0x8002; - public static final int GL_OPERAND0_ALPHA_EXT = 0x8598; - public static final int GL_OPERAND0_RGB_EXT = 0x8590; - public static final int GL_OPERAND1_ALPHA_EXT = 0x8599; - public static final int GL_OPERAND1_RGB_EXT = 0x8591; - public static final int GL_OPERAND2_ALPHA_EXT = 0x859A; - public static final int GL_OPERAND2_RGB_EXT = 0x8592; - public static final int GL_OPERAND3_ALPHA_NV = 0x859B; - public static final int GL_OPERAND3_RGB_NV = 0x8593; - public static final int GL_OPTIMAL_TILING_EXT = 0x9584; - public static final int GL_OP_ADD_EXT = 0x8787; - public static final int GL_OP_CLAMP_EXT = 0x878E; - public static final int GL_OP_CROSS_PRODUCT_EXT = 0x8797; - public static final int GL_OP_DOT3_EXT = 0x8784; - public static final int GL_OP_DOT4_EXT = 0x8785; - public static final int GL_OP_EXP_BASE_2_EXT = 0x8791; - public static final int GL_OP_FLOOR_EXT = 0x878F; - public static final int GL_OP_FRAC_EXT = 0x8789; - public static final int GL_OP_INDEX_EXT = 0x8782; - public static final int GL_OP_LOG_BASE_2_EXT = 0x8792; - public static final int GL_OP_MADD_EXT = 0x8788; - public static final int GL_OP_MAX_EXT = 0x878A; - public static final int GL_OP_MIN_EXT = 0x878B; - public static final int GL_OP_MOV_EXT = 0x8799; - public static final int GL_OP_MULTIPLY_MATRIX_EXT = 0x8798; - public static final int GL_OP_MUL_EXT = 0x8786; - public static final int GL_OP_NEGATE_EXT = 0x8783; - public static final int GL_OP_POWER_EXT = 0x8793; - public static final int GL_OP_RECIP_EXT = 0x8794; - public static final int GL_OP_RECIP_SQRT_EXT = 0x8795; - public static final int GL_OP_ROUND_EXT = 0x8790; - public static final int GL_OP_SET_GE_EXT = 0x878C; - public static final int GL_OP_SET_LT_EXT = 0x878D; - public static final int GL_OP_SUB_EXT = 0x8796; - public static final int GL_OUTPUT_COLOR0_EXT = 0x879B; - public static final int GL_OUTPUT_COLOR1_EXT = 0x879C; - public static final int GL_OUTPUT_FOG_EXT = 0x87BD; - public static final int GL_OUTPUT_TEXTURE_COORD0_EXT = 0x879D; - public static final int GL_OUTPUT_TEXTURE_COORD10_EXT = 0x87A7; - public static final int GL_OUTPUT_TEXTURE_COORD11_EXT = 0x87A8; - public static final int GL_OUTPUT_TEXTURE_COORD12_EXT = 0x87A9; - public static final int GL_OUTPUT_TEXTURE_COORD13_EXT = 0x87AA; - public static final int GL_OUTPUT_TEXTURE_COORD14_EXT = 0x87AB; - public static final int GL_OUTPUT_TEXTURE_COORD15_EXT = 0x87AC; - public static final int GL_OUTPUT_TEXTURE_COORD16_EXT = 0x87AD; - public static final int GL_OUTPUT_TEXTURE_COORD17_EXT = 0x87AE; - public static final int GL_OUTPUT_TEXTURE_COORD18_EXT = 0x87AF; - public static final int GL_OUTPUT_TEXTURE_COORD19_EXT = 0x87B0; - public static final int GL_OUTPUT_TEXTURE_COORD1_EXT = 0x879E; - public static final int GL_OUTPUT_TEXTURE_COORD20_EXT = 0x87B1; - public static final int GL_OUTPUT_TEXTURE_COORD21_EXT = 0x87B2; - public static final int GL_OUTPUT_TEXTURE_COORD22_EXT = 0x87B3; - public static final int GL_OUTPUT_TEXTURE_COORD23_EXT = 0x87B4; - public static final int GL_OUTPUT_TEXTURE_COORD24_EXT = 0x87B5; - public static final int GL_OUTPUT_TEXTURE_COORD25_EXT = 0x87B6; - public static final int GL_OUTPUT_TEXTURE_COORD26_EXT = 0x87B7; - public static final int GL_OUTPUT_TEXTURE_COORD27_EXT = 0x87B8; - public static final int GL_OUTPUT_TEXTURE_COORD28_EXT = 0x87B9; - public static final int GL_OUTPUT_TEXTURE_COORD29_EXT = 0x87BA; - public static final int GL_OUTPUT_TEXTURE_COORD2_EXT = 0x879F; - public static final int GL_OUTPUT_TEXTURE_COORD30_EXT = 0x87BB; - public static final int GL_OUTPUT_TEXTURE_COORD31_EXT = 0x87BC; - public static final int GL_OUTPUT_TEXTURE_COORD3_EXT = 0x87A0; - public static final int GL_OUTPUT_TEXTURE_COORD4_EXT = 0x87A1; - public static final int GL_OUTPUT_TEXTURE_COORD5_EXT = 0x87A2; - public static final int GL_OUTPUT_TEXTURE_COORD6_EXT = 0x87A3; - public static final int GL_OUTPUT_TEXTURE_COORD7_EXT = 0x87A4; - public static final int GL_OUTPUT_TEXTURE_COORD8_EXT = 0x87A5; - public static final int GL_OUTPUT_TEXTURE_COORD9_EXT = 0x87A6; - public static final int GL_OUTPUT_VERTEX_EXT = 0x879A; - public static final int GL_OVERLAY_NV = 0x9296; - public static final int GL_PACK_CMYK_HINT_EXT = 0x800E; - public static final int GL_PACK_IMAGE_DEPTH_SGIS = 0x8131; - public static final int GL_PACK_IMAGE_HEIGHT_EXT = 0x806C; - public static final int GL_PACK_INVERT_MESA = 0x8758; - public static final int GL_PACK_RESAMPLE_OML = 0x8984; - public static final int GL_PACK_RESAMPLE_SGIX = 0x842E; - public static final int GL_PACK_ROW_BYTES_APPLE = 0x8A15; - public static final int GL_PACK_SKIP_IMAGES_EXT = 0x806B; - public static final int GL_PACK_SKIP_VOLUMES_SGIS = 0x8130; - public static final int GL_PACK_SUBSAMPLE_RATE_SGIX = 0x85A0; - public static final int GL_PALETTE4_R5_G6_B5_OES = 0x8B92; - public static final int GL_PALETTE4_RGB5_A1_OES = 0x8B94; - public static final int GL_PALETTE4_RGB8_OES = 0x8B90; - public static final int GL_PALETTE4_RGBA4_OES = 0x8B93; - public static final int GL_PALETTE4_RGBA8_OES = 0x8B91; - public static final int GL_PALETTE8_R5_G6_B5_OES = 0x8B97; - public static final int GL_PALETTE8_RGB5_A1_OES = 0x8B99; - public static final int GL_PALETTE8_RGB8_OES = 0x8B95; - public static final int GL_PALETTE8_RGBA4_OES = 0x8B98; - public static final int GL_PALETTE8_RGBA8_OES = 0x8B96; - public static final int GL_PARALLEL_ARRAYS_INTEL = 0x83F4; - public static final int GL_PARTIAL_SUCCESS_NV = 0x902E; - public static final int GL_PASS_THROUGH_NV = 0x86E6; - public static final int GL_PATH_CLIENT_LENGTH_NV = 0x907F; - public static final int GL_PATH_COMMAND_COUNT_NV = 0x909D; - public static final int GL_PATH_COMPUTED_LENGTH_NV = 0x90A0; - public static final int GL_PATH_COORD_COUNT_NV = 0x909E; - public static final int GL_PATH_COVER_DEPTH_FUNC_NV = 0x90BF; - public static final int GL_PATH_DASH_ARRAY_COUNT_NV = 0x909F; - public static final int GL_PATH_DASH_CAPS_NV = 0x907B; - public static final int GL_PATH_DASH_OFFSET_NV = 0x907E; - public static final int GL_PATH_DASH_OFFSET_RESET_NV = 0x90B4; - public static final int GL_PATH_END_CAPS_NV = 0x9076; - public static final int GL_PATH_ERROR_POSITION_NV = 0x90AB; - public static final int GL_PATH_FILL_BOUNDING_BOX_NV = 0x90A1; - public static final int GL_PATH_FILL_COVER_MODE_NV = 0x9082; - public static final int GL_PATH_FILL_MASK_NV = 0x9081; - public static final int GL_PATH_FILL_MODE_NV = 0x9080; - public static final int GL_PATH_FORMAT_PS_NV = 0x9071; - public static final int GL_PATH_FORMAT_SVG_NV = 0x9070; - public static final int GL_PATH_GEN_COEFF_NV = 0x90B1; - public static final int GL_PATH_GEN_COMPONENTS_NV = 0x90B3; - public static final int GL_PATH_GEN_MODE_NV = 0x90B0; - public static final int GL_PATH_INITIAL_DASH_CAP_NV = 0x907C; - public static final int GL_PATH_INITIAL_END_CAP_NV = 0x9077; - public static final int GL_PATH_JOIN_STYLE_NV = 0x9079; - public static final int GL_PATH_MAX_MODELVIEW_STACK_DEPTH_NV = 0x0D36; - public static final int GL_PATH_MAX_PROJECTION_STACK_DEPTH_NV = 0x0D38; - public static final int GL_PATH_MITER_LIMIT_NV = 0x907A; - public static final int GL_PATH_MODELVIEW_MATRIX_NV = 0x0BA6; - public static final int GL_PATH_MODELVIEW_NV = 0x1700; - public static final int GL_PATH_MODELVIEW_STACK_DEPTH_NV = 0x0BA3; - public static final int GL_PATH_OBJECT_BOUNDING_BOX_NV = 0x908A; - public static final int GL_PATH_PROJECTION_MATRIX_NV = 0x0BA7; - public static final int GL_PATH_PROJECTION_NV = 0x1701; - public static final int GL_PATH_PROJECTION_STACK_DEPTH_NV = 0x0BA4; - public static final int GL_PATH_STENCIL_DEPTH_OFFSET_FACTOR_NV = 0x90BD; - public static final int GL_PATH_STENCIL_DEPTH_OFFSET_UNITS_NV = 0x90BE; - public static final int GL_PATH_STENCIL_FUNC_NV = 0x90B7; - public static final int GL_PATH_STENCIL_REF_NV = 0x90B8; - public static final int GL_PATH_STENCIL_VALUE_MASK_NV = 0x90B9; - public static final int GL_PATH_STROKE_BOUNDING_BOX_NV = 0x90A2; - public static final int GL_PATH_STROKE_COVER_MODE_NV = 0x9083; - public static final int GL_PATH_STROKE_MASK_NV = 0x9084; - public static final int GL_PATH_STROKE_WIDTH_NV = 0x9075; - public static final int GL_PATH_TERMINAL_DASH_CAP_NV = 0x907D; - public static final int GL_PATH_TERMINAL_END_CAP_NV = 0x9078; - public static final int GL_PATH_TRANSPOSE_MODELVIEW_MATRIX_NV = 0x84E3; - public static final int GL_PATH_TRANSPOSE_PROJECTION_MATRIX_NV = 0x84E4; - public static final int GL_PERCENTAGE_AMD = 0x8BC3; - public static final int GL_PERFMON_RESULT_AMD = 0x8BC6; - public static final int GL_PERFMON_RESULT_AVAILABLE_AMD = 0x8BC4; - public static final int GL_PERFMON_RESULT_SIZE_AMD = 0x8BC5; - public static final int GL_PERFORMANCE_MONITOR_AMD = 0x9152; - public static final int GL_PERTURB_EXT = 0x85AE; - public static final int GL_PER_GPU_STORAGE_BIT_NV = 0x0800; - public static final int GL_PER_GPU_STORAGE_NV = 0x9548; - public static final int GL_PER_STAGE_CONSTANTS_NV = 0x8535; - public static final int GL_PHONG_HINT_WIN = 0x80EB; - public static final int GL_PHONG_WIN = 0x80EA; - public static final int GL_PINLIGHT_NV = 0x92A8; - public static final int GL_PIXELS_PER_SAMPLE_PATTERN_X_AMD = 0x91AE; - public static final int GL_PIXELS_PER_SAMPLE_PATTERN_Y_AMD = 0x91AF; - public static final int GL_PIXEL_BUFFER_BARRIER_BIT_EXT = 0x00000080; - public static final int GL_PIXEL_COUNTER_BITS_NV = 0x8864; - public static final int GL_PIXEL_COUNT_AVAILABLE_NV = 0x8867; - public static final int GL_PIXEL_COUNT_NV = 0x8866; - public static final int GL_PIXEL_CUBIC_WEIGHT_EXT = 0x8333; - public static final int GL_PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS = 0x8355; - public static final int GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS = 0x8354; - public static final int GL_PIXEL_GROUP_COLOR_SGIS = 0x8356; - public static final int GL_PIXEL_MAG_FILTER_EXT = 0x8331; - public static final int GL_PIXEL_MIN_FILTER_EXT = 0x8332; - public static final int GL_PIXEL_PACK_BUFFER_BINDING_EXT = 0x88ED; - public static final int GL_PIXEL_PACK_BUFFER_EXT = 0x88EB; - public static final int GL_PIXEL_SUBSAMPLE_2424_SGIX = 0x85A3; - public static final int GL_PIXEL_SUBSAMPLE_4242_SGIX = 0x85A4; - public static final int GL_PIXEL_SUBSAMPLE_4444_SGIX = 0x85A2; - public static final int GL_PIXEL_TEXTURE_SGIS = 0x8353; - public static final int GL_PIXEL_TEX_GEN_MODE_SGIX = 0x832B; - public static final int GL_PIXEL_TEX_GEN_SGIX = 0x8139; - public static final int GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX = 0x813E; - public static final int GL_PIXEL_TILE_CACHE_INCREMENT_SGIX = 0x813F; - public static final int GL_PIXEL_TILE_CACHE_SIZE_SGIX = 0x8145; - public static final int GL_PIXEL_TILE_GRID_DEPTH_SGIX = 0x8144; - public static final int GL_PIXEL_TILE_GRID_HEIGHT_SGIX = 0x8143; - public static final int GL_PIXEL_TILE_GRID_WIDTH_SGIX = 0x8142; - public static final int GL_PIXEL_TILE_HEIGHT_SGIX = 0x8141; - public static final int GL_PIXEL_TILE_WIDTH_SGIX = 0x8140; - public static final int GL_PIXEL_TRANSFORM_2D_EXT = 0x8330; - public static final int GL_PIXEL_TRANSFORM_2D_MATRIX_EXT = 0x8338; - public static final int GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT = 0x8336; - public static final int GL_PIXEL_UNPACK_BUFFER_BINDING_EXT = 0x88EF; - public static final int GL_PIXEL_UNPACK_BUFFER_EXT = 0x88EC; - public static final int GL_PLUS_CLAMPED_ALPHA_NV = 0x92B2; - public static final int GL_PLUS_CLAMPED_NV = 0x92B1; - public static final int GL_PLUS_DARKER_NV = 0x9292; - public static final int GL_PLUS_NV = 0x9291; - public static final int GL_PN_TRIANGLES_ATI = 0x87F0; - public static final int GL_PN_TRIANGLES_NORMAL_MODE_ATI = 0x87F3; - public static final int GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI = 0x87F7; - public static final int GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI = 0x87F8; - public static final int GL_PN_TRIANGLES_POINT_MODE_ATI = 0x87F2; - public static final int GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI = 0x87F6; - public static final int GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI = 0x87F5; - public static final int GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI = 0x87F4; - public static final int GL_POINT_FADE_THRESHOLD_SIZE_EXT = 0x8128; - public static final int GL_POINT_FADE_THRESHOLD_SIZE_SGIS = 0x8128; - public static final int GL_POINT_SIZE_MAX_EXT = 0x8127; - public static final int GL_POINT_SIZE_MAX_SGIS = 0x8127; - public static final int GL_POINT_SIZE_MIN_EXT = 0x8126; - public static final int GL_POINT_SIZE_MIN_SGIS = 0x8126; - public static final int GL_POINT_SPRITE_ARB = 0x8861; - public static final int GL_POINT_SPRITE_NV = 0x8861; - public static final int GL_POINT_SPRITE_R_MODE_NV = 0x8863; - public static final int GL_POLYGON_OFFSET_BIAS_EXT = 0x8039; - public static final int GL_POLYGON_OFFSET_CLAMP_EXT = 0x8E1B; - public static final int GL_POLYGON_OFFSET_COMMAND_NV = 0x000E; - public static final int GL_POLYGON_OFFSET_EXT = 0x8037; - public static final int GL_POLYGON_OFFSET_FACTOR_EXT = 0x8038; - public static final int GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI = 0x80BB; - public static final int GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI = 0x80B7; - public static final int GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI = 0x80BA; - public static final int GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI = 0x80B6; - public static final int GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI = 0x80D2; - public static final int GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI = 0x80B9; - public static final int GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI = 0x80B5; - public static final int GL_POST_COLOR_MATRIX_RED_BIAS_SGI = 0x80B8; - public static final int GL_POST_COLOR_MATRIX_RED_SCALE_SGI = 0x80B4; - public static final int GL_POST_CONVOLUTION_ALPHA_BIAS_EXT = 0x8023; - public static final int GL_POST_CONVOLUTION_ALPHA_SCALE_EXT = 0x801F; - public static final int GL_POST_CONVOLUTION_BLUE_BIAS_EXT = 0x8022; - public static final int GL_POST_CONVOLUTION_BLUE_SCALE_EXT = 0x801E; - public static final int GL_POST_CONVOLUTION_COLOR_TABLE_SGI = 0x80D1; - public static final int GL_POST_CONVOLUTION_GREEN_BIAS_EXT = 0x8021; - public static final int GL_POST_CONVOLUTION_GREEN_SCALE_EXT = 0x801D; - public static final int GL_POST_CONVOLUTION_RED_BIAS_EXT = 0x8020; - public static final int GL_POST_CONVOLUTION_RED_SCALE_EXT = 0x801C; - public static final int GL_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP = 0x8162; - public static final int GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX = 0x817B; - public static final int GL_POST_TEXTURE_FILTER_BIAS_SGIX = 0x8179; - public static final int GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX = 0x817C; - public static final int GL_POST_TEXTURE_FILTER_SCALE_SGIX = 0x817A; - public static final int GL_PREFER_DOUBLEBUFFER_HINT_PGI = 0x1A1F8; - public static final int GL_PRESENT_DURATION_NV = 0x8E2B; - public static final int GL_PRESENT_TIME_NV = 0x8E2A; - public static final int GL_PRESERVE_ATI = 0x8762; - public static final int GL_PREVIOUS_EXT = 0x8578; - public static final int GL_PREVIOUS_TEXTURE_INPUT_NV = 0x86E4; - public static final int GL_PRIMARY_COLOR_EXT = 0x8577; - public static final int GL_PRIMARY_COLOR_NV = 0x852C; - public static final int GL_PRIMITIVES_GENERATED_EXT = 0x8C87; - public static final int GL_PRIMITIVES_GENERATED_NV = 0x8C87; - public static final int GL_PRIMITIVE_ID_NV = 0x8C7C; - public static final int GL_PRIMITIVE_RESTART_INDEX_NV = 0x8559; - public static final int GL_PRIMITIVE_RESTART_NV = 0x8558; - public static final int GL_PROGRAMMABLE_SAMPLE_LOCATION_NV = 0x9341; - public static final int GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_NV = 0x9340; - public static final int GL_PROGRAM_ALU_INSTRUCTIONS_ARB = 0x8805; - public static final int GL_PROGRAM_ATTRIBS_ARB = 0x88AC; - public static final int GL_PROGRAM_ATTRIB_COMPONENTS_NV = 0x8906; - public static final int GL_PROGRAM_BINARY_FORMAT_MESA = 0x875F; - public static final int GL_PROGRAM_BINDING_ARB = 0x8677; - public static final int GL_PROGRAM_ERROR_POSITION_ARB = 0x864B; - public static final int GL_PROGRAM_ERROR_POSITION_NV = 0x864B; - public static final int GL_PROGRAM_ERROR_STRING_ARB = 0x8874; - public static final int GL_PROGRAM_ERROR_STRING_NV = 0x8874; - public static final int GL_PROGRAM_FORMAT_ARB = 0x8876; - public static final int GL_PROGRAM_FORMAT_ASCII_ARB = 0x8875; - public static final int GL_PROGRAM_INSTRUCTIONS_ARB = 0x88A0; - public static final int GL_PROGRAM_LENGTH_ARB = 0x8627; - public static final int GL_PROGRAM_LENGTH_NV = 0x8627; - public static final int GL_PROGRAM_MATRIX_EXT = 0x8E2D; - public static final int GL_PROGRAM_MATRIX_STACK_DEPTH_EXT = 0x8E2F; - public static final int GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = 0x8808; - public static final int GL_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AE; - public static final int GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A2; - public static final int GL_PROGRAM_NATIVE_PARAMETERS_ARB = 0x88AA; - public static final int GL_PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88A6; - public static final int GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = 0x880A; - public static final int GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = 0x8809; - public static final int GL_PROGRAM_OBJECT_EXT = 0x8B40; - public static final int GL_PROGRAM_PARAMETERS_ARB = 0x88A8; - public static final int GL_PROGRAM_PARAMETER_NV = 0x8644; - public static final int GL_PROGRAM_PIPELINE_OBJECT_EXT = 0x8A4F; - public static final int GL_PROGRAM_POINT_SIZE_EXT = 0x8642; - public static final int GL_PROGRAM_RESIDENT_NV = 0x8647; - public static final int GL_PROGRAM_RESULT_COMPONENTS_NV = 0x8907; - public static final int GL_PROGRAM_STRING_ARB = 0x8628; - public static final int GL_PROGRAM_STRING_NV = 0x8628; - public static final int GL_PROGRAM_TARGET_NV = 0x8646; - public static final int GL_PROGRAM_TEMPORARIES_ARB = 0x88A4; - public static final int GL_PROGRAM_TEX_INDIRECTIONS_ARB = 0x8807; - public static final int GL_PROGRAM_TEX_INSTRUCTIONS_ARB = 0x8806; - public static final int GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB = 0x88B6; - public static final int GL_PROTECTED_MEMORY_OBJECT_EXT = 0x959B; - public static final int GL_PROVOKING_VERTEX_EXT = 0x8E4F; - public static final int GL_PROXY_COLOR_TABLE_SGI = 0x80D3; - public static final int GL_PROXY_HISTOGRAM_EXT = 0x8025; - public static final int GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI = 0x80D5; - public static final int GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI = 0x80D4; - public static final int GL_PROXY_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP = 0x8163; - public static final int GL_PROXY_TEXTURE_1D_ARRAY_EXT = 0x8C19; - public static final int GL_PROXY_TEXTURE_1D_EXT = 0x8063; - public static final int GL_PROXY_TEXTURE_1D_STACK_MESAX = 0x875B; - public static final int GL_PROXY_TEXTURE_2D_ARRAY_EXT = 0x8C1B; - public static final int GL_PROXY_TEXTURE_2D_EXT = 0x8064; - public static final int GL_PROXY_TEXTURE_2D_STACK_MESAX = 0x875C; - public static final int GL_PROXY_TEXTURE_3D_EXT = 0x8070; - public static final int GL_PROXY_TEXTURE_4D_SGIS = 0x8135; - public static final int GL_PROXY_TEXTURE_COLOR_TABLE_SGI = 0x80BD; - public static final int GL_PROXY_TEXTURE_CUBE_MAP_EXT = 0x851B; - public static final int GL_PROXY_TEXTURE_RECTANGLE_NV = 0x84F7; - public static final int GL_PURGEABLE_APPLE = 0x8A1D; - public static final int GL_PURGED_CONTEXT_RESET_NV = 0x92BB; - public static final int GL_QUADRATIC_CURVE_TO_NV = 0x0A; - public static final int GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT = 0x8E4C; - public static final int GL_QUAD_ALPHA4_SGIS = 0x811E; - public static final int GL_QUAD_ALPHA8_SGIS = 0x811F; - public static final int GL_QUAD_INTENSITY4_SGIS = 0x8122; - public static final int GL_QUAD_INTENSITY8_SGIS = 0x8123; - public static final int GL_QUAD_LUMINANCE4_SGIS = 0x8120; - public static final int GL_QUAD_LUMINANCE8_SGIS = 0x8121; - public static final int GL_QUAD_MESH_SUN = 0x8614; - public static final int GL_QUAD_TEXTURE_SELECT_SGIS = 0x8125; - public static final int GL_QUARTER_BIT_ATI = 0x00000010; - public static final int GL_QUERY_ALL_EVENT_BITS_AMD = 0xFFFFFFFF; - public static final int GL_QUERY_BUFFER_AMD = 0x9192; - public static final int GL_QUERY_BUFFER_BINDING_AMD = 0x9193; - public static final int GL_QUERY_BY_REGION_NO_WAIT_NV = 0x8E16; - public static final int GL_QUERY_BY_REGION_WAIT_NV = 0x8E15; - public static final int GL_QUERY_DEPTH_BOUNDS_FAIL_EVENT_BIT_AMD = 0x00000008; - public static final int GL_QUERY_DEPTH_FAIL_EVENT_BIT_AMD = 0x00000002; - public static final int GL_QUERY_DEPTH_PASS_EVENT_BIT_AMD = 0x00000001; - public static final int GL_QUERY_NO_WAIT_NV = 0x8E14; - public static final int GL_QUERY_OBJECT_AMD = 0x9153; - public static final int GL_QUERY_OBJECT_EXT = 0x9153; - public static final int GL_QUERY_RESOURCE_BUFFEROBJECT_NV = 0x9547; - public static final int GL_QUERY_RESOURCE_MEMTYPE_VIDMEM_NV = 0x9542; - public static final int GL_QUERY_RESOURCE_RENDERBUFFER_NV = 0x9546; - public static final int GL_QUERY_RESOURCE_SYS_RESERVED_NV = 0x9544; - public static final int GL_QUERY_RESOURCE_TEXTURE_NV = 0x9545; - public static final int GL_QUERY_RESOURCE_TYPE_VIDMEM_ALLOC_NV = 0x9540; - public static final int GL_QUERY_RESULT_NO_WAIT_AMD = 0x9194; - public static final int GL_QUERY_STENCIL_FAIL_EVENT_BIT_AMD = 0x00000004; - public static final int GL_QUERY_WAIT_NV = 0x8E13; - public static final int GL_R11F_G11F_B10F_EXT = 0x8C3A; - public static final int GL_R16F_EXT = 0x822D; - public static final int GL_R1UI_C3F_V3F_SUN = 0x85C6; - public static final int GL_R1UI_C4F_N3F_V3F_SUN = 0x85C8; - public static final int GL_R1UI_C4UB_V3F_SUN = 0x85C5; - public static final int GL_R1UI_N3F_V3F_SUN = 0x85C7; - public static final int GL_R1UI_T2F_C4F_N3F_V3F_SUN = 0x85CB; - public static final int GL_R1UI_T2F_N3F_V3F_SUN = 0x85CA; - public static final int GL_R1UI_T2F_V3F_SUN = 0x85C9; - public static final int GL_R1UI_V3F_SUN = 0x85C4; - public static final int GL_R32F_EXT = 0x822E; - public static final int GL_R8_EXT = 0x8229; - public static final int GL_RASTERIZER_DISCARD_EXT = 0x8C89; - public static final int GL_RASTERIZER_DISCARD_NV = 0x8C89; - public static final int GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT = 0x932A; - public static final int GL_RASTER_MULTISAMPLE_EXT = 0x9327; - public static final int GL_RASTER_POSITION_UNCLIPPED_IBM = 0x19262; - public static final int GL_RASTER_SAMPLES_EXT = 0x9328; - public static final int GL_READ_FRAMEBUFFER_BINDING_EXT = 0x8CAA; - public static final int GL_READ_FRAMEBUFFER_EXT = 0x8CA8; - public static final int GL_READ_PIXEL_DATA_RANGE_LENGTH_NV = 0x887B; - public static final int GL_READ_PIXEL_DATA_RANGE_NV = 0x8879; - public static final int GL_READ_PIXEL_DATA_RANGE_POINTER_NV = 0x887D; - public static final int GL_RECLAIM_MEMORY_HINT_PGI = 0x1A1FE; - public static final int GL_RECT_NV = 0xF6; - public static final int GL_REDUCE_EXT = 0x8016; - public static final int GL_RED_BIT_ATI = 0x00000001; - public static final int GL_RED_INTEGER = 0x8D94; - public static final int GL_RED_INTEGER_EXT = 0x8D94; - public static final int GL_RED_MAX_CLAMP_INGR = 0x8564; - public static final int GL_RED_MIN_CLAMP_INGR = 0x8560; - public static final int GL_RED_NV = 0x1903; - public static final int GL_REFERENCED_BY_MESH_SHADER_NV = 0x95A0; - public static final int GL_REFERENCED_BY_TASK_SHADER_NV = 0x95A1; - public static final int GL_REFERENCE_PLANE_EQUATION_SGIX = 0x817E; - public static final int GL_REFERENCE_PLANE_SGIX = 0x817D; - public static final int GL_REFLECTION_MAP_EXT = 0x8512; - public static final int GL_REFLECTION_MAP_NV = 0x8512; - public static final int GL_REGISTER_COMBINERS_NV = 0x8522; - public static final int GL_REG_0_ATI = 0x8921; - public static final int GL_REG_10_ATI = 0x892B; - public static final int GL_REG_11_ATI = 0x892C; - public static final int GL_REG_12_ATI = 0x892D; - public static final int GL_REG_13_ATI = 0x892E; - public static final int GL_REG_14_ATI = 0x892F; - public static final int GL_REG_15_ATI = 0x8930; - public static final int GL_REG_16_ATI = 0x8931; - public static final int GL_REG_17_ATI = 0x8932; - public static final int GL_REG_18_ATI = 0x8933; - public static final int GL_REG_19_ATI = 0x8934; - public static final int GL_REG_1_ATI = 0x8922; - public static final int GL_REG_20_ATI = 0x8935; - public static final int GL_REG_21_ATI = 0x8936; - public static final int GL_REG_22_ATI = 0x8937; - public static final int GL_REG_23_ATI = 0x8938; - public static final int GL_REG_24_ATI = 0x8939; - public static final int GL_REG_25_ATI = 0x893A; - public static final int GL_REG_26_ATI = 0x893B; - public static final int GL_REG_27_ATI = 0x893C; - public static final int GL_REG_28_ATI = 0x893D; - public static final int GL_REG_29_ATI = 0x893E; - public static final int GL_REG_2_ATI = 0x8923; - public static final int GL_REG_30_ATI = 0x893F; - public static final int GL_REG_31_ATI = 0x8940; - public static final int GL_REG_3_ATI = 0x8924; - public static final int GL_REG_4_ATI = 0x8925; - public static final int GL_REG_5_ATI = 0x8926; - public static final int GL_REG_6_ATI = 0x8927; - public static final int GL_REG_7_ATI = 0x8928; - public static final int GL_REG_8_ATI = 0x8929; - public static final int GL_REG_9_ATI = 0x892A; - public static final int GL_RELATIVE_ARC_TO_NV = 0xFF; - public static final int GL_RELATIVE_CONIC_CURVE_TO_NV = 0x1B; - public static final int GL_RELATIVE_CUBIC_CURVE_TO_NV = 0x0D; - public static final int GL_RELATIVE_HORIZONTAL_LINE_TO_NV = 0x07; - public static final int GL_RELATIVE_LARGE_CCW_ARC_TO_NV = 0x17; - public static final int GL_RELATIVE_LARGE_CW_ARC_TO_NV = 0x19; - public static final int GL_RELATIVE_LINE_TO_NV = 0x05; - public static final int GL_RELATIVE_MOVE_TO_NV = 0x03; - public static final int GL_RELATIVE_QUADRATIC_CURVE_TO_NV = 0x0B; - public static final int GL_RELATIVE_RECT_NV = 0xF7; - public static final int GL_RELATIVE_ROUNDED_RECT2_NV = 0xEB; - public static final int GL_RELATIVE_ROUNDED_RECT4_NV = 0xED; - public static final int GL_RELATIVE_ROUNDED_RECT8_NV = 0xEF; - public static final int GL_RELATIVE_ROUNDED_RECT_NV = 0xE9; - public static final int GL_RELATIVE_SMALL_CCW_ARC_TO_NV = 0x13; - public static final int GL_RELATIVE_SMALL_CW_ARC_TO_NV = 0x15; - public static final int GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV = 0x11; - public static final int GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV = 0x0F; - public static final int GL_RELATIVE_VERTICAL_LINE_TO_NV = 0x09; - public static final int GL_RELEASED_APPLE = 0x8A19; - public static final int GL_RENDERBUFFER_ALPHA_SIZE_EXT = 0x8D53; - public static final int GL_RENDERBUFFER_BINDING_EXT = 0x8CA7; - public static final int GL_RENDERBUFFER_BLUE_SIZE_EXT = 0x8D52; - public static final int GL_RENDERBUFFER_COLOR_SAMPLES_NV = 0x8E10; - public static final int GL_RENDERBUFFER_COVERAGE_SAMPLES_NV = 0x8CAB; - public static final int GL_RENDERBUFFER_DEPTH_SIZE_EXT = 0x8D54; - public static final int GL_RENDERBUFFER_EXT = 0x8D41; - public static final int GL_RENDERBUFFER_FREE_MEMORY_ATI = 0x87FD; - public static final int GL_RENDERBUFFER_GREEN_SIZE_EXT = 0x8D51; - public static final int GL_RENDERBUFFER_HEIGHT_EXT = 0x8D43; - public static final int GL_RENDERBUFFER_INTERNAL_FORMAT_EXT = 0x8D44; - public static final int GL_RENDERBUFFER_RED_SIZE = 0x8D50; - public static final int GL_RENDERBUFFER_RED_SIZE_EXT = 0x8D50; - public static final int GL_RENDERBUFFER_SAMPLES_EXT = 0x8CAB; - public static final int GL_RENDERBUFFER_STENCIL_SIZE = 0x8D55; - public static final int GL_RENDERBUFFER_STENCIL_SIZE_EXT = 0x8D55; - public static final int GL_RENDERBUFFER_STORAGE_SAMPLES_AMD = 0x91B2; - public static final int GL_RENDERBUFFER_WIDTH_EXT = 0x8D42; - public static final int GL_RENDER_GPU_MASK_NV = 0x9558; - public static final int GL_REPLACEMENT_CODE_ARRAY_POINTER_SUN = 0x85C3; - public static final int GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN = 0x85C2; - public static final int GL_REPLACEMENT_CODE_ARRAY_SUN = 0x85C0; - public static final int GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN = 0x85C1; - public static final int GL_REPLACEMENT_CODE_SUN = 0x81D8; - public static final int GL_REPLACE_EXT = 0x8062; - public static final int GL_REPLACE_MIDDLE_SUN = 0x0002; - public static final int GL_REPLACE_OLDEST_SUN = 0x0003; - public static final int GL_REPLACE_VALUE_AMD = 0x874B; - public static final int GL_REPLICATE_BORDER_HP = 0x8153; - public static final int GL_REPRESENTATIVE_FRAGMENT_TEST_NV = 0x937F; - public static final int GL_RESAMPLE_AVERAGE_OML = 0x8988; - public static final int GL_RESAMPLE_DECIMATE_OML = 0x8989; - public static final int GL_RESAMPLE_DECIMATE_SGIX = 0x8430; - public static final int GL_RESAMPLE_REPLICATE_OML = 0x8986; - public static final int GL_RESAMPLE_REPLICATE_SGIX = 0x8433; - public static final int GL_RESAMPLE_ZERO_FILL_OML = 0x8987; - public static final int GL_RESAMPLE_ZERO_FILL_SGIX = 0x8434; - public static final int GL_RESCALE_NORMAL_EXT = 0x803A; - public static final int GL_RESTART_PATH_NV = 0xF0; - public static final int GL_RESTART_SUN = 0x0001; - public static final int GL_RETAINED_APPLE = 0x8A1B; - public static final int GL_RG16F_EXT = 0x822F; - public static final int GL_RG32F_EXT = 0x8230; - public static final int GL_RG8_EXT = 0x822B; - public static final int GL_RGB10_A2_EXT = 0x8059; - public static final int GL_RGB10_EXT = 0x8052; - public static final int GL_RGB12_EXT = 0x8053; - public static final int GL_RGB16F_EXT = 0x881B; - public static final int GL_RGB16I_EXT = 0x8D89; - public static final int GL_RGB16UI_EXT = 0x8D77; - public static final int GL_RGB16_EXT = 0x8054; - public static final int GL_RGB2_EXT = 0x804E; - public static final int GL_RGB32F_EXT = 0x8815; - public static final int GL_RGB32I_EXT = 0x8D83; - public static final int GL_RGB32UI_EXT = 0x8D71; - public static final int GL_RGB4_EXT = 0x804F; - public static final int GL_RGB5_A1_EXT = 0x8057; - public static final int GL_RGB5_EXT = 0x8050; - public static final int GL_RGB8I_EXT = 0x8D8F; - public static final int GL_RGB8UI_EXT = 0x8D7D; - public static final int GL_RGB8_EXT = 0x8051; - public static final int GL_RGB9_E5_EXT = 0x8C3D; - public static final int GL_RGBA12_EXT = 0x805A; - public static final int GL_RGBA16F_EXT = 0x881A; - public static final int GL_RGBA16I_EXT = 0x8D88; - public static final int GL_RGBA16UI_EXT = 0x8D76; - public static final int GL_RGBA16_EXT = 0x805B; - public static final int GL_RGBA2_EXT = 0x8055; - public static final int GL_RGBA32F_EXT = 0x8814; - public static final int GL_RGBA32I_EXT = 0x8D82; - public static final int GL_RGBA32UI_EXT = 0x8D70; - public static final int GL_RGBA4_EXT = 0x8056; - public static final int GL_RGBA8I_EXT = 0x8D8E; - public static final int GL_RGBA8UI_EXT = 0x8D7C; - public static final int GL_RGBA8_EXT = 0x8058; - public static final int GL_RGBA_FLOAT16_APPLE = 0x881A; - public static final int GL_RGBA_FLOAT16_ATI = 0x881A; - public static final int GL_RGBA_FLOAT32_APPLE = 0x8814; - public static final int GL_RGBA_FLOAT32_ATI = 0x8814; - public static final int GL_RGBA_FLOAT_MODE_ARB = 0x8820; - public static final int GL_RGBA_FLOAT_MODE_ATI = 0x8820; - public static final int GL_RGBA_INTEGER_EXT = 0x8D99; - public static final int GL_RGBA_INTEGER_MODE_EXT = 0x8D9E; - public static final int GL_RGBA_SIGNED_COMPONENTS_EXT = 0x8C3C; - public static final int GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV = 0x86D9; - public static final int GL_RGB_422_APPLE = 0x8A1F; - public static final int GL_RGB_FLOAT16_APPLE = 0x881B; - public static final int GL_RGB_FLOAT16_ATI = 0x881B; - public static final int GL_RGB_FLOAT32_APPLE = 0x8815; - public static final int GL_RGB_FLOAT32_ATI = 0x8815; - public static final int GL_RGB_INTEGER_EXT = 0x8D98; - public static final int GL_RGB_RAW_422_APPLE = 0x8A51; - public static final int GL_RGB_SCALE_EXT = 0x8573; - public static final int GL_ROUNDED_RECT2_NV = 0xEA; - public static final int GL_ROUNDED_RECT4_NV = 0xEC; - public static final int GL_ROUNDED_RECT8_NV = 0xEE; - public static final int GL_ROUNDED_RECT_NV = 0xE8; - public static final int GL_ROUND_NV = 0x90A4; - public static final int GL_SAMPLER_1D_ARRAY_EXT = 0x8DC0; - public static final int GL_SAMPLER_1D_ARRAY_SHADOW_EXT = 0x8DC3; - public static final int GL_SAMPLER_2D_ARRAY_EXT = 0x8DC1; - public static final int GL_SAMPLER_2D_ARRAY_SHADOW_EXT = 0x8DC4; - public static final int GL_SAMPLER_BUFFER_AMD = 0x9001; - public static final int GL_SAMPLER_BUFFER_EXT = 0x8DC2; - public static final int GL_SAMPLER_CUBE_SHADOW_EXT = 0x8DC5; - public static final int GL_SAMPLER_OBJECT_AMD = 0x9155; - public static final int GL_SAMPLER_RENDERBUFFER_NV = 0x8E56; - public static final int GL_SAMPLES_3DFX = 0x86B4; - public static final int GL_SAMPLES_ARB = 0x80A9; - public static final int GL_SAMPLES_EXT = 0x80A9; - public static final int GL_SAMPLES_SGIS = 0x80A9; - public static final int GL_SAMPLE_ALPHA_TO_COVERAGE_ARB = 0x809E; - public static final int GL_SAMPLE_ALPHA_TO_MASK_EXT = 0x809E; - public static final int GL_SAMPLE_ALPHA_TO_MASK_SGIS = 0x809E; - public static final int GL_SAMPLE_ALPHA_TO_ONE_ARB = 0x809F; - public static final int GL_SAMPLE_ALPHA_TO_ONE_EXT = 0x809F; - public static final int GL_SAMPLE_ALPHA_TO_ONE_SGIS = 0x809F; - public static final int GL_SAMPLE_BUFFERS_3DFX = 0x86B3; - public static final int GL_SAMPLE_BUFFERS_ARB = 0x80A8; - public static final int GL_SAMPLE_BUFFERS_EXT = 0x80A8; - public static final int GL_SAMPLE_BUFFERS_SGIS = 0x80A8; - public static final int GL_SAMPLE_COVERAGE_ARB = 0x80A0; - public static final int GL_SAMPLE_COVERAGE_INVERT_ARB = 0x80AB; - public static final int GL_SAMPLE_COVERAGE_VALUE_ARB = 0x80AA; - public static final int GL_SAMPLE_LOCATION_NV = 0x8E50; - public static final int GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_NV = 0x933F; - public static final int GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_NV = 0x933E; - public static final int GL_SAMPLE_LOCATION_SUBPIXEL_BITS_NV = 0x933D; - public static final int GL_SAMPLE_MASK_EXT = 0x80A0; - public static final int GL_SAMPLE_MASK_INVERT_EXT = 0x80AB; - public static final int GL_SAMPLE_MASK_INVERT_SGIS = 0x80AB; - public static final int GL_SAMPLE_MASK_NV = 0x8E51; - public static final int GL_SAMPLE_MASK_SGIS = 0x80A0; - public static final int GL_SAMPLE_MASK_VALUE_EXT = 0x80AA; - public static final int GL_SAMPLE_MASK_VALUE_NV = 0x8E52; - public static final int GL_SAMPLE_MASK_VALUE_SGIS = 0x80AA; - public static final int GL_SAMPLE_PATTERN_EXT = 0x80AC; - public static final int GL_SAMPLE_PATTERN_SGIS = 0x80AC; - public static final int GL_SAMPLE_POSITION_NV = 0x8E50; - public static final int GL_SATURATE_BIT_ATI = 0x00000040; - public static final int GL_SCALAR_EXT = 0x87BE; - public static final int GL_SCALEBIAS_HINT_SGIX = 0x8322; - public static final int GL_SCALED_RESOLVE_FASTEST_EXT = 0x90BA; - public static final int GL_SCALED_RESOLVE_NICEST_EXT = 0x90BB; - public static final int GL_SCALE_BY_FOUR_NV = 0x853F; - public static final int GL_SCALE_BY_ONE_HALF_NV = 0x8540; - public static final int GL_SCALE_BY_TWO_NV = 0x853E; - public static final int GL_SCISSOR_BOX_EXCLUSIVE_NV = 0x9556; - public static final int GL_SCISSOR_COMMAND_NV = 0x0011; - public static final int GL_SCISSOR_TEST_EXCLUSIVE_NV = 0x9555; - public static final int GL_SCREEN_NV = 0x9295; - public static final int GL_SECONDARY_COLOR_ARRAY_ADDRESS_NV = 0x8F27; - public static final int GL_SECONDARY_COLOR_ARRAY_EXT = 0x845E; - public static final int GL_SECONDARY_COLOR_ARRAY_LENGTH_NV = 0x8F31; - public static final int GL_SECONDARY_COLOR_ARRAY_LIST_IBM = 103077; - public static final int GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM = 103087; - public static final int GL_SECONDARY_COLOR_ARRAY_POINTER_EXT = 0x845D; - public static final int GL_SECONDARY_COLOR_ARRAY_SIZE_EXT = 0x845A; - public static final int GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT = 0x845C; - public static final int GL_SECONDARY_COLOR_ARRAY_TYPE_EXT = 0x845B; - public static final int GL_SECONDARY_COLOR_NV = 0x852D; - public static final int GL_SECONDARY_INTERPOLATOR_ATI = 0x896D; - public static final int GL_SEMAPHORE_TYPE_BINARY_NV = 0x95B4; - public static final int GL_SEMAPHORE_TYPE_NV = 0x95B3; - public static final int GL_SEMAPHORE_TYPE_TIMELINE_NV = 0x95B5; - public static final int GL_SEPARABLE_2D_EXT = 0x8012; - public static final int GL_SEPARATE_ATTRIBS_EXT = 0x8C8D; - public static final int GL_SEPARATE_ATTRIBS_NV = 0x8C8D; - public static final int GL_SEPARATE_SPECULAR_COLOR_EXT = 0x81FA; - public static final int GL_SET_AMD = 0x874A; - public static final int GL_SHADER_CONSISTENT_NV = 0x86DD; - public static final int GL_SHADER_GLOBAL_ACCESS_BARRIER_BIT_NV = 0x00000010; - public static final int GL_SHADER_IMAGE_ACCESS_BARRIER_BIT_EXT = 0x00000020; - public static final int GL_SHADER_OBJECT_EXT = 0x8B48; - public static final int GL_SHADER_OPERATION_NV = 0x86DF; - public static final int GL_SHADING_LANGUAGE_VERSION_ARB = 0x8B8C; - public static final int GL_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV = 0x956F; - public static final int GL_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV = 0x9566; - public static final int GL_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV = 0x9567; - public static final int GL_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV = 0x9568; - public static final int GL_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV = 0x9569; - public static final int GL_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV = 0x956A; - public static final int GL_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV = 0x956B; - public static final int GL_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV = 0x9565; - public static final int GL_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV = 0x956C; - public static final int GL_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV = 0x956D; - public static final int GL_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV = 0x956E; - public static final int GL_SHADING_RATE_IMAGE_BINDING_NV = 0x955B; - public static final int GL_SHADING_RATE_IMAGE_NV = 0x9563; - public static final int GL_SHADING_RATE_IMAGE_PALETTE_COUNT_NV = 0x95B2; - public static final int GL_SHADING_RATE_IMAGE_PALETTE_SIZE_NV = 0x955E; - public static final int GL_SHADING_RATE_IMAGE_PER_PRIMITIVE_NV = 0x95B1; - public static final int GL_SHADING_RATE_IMAGE_TEXEL_HEIGHT_NV = 0x955D; - public static final int GL_SHADING_RATE_IMAGE_TEXEL_WIDTH_NV = 0x955C; - public static final int GL_SHADING_RATE_NO_INVOCATIONS_NV = 0x9564; - public static final int GL_SHADING_RATE_SAMPLE_ORDER_DEFAULT_NV = 0x95AE; - public static final int GL_SHADING_RATE_SAMPLE_ORDER_PIXEL_MAJOR_NV = 0x95AF; - public static final int GL_SHADING_RATE_SAMPLE_ORDER_SAMPLE_MAJOR_NV = 0x95B0; - public static final int GL_SHADOW_AMBIENT_SGIX = 0x80BF; - public static final int GL_SHADOW_ATTENUATION_EXT = 0x834E; - public static final int GL_SHARED_EDGE_NV = 0xC0; - public static final int GL_SHARED_TEXTURE_PALETTE_EXT = 0x81FB; - public static final int GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS = 0x80B0; - public static final int GL_SIGNED_ALPHA8_NV = 0x8706; - public static final int GL_SIGNED_ALPHA_NV = 0x8705; - public static final int GL_SIGNED_HILO16_NV = 0x86FA; - public static final int GL_SIGNED_HILO8_NV = 0x885F; - public static final int GL_SIGNED_HILO_NV = 0x86F9; - public static final int GL_SIGNED_IDENTITY_NV = 0x853C; - public static final int GL_SIGNED_INTENSITY8_NV = 0x8708; - public static final int GL_SIGNED_INTENSITY_NV = 0x8707; - public static final int GL_SIGNED_LUMINANCE8_ALPHA8_NV = 0x8704; - public static final int GL_SIGNED_LUMINANCE8_NV = 0x8702; - public static final int GL_SIGNED_LUMINANCE_ALPHA_NV = 0x8703; - public static final int GL_SIGNED_LUMINANCE_NV = 0x8701; - public static final int GL_SIGNED_NEGATE_NV = 0x853D; - public static final int GL_SIGNED_RGB8_NV = 0x86FF; - public static final int GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV = 0x870D; - public static final int GL_SIGNED_RGBA8_NV = 0x86FC; - public static final int GL_SIGNED_RGBA_NV = 0x86FB; - public static final int GL_SIGNED_RGB_NV = 0x86FE; - public static final int GL_SIGNED_RGB_UNSIGNED_ALPHA_NV = 0x870C; - public static final int GL_SINGLE_COLOR_EXT = 0x81F9; - public static final int GL_SKIP_COMPONENTS1_NV = -6; - public static final int GL_SKIP_COMPONENTS2_NV = -5; - public static final int GL_SKIP_COMPONENTS3_NV = -4; - public static final int GL_SKIP_COMPONENTS4_NV = -3; - public static final int GL_SKIP_DECODE_EXT = 0x8A4A; - public static final int GL_SKIP_MISSING_GLYPH_NV = 0x90A9; - public static final int GL_SLICE_ACCUM_SUN = 0x85CC; - public static final int GL_SLUMINANCE8_ALPHA8_EXT = 0x8C45; - public static final int GL_SLUMINANCE8_EXT = 0x8C47; - public static final int GL_SLUMINANCE_ALPHA_EXT = 0x8C44; - public static final int GL_SLUMINANCE_EXT = 0x8C46; - public static final int GL_SMALL_CCW_ARC_TO_NV = 0x12; - public static final int GL_SMALL_CW_ARC_TO_NV = 0x14; - public static final int GL_SMOOTH_CUBIC_CURVE_TO_NV = 0x10; - public static final int GL_SMOOTH_QUADRATIC_CURVE_TO_NV = 0x0E; - public static final int GL_SM_COUNT_NV = 0x933B; - public static final int GL_SOFTLIGHT_NV = 0x929C; - public static final int GL_SOURCE0_ALPHA_EXT = 0x8588; - public static final int GL_SOURCE0_RGB_EXT = 0x8580; - public static final int GL_SOURCE1_ALPHA_EXT = 0x8589; - public static final int GL_SOURCE1_RGB_EXT = 0x8581; - public static final int GL_SOURCE2_ALPHA_EXT = 0x858A; - public static final int GL_SOURCE2_RGB_EXT = 0x8582; - public static final int GL_SOURCE3_ALPHA_NV = 0x858B; - public static final int GL_SOURCE3_RGB_NV = 0x8583; - public static final int GL_SPARE0_NV = 0x852E; - public static final int GL_SPARE0_PLUS_SECONDARY_COLOR_NV = 0x8532; - public static final int GL_SPARE1_NV = 0x852F; - public static final int GL_SPIR_V_EXTENSIONS = 0x9553; - public static final int GL_SPRITE_AXIAL_SGIX = 0x814C; - public static final int GL_SPRITE_AXIS_SGIX = 0x814A; - public static final int GL_SPRITE_EYE_ALIGNED_SGIX = 0x814E; - public static final int GL_SPRITE_MODE_SGIX = 0x8149; - public static final int GL_SPRITE_OBJECT_ALIGNED_SGIX = 0x814D; - public static final int GL_SPRITE_SGIX = 0x8148; - public static final int GL_SPRITE_TRANSLATION_SGIX = 0x814B; - public static final int GL_SQUARE_NV = 0x90A3; - public static final int GL_SR8_EXT = 0x8FBD; - public static final int GL_SRC_ATOP_NV = 0x928E; - public static final int GL_SRC_IN_NV = 0x928A; - public static final int GL_SRC_NV = 0x9286; - public static final int GL_SRC_OUT_NV = 0x928C; - public static final int GL_SRC_OVER_NV = 0x9288; - public static final int GL_SRG8_EXT = 0x8FBE; - public static final int GL_SRGB8_ALPHA8_EXT = 0x8C43; - public static final int GL_SRGB8_EXT = 0x8C41; - public static final int GL_SRGB_ALPHA_EXT = 0x8C42; - public static final int GL_SRGB_EXT = 0x8C40; - public static final int GL_STANDARD_FONT_FORMAT_NV = 0x936C; - public static final int GL_STANDARD_FONT_NAME_NV = 0x9072; - public static final int GL_STATIC_ATI = 0x8760; - public static final int GL_STATIC_VERTEX_ARRAY_IBM = 103061; - public static final int GL_STENCIL_ATTACHMENT_EXT = 0x8D20; - public static final int GL_STENCIL_BACK_FAIL_ATI = 0x8801; - public static final int GL_STENCIL_BACK_FUNC_ATI = 0x8800; - public static final int GL_STENCIL_BACK_OP_VALUE_AMD = 0x874D; - public static final int GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI = 0x8802; - public static final int GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI = 0x8803; - public static final int GL_STENCIL_CLEAR_TAG_VALUE_EXT = 0x88F3; - public static final int GL_STENCIL_INDEX16_EXT = 0x8D49; - public static final int GL_STENCIL_INDEX1_EXT = 0x8D46; - public static final int GL_STENCIL_INDEX4_EXT = 0x8D47; - public static final int GL_STENCIL_INDEX8_EXT = 0x8D48; - public static final int GL_STENCIL_OP_VALUE_AMD = 0x874C; - public static final int GL_STENCIL_REF_COMMAND_NV = 0x000C; - public static final int GL_STENCIL_SAMPLES_NV = 0x932E; - public static final int GL_STENCIL_TAG_BITS_EXT = 0x88F2; - public static final int GL_STENCIL_TEST_TWO_SIDE_EXT = 0x8910; - public static final int GL_STORAGE_CACHED_APPLE = 0x85BE; - public static final int GL_STORAGE_CLIENT_APPLE = 0x85B4; - public static final int GL_STORAGE_PRIVATE_APPLE = 0x85BD; - public static final int GL_STORAGE_SHARED_APPLE = 0x85BF; - public static final int GL_STREAM_RASTERIZATION_AMD = 0x91A0; - public static final int GL_STRICT_DEPTHFUNC_HINT_PGI = 0x1A216; - public static final int GL_STRICT_LIGHTING_HINT_PGI = 0x1A217; - public static final int GL_STRICT_SCISSOR_HINT_PGI = 0x1A218; - public static final int GL_SUBGROUP_FEATURE_PARTITIONED_BIT_NV = 0x00000100; - public static final int GL_SUBPIXEL_PRECISION_BIAS_X_BITS_NV = 0x9347; - public static final int GL_SUBPIXEL_PRECISION_BIAS_Y_BITS_NV = 0x9348; - public static final int GL_SUBSAMPLE_DISTANCE_AMD = 0x883F; - public static final int GL_SUB_ATI = 0x8965; - public static final int GL_SUCCESS_NV = 0x902F; - public static final int GL_SUPERSAMPLE_SCALE_X_NV = 0x9372; - public static final int GL_SUPERSAMPLE_SCALE_Y_NV = 0x9373; - public static final int GL_SUPPORTED_MULTISAMPLE_MODES_AMD = 0x91B7; - public static final int GL_SURFACE_MAPPED_NV = 0x8700; - public static final int GL_SURFACE_REGISTERED_NV = 0x86FD; - public static final int GL_SURFACE_STATE_NV = 0x86EB; - public static final int GL_SWIZZLE_STQ_ATI = 0x8977; - public static final int GL_SWIZZLE_STQ_DQ_ATI = 0x8979; - public static final int GL_SWIZZLE_STRQ_ATI = 0x897A; - public static final int GL_SWIZZLE_STRQ_DQ_ATI = 0x897B; - public static final int GL_SWIZZLE_STR_ATI = 0x8976; - public static final int GL_SWIZZLE_STR_DR_ATI = 0x8978; - public static final int GL_SYNC_X11_FENCE_EXT = 0x90E1; - public static final int GL_SYSTEM_FONT_NAME_NV = 0x9073; - public static final int GL_T2F_IUI_N3F_V2F_EXT = 0x81B3; - public static final int GL_T2F_IUI_N3F_V3F_EXT = 0x81B4; - public static final int GL_T2F_IUI_V2F_EXT = 0x81B1; - public static final int GL_T2F_IUI_V3F_EXT = 0x81B2; - public static final int GL_TABLE_TOO_LARGE_EXT = 0x8031; - public static final int GL_TANGENT_ARRAY_EXT = 0x8439; - public static final int GL_TANGENT_ARRAY_POINTER_EXT = 0x8442; - public static final int GL_TANGENT_ARRAY_STRIDE_EXT = 0x843F; - public static final int GL_TANGENT_ARRAY_TYPE_EXT = 0x843E; - public static final int GL_TASK_SHADER_BIT_NV = 0x00000080; - public static final int GL_TASK_SHADER_NV = 0x955A; - public static final int GL_TASK_SUBROUTINE_NV = 0x957D; - public static final int GL_TASK_SUBROUTINE_UNIFORM_NV = 0x957F; - public static final int GL_TASK_WORK_GROUP_SIZE_NV = 0x953F; - public static final int GL_TERMINATE_SEQUENCE_COMMAND_NV = 0x0000; - public static final int GL_TESSELLATION_FACTOR_AMD = 0x9005; - public static final int GL_TESSELLATION_MODE_AMD = 0x9004; - public static final int GL_TESS_CONTROL_PROGRAM_NV = 0x891E; - public static final int GL_TESS_CONTROL_PROGRAM_PARAMETER_BUFFER_NV = 0x8C74; - public static final int GL_TESS_EVALUATION_PROGRAM_NV = 0x891F; - public static final int GL_TESS_EVALUATION_PROGRAM_PARAMETER_BUFFER_NV = 0x8C75; - public static final int GL_TEXCOORD1_BIT_PGI = 0x10000000; - public static final int GL_TEXCOORD2_BIT_PGI = 0x20000000; - public static final int GL_TEXCOORD3_BIT_PGI = 0x40000000; - public static final int GL_TEXCOORD4_BIT_PGI = 0x80000000; - public static final int GL_TEXTURE_1D_ARRAY_EXT = 0x8C18; - public static final int GL_TEXTURE_1D_BINDING_EXT = 0x8068; - public static final int GL_TEXTURE_1D_STACK_BINDING_MESAX = 0x875D; - public static final int GL_TEXTURE_1D_STACK_MESAX = 0x8759; - public static final int GL_TEXTURE_2D_ARRAY_EXT = 0x8C1A; - public static final int GL_TEXTURE_2D_BINDING_EXT = 0x8069; - public static final int GL_TEXTURE_2D_STACK_BINDING_MESAX = 0x875E; - public static final int GL_TEXTURE_2D_STACK_MESAX = 0x875A; - public static final int GL_TEXTURE_3D_BINDING_EXT = 0x806A; - public static final int GL_TEXTURE_3D_EXT = 0x806F; - public static final int GL_TEXTURE_4DSIZE_SGIS = 0x8136; - public static final int GL_TEXTURE_4D_BINDING_SGIS = 0x814F; - public static final int GL_TEXTURE_4D_SGIS = 0x8134; - public static final int GL_TEXTURE_ALPHA_SIZE_EXT = 0x805F; - public static final int GL_TEXTURE_APPLICATION_MODE_EXT = 0x834F; - public static final int GL_TEXTURE_BASE_LEVEL_SGIS = 0x813C; - public static final int GL_TEXTURE_BINDING_1D_ARRAY_EXT = 0x8C1C; - public static final int GL_TEXTURE_BINDING_2D_ARRAY_EXT = 0x8C1D; - public static final int GL_TEXTURE_BINDING_BUFFER_EXT = 0x8C2C; - public static final int GL_TEXTURE_BINDING_CUBE_MAP_EXT = 0x8514; - public static final int GL_TEXTURE_BINDING_RECTANGLE_NV = 0x84F6; - public static final int GL_TEXTURE_BINDING_RENDERBUFFER_NV = 0x8E53; - public static final int GL_TEXTURE_BLUE_SIZE_EXT = 0x805E; - public static final int GL_TEXTURE_BORDER_VALUES_NV = 0x871A; - public static final int GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT = 0x8C2D; - public static final int GL_TEXTURE_BUFFER_EXT = 0x8C2A; - public static final int GL_TEXTURE_BUFFER_FORMAT_EXT = 0x8C2E; - public static final int GL_TEXTURE_CLIPMAP_CENTER_SGIX = 0x8171; - public static final int GL_TEXTURE_CLIPMAP_DEPTH_SGIX = 0x8176; - public static final int GL_TEXTURE_CLIPMAP_FRAME_SGIX = 0x8172; - public static final int GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX = 0x8175; - public static final int GL_TEXTURE_CLIPMAP_OFFSET_SGIX = 0x8173; - public static final int GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX = 0x8174; - public static final int GL_TEXTURE_COLOR_SAMPLES_NV = 0x9046; - public static final int GL_TEXTURE_COLOR_TABLE_SGI = 0x80BC; - public static final int GL_TEXTURE_COLOR_WRITEMASK_SGIS = 0x81EF; - public static final int GL_TEXTURE_COMPARE_OPERATOR_SGIX = 0x819B; - public static final int GL_TEXTURE_COMPARE_SGIX = 0x819A; - public static final int GL_TEXTURE_CONSTANT_DATA_SUNX = 0x81D6; - public static final int GL_TEXTURE_COORD_ARRAY_ADDRESS_NV = 0x8F25; - public static final int GL_TEXTURE_COORD_ARRAY_COUNT_EXT = 0x808B; - public static final int GL_TEXTURE_COORD_ARRAY_EXT = 0x8078; - public static final int GL_TEXTURE_COORD_ARRAY_LENGTH_NV = 0x8F2F; - public static final int GL_TEXTURE_COORD_ARRAY_LIST_IBM = 103074; - public static final int GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM = 103084; - public static final int GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F8; - public static final int GL_TEXTURE_COORD_ARRAY_POINTER_EXT = 0x8092; - public static final int GL_TEXTURE_COORD_ARRAY_SIZE_EXT = 0x8088; - public static final int GL_TEXTURE_COORD_ARRAY_STRIDE_EXT = 0x808A; - public static final int GL_TEXTURE_COORD_ARRAY_TYPE_EXT = 0x8089; - public static final int GL_TEXTURE_COORD_NV = 0x8C79; - public static final int GL_TEXTURE_COVERAGE_SAMPLES_NV = 0x9045; - public static final int GL_TEXTURE_CUBE_MAP_EXT = 0x8513; - public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT = 0x8516; - public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT = 0x8518; - public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT = 0x851A; - public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT = 0x8515; - public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT = 0x8517; - public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT = 0x8519; - public static final int GL_TEXTURE_DEFORMATION_BIT_SGIX = 0x00000001; - public static final int GL_TEXTURE_DEFORMATION_SGIX = 0x8195; - public static final int GL_TEXTURE_DEPTH_EXT = 0x8071; - public static final int GL_TEXTURE_DEPTH_SIZE_ARB = 0x884A; - public static final int GL_TEXTURE_DS_SIZE_NV = 0x871D; - public static final int GL_TEXTURE_DT_SIZE_NV = 0x871E; - public static final int GL_TEXTURE_ENV_BIAS_SGIX = 0x80BE; - public static final int GL_TEXTURE_FETCH_BARRIER_BIT_EXT = 0x00000008; - public static final int GL_TEXTURE_FILTER4_SIZE_SGIS = 0x8147; - public static final int GL_TEXTURE_FILTER_CONTROL_EXT = 0x8500; - public static final int GL_TEXTURE_FLOAT_COMPONENTS_NV = 0x888C; - public static final int GL_TEXTURE_FREE_MEMORY_ATI = 0x87FC; - public static final int GL_TEXTURE_GEQUAL_R_SGIX = 0x819D; - public static final int GL_TEXTURE_GREEN_SIZE_EXT = 0x805D; - public static final int GL_TEXTURE_HI_SIZE_NV = 0x871B; - public static final int GL_TEXTURE_IMMUTABLE_FORMAT_EXT = 0x912F; - public static final int GL_TEXTURE_INDEX_SIZE_EXT = 0x80ED; - public static final int GL_TEXTURE_INTENSITY_SIZE_EXT = 0x8061; - public static final int GL_TEXTURE_LEQUAL_R_SGIX = 0x819C; - public static final int GL_TEXTURE_LIGHTING_MODE_HP = 0x8167; - public static final int GL_TEXTURE_LIGHT_EXT = 0x8350; - public static final int GL_TEXTURE_LOD_BIAS_EXT = 0x8501; - public static final int GL_TEXTURE_LOD_BIAS_R_SGIX = 0x8190; - public static final int GL_TEXTURE_LOD_BIAS_S_SGIX = 0x818E; - public static final int GL_TEXTURE_LOD_BIAS_T_SGIX = 0x818F; - public static final int GL_TEXTURE_LO_SIZE_NV = 0x871C; - public static final int GL_TEXTURE_LUMINANCE_SIZE_EXT = 0x8060; - public static final int GL_TEXTURE_MAG_SIZE_NV = 0x871F; - public static final int GL_TEXTURE_MATERIAL_FACE_EXT = 0x8351; - public static final int GL_TEXTURE_MATERIAL_PARAMETER_EXT = 0x8352; - public static final int GL_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FE; - public static final int GL_TEXTURE_MAX_CLAMP_R_SGIX = 0x836B; - public static final int GL_TEXTURE_MAX_CLAMP_S_SGIX = 0x8369; - public static final int GL_TEXTURE_MAX_CLAMP_T_SGIX = 0x836A; - public static final int GL_TEXTURE_MAX_LEVEL_SGIS = 0x813D; - public static final int GL_TEXTURE_MAX_LOD_SGIS = 0x813B; - public static final int GL_TEXTURE_MEMORY_LAYOUT_INTEL = 0x83FF; - public static final int GL_TEXTURE_MIN_LOD_SGIS = 0x813A; - public static final int GL_TEXTURE_MULTI_BUFFER_HINT_SGIX = 0x812E; - public static final int GL_TEXTURE_NORMAL_EXT = 0x85AF; - public static final int GL_TEXTURE_POST_SPECULAR_HP = 0x8168; - public static final int GL_TEXTURE_PRE_SPECULAR_HP = 0x8169; - public static final int GL_TEXTURE_PRIORITY_EXT = 0x8066; - public static final int GL_TEXTURE_RANGE_LENGTH_APPLE = 0x85B7; - public static final int GL_TEXTURE_RANGE_POINTER_APPLE = 0x85B8; - public static final int GL_TEXTURE_RECTANGLE_NV = 0x84F5; - public static final int GL_TEXTURE_REDUCTION_MODE_EXT = 0x9366; - public static final int GL_TEXTURE_RED_SIZE_EXT = 0x805C; - public static final int GL_TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV = 0x8E54; - public static final int GL_TEXTURE_RENDERBUFFER_NV = 0x8E55; - public static final int GL_TEXTURE_RESIDENT_EXT = 0x8067; - public static final int GL_TEXTURE_SHADER_NV = 0x86DE; - public static final int GL_TEXTURE_SHARED_SIZE_EXT = 0x8C3F; - public static final int GL_TEXTURE_SRGB_DECODE_EXT = 0x8A48; - public static final int GL_TEXTURE_STENCIL_SIZE_EXT = 0x88F1; - public static final int GL_TEXTURE_STORAGE_HINT_APPLE = 0x85BC; - public static final int GL_TEXTURE_STORAGE_SPARSE_BIT_AMD = 0x00000001; - public static final int GL_TEXTURE_SWIZZLE_A_EXT = 0x8E45; - public static final int GL_TEXTURE_SWIZZLE_B_EXT = 0x8E44; - public static final int GL_TEXTURE_SWIZZLE_G_EXT = 0x8E43; - public static final int GL_TEXTURE_SWIZZLE_RGBA_EXT = 0x8E46; - public static final int GL_TEXTURE_SWIZZLE_R_EXT = 0x8E42; - public static final int GL_TEXTURE_TILING_EXT = 0x9580; - public static final int GL_TEXTURE_TOO_LARGE_EXT = 0x8065; - public static final int GL_TEXTURE_UNSIGNED_REMAP_MODE_NV = 0x888F; - public static final int GL_TEXTURE_UPDATE_BARRIER_BIT_EXT = 0x00000100; - public static final int GL_TEXTURE_WRAP_Q_SGIS = 0x8137; - public static final int GL_TEXTURE_WRAP_R_EXT = 0x8072; - public static final int GL_TEXT_FRAGMENT_SHADER_ATI = 0x8200; - public static final int GL_TILE_RASTER_ORDER_FIXED_MESA = 0x8BB8; - public static final int GL_TILE_RASTER_ORDER_INCREASING_X_MESA = 0x8BB9; - public static final int GL_TILE_RASTER_ORDER_INCREASING_Y_MESA = 0x8BBA; - public static final int GL_TILING_TYPES_EXT = 0x9583; - public static final int GL_TIMELINE_SEMAPHORE_VALUE_NV = 0x9595; - public static final int GL_TIME_ELAPSED_EXT = 0x88BF; - public static final int GL_TRACK_MATRIX_NV = 0x8648; - public static final int GL_TRACK_MATRIX_TRANSFORM_NV = 0x8649; - public static final int GL_TRANSFORM_FEEDBACK_ATTRIBS_NV = 0x8C7E; - public static final int GL_TRANSFORM_FEEDBACK_BARRIER_BIT_EXT = 0x00000800; - public static final int GL_TRANSFORM_FEEDBACK_BINDING_NV = 0x8E25; - public static final int GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE_NV = 0x8E24; - public static final int GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT = 0x8C8F; - public static final int GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV = 0x8C8F; - public static final int GL_TRANSFORM_FEEDBACK_BUFFER_EXT = 0x8C8E; - public static final int GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT = 0x8C7F; - public static final int GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV = 0x8C7F; - public static final int GL_TRANSFORM_FEEDBACK_BUFFER_NV = 0x8C8E; - public static final int GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED_NV = 0x8E23; - public static final int GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT = 0x8C85; - public static final int GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_NV = 0x8C85; - public static final int GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT = 0x8C84; - public static final int GL_TRANSFORM_FEEDBACK_BUFFER_START_NV = 0x8C84; - public static final int GL_TRANSFORM_FEEDBACK_NV = 0x8E22; - public static final int GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT = 0x8C88; - public static final int GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV = 0x8C88; - public static final int GL_TRANSFORM_FEEDBACK_RECORD_NV = 0x8C86; - public static final int GL_TRANSFORM_FEEDBACK_VARYINGS_EXT = 0x8C83; - public static final int GL_TRANSFORM_FEEDBACK_VARYINGS_NV = 0x8C83; - public static final int GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT = 0x8C76; - public static final int GL_TRANSFORM_HINT_APPLE = 0x85B1; - public static final int GL_TRANSLATE_2D_NV = 0x9090; - public static final int GL_TRANSLATE_3D_NV = 0x9091; - public static final int GL_TRANSLATE_X_NV = 0x908E; - public static final int GL_TRANSLATE_Y_NV = 0x908F; - public static final int GL_TRANSPOSE_AFFINE_2D_NV = 0x9096; - public static final int GL_TRANSPOSE_AFFINE_3D_NV = 0x9098; - public static final int GL_TRANSPOSE_CURRENT_MATRIX_ARB = 0x88B7; - public static final int GL_TRANSPOSE_NV = 0x862C; - public static final int GL_TRANSPOSE_PROGRAM_MATRIX_EXT = 0x8E2E; - public static final int GL_TRIANGLES_ADJACENCY_EXT = 0x000C; - public static final int GL_TRIANGLE_LIST_SUN = 0x81D7; - public static final int GL_TRIANGLE_MESH_SUN = 0x8615; - public static final int GL_TRIANGLE_STRIP_ADJACENCY_EXT = 0x000D; - public static final int GL_TRIANGULAR_NV = 0x90A5; - public static final int GL_UNCORRELATED_NV = 0x9282; - public static final int GL_UNDEFINED_APPLE = 0x8A1C; - public static final int GL_UNIFORM_ADDRESS_COMMAND_NV = 0x000A; - public static final int GL_UNIFORM_BARRIER_BIT_EXT = 0x00000004; - public static final int GL_UNIFORM_BLOCK_REFERENCED_BY_MESH_SHADER_NV = 0x959C; - public static final int GL_UNIFORM_BLOCK_REFERENCED_BY_TASK_SHADER_NV = 0x959D; - public static final int GL_UNIFORM_BUFFER_ADDRESS_NV = 0x936F; - public static final int GL_UNIFORM_BUFFER_BINDING_EXT = 0x8DEF; - public static final int GL_UNIFORM_BUFFER_EXT = 0x8DEE; - public static final int GL_UNIFORM_BUFFER_LENGTH_NV = 0x9370; - public static final int GL_UNIFORM_BUFFER_UNIFIED_NV = 0x936E; - public static final int GL_UNPACK_CLIENT_STORAGE_APPLE = 0x85B2; - public static final int GL_UNPACK_CMYK_HINT_EXT = 0x800F; - public static final int GL_UNPACK_CONSTANT_DATA_SUNX = 0x81D5; - public static final int GL_UNPACK_IMAGE_DEPTH_SGIS = 0x8133; - public static final int GL_UNPACK_IMAGE_HEIGHT_EXT = 0x806E; - public static final int GL_UNPACK_RESAMPLE_OML = 0x8985; - public static final int GL_UNPACK_RESAMPLE_SGIX = 0x842F; - public static final int GL_UNPACK_ROW_BYTES_APPLE = 0x8A16; - public static final int GL_UNPACK_SKIP_IMAGES_EXT = 0x806D; - public static final int GL_UNPACK_SKIP_VOLUMES_SGIS = 0x8132; - public static final int GL_UNPACK_SUBSAMPLE_RATE_SGIX = 0x85A1; - public static final int GL_UNSIGNED_BYTE_3_3_2_EXT = 0x8032; - public static final int GL_UNSIGNED_IDENTITY_NV = 0x8536; - public static final int GL_UNSIGNED_INT16_NV = 0x8FF0; - public static final int GL_UNSIGNED_INT16_VEC2_NV = 0x8FF1; - public static final int GL_UNSIGNED_INT16_VEC3_NV = 0x8FF2; - public static final int GL_UNSIGNED_INT16_VEC4_NV = 0x8FF3; - public static final int GL_UNSIGNED_INT64_AMD = 0x8BC2; - public static final int GL_UNSIGNED_INT64_NV = 0x140F; - public static final int GL_UNSIGNED_INT64_VEC2_NV = 0x8FF5; - public static final int GL_UNSIGNED_INT64_VEC3_NV = 0x8FF6; - public static final int GL_UNSIGNED_INT64_VEC4_NV = 0x8FF7; - public static final int GL_UNSIGNED_INT8_NV = 0x8FEC; - public static final int GL_UNSIGNED_INT8_VEC2_NV = 0x8FED; - public static final int GL_UNSIGNED_INT8_VEC3_NV = 0x8FEE; - public static final int GL_UNSIGNED_INT8_VEC4_NV = 0x8FEF; - public static final int GL_UNSIGNED_INT_10F_11F_11F_REV_EXT = 0x8C3B; - public static final int GL_UNSIGNED_INT_10_10_10_2_EXT = 0x8036; - public static final int GL_UNSIGNED_INT_24_8_EXT = 0x84FA; - public static final int GL_UNSIGNED_INT_24_8_NV = 0x84FA; - public static final int GL_UNSIGNED_INT_5_9_9_9_REV_EXT = 0x8C3E; - public static final int GL_UNSIGNED_INT_8_8_8_8_EXT = 0x8035; - public static final int GL_UNSIGNED_INT_8_8_S8_S8_REV_NV = 0x86DB; - public static final int GL_UNSIGNED_INT_IMAGE_1D_ARRAY_EXT = 0x9068; - public static final int GL_UNSIGNED_INT_IMAGE_1D_EXT = 0x9062; - public static final int GL_UNSIGNED_INT_IMAGE_2D_ARRAY_EXT = 0x9069; - public static final int GL_UNSIGNED_INT_IMAGE_2D_EXT = 0x9063; - public static final int GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = 0x906C; - public static final int GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_EXT = 0x906B; - public static final int GL_UNSIGNED_INT_IMAGE_2D_RECT_EXT = 0x9065; - public static final int GL_UNSIGNED_INT_IMAGE_3D_EXT = 0x9064; - public static final int GL_UNSIGNED_INT_IMAGE_BUFFER_EXT = 0x9067; - public static final int GL_UNSIGNED_INT_IMAGE_CUBE_EXT = 0x9066; - public static final int GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT = 0x906A; - public static final int GL_UNSIGNED_INT_S8_S8_8_8_NV = 0x86DA; - public static final int GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT = 0x8DD6; - public static final int GL_UNSIGNED_INT_SAMPLER_1D_EXT = 0x8DD1; - public static final int GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT = 0x8DD7; - public static final int GL_UNSIGNED_INT_SAMPLER_2D_EXT = 0x8DD2; - public static final int GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT = 0x8DD5; - public static final int GL_UNSIGNED_INT_SAMPLER_3D_EXT = 0x8DD3; - public static final int GL_UNSIGNED_INT_SAMPLER_BUFFER_AMD = 0x9003; - public static final int GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT = 0x8DD8; - public static final int GL_UNSIGNED_INT_SAMPLER_CUBE_EXT = 0x8DD4; - public static final int GL_UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV = 0x8E58; - public static final int GL_UNSIGNED_INT_VEC2_EXT = 0x8DC6; - public static final int GL_UNSIGNED_INT_VEC3_EXT = 0x8DC7; - public static final int GL_UNSIGNED_INT_VEC4_EXT = 0x8DC8; - public static final int GL_UNSIGNED_INVERT_NV = 0x8537; - public static final int GL_UNSIGNED_SHORT_4_4_4_4_EXT = 0x8033; - public static final int GL_UNSIGNED_SHORT_5_5_5_1_EXT = 0x8034; - public static final int GL_UNSIGNED_SHORT_8_8_APPLE = 0x85BA; - public static final int GL_UNSIGNED_SHORT_8_8_MESA = 0x85BA; - public static final int GL_UNSIGNED_SHORT_8_8_REV_APPLE = 0x85BB; - public static final int GL_UNSIGNED_SHORT_8_8_REV_MESA = 0x85BB; - public static final int GL_UPLOAD_GPU_MASK_NVX = 0x954A; - public static final int GL_USE_MISSING_GLYPH_NV = 0x90AA; - public static final int GL_UTF16_NV = 0x909B; - public static final int GL_UTF8_NV = 0x909A; - public static final int GL_UUID_SIZE_EXT = 16; - public static final int GL_VARIABLE_A_NV = 0x8523; - public static final int GL_VARIABLE_B_NV = 0x8524; - public static final int GL_VARIABLE_C_NV = 0x8525; - public static final int GL_VARIABLE_D_NV = 0x8526; - public static final int GL_VARIABLE_E_NV = 0x8527; - public static final int GL_VARIABLE_F_NV = 0x8528; - public static final int GL_VARIABLE_G_NV = 0x8529; - public static final int GL_VARIANT_ARRAY_EXT = 0x87E8; - public static final int GL_VARIANT_ARRAY_POINTER_EXT = 0x87E9; - public static final int GL_VARIANT_ARRAY_STRIDE_EXT = 0x87E6; - public static final int GL_VARIANT_ARRAY_TYPE_EXT = 0x87E7; - public static final int GL_VARIANT_DATATYPE_EXT = 0x87E5; - public static final int GL_VARIANT_EXT = 0x87C1; - public static final int GL_VARIANT_VALUE_EXT = 0x87E4; - public static final int GL_VBO_FREE_MEMORY_ATI = 0x87FB; - public static final int GL_VECTOR_EXT = 0x87BF; - public static final int GL_VERTEX23_BIT_PGI = 0x00000004; - public static final int GL_VERTEX4_BIT_PGI = 0x00000008; - public static final int GL_VERTEX_ARRAY_ADDRESS_NV = 0x8F21; - public static final int GL_VERTEX_ARRAY_BINDING_APPLE = 0x85B5; - public static final int GL_VERTEX_ARRAY_COUNT_EXT = 0x807D; - public static final int GL_VERTEX_ARRAY_EXT = 0x8074; - public static final int GL_VERTEX_ARRAY_LENGTH_NV = 0x8F2B; - public static final int GL_VERTEX_ARRAY_LIST_IBM = 103070; - public static final int GL_VERTEX_ARRAY_LIST_STRIDE_IBM = 103080; - public static final int GL_VERTEX_ARRAY_OBJECT_AMD = 0x9154; - public static final int GL_VERTEX_ARRAY_OBJECT_EXT = 0x9154; - public static final int GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F5; - public static final int GL_VERTEX_ARRAY_POINTER_EXT = 0x808E; - public static final int GL_VERTEX_ARRAY_RANGE_APPLE = 0x851D; - public static final int GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE = 0x851E; - public static final int GL_VERTEX_ARRAY_RANGE_LENGTH_NV = 0x851E; - public static final int GL_VERTEX_ARRAY_RANGE_NV = 0x851D; - public static final int GL_VERTEX_ARRAY_RANGE_POINTER_APPLE = 0x8521; - public static final int GL_VERTEX_ARRAY_RANGE_POINTER_NV = 0x8521; - public static final int GL_VERTEX_ARRAY_RANGE_VALID_NV = 0x851F; - public static final int GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV = 0x8533; - public static final int GL_VERTEX_ARRAY_SIZE_EXT = 0x807A; - public static final int GL_VERTEX_ARRAY_STORAGE_HINT_APPLE = 0x851F; - public static final int GL_VERTEX_ARRAY_STRIDE_EXT = 0x807C; - public static final int GL_VERTEX_ARRAY_TYPE_EXT = 0x807B; - public static final int GL_VERTEX_ATTRIB_ARRAY0_NV = 0x8650; - public static final int GL_VERTEX_ATTRIB_ARRAY10_NV = 0x865A; - public static final int GL_VERTEX_ATTRIB_ARRAY11_NV = 0x865B; - public static final int GL_VERTEX_ATTRIB_ARRAY12_NV = 0x865C; - public static final int GL_VERTEX_ATTRIB_ARRAY13_NV = 0x865D; - public static final int GL_VERTEX_ATTRIB_ARRAY14_NV = 0x865E; - public static final int GL_VERTEX_ATTRIB_ARRAY15_NV = 0x865F; - public static final int GL_VERTEX_ATTRIB_ARRAY1_NV = 0x8651; - public static final int GL_VERTEX_ATTRIB_ARRAY2_NV = 0x8652; - public static final int GL_VERTEX_ATTRIB_ARRAY3_NV = 0x8653; - public static final int GL_VERTEX_ATTRIB_ARRAY4_NV = 0x8654; - public static final int GL_VERTEX_ATTRIB_ARRAY5_NV = 0x8655; - public static final int GL_VERTEX_ATTRIB_ARRAY6_NV = 0x8656; - public static final int GL_VERTEX_ATTRIB_ARRAY7_NV = 0x8657; - public static final int GL_VERTEX_ATTRIB_ARRAY8_NV = 0x8658; - public static final int GL_VERTEX_ATTRIB_ARRAY9_NV = 0x8659; - public static final int GL_VERTEX_ATTRIB_ARRAY_ADDRESS_NV = 0x8F20; - public static final int GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT = 0x00000001; - public static final int GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT = 0x88FD; - public static final int GL_VERTEX_ATTRIB_ARRAY_INTEGER_NV = 0x88FD; - public static final int GL_VERTEX_ATTRIB_ARRAY_LENGTH_NV = 0x8F2A; - public static final int GL_VERTEX_ATTRIB_ARRAY_UNIFIED_NV = 0x8F1E; - public static final int GL_VERTEX_ATTRIB_MAP1_APPLE = 0x8A00; - public static final int GL_VERTEX_ATTRIB_MAP1_COEFF_APPLE = 0x8A03; - public static final int GL_VERTEX_ATTRIB_MAP1_DOMAIN_APPLE = 0x8A05; - public static final int GL_VERTEX_ATTRIB_MAP1_ORDER_APPLE = 0x8A04; - public static final int GL_VERTEX_ATTRIB_MAP1_SIZE_APPLE = 0x8A02; - public static final int GL_VERTEX_ATTRIB_MAP2_APPLE = 0x8A01; - public static final int GL_VERTEX_ATTRIB_MAP2_COEFF_APPLE = 0x8A07; - public static final int GL_VERTEX_ATTRIB_MAP2_DOMAIN_APPLE = 0x8A09; - public static final int GL_VERTEX_ATTRIB_MAP2_ORDER_APPLE = 0x8A08; - public static final int GL_VERTEX_ATTRIB_MAP2_SIZE_APPLE = 0x8A06; - public static final int GL_VERTEX_CONSISTENT_HINT_PGI = 0x1A22B; - public static final int GL_VERTEX_DATA_HINT_PGI = 0x1A22A; - public static final int GL_VERTEX_ELEMENT_SWIZZLE_AMD = 0x91A4; - public static final int GL_VERTEX_ID_NV = 0x8C7B; - public static final int GL_VERTEX_ID_SWIZZLE_AMD = 0x91A5; - public static final int GL_VERTEX_PRECLIP_HINT_SGIX = 0x83EF; - public static final int GL_VERTEX_PRECLIP_SGIX = 0x83EE; - public static final int GL_VERTEX_PROGRAM_BINDING_NV = 0x864A; - public static final int GL_VERTEX_PROGRAM_NV = 0x8620; - public static final int GL_VERTEX_PROGRAM_PARAMETER_BUFFER_NV = 0x8DA2; - public static final int GL_VERTEX_PROGRAM_POINT_SIZE_NV = 0x8642; - public static final int GL_VERTEX_PROGRAM_TWO_SIDE_NV = 0x8643; - public static final int GL_VERTEX_SHADER_BINDING_EXT = 0x8781; - public static final int GL_VERTEX_SHADER_EXT = 0x8780; - public static final int GL_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87CF; - public static final int GL_VERTEX_SHADER_INVARIANTS_EXT = 0x87D1; - public static final int GL_VERTEX_SHADER_LOCALS_EXT = 0x87D3; - public static final int GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87D2; - public static final int GL_VERTEX_SHADER_OPTIMIZED_EXT = 0x87D4; - public static final int GL_VERTEX_SHADER_VARIANTS_EXT = 0x87D0; - public static final int GL_VERTEX_SOURCE_ATI = 0x8774; - public static final int GL_VERTEX_STATE_PROGRAM_NV = 0x8621; - public static final int GL_VERTEX_STREAM0_ATI = 0x876C; - public static final int GL_VERTEX_STREAM1_ATI = 0x876D; - public static final int GL_VERTEX_STREAM2_ATI = 0x876E; - public static final int GL_VERTEX_STREAM3_ATI = 0x876F; - public static final int GL_VERTEX_STREAM4_ATI = 0x8770; - public static final int GL_VERTEX_STREAM5_ATI = 0x8771; - public static final int GL_VERTEX_STREAM6_ATI = 0x8772; - public static final int GL_VERTEX_STREAM7_ATI = 0x8773; - public static final int GL_VERTEX_WEIGHTING_EXT = 0x8509; - public static final int GL_VERTEX_WEIGHT_ARRAY_EXT = 0x850C; - public static final int GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT = 0x8510; - public static final int GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT = 0x850D; - public static final int GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT = 0x850F; - public static final int GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT = 0x850E; - public static final int GL_VERTICAL_LINE_TO_NV = 0x08; - public static final int GL_VIBRANCE_BIAS_NV = 0x8719; - public static final int GL_VIBRANCE_SCALE_NV = 0x8713; - public static final int GL_VIDEO_BUFFER_BINDING_NV = 0x9021; - public static final int GL_VIDEO_BUFFER_INTERNAL_FORMAT_NV = 0x902D; - public static final int GL_VIDEO_BUFFER_NV = 0x9020; - public static final int GL_VIDEO_BUFFER_PITCH_NV = 0x9028; - public static final int GL_VIDEO_CAPTURE_FIELD_LOWER_HEIGHT_NV = 0x903B; - public static final int GL_VIDEO_CAPTURE_FIELD_UPPER_HEIGHT_NV = 0x903A; - public static final int GL_VIDEO_CAPTURE_FRAME_HEIGHT_NV = 0x9039; - public static final int GL_VIDEO_CAPTURE_FRAME_WIDTH_NV = 0x9038; - public static final int GL_VIDEO_CAPTURE_SURFACE_ORIGIN_NV = 0x903C; - public static final int GL_VIDEO_CAPTURE_TO_422_SUPPORTED_NV = 0x9026; - public static final int GL_VIDEO_COLOR_CONVERSION_MATRIX_NV = 0x9029; - public static final int GL_VIDEO_COLOR_CONVERSION_MAX_NV = 0x902A; - public static final int GL_VIDEO_COLOR_CONVERSION_MIN_NV = 0x902B; - public static final int GL_VIDEO_COLOR_CONVERSION_OFFSET_NV = 0x902C; - public static final int GL_VIEWPORT_COMMAND_NV = 0x0010; - public static final int GL_VIEWPORT_POSITION_W_SCALE_NV = 0x937C; - public static final int GL_VIEWPORT_POSITION_W_SCALE_X_COEFF_NV = 0x937D; - public static final int GL_VIEWPORT_POSITION_W_SCALE_Y_COEFF_NV = 0x937E; - public static final int GL_VIEWPORT_SWIZZLE_NEGATIVE_W_NV = 0x9357; - public static final int GL_VIEWPORT_SWIZZLE_NEGATIVE_X_NV = 0x9351; - public static final int GL_VIEWPORT_SWIZZLE_NEGATIVE_Y_NV = 0x9353; - public static final int GL_VIEWPORT_SWIZZLE_NEGATIVE_Z_NV = 0x9355; - public static final int GL_VIEWPORT_SWIZZLE_POSITIVE_W_NV = 0x9356; - public static final int GL_VIEWPORT_SWIZZLE_POSITIVE_X_NV = 0x9350; - public static final int GL_VIEWPORT_SWIZZLE_POSITIVE_Y_NV = 0x9352; - public static final int GL_VIEWPORT_SWIZZLE_POSITIVE_Z_NV = 0x9354; - public static final int GL_VIEWPORT_SWIZZLE_W_NV = 0x935B; - public static final int GL_VIEWPORT_SWIZZLE_X_NV = 0x9358; - public static final int GL_VIEWPORT_SWIZZLE_Y_NV = 0x9359; - public static final int GL_VIEWPORT_SWIZZLE_Z_NV = 0x935A; - public static final int GL_VIRTUAL_PAGE_SIZE_X_AMD = 0x9195; - public static final int GL_VIRTUAL_PAGE_SIZE_Y_AMD = 0x9196; - public static final int GL_VIRTUAL_PAGE_SIZE_Z_AMD = 0x9197; - public static final int GL_VIVIDLIGHT_NV = 0x92A6; - public static final int GL_VOLATILE_APPLE = 0x8A1A; - public static final int GL_WARPS_PER_SM_NV = 0x933A; - public static final int GL_WARP_SIZE_NV = 0x9339; - public static final int GL_WEIGHTED_AVERAGE_EXT = 0x9367; - public static final int GL_WIDE_LINE_HINT_PGI = 0x1A222; - public static final int GL_WINDOW_RECTANGLE_EXT = 0x8F12; - public static final int GL_WINDOW_RECTANGLE_MODE_EXT = 0x8F13; - public static final int GL_WRAP_BORDER_SUN = 0x81D4; - public static final int GL_WRITE_DISCARD_NV = 0x88BE; - public static final int GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV = 0x887A; - public static final int GL_WRITE_PIXEL_DATA_RANGE_NV = 0x8878; - public static final int GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV = 0x887C; - public static final int GL_W_EXT = 0x87D8; - public static final int GL_XOR_NV = 0x1506; - public static final int GL_X_EXT = 0x87D5; - public static final int GL_YCBAYCR8A_4224_NV = 0x9032; - public static final int GL_YCBCR_422_APPLE = 0x85B9; - public static final int GL_YCBCR_MESA = 0x8757; - public static final int GL_YCBYCR8_422_NV = 0x9031; - public static final int GL_YCRCBA_SGIX = 0x8319; - public static final int GL_YCRCB_422_SGIX = 0x81BB; - public static final int GL_YCRCB_444_SGIX = 0x81BC; - public static final int GL_YCRCB_SGIX = 0x8318; - public static final int GL_Y_EXT = 0x87D6; - public static final int GL_Z4Y12Z4CB12Z4A12Z4Y12Z4CR12Z4A12_4224_NV = 0x9036; - public static final int GL_Z4Y12Z4CB12Z4CR12_444_NV = 0x9037; - public static final int GL_Z4Y12Z4CB12Z4Y12Z4CR12_422_NV = 0x9035; - public static final int GL_Z6Y10Z6CB10Z6A10Z6Y10Z6CR10Z6A10_4224_NV = 0x9034; - public static final int GL_Z6Y10Z6CB10Z6Y10Z6CR10_422_NV = 0x9033; - public static final int GL_ZERO_EXT = 0x87DD; - public static final int GL_Z_EXT = 0x87D7; -}