我正在使用Java制作游戏,我希望在不使用着色器的情况下同时快速渲染大约20000个矩形。这真的有可能吗?
答案 0 :(得分:2)
这取决于它们有多大以及它们有多少呈现。您可以剪裁不面向相机的矩形。您也可以停止渲染远离相机的矩形。 您也可以尝试丢弃无法显示的矩形。
您不应该立即渲染它们。尝试使用VBOs
/ VAOs
或显示列表(不建议使用)。这样,数据(顶点和纹理坐标)仅发送一次到GPU。 (渲染时,您只需调用id)如果某些几何体具有相同的形状,您还可以对多个网格使用一个显示列表/ VAO
,并通过平移/旋转/缩放坐标系来移动它们。