aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/at/hannibal2/skyhanni/utils/shader
diff options
context:
space:
mode:
authorJ10a1n15 <45315647+j10a1n15@users.noreply.github.com>2024-06-30 12:40:10 +0200
committerGitHub <noreply@github.com>2024-06-30 12:40:10 +0200
commit4a55a7d4d8c3551cc4cfa3bd82867579494e3c70 (patch)
tree420f2cca39de625307d5356f5a01635071c8b42a /src/main/java/at/hannibal2/skyhanni/utils/shader
parent2e93920ab64bacfc428cf8bf040a2b10b6d9f2f8 (diff)
downloadskyhanni-4a55a7d4d8c3551cc4cfa3bd82867579494e3c70.tar.gz
skyhanni-4a55a7d4d8c3551cc4cfa3bd82867579494e3c70.tar.bz2
skyhanni-4a55a7d4d8c3551cc4cfa3bd82867579494e3c70.zip
Backend: Enabling Shader with Enum (#2035)
Co-authored-by: hannibal2 <24389977+hannibal00212@users.noreply.github.com>
Diffstat (limited to 'src/main/java/at/hannibal2/skyhanni/utils/shader')
-rw-r--r--src/main/java/at/hannibal2/skyhanni/utils/shader/ShaderManager.kt37
1 files changed, 8 insertions, 29 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/utils/shader/ShaderManager.kt b/src/main/java/at/hannibal2/skyhanni/utils/shader/ShaderManager.kt
index b32e3fa26..057e0a031 100644
--- a/src/main/java/at/hannibal2/skyhanni/utils/shader/ShaderManager.kt
+++ b/src/main/java/at/hannibal2/skyhanni/utils/shader/ShaderManager.kt
@@ -31,40 +31,19 @@ object ShaderManager {
DARKEN(DarkenShader.INSTANCE)
;
- fun enableShader() = ShaderManager.enableShader(name.lowercase())
-
- companion object {
-
- fun getShaderInstance(shaderName: String): Shader? = when (shaderName) {
- "standard_chroma" -> STANDARD_CHROMA.shader
- "textured_chroma" -> TEXTURED_CHROMA.shader
- "rounded_rect" -> ROUNDED_RECTANGLE.shader
- "rounded_rect_outline" -> ROUNDED_RECT_OUTLINE.shader
- "darken" -> DARKEN.shader
- else -> {
- null
- }
- }
- }
+ fun enableShader() = enableShader(this)
}
- private val shaders: MutableMap<String, Shader> = mutableMapOf()
private var activeShader: Shader? = null
- fun enableShader(shaderName: String) {
- var shader = shaders[shaderName]
-
- if (shader == null) {
- shader = Shaders.getShaderInstance(shaderName)
- if (shader == null) return
- shaders[shaderName] = shader
- }
+ fun enableShader(shader: Shaders) {
+ val shaderInstance = shader.shader
- if (!shader.created) return
+ if (!shaderInstance.created) return
- activeShader = shader
- shader.enable()
- shader.updateUniforms()
+ activeShader = shaderInstance
+ shaderInstance.enable()
+ shaderInstance.updateUniforms()
}
fun attachShader(shaderProgram: Int, shaderID: Int) {
@@ -101,7 +80,7 @@ object ShaderManager {
ErrorManager.logErrorWithData(
OpenGLException("Shader compilation error."),
errorMessage,
- "GLSL Compilation Error:\n" to errorLog
+ "GLSL Compilation Error:\n" to errorLog,
)
} else {
LorenzUtils.consoleLog("$errorMessage $errorLog")