지금은 간단한 목록에 복셀을 저장하고 있습니다. ([00000100,1 ...])는 을 나는이 기능을 사용 목록에서 복셀 높은 게재 순위를 검색하려면 :3D 복셀 데이터를 처리하는 가장 좋은 방법은 무엇입니까?
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을 사용하는 것이 더 빠를 것이라고 생각하지만 너무 많은 메모리를 사용합니다.
이 두 가지 사이의 타협점을 찾도록 도와 줄 수 있습니까?