-, , , . , " ", " , " " , ".
, . 3D- , . , isTissue, , . , . () NULL .
, at (i, j), ii = i/blockside, jj = j/blocksize, (ii, jj), , . NULL, . , (i mod blocksize, j mod blocksize) , (i, j) . isTissue, , "" .
, , , , , . , , , , -. , , .
, , ( ) , , , , , isTissue .
, , , "" , "" , , . , , " " ( ), .
An experienced reader will probably find out the similarities between this and the ways of laying out data for parallel computing; if you have a really strong simulation, you can easily distribute the blocks across several nodes, and you just need to make the node cross-connect for cross-block computing. For this kind of application, it may be useful for you to make nested block levels where you have meta blocks (for translating a node) containing smaller blocks (for geometry).