我的设置允许我将元素添加到某个任意的世界空间。元素具有(x,y)坐标以及一些宽度和高度。
然后我使用视口/相机渲染该世界的子部分。显然,我不想处理视口之外的元素。
问题
现在我正在迭代每个元素并检查它的任何部分是否可见,但向世界添加更多元素会使这一步骤变得非常缓慢。
答案 0 :(得分:1)
假设视口移动且元素不移动:
拥有视口内的切片列表。每次视口移动时,都会更新该列表。要从所述列表添加/删除切片,请使用视口对每个切片执行简单的交叉测试。由于视口可能不会像绘制/处理这些图块那样频繁移动,因此您只能在该列表中绘制/处理图块,而不是考虑整个世界中的每个图块。