Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将项目移植到OpenGL3 我正在研究一个C++跨平台OpenGL应用程序(Windows、Linux和Mac OS),我想知道你们中的一些人能否分享一些关于将一个大型应用移植到OpenGL 3的建议。我之所以研究OpenGL3,是因为我认为我们可以从使用新的“同步对象”中受益匪浅。自Geforce 256天(gl_nv_fences)以来,Nvidia就支持这样的扩展,但在OpenGL 3.0+之前,ATI硬件上似乎没有同等的功能_C++_Opengl_Cuda_Opengl 3 - Fatal编程技术网

将项目移植到OpenGL3 我正在研究一个C++跨平台OpenGL应用程序(Windows、Linux和Mac OS),我想知道你们中的一些人能否分享一些关于将一个大型应用移植到OpenGL 3的建议。我之所以研究OpenGL3,是因为我认为我们可以从使用新的“同步对象”中受益匪浅。自Geforce 256天(gl_nv_fences)以来,Nvidia就支持这样的扩展,但在OpenGL 3.0+之前,ATI硬件上似乎没有同等的功能

将项目移植到OpenGL3 我正在研究一个C++跨平台OpenGL应用程序(Windows、Linux和Mac OS),我想知道你们中的一些人能否分享一些关于将一个大型应用移植到OpenGL 3的建议。我之所以研究OpenGL3,是因为我认为我们可以从使用新的“同步对象”中受益匪浅。自Geforce 256天(gl_nv_fences)以来,Nvidia就支持这样的扩展,但在OpenGL 3.0+之前,ATI硬件上似乎没有同等的功能,c++,opengl,cuda,opengl-3,C++,Opengl,Cuda,Opengl 3,我们的代码大量使用glut/freeglut、glu函数、OpenGL2扩展和CUDA(在支持的硬件上)。我现在面临的问题是“gl3.h”和“gl.h”是互不兼容的(如gl3.h中所述)。你们知道是否有GL3过量的等价物吗?另外,看看CUDA工具包的头文件,似乎GL-CUDA的互操作性只有在使用较旧版本的OpenGL时才可用。。。(cuda_gl_interop.h包括gl.h.)。我错过什么了吗 非常感谢您的帮助。glut的上一次更新是大约10年前的3.7版。考虑到这一点,我怀疑它是否会支持O

我们的代码大量使用glut/freeglut、glu函数、OpenGL2扩展和CUDA(在支持的硬件上)。我现在面临的问题是“gl3.h”和“gl.h”是互不兼容的(如gl3.h中所述)。你们知道是否有GL3过量的等价物吗?另外,看看CUDA工具包的头文件,似乎GL-CUDA的互操作性只有在使用较旧版本的OpenGL时才可用。。。(cuda_gl_interop.h包括gl.h.)。我错过什么了吗


非常感谢您的帮助。

glut的上一次更新是大约10年前的3.7版。考虑到这一点,我怀疑它是否会支持OpenGL3.x(或4.x)

从事OpenGL3.x工作的人们似乎正在考虑支持OpenGL3.x的可能性,但还没有做任何事情

有一个(部分)glut模拟,但它的局部性足以让一个“大量使用glut”的程序一开始可能无法使用它。由于FLTK正在进行积极的开发,我想它最终会支持OpenGL3.x(或4.x),但我不相信它已经提供了,而且它可能会很快提供

编辑:就CUDA而言,一个显而易见的答案(尽管肯定不是琐碎的)是使用OpenCL。这与硬件(如ATI/AMD板)和更新版本的OpenGL都非常兼容


那就剩下glu了。坦率地说,我不认为有一个明确或明显的答案。OpenGL正在从支持glu这样的东西转移到支持glu,而不再支持更多以前作为核心OpenGL规范一部分的模糊的glu功能(例如,所有矩阵操作原语)。就我个人而言,我认为这是一个错误,但不管是好是坏,这都是事情的本质。不幸的是,glu有点像glut——该规范的上一次更新是在1998年,对应于OpenGL 1.2。这似乎根本不可能进行更新。不幸的是,我也不知道有什么真正直接的替代品。显然还有其他图形库提供(至少一些)类似的功能,但我能想到的所有图形库都需要大量重写。

事实上,过量并不是一个真正的问题,因为我们很快就会停止使用它。。。但GLU和CUDA的互操作性仍然存在问题。不过,谢谢你的回答!非常感谢您的编辑!我确实认为OpenGL的新方向也是一个错误。。。在使用旧的固定管道模式进行了所有的开发之后,董事会似乎正在采取一个无缘无故的大胆行动。。。哦,我想是时候学习OpenCL了;)@Decapsuleur:我应该再补充一个细节:因为你显然在混合计算(CUDA/OpenCL)和绘图(OpenGL),你可能还想研究使用OpenGL4。它提高了像这样混合这两种情况的能力,如果你要跳转,跳转的幅度也不会大很多(可以这么说)。