Yea, the snapshot's not much to look at, so try this! Here is the same idea (kinda) applied to walking on a matrix.
You'll need any 128 by 128 image and call it floor1.bmp
`==========From=Here=To.........==========
make matrix 1,10000,10000,10,10
randomize matrix 1,500
load bitmap "floor1.bmp" ,1
get image 1,0,0,128,128 : delete bitmap 1
prepare matrix texture 1,1,1,1
make object cube 1,25
color object 1,rgb(255,0,0)
x# = 500
z# = 500
camheight = 100
sync on : sync rate 60 : autocam off : hide mouse
`===make blur objects
make object cube 10,24
color object 10,rgb(255,0,0)
ghost object on 10
make object cube 11,23
color object 11,rgb(255,0,0)
ghost object on 11
do
`gives the smooth curve effect
ca#=wrapvalue(curveangle(angle#,ca#,20))
`camera xyz
cx#=newxvalue(x#,wrapvalue(ca#+180),300)
cz#=newzvalue(z#,wrapvalue(ca#+180),300)
cy#=get ground height(1,cx#,cz#)+camheight
`place, rotate, and point camera
position camera cx#,cy#,cz#
yrotate camera wrapvalue(ca#)
point camera x#,y#,z#
`set cam height
if returnkey()=1 then camheight = camheight + 10
if shiftkey()=1 then camheight = camheight -10
`walk forward and backward
if upkey()=1
if speed# < 15 then speed# = speed# + 1
endif
if downkey()=1
if speed# > -15 then speed# = speed# - 1
endif
`turn left and right
if leftkey()=1 then angle#=wrapvalue(angle#-3.0)
if rightkey()=1 then angle#=wrapvalue(angle#+3.0)
y# = get ground height(1,x#,z#) + 12.5
`==store blur xyz values
oldblurangle# = blurangle#
blurangle#=angle#
oldbluranglex# = bluranglex#
bluranglex#=object angle x(1)
oldblurx# = blurx#
oldblury# = blury#
oldblurz# = blurz#
blurx# = x#
blury# = y#
blurz# = z#
x#=newxvalue(x#,angle#,speed#)
z#=newzvalue(z#,angle#,speed#)
position object 1,x#,y#,z#
yrotate object 1,angle#
`gravity
if speed# > 0 then speed# = speed# - .25
if speed# < 0 then speed# = speed# + .25
`spin cube
xrotate object 1,wrapvalue(object angle x(1) + 3)
`======Here=Deals=With=Walking=On=A=Matrix==========
`sorry it's messy, i patched together a few of my other programs :)
`======This=Part=Deals=With=The=Bluriness
position object 10,blurx#,blury#,blurz#
position object 11,oldblurx#,oldblury#,oldblurz#
yrotate object 10,blurangle#
yrotate object 11,oldblurangle#
xrotate object 10,bluranglex#
xrotate object 11,oldbluranglex#
sync
loop
I am who I am