From 480615de7ac2c685e2bcf697ab652c8f98b6a0c1 Mon Sep 17 00:00:00 2001 From: Speiger Date: Sat, 6 Apr 2024 12:16:14 +0200 Subject: [PATCH] Finished mapping out texture variables (int only) --- gradle.properties | 2 +- .../textures/base/TextureMetadata.java | 107 +++++++++++++++++- .../utils/values/GLAlphaFunction.java | 25 ++++ .../rendering/utils/values/GLTextureType.java | 5 - .../rendering/utils/values/IGLValue.java | 6 + .../values/textures/GLTextureFormat.java | 28 +++++ .../values/textures/GLTextureParameter.java | 60 ++++++++++ .../utils/values/textures/GLTextureValue.java | 45 ++++++++ 8 files changed, 270 insertions(+), 8 deletions(-) create mode 100644 src/main/java/speiger/src/coreengine/rendering/utils/values/GLAlphaFunction.java delete mode 100644 src/main/java/speiger/src/coreengine/rendering/utils/values/GLTextureType.java create mode 100644 src/main/java/speiger/src/coreengine/rendering/utils/values/textures/GLTextureFormat.java create mode 100644 src/main/java/speiger/src/coreengine/rendering/utils/values/textures/GLTextureParameter.java create mode 100644 src/main/java/speiger/src/coreengine/rendering/utils/values/textures/GLTextureValue.java diff --git a/gradle.properties b/gradle.properties index 8c62257..bb2f0a5 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,4 @@ org.gradle.jvmargs=-Xmx2G -lwjglVersion = 3.3.2 +lwjglVersion = 3.3.3 lwjglNatives = natives-windows \ No newline at end of file diff --git a/src/main/java/speiger/src/coreengine/rendering/textures/base/TextureMetadata.java b/src/main/java/speiger/src/coreengine/rendering/textures/base/TextureMetadata.java index 2b19e75..bfdf51c 100644 --- a/src/main/java/speiger/src/coreengine/rendering/textures/base/TextureMetadata.java +++ b/src/main/java/speiger/src/coreengine/rendering/textures/base/TextureMetadata.java @@ -1,9 +1,112 @@ package speiger.src.coreengine.rendering.textures.base; +import org.lwjgl.opengl.GL45; + +import speiger.src.collections.longs.lists.LongArrayList; +import speiger.src.collections.longs.lists.LongList; +import speiger.src.coreengine.math.BitUtil; +import speiger.src.coreengine.rendering.utils.values.IGLValue; +import speiger.src.coreengine.rendering.utils.values.IGLValue.IGLDataType; +import speiger.src.coreengine.rendering.utils.values.IGLValue.ITextureFormatType; +import speiger.src.coreengine.rendering.utils.values.IGLValue.ITextureParameter; + public class TextureMetadata { - int textureType; + int internalFormat; + int externalFormat; int dataFormat; - int textureFormat; + LongList arguments = new LongArrayList(); + private TextureMetadata() {} + public void applyArguments(int texture) { + for(int i = 0,m=arguments.size();i