2011-07-10 54 views
1

我无法在LWJGL中找到许多关于OpenCL Java实现的信息。例如device.isSharingSupported不在LWJGL中,或者没有以通常的方式实现。任何人都可以详细说明这一点?OpenGL/OpenCL与LWJGL共享

所以我有兴趣从opencl与opengl共享纹理/顶点。 切换到JOGL是明智的吗?

回答

3

这是你将怎样查询支持KHR_gl_sharing在LWJGL的CLDevices:

CLPlatform platform = CLPlatform.getPlatforms().get(0); 
List<CLDevice> devices = platform.getDevices(CL_DEVICE_TYPE_ALL, new Filter<CLDevice>() { 
    public boolean accept(CLDevice device) { 
     CLDeviceCapabilities caps = CLCapabilities.getDeviceCapabilities(device); 
     return caps.CL_KHR_gl_sharing; 
    } 
}); 

一个完整的示例,请参见org.lwjgl.test.opencl.gl.DemoFractal在LWJGL的测试包。您还可以看到源here

+0

谢谢,我看着JOGCL/JOCL,那是相当不错的,以及,它有一些样品等 – RobotRock

+0

定居在LWJGL由于更适合我的需求旁边支持OpenCL(我不认为支持OpenCL应该有所不同那么多)。 – RobotRock