Is there any way to make super-efficient parts, similar to how minecraft works?

I highly recommend using the built in Terrain if you can. It handles these optimizations for you. You can create your own generator for it.

If you insist on doing it with parts, you can look at how Roblox optimized their terrain data storage for inspiration.

As for rendering the parts, though… it would require a lot of work. You’ll definitely need some kind of culling, but you also don’t have access to the kind of low level functionality that most games that do this sort of thing use, so it’ll never be as fast as ROBLOX’s terrain.

3 Likes

Add another note: yes. This is creating a whole new object for each row, and for each voxel.

Store everything in one contiguous array and access things with index math

When you use noise (optionally) you can provide a specific seed. Provided the same seed, your game will always have the same terrain. So what i recommend is that you only save data about chunks which have been modified by players and use the same seed for generated unmodified chunks