I got a matrix with 180x180 tiles, and it started lagging REALLY bad. Even though the matrix is spread out into a 10.000x10.000 field, it lags HORRIBLE.
But at 144x144 tiles it works perfect.
Any help how to kill the lag? The matrix is used as water and therefore many tiles are required.
The code:
Wwidth=(4 or 5. 4 is the perfect, 5 is the laggy one.)
make matrix 2,10000,10000,(36*Wwidth),(36*Wwidth)
position matrix 2,0,-50,0
prepare matrix texture 2,9,(36*Wwidth),(36*Wwidth)
tcWATER=1
for zWATER=(36*Wwidth)-1 to 0 step -1
xWATER=0
while xWATER<=(36*Wwidth)-1
set matrix tile 2,xWATER,zWATER,tcWATER
inc tcWATER : inc xWATER
endwhile
next zWATER
` IN THE MAIN LOOP
aWATER#=wrapvalue(aWATER#+1)
for zWATER=0 to (36*Wwidth)
for xWATER=0 to (36*Wwidth)
xWATER#=cos(aWATER#+(xWATER*10))
yWATER#=sin(aWATER#+(zWATER*10))
nxWATER#=0.0-(cos(aWATER#+(xWATER*10))*0.25)
nzWATER#=0.0-(sin(aWATER#+(zWATER*10))*0.25)
nyWATER#=1.0-nxWATER#-nzWATER#
set matrix height 2,xWATER,zWATER,(xWATER#+yWATER#)*15.0
set matrix normal 2,xWATER,zWATER,nxWATER#,nyWATER#,nzWATER#
next xWATER
next zWATER
update matrix 2