it was your interest in 3d programming in the 486 era. but ressource were scarce. 25mips 4meg ram now, with an i7 with 24gig of ram , 3 gips per core consider bare minimum quad core 3ghz cpu with 4 gig ram only sse through opencl and opengl to help sse2 could yield 12 gips over 3 gips without quad core could yield 3x performance like 36 gips on opencl !! yay !! gpu will yield way more power than this any gpu will render 100million polygon per frame easily. with 1000**3 matrix and an island of 250k voxel 85k will need physik processing 16 million will be raytraced 100k will be rendered could try reducing active voxel to 800k and only trace up to a million voxel will yield acceptable performance integrated gpu can easily handle 100k cube will likely end at 125 voxel far if in the emptyness 12fps physik will iterate through 9600k voxel and process one million voxel per second CALCULATION BELOW VOXEL NUMBER CHUNK 3D ARRAY take a 1000 * 1000 * 1000 cube of voxel there is place for a billion of voxel if we just consider the pixel that exist, a floating island with a mountain on the top and on reversed under ray = 500 height = 500 dept = height sum( pi*r**2 for r in range(500) ) * 2 = 250 million voxel ^allSlice ^mountArea ^mountRay ^two mountain consider 16bits voxel , become entity once interact and entity vanish once done that matrix will weight 500 meg if we dont store empty chunk one core big O calculation 3 giga-cycle per second 250 million voxel to process physic, that leave an average of 12 cpu cycle per voxel each second, if innert rock is discarted in one cycle, and two third of the voxel are innert rock, that yield 85 million for objec to process, leaving overhead of 165 million cycle for discard and 2.35 gigacycle to distribute on 85 million voxel, an avege of 33 cycle per voxel imagine how you raytrace this !!! consider finding visible block, if you are 16 blocks tall you will see 320 blocks far, you are likely to find sum((4*pi*d*2) for d in range(320)) / 8 #only 90 deg= 16 millions block to traverse each image O(n) on a 1000 * 1000 * 1000 matrix of 16 number dynamic size, 250 million voxel island is 500 meg of memory 85 million voxel need physic raytrace scan a 16 million voxel each frame each frame find 100k voxel to send opengl 100k voxel will be rendered, 800k polygon to check for backface culling, realism, you expect a thousand voxel to work smoothly 60fps on an i7 singlecore the algorithm will have a spacious 500 000 cycle per voxel per frame, OOP !! 100k voxel can be rendered with IGP at smooth fps but hardly raytrace more than a million voxel IF ONLY 800K VOXEL CAN BE ACTIVE AND PHYSIK IS SLOWER !! like all in max view distance 360 deg 3d memory weight 1.6meg still 16 million voxel to trace and 100k to render but no more than 800k iteration for physik CAN WE JUST LIMIT RAYTRACE TO A MILLION VOXEL maybe