Hi paul,
Cool demo you have there.
I tried the idea you had and it's a no go.

The texture is still blurry like my last screenshot on the 1st page. I notice when I try to re-run the program it crashes. I'm guessing this is to do with the plugin?
I changed out the code
dot x,y,rgb(setColorR,setColorG,setColorB) with
d3d_dot x, y,rgb(setColorR,setColorG,setColorB)
here is the code:
rem setup screen
autocam off
sync on
sync rate 60
backdrop on
color backdrop 0
hide mouse
d3d_init
randomize timer()
for x = 1 to 256
for y = 1 to 256
setColorR = rnd(255)
setColorG = rnd(255)
setColorB = rnd(255)
d3d_dot x, y,rgb(setColorR,setColorG,setColorB)
//dot x,y,rgb(setColorR,setColorG,setColorB)
next y
next x
get image 1,0,0,256,256
sync
make object plane 1,10,10,104,104
rem model needs to have diffuse data or this whole thing will be pointless
convert object fvf 1, 338
rem create memblocks from object and texture
make mesh from object 1, 1
make memblock from mesh 1, 1
delete object 1
make memblock from image 2, 1
rem get vertex count
vertCount = memblock dword( 1, 8 )
rem get image dimensions
imgWidth = memblock dword( 2, 0 )-1
imgHeight = memblock dword( 2, 4 )-1
rem loop through all vertices
for i = 1 to vertCount
rem calculate offset to next vertex in memblock (36 bytes per vertex, 12 bytes in header)
memMeshOffset = (i*36) - 24
post = 12 + c*entrysize
rem get UV data
u# = memblock float( 1, memMeshOffset+28 )
v# = memblock float( 1, memMeshOffset+32 )
rem convert UV data to pixel coordinates
px = u#*imgWidth
py = v#*imgHeight
rem convert pixel coordinates to memblock offset (4 bytes per pixel, 12 bytes in header)
memTexOffset = (imgHeight*px*4) + (py*4) + 12
rem NOTE: The above could be compressed, but I was unsure if the pixel data is ordered X over Y, or Y over X,
rem so I left it unoptimized for convenience's sake.
rem get colour data
colour = memblock dword( 2, memTexOffset )
rem if you want to remove the alpha channel, uncomment the following
`colour = (0xFF000000 && colour)
rem set diffuse colour in object
write memblock dword 1, memMeshOffset+24, colour
next i
rem convert the memblock back to an object
make mesh from memblock 1, 1
make object 1, 1, 0
rem clean up
delete memblock 1
delete memblock 2
//delete image 1
delete mesh 1
rem INSERT YOUR METHOD OF RENDERING VERTICES ONLY HERE
rem setup camera values
dist# = 40
//display the image
sprite 1,0,0,1
xrotate object 1,-90
position camera 0,0,-10
rem main loop
do
rem get user input
angle# = wrapvalue( angle# + (mousemovex()*0.5) )
inc height#, mousemovey()*0.5
inc dist#, mousemovez()
rem control camera
//set camera to follow 0, 0, 0, angle#, dist#, height#, 3, 0
//point camera 0, 0, 0
rem refresh screen
sync
rem end of main loop
loop
darkvee