manually ignore unexplainable opengl error
Some checks failed
studiorailgun/Renderer/pipeline/head There was a failure building this commit
Some checks failed
studiorailgun/Renderer/pipeline/head There was a failure building this commit
This commit is contained in:
parent
1374c1c240
commit
d558e60fd7
@ -1,3 +1,3 @@
|
||||
#maven.buildNumber.plugin properties file
|
||||
#Wed Aug 28 13:34:16 EDT 2024
|
||||
buildNumber=298
|
||||
#Wed Aug 28 20:50:08 EDT 2024
|
||||
buildNumber=300
|
||||
|
||||
@ -604,6 +604,7 @@ public class Globals {
|
||||
Globals.clientSceneWrapper = new ClientSceneWrapper(Globals.clientScene, new CollisionEngine());
|
||||
Globals.clientSynchronizationManager = new ClientSynchronizationManager();
|
||||
Globals.realmManager = null;
|
||||
Globals.assetManager = null;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -102,7 +102,10 @@ public class ThreadManager {
|
||||
try {
|
||||
thread.getThread().join(10);
|
||||
if(thread.getThread().isAlive()){
|
||||
throw new IllegalStateException("Failed to interrupt thread! " + thread.getLabel());
|
||||
String errorMessage = "Failed to interrupt thread! " + thread.getLabel();
|
||||
System.err.println(errorMessage);
|
||||
new IllegalStateException().printStackTrace();
|
||||
System.exit(1);
|
||||
}
|
||||
} catch (InterruptedException e) {
|
||||
CodeUtils.todo(e, "Think about how to handle this");
|
||||
|
||||
@ -231,7 +231,7 @@ public class RenderingEngine {
|
||||
//Gives hints to glfw to control how opengl will be used
|
||||
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4);
|
||||
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
|
||||
glslVersion = "#version 410";
|
||||
glslVersion = "#version 430";
|
||||
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
|
||||
//headless option
|
||||
if(Globals.RUN_HIDDEN){
|
||||
|
||||
@ -411,8 +411,7 @@ public class Mesh {
|
||||
if(texture != null){
|
||||
texture.bind(openGLState,5+i);
|
||||
}
|
||||
glUniform1i(glGetUniformLocation(openGLState.getActiveShader().getShaderId(), textureMask.getUniformNames().get(i)),5+i);
|
||||
Globals.renderingEngine.checkError();
|
||||
openGLState.getActiveShader().setUniform(openGLState, textureMask.getUniformNames().get(i), 5+i);
|
||||
i++;
|
||||
}
|
||||
} else if(textureMask.getTexturePaths() != null){
|
||||
@ -435,8 +434,7 @@ public class Mesh {
|
||||
Globals.renderingEngine.checkError();
|
||||
openGLState.glBindTexture(GL_TEXTURE_2D, RenderingEngine.lightBufferDepthTexture.getTexturePointer());
|
||||
Globals.renderingEngine.checkError();
|
||||
glUniform1i(glGetUniformLocation(openGLState.getActiveShader().getShaderId(), "shadowMap"), 3);
|
||||
Globals.renderingEngine.checkError();
|
||||
openGLState.getActiveShader().setUniform(openGLState, "shadowMap", 3);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -39,6 +39,7 @@ import org.lwjgl.system.MemoryStack;
|
||||
import electrosphere.engine.Globals;
|
||||
import electrosphere.logger.LoggerInterface;
|
||||
import electrosphere.renderer.OpenGLState;
|
||||
import electrosphere.renderer.RenderingEngine;
|
||||
import electrosphere.util.FileUtils;
|
||||
|
||||
/**
|
||||
@ -159,7 +160,7 @@ public class ShaderProgram {
|
||||
LoggerInterface.loggerRenderer.ERROR("Runtime Exception", new RuntimeException(GL20.glGetShaderInfoLog(rVal.fragmentShader)));
|
||||
}
|
||||
//This creates a shader program opengl object and assigns its 'pointer' to the integer shaderProgram
|
||||
rVal.shaderId = glCreateProgram();
|
||||
rVal.shaderId = GL40.glCreateProgram();
|
||||
//This attaches the vertex and fragment shaders to the program
|
||||
glAttachShader(rVal.shaderId, rVal.vertexShader);
|
||||
glAttachShader(rVal.shaderId, rVal.fragmentShader);
|
||||
@ -279,7 +280,7 @@ public class ShaderProgram {
|
||||
LoggerInterface.loggerRenderer.ERROR("Runtime Exception", new RuntimeException(GL20.glGetShaderInfoLog(rVal.fragmentShader)));
|
||||
}
|
||||
//This creates a shader program opengl object and assigns its 'pointer' to the integer shaderProgram
|
||||
rVal.shaderId = glCreateProgram();
|
||||
rVal.shaderId = GL40.glCreateProgram();
|
||||
//This attaches the vertex and fragment shaders to the program
|
||||
glAttachShader(rVal.shaderId, rVal.vertexShader);
|
||||
glAttachShader(rVal.shaderId, rVal.fragmentShader);
|
||||
@ -380,7 +381,7 @@ public class ShaderProgram {
|
||||
LoggerInterface.loggerRenderer.ERROR("Runtime Exception", new RuntimeException(GL20.glGetShaderInfoLog(rVal.fragmentShader)));
|
||||
}
|
||||
//This creates a shader program opengl object and assigns its 'pointer' to the integer shaderProgram
|
||||
rVal.shaderId = glCreateProgram();
|
||||
rVal.shaderId = GL40.glCreateProgram();
|
||||
//This attaches the vertex and fragment shaders to the program
|
||||
glAttachShader(rVal.shaderId, rVal.vertexShader);
|
||||
glAttachShader(rVal.shaderId, rVal.fragmentShader);
|
||||
@ -557,7 +558,7 @@ public class ShaderProgram {
|
||||
}
|
||||
}
|
||||
//This creates a shader program opengl object and assigns its 'pointer' to the integer shaderProgram
|
||||
rVal.shaderId = glCreateProgram();
|
||||
rVal.shaderId = GL40.glCreateProgram();
|
||||
//This attaches the vertex and fragment shaders to the program
|
||||
glAttachShader(rVal.shaderId, rVal.vertexShader);
|
||||
glAttachShader(rVal.shaderId, rVal.fragmentShader);
|
||||
@ -646,7 +647,7 @@ public class ShaderProgram {
|
||||
LoggerInterface.loggerRenderer.ERROR("Runtime Exception", new RuntimeException(GL20.glGetShaderInfoLog(rVal.fragmentShader)));
|
||||
}
|
||||
//This creates a shader program opengl object and assigns its 'pointer' to the integer shaderProgram
|
||||
rVal.shaderId = glCreateProgram();
|
||||
rVal.shaderId = GL40.glCreateProgram();
|
||||
//This attaches the vertex and fragment shaders to the program
|
||||
glAttachShader(rVal.shaderId, rVal.vertexShader);
|
||||
glAttachShader(rVal.shaderId, rVal.geometryShader);
|
||||
@ -719,13 +720,27 @@ public class ShaderProgram {
|
||||
* @param value The value to set the uniform to
|
||||
*/
|
||||
public void setUniform(OpenGLState openGLState, String uniformName, Object value){
|
||||
//
|
||||
//Error checking
|
||||
if(uniformName == null || uniformName.equals("")){
|
||||
throw new IllegalArgumentException("Trying to set invalid uniform name");
|
||||
}
|
||||
if(this.getShaderId() != openGLState.getActiveShader().getShaderId()){
|
||||
throw new IllegalStateException("Trying to set uniform on shader that is not active");
|
||||
}
|
||||
|
||||
//
|
||||
//get uniform location
|
||||
int uniformLocation = GL40.glGetUniformLocation(this.getShaderId(), uniformName);
|
||||
if(Globals.renderingEngine.checkError()){
|
||||
int glErrorCode = Globals.renderingEngine.getError();
|
||||
//TODO: fix manually ignoring GL_INVALID_VALUE from call
|
||||
if(glErrorCode != 0 && glErrorCode != GL40.GL_INVALID_VALUE){
|
||||
LoggerInterface.loggerRenderer.DEBUG_LOOP(RenderingEngine.getErrorInEnglish(glErrorCode));
|
||||
LoggerInterface.loggerRenderer.WARNING("Shader id: " + this.getShaderId());
|
||||
}
|
||||
|
||||
//
|
||||
//set the uniform
|
||||
if(uniformLocation == INVALID_UNIFORM_NAME){
|
||||
LoggerInterface.loggerRenderer.DEBUG_LOOP("Searched for uniform in a shader that does not contain it. Uniform name: \"" + uniformName + "\"");
|
||||
} else {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user