Yep, you should listen what have been said kojer, it's just plain good sense.
Also I must mention that when I said it would take more memory than your computer could give you, I exagerated a little bit. On my PC it takes *only* about 100 MB (gasp!).
Maybe you could believe that then it's affordable, or that you could lower your number of pivots just a very little bit. Wrong.
That number of pivots can really put your computer on his knees. In fact the sample of Binary_Moon didn't even show the problem in all his glory. It just creates the pivot and never touches them again. But if you try to access them regularly, ouch! Try that:
Graphics3D 640,480,16,2
world%=CreatePivot()
For i=1 To 129000
CreatePivot(world)
Next
cube=CreateCube()
camera=CreateCamera()
MoveEntity camera,0,0,-5
frame% = 0
Repeat
index% = 1+frame*129
For i = 1 To 129
x# = EntityX(GetChild(world, index))
index = index + 1
Next
TurnEntity cube,1,1,1
RenderWorld
Flip
frame = (frame + 1) Mod 1000
Until KeyHit(1)
End
I only added a loop that will get the x position of each pivot, accessing only 1/1000th of the whole bunch at eahc frame. See how the frame rate slows down constantly (if it's fine on your computer, then you have more memory than me -> change 129 to something like 500).
As said previously, when you have such heavy things to do, use your own computation and data strucutre.
But I'm afraid anyway that if you wanted to use it for particles, don't expect to be able to draw that much particles at each frame on screen. That becomes to be a fair amount for just flat untextured triangles, but for textured and above all blended polygons, ouch, ouch, ouch!