我正在研究C++跨平台OpenGL应用程序(Windows,Linux和MacOS),我想知道是否有人可以在将大型应用程序移植到OpenGL 3时分享一些建议。我正在研究OpenGL 3,因为我认为我们可以从使用新的“同步对象”中获益很多。 Nvidia自从Geforce 256天(gl_nv_fences)以来一直支持这种扩展,但在OpenGL 3.0 +之前似乎在ATI硬件上没有相应的功能... ...将项目移植到OpenGL3
我们的代码使得glut/freeglut,glu函数, OpenGL 2扩展和CUDA(在支持的硬件上)。我现在面临的问题是“gl3.h”和“gl.h”是相互不兼容的(如gl3.h中所述)。你们知道是否有GL3的同类产品?另外,看一下CUDA工具包头文件,似乎GL-CUDA互操作性只有在使用旧版本的OpenGL时才可用...(cuda_gl_interop.h包含gl.h ...)。我错过了什么吗?
非常感谢您的帮助。
事实上,GLUT是不是一个真正的问题,因为我们很快将停止使用它......但GLU和CUDA的互操作性仍然是有问题的。不过,谢谢你的回答! – 2010-06-03 18:12:53
非常感谢您的编辑!我认为OpenGL的新方向也是一个错误......经过使用旧的固定管道范例进行的所有开发之后,似乎董事会正在无条件地采取大胆的举措...噢,学习OpenCL i的时间猜;) – 2010-06-04 12:52:34
@Decapsuleur:我要补充一个细节:因为你显然混合计算(CUDA/OpenCL的)和绘图(OpenGL的),你可能也想看看使用OpenGL 4.提高混合的能力这两个人是这样的,如果你打算跳起来,跳起来不会太大(可以这么说)。 – 2010-06-04 14:10:34