It's sort of working; it appears to be skipping longitudal and latitudal lines in the heightmap memblock; probably at 0 or 32. Anyone care to take a look?
(512 sized map, moves over 256 at a time, 2048x2048 bitmap, the map scale is 50x50x50. I think that's all that's needed for legibility, save to note that the terrain is object 1, and the memblock is #1.)
For t = 0 To 511
For t2 = 0 To 511
t3 = t + ( tx * 256 ) : t4 = t2 + ( tz * 256 )
PosRead = ( ( t4 + ( t3 * 2048 ) ) * 4 ) + 12
Height = MemBlock Byte( 1, PosRead ) : Height = Height * 50
` Limb = ( ( t - 1 ) * 16 + ( t / 32 ) ) + t2 / 32
Limb = ( ( ( t / 32 ) * 16 ) + ( t2 / 32 ) )
Vertex = ( ( t - ( ( t / 32 ) * 32 ) ) * 32 ) + ( t2 - ( ( t2 / 32 ) * 32 ) )
` If Vertex > 32 Then Wait Key
LOCK VERTEXDATA FOR LIMB 1, Limb
SET VERTEXDATA POSITION Vertex, GET VERTEXDATA POSITION X(Vertex), Height, GET VERTEXDATA POSITION Z(Vertex)
Unlock VertexData
Next t2
` Repeat
` Set Cursor 0, 0
` Print Limb, " ", Vertex
` Print PosRead, " ", Height
` Print tx, " ", tz
` Sync
` Until Inkey$( ) <> ""
Next t
Plus, the limbs don't hide and show correctly.
Cheese!
Expert Bug-Finder, Horrible at Identifying Them.