I’m working on a maze game (I know, not very original…). The game will start out in a 3x3 cell level and each level after that grows in size. Making a maze in 3D (actually 2.5D) is trivial, but I do not want to limit the maximum level size.
If you look at a 2D maze, you can see five different cell types. Using a plumbing analogy, there are tees, crosses, caps, coupling and elbows. What I want to do is load one one instance of each cell type and only process them when they are called for. The actual level data structure would only contain the cell type, its orientation and posistion. If each cell type is, say, 1MB in size, then a 512x512 level will occupy over 262,000 MB of RAM if the levels are constructed normally with each cell containing a copy of its polygons. This is obviously not an option.
I know that DirectX has instancing built in, but what is there like it in GL? If GL does not have such a feature, what is the best way to go about it?
I’m sorry if my description is not very clear. I’m at work and don’t have access to my files. I can post pics later tonight.