|
![](/i/fill.gif) |
Looks cool.
I have an idea for an optimization of your lego dome
algorithm. Have two 2-d arrays, one for the current level of
bricks in the dome, one for the layer above. Build the dome from
the top down. The arrays would be used to determine where the
1x1 bricks are going to be placed ... say "1" for a brick and
"0" for no brick.
Now: for each "1" in the current array that has a "1"
in the array above it, change the "1" to a "0". This would cause
unseeable 1x1 bricks to not be rendered. This should save a
lot of memory at the expense of more parsing.
Another different idea would be to have many long 1xN
bricks, which would go from the left side of the dome to the
right side of the dome. Consider this ascci art diagram (top down
view of one "slice" of bricks from the dome), where
I represent every other brick with a different asci color,
"X" or "O"
OOO
XXXXXXXXXXX
OOOOOOOOOOOOOOO
XXXXXXXXXXXXXXXXX
OOOOOOOOOOOOOOOOO
XXXXXXXXXXXXXXXXX
OOOOOOOOOOOOOOO
XXXXXXXXXXX
OOO
That might be both faster in parseing
and memory efficient during render. The difference in length
between a long brick and the one above it would determine the
placement of pips.
--
BTW, getting off topic now ... I rendered your neato
faceted twisted torus. It is a parse monster! It took a
half hour just to *parse* on my machine! Wow!
Pete
Post a reply to this message
|
![](/i/fill.gif) |