Quote: "Try making a mirrorfunction for 3D. Double the amount of vertices in the memblock and copy them from one side to another."
That's what I was going to do for the arms

but I was going to have all three parts -- Right arm, hull, left arm -- as separate memblocks so I could limb the arms to the hull.
Quote: "It'll save a whole lot of work on the head and body."
Head? What head?
But seriously, it's not going to have an actual head o_O
Here's the completed arm limb: (yay!)
sync on : sync rate 0
hide mouse : disable escapekey
make memblock 1,2640
write memblock dword 1,0,338
write memblock dword 1,4,36
write memblock dword 1,8,72
type Vertex
Xpoz as float
Ypoz as float
Zpoz as float
Xnor as float
Ynor as float
Znor as float
Diff as dword
Ucor as float
Vcor as float
endtype
global dim Vertices(72) as Vertex
` Set model vertex data
gosub make_limb_arm_right
make mesh from memblock 1,1
save mesh "hulkarmr.x",1
delete mesh 1
delete memblock 1
load object "hulkarmr.x",1
Framerate=timer()
repeat
A$=inkey$()
if timer()-Framerate >= 15
yrotate object 1,object angle y(1)+2
sync
endif
until A$<>"" or escapekey()=1
delete object 1
delete file "hulkarmr.x"
end
function sVertex(index as integer,xp,yp#,zp,xn,yn,zn,dif as dword,uc,vc)
Vertices(index).Xpoz = xp
Vertices(index).Ypoz = yp#
Vertices(index).Zpoz = zp
Vertices(index).Xnor = xn
Vertices(index).Ynor = yn
Vertices(index).Znor = zn
Vertices(index).Diff = dif
Vertices(index).Ucor = uc
Vertices(index).Vcor = vc
endfunction
make_limb_arm_right:
sVertex(0,1,3.5,0,0,0,-1,4294934528,200,0)
sVertex(1,-1,0,0,0,0,-1,4294934528,0,600)
sVertex(2,-1,2.5,0,0,0,-1,4294934528,0,200)
sVertex(3,1,3.5,0,0,0,-1,4294934528,200,0)
sVertex(4,1,0,0,0,0,-1,4294934528,200,600)
sVertex(5,-1,0,0,0,0,-1,4294934528,0,600)
sVertex(6,1,3.5,0,1,0,0,4294934528,200,0)
sVertex(7,1,3.5,2,1,0,0,4294934528,400,0)
sVertex(8,1,0,0,1,0,0,4294934528,0,600)
sVertex(9,1,3.5,2,1,0,0,4294934528,400,0)
sVertex(10,1,-1,2,1,0,0,4294934528,400,600)
sVertex(11,1,0,0,1,0,0,4294934528,200,600)
sVertex(12,-1,0,0,-1,0,0,4294934528,0,600)
sVertex(13,-1,2.5,2,-1,0,0,4294934528,0,200)
sVertex(14,-1,2.5,0,-1,0,0,4294934528,0,200)
sVertex(15,-1,2.5,2,-1,0,0,4294934528,0,200)
sVertex(16,-1,0,0,-1,0,0,4294934528,0,600)
sVertex(17,-1,-1,2,-1,0,0,4294934528,0,600)
sVertex(18,1,3.5,2,-1,1,0,4294934528,400,0)
sVertex(19,-1,2.5,0,-1,1,0,4294934528,0,200)
sVertex(20,-1,2.5,2,-1,1,0,4294934528,0,200)
sVertex(21,1,3.5,0,-1,1,0,4294934528,200,0)
sVertex(22,-1,2.5,0,-1,1,0,4294934528,0,200)
sVertex(23,1,3.5,2,-1,1,0,4294934528,400,0)
sVertex(24,1,3.5,2,0,0,1,4294934528,400,0)
sVertex(25,-1,2.5,2,0,0,1,4294934528,0,200)
sVertex(26,1,-1,2,0,0,1,4294934528,0,600)
sVertex(27,-1,2.5,2,0,0,1,4294934528,0,200)
sVertex(28,-1,-1,2,0,0,1,4294934528,400,600)
sVertex(29,1,-1,2,0,0,1,4294934528,0,600)
sVertex(30,1,-1,2,0,0,1,4294934528,0,600)
sVertex(31,-1,-1,2,0,0,1,4294934528,400,600)
sVertex(32,0,-1.8,2,0,0,1,4294934528,200,1000)
sVertex(33,-1,-1,2,-1,0,0,4294934528,0,600)
sVertex(34,-1,0,0,-1,0,0,4294934528,0,600)
sVertex(35,-1,0,-3,-1,0,0,4294934528,300,400)
sVertex(36,-1,-1,2,-1,0,0,4294934528,0,600)
sVertex(37,-1,0,-3,-1,0,0,4294934528,300,400)
sVertex(38,-1,-1,-3,-1,0,0,4294934528,600,400)
sVertex(39,1,-1,2,1,0,0,4294934528,0,600)
sVertex(40,1,0,-3,1,0,0,4294934528,300,400)
sVertex(41,1,0,0,1,0,0,4294934528,0,600)
sVertex(42,1,-1,2,1,0,0,4294934528,0,600)
sVertex(43,1,-1,-3,1,0,0,4294934528,600,400)
sVertex(44,1,0,-3,1,0,0,4294934528,300,400)
sVertex(45,-1,0,0,0,1,0,4294934528,0,600)
sVertex(46,1,0,0,0,1,0,4294934528,0,600)
sVertex(47,-1,0,-3,0,1,0,4294934528,300,400)
sVertex(48,1,0,0,0,1,0,4294934528,0,600)
sVertex(49,1,0,-3,0,1,0,4294934528,300,400)
sVertex(50,-1,0,-3,0,1,0,4294934528,300,400)
sVertex(51,-1,0,-3,0,0,-1,4294934528,300,400)
sVertex(52,1,0,-3,0,0,-1,4294934528,300,400)
sVertex(53,-1,-1,-3,0,0,-1,4294934528,600,400)
sVertex(54,-1,-1,-3,0,0,-1,4294934528,600,400)
sVertex(55,1,0,-3,0,0,-1,4294934528,300,400)
sVertex(56,1,-1,-3,0,0,-1,4294934528,600,400)
sVertex(57,-1,-1,-3,0,0,-1,4294934528,600,400)
sVertex(58,1,-1,-3,0,0,-1,4294934528,600,400)
sVertex(59,0,-2,-3,0,0,-1,4294934528,300,400)
sVertex(60,-1,-1,2,-1,-1,0,4294934528,0,600)
sVertex(61,-1,-1,-3,-1,-1,0,4294934528,400,600)
sVertex(62,0,-1.8,2,-1,-1,0,4294934528,300,400)
sVertex(63,0,-1.8,2,-1,-1,0,4294934528,300,400)
sVertex(64,-1,-1,-3,-1,-1,0,4294934528,400,600)
sVertex(65,0,-2,-3,-1,-1,0,4294934528,300,400)
sVertex(66,1,-1,2,1,-1,0,4294934528,0,600)
sVertex(67,0,-1.8,2,1,-1,0,4294934528,300,400)
sVertex(68,1,-1,-3,1,-1,0,4294934528,400,600)
sVertex(69,0,-1.8,2,1,-1,0,4294934528,300,400)
sVertex(70,0,-2,-3,1,-1,0,4294934528,300,400)
sVertex(71,1,-1,-3,1,-1,0,4294934528,400,600)
for i=0 to 71
write memblock float 1,(12+(36*i)),Vertices(i).Xpoz
write memblock float 1,(16+(36*i)),Vertices(i).Ypoz
write memblock float 1,(20+(36*i)),Vertices(i).Zpoz
write memblock float 1,(24+(36*i)),Vertices(i).Xnor
write memblock float 1,(28+(36*i)),Vertices(i).Ynor
write memblock float 1,(32+(36*i)),Vertices(i).Znor
write memblock dword 1,(36+(36*i)),Vertices(i).Diff
write memblock float 1,(40+(36*i)),Vertices(i).Ucor
write memblock float 1,(44+(36*i)),Vertices(i).Vcor
next i
return
FunkyStickmen: Battle of the Races (1%)
