Tôi có thể không có cách tốt nhất để giải thích nó nhưng tôi sẽ thử.
Tôi nghĩ cách tốt nhất để hiểu làm thế nào để nó hiệu quả hơn là hiểu Voxels. Minecraft dựa trên voxel, nó chỉ sử dụng các hình khối thay vì hình cầu, v.v.
Về cơ bản, voxel là hình dạng 3D có thể có âm lượng thay đổi linh hoạt và khi âm lượng thay đổi, hình dạng cũng vậy. Một Chunk là một bộ X của X by X của voxels. Vì vậy, ví dụ, bạn có thể có một đoạn mã có 16x16x16 voxels và sau đó bạn có thể có số lượng khối X. Bạn sẽ có một khoảng cách được đặt, rằng nếu người chơi ở xa N hơn bất kỳ khối nào, đừng đưa chúng vào tính toán của bạn. Điều này tương tự như cắt khoảng cách nhưng cũng cần phải áp dụng cho từng đoạn. Bằng cách này, bạn có thể có nó để bạn luôn có thể có người chơi của mình ở trung tâm Chunk of a, giả sử, bộ 3x3 của Chunks.
Vì vậy, những gì bạn sẽ có là một lớp để xử lý các Voxels riêng lẻ. Chúng tôi sẽ gọi nó là Voxel_cl. Và sau đó, bạn sẽ có một lớp để xử lý khối voxels, được gọi là Chunk_cl. Và sau đó, bạn sẽ có một số lớp thế giới tạo ra tất cả các khối sẽ tạo ra các voxels, được gọi là World_cl.
Vì vậy, bây giờ thay vì một mảng lớn mọi thứ, bạn sẽ có một mảng 9 Chunks bất cứ lúc nào và trong lớp chunk, bạn sẽ có một mảng 4096 voxels.
Xin lưu ý rằng đây là một lời giải thích khá đơn giản. Tôi hiện đang làm việc trên một cái gì đó bằng cách sử dụng voxels vì vậy tôi nghĩ rằng tôi sẽ ném vào đầu vào của mình = -)
Để biết thêm thông tin về voxels, hãy kiểm tra http://en.wikipedia.org/wiki/Marching_cubes