Here's a quick sample to try out with the simplex noise plugin.
set bitmap format 21
set display mode 800, 600, 32
autocam off
sync on
sync rate 60
sync
position camera 0,0,-120
` create a cruddy planet
make object sphere 1, 100, 16, 16
lock pixels
for x=0 to 127
for y=0 to 127
c=simplex scaled 2d(5, 0.5, 0.05, 0, 255, x, y)
c=rgb((c>>3)<<3,c>>2,(c>>2)<<1)
dot x,y,c
next
NEXT
unlock pixels
get image 1, 0,0, 127,127
texture object 1, 1
` create the clouds object
make object sphere 2, 102, 16, 16
ghost object on 2
cloud_hgt = 1
cloud_dir = 1
tsize=63
while escapekey()=0
` make some on the fly clouds (lo-res'ish texture)
lock pixels
for x=0 to tsize
for y=0 to tsize
c=simplex scaled 2d(5, 0.5, 0.05, 0, cloud_hgt, x, y+cloud_hgt)
c=c+(c<<8)+(c<<16) ` RGB
c=c+((c>>2)<<24) ` Alpha
dot x,y,c
next
NEXT
unlock pixels
cloud_hgt=cloud_hgt+cloud_dir
if cloud_hgt=0 or cloud_hgt=255 then cloud_dir=-cloud_dir
if image exist(2) then delete image 2
get image 2, 0,0, tsize,tsize, 0
texture object 2,2
yrotate object 1, wrapvalue( object angle y(1)+0.1 )
yrotate object 2, wrapvalue( object angle y(2)+0.9 )
sync
ENDWHILE
I'm going to work on the creating the simplex noise texture without having to write the DBP code which will speed things up immensely again.
Mental arithmetic? Me? (That's for computers) I can't subtract a fart from a plate of beans!
Warning! May contain Nuts!