Added amd shader compiler driver segfault workaround
This commit is contained in:
@@ -6,6 +6,8 @@ import me.cortex.voxy.client.core.gl.GlDebug;
|
|||||||
import me.cortex.voxy.common.Logger;
|
import me.cortex.voxy.common.Logger;
|
||||||
import me.cortex.voxy.common.util.TrackedObject;
|
import me.cortex.voxy.common.util.TrackedObject;
|
||||||
import org.lwjgl.opengl.GL20C;
|
import org.lwjgl.opengl.GL20C;
|
||||||
|
import org.lwjgl.system.MemoryStack;
|
||||||
|
import org.lwjgl.system.MemoryUtil;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.nio.file.Files;
|
import java.nio.file.Files;
|
||||||
@@ -170,7 +172,13 @@ public class Shader extends TrackedObject {
|
|||||||
|
|
||||||
private static int createShader(ShaderType type, String src) {
|
private static int createShader(ShaderType type, String src) {
|
||||||
int shader = GL20C.glCreateShader(type.gl);
|
int shader = GL20C.glCreateShader(type.gl);
|
||||||
GL20C.glShaderSource(shader, src);
|
{//https://github.com/CaffeineMC/sodium/blob/fc42a7b19836c98a35df46e63303608de0587ab6/src/main/java/me/jellysquid/mods/sodium/client/gl/shader/ShaderWorkarounds.java
|
||||||
|
long ptr = MemoryUtil.memAddress(MemoryUtil.memUTF8(src, true));
|
||||||
|
try (var stack = MemoryStack.stackPush()) {
|
||||||
|
GL20C.nglShaderSource(shader, 1, stack.pointers(ptr).address0(), 0);
|
||||||
|
}
|
||||||
|
MemoryUtil.nmemFree(ptr);
|
||||||
|
}
|
||||||
GL20C.glCompileShader(shader);
|
GL20C.glCompileShader(shader);
|
||||||
String log = GL20C.glGetShaderInfoLog(shader);
|
String log = GL20C.glGetShaderInfoLog(shader);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user