gpt4 book ai didi

java - OpenGL 计算着色器无法在笔记本电脑上链接

转载 作者:行者123 更新时间:2023-12-01 17:05:14 32 4
gpt4 key购买 nike

我正在编写一个程序,该程序在 OpenGL 中大量使用计算着色器(在 Java 中使用 JOGL),该程序在我的台式计算机上运行良好,但不会链接我的笔记本电脑上的着色器。

我目前有一个桌面系统,运行 Ubuntu 18.04LTS 和 GTX 1060,运行没有问题,但是当在我的笔记本电脑上运行 Ubuntu 18.04LTS、GTX 1650 时,着色器无法正确链接并打印“错误” :与着色器程序日志中的未编译/非专用着色器链接。

我认为这可能是驱动程序问题,并尝试切换到专有的 nVidia 驱动程序,但没有成功。两个平台都运行相同的 Open-jdk 8。

注意:图形着色器按预期工作,仅在尝试链接计算着色器时才会发生,即使使用相同的方法读取源代码也是如此,所以我确信那里没有问题。

将着色器链接到程序时出现问题:

        int computeShader = gl.glCreateShader(GL4.GL_COMPUTE_SHADER); //Create compute shader
gl.glShaderSource(computeShader, computeShaderSrc.length, computeShaderSrc, null);
gl.glCompileShader(computeShader);

int shaderProg = gl.glCreateProgram(); //Create shader program and attach compute shader

printProgramLog(shaderProg);
System.out.println("Created shader\n");

System.out.println("Attaching shader");
gl.glAttachShader(shaderProg, computeShader);
printProgramLog(shaderProg);
System.out.println("Attached shader\n");

System.out.println("Linking shader");
gl.glLinkProgram(shaderProg);
printProgramLog(shaderProg);
System.out.println("Linked Shader\n");

gl.glDeleteShader(computeShader);

输出:

Created shader

Attaching shader
Attached shader

Linking shader
Program Info Log:
error: linking with uncompiled/unspecialized shader
Linked Shader

最佳答案

请参阅评论,着色器编译中的问题在设备之间不一致。

关于java - OpenGL 计算着色器无法在笔记本电脑上链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61470264/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com