【发布时间】:2011-11-03 23:43:41
【问题描述】:
目前我将体素存储在一个简单的列表中。 ([0,0,0,0,0,1,0,0,1 ... ]) 要检索列表中的体素位置,我使用此函数:
def getBlockKey(self, x, y, z):
blockX = x % CFG_CHUNK_SIZE
blockY = y % CFG_CHUNK_SIZE
blockZ = z % CFG_CHUNK_SIZE
return blockX + blockY * CFG_CHUNK_SIZE + blockZ * (CFG_CHUNK_SIZE * CFG_CHUNK_SIZE)
但是在处理大量数据时这非常慢。例如迭代 256*256*256 块中的每个立方体需要 50 秒。
我想使用 dict 会更快,但它使用的内存太多了。
你能帮我在这两者之间找到一个折衷方案吗?
【问题讨论】:
标签: python performance list dictionary voxel