So I tried the first Idea and I liked the result, it had a few bugs that I need to work out so I'm back to my original, (this time I'll make a backup before I go on these excursions ).
So what I tried was having 16x16x16 blocks, in each block only the top-most cubes were set to "visible". If a block on top is destroyed, the corresponding block underneath is set to visible, if there is a block beside it which isn't visible, that is set to visible. However by creating objects to do this instead of a boolean array, it turned out to be just as intensive memory wise.
[EDIT]
I was unclear above, the FPS was dramatically increased from my current model which I was very pleased. I also rendered all cubes currently visible. I was unable to make a working algorithm to detet hidden-faces. Therefore I was still unable to place as many cubes as I would like.
[/EDIT]
I'll try again with the boolean idea. Perhaps I can find some documentation on an algorithm to detect hidden-faces quickly
I like this triangle reduction idea. How would you go about it?
My Theory:
Have two worlds, the main world has the singular cubes but doesn't render them (for collisions), the second world is a copy, where I merge all of the objects and then draw the singularity(will this reduce faces automatically?)
I think that sounds good
The only problem with this is the memory consumption, on previous games I've had to expand the allowed heap. This hasn't hindered anybody from playing my games (that I'm aware, only around 50 unique devices have tried them)
Perhaps implementing both methods would be beneficial?
I'm thinking of a 3 dimensional array of booleans and integers, and an enumeration for the type (for setting textures on the fly)
Let me know what you gentlemen think,
Donny
So what I tried was having 16x16x16 blocks, in each block only the top-most cubes were set to "visible". If a block on top is destroyed, the corresponding block underneath is set to visible, if there is a block beside it which isn't visible, that is set to visible. However by creating objects to do this instead of a boolean array, it turned out to be just as intensive memory wise.
[EDIT]
I was unclear above, the FPS was dramatically increased from my current model which I was very pleased. I also rendered all cubes currently visible. I was unable to make a working algorithm to detet hidden-faces. Therefore I was still unable to place as many cubes as I would like.
[/EDIT]
I'll try again with the boolean idea. Perhaps I can find some documentation on an algorithm to detect hidden-faces quickly
I like this triangle reduction idea. How would you go about it?
My Theory:
Have two worlds, the main world has the singular cubes but doesn't render them (for collisions), the second world is a copy, where I merge all of the objects and then draw the singularity(will this reduce faces automatically?)
I think that sounds good
The only problem with this is the memory consumption, on previous games I've had to expand the allowed heap. This hasn't hindered anybody from playing my games (that I'm aware, only around 50 unique devices have tried them)
Perhaps implementing both methods would be beneficial?
I'm thinking of a 3 dimensional array of booleans and integers, and an enumeration for the type (for setting textures on the fly)
Let me know what you gentlemen think,
Donny