Java OpenGL仅绘制可见纹理

Java OpenGL仅绘制可见纹理,opengl,render,tile,Opengl,Render,Tile,我试图在LWJGL中创建一个小的2D游戏,但是,大型地图会将帧速率从3000左右降低到15左右。我知道这主要是因为它绘制了屏幕上的每个瓷砖,尽管你只能看到它们的一小部分。我想知道如何找到哪些平铺是可见的,并且只将它们打印到屏幕上。这就是所谓的,最著名的技术之一是截锥剔除。通常,定义边界体积并测试对象是否位于其中 例如,在2D中,可以定义一个矩形(与窗口/视口相同),并为每个对象(平铺/精灵/任何对象)定义一个边界框。圆是一个易于测试的边界框,但矩形也可以 然后,只需测试对象的边界框和视口矩形是否

我试图在LWJGL中创建一个小的2D游戏,但是,大型地图会将帧速率从3000左右降低到15左右。我知道这主要是因为它绘制了屏幕上的每个瓷砖,尽管你只能看到它们的一小部分。我想知道如何找到哪些平铺是可见的,并且只将它们打印到屏幕上。

这就是所谓的,最著名的技术之一是
截锥剔除。通常,定义边界体积并测试对象是否位于其中

例如,在2D中,可以定义一个矩形(与窗口/视口相同),并为每个对象(平铺/精灵/任何对象)定义一个边界框。圆是一个易于测试的边界框,但矩形也可以

然后,只需测试对象的边界框和视口矩形是否相交。如果是,就画出来,否则就不要画


有关2d剔除的更多详细信息,请参见另一个SE网站上的答案。

谢谢:D我会尽快添加,谢谢您的帮助!