Global red,blue,redt,bluet,blackDim cb(8),tt(8)Graphics3D 1024,768,32,0SetBuffer BackBuffer()AmbientLight 0,0,0Global cam=CreateCamera()PositionEntity cam,0,0,-12RotateEntity cam,2,0,0light=CreateLight(2)LightRange light,20PositionEntity light,10,10,-20LightColor light,200,200,200spht=CreateTexture(256,256)SetBuffer TextureBuffer(spht)For ttx=0 To 255 Step 8 For tty=0 To 255 Step 16 Color 255,Rnd(255),Rnd(255) Oval ttx,tty,8,5 NextNextSetBuffer BackBuffer()sph=CreateSphere()ScaleEntity sph,15,15,15FlipMesh sphEntityFX sph,1EntityTexture sph,sphtsph2=CreateSphere(50)PositionEntity sph2,0,0,0ScaleEntity sph2,3.0,3.0,3.0EntityColor sph2,50,100,150EntityShininess sph2,0.2sph2=CreateSphere(50)PositionEntity sph2,5,5,5ScaleEntity sph2,1.0,1.0,1.0EntityColor sph2,250,100,150EntityShininess sph2,0.2sph2=CreateSphere(50)PositionEntity sph2,-5,-3,-5ScaleEntity sph2,1.0,1.0,1.0EntityColor sph2,50,200,150EntityShininess sph2,0.2;EntityAlpha sph2,.5;EntityFX sph2,1+16;EntityTexture sph2,sphtobj=CreateCylinder()ScaleEntity obj,0.3,7,0.3;EntityBlend obj,3ff=CreatePivot()For cc=1 To 8 tt(cc)=CreatePivot(ff) cb(cc)=CreateCube(tt(cc)) EntityColor cb(cc),Rnd(150,255),Rnd(255,55),Rnd(150,255) EntityShininess cb(cc),0.5 PositionEntity cb(cc),0,0,-6 RotateEntity tt(cc),0,45*cc,0Nextmap=512redt=CreateTexture(map,map)bluet=CreateTexture(map,map)initglass()While Not KeyDown(1) time#=time#+2 tx#=(Sin(time*2)*0.5)+0.7 ty#=Cos(time/2)*3 For xx=1 To 8 ScaleEntity cb(xx),tx,tx,tx TurnEntity cb(xx),ty,ty,ty Next If KeyHit(57) Then WaitKey:WaitKey TurnEntity obj,1,1,1 TurnEntity ff,0,1,0 TurnEntity sph,tx/5,ty/5,0.1 TurnEntity sph2,-tx/5,-ty/5,-0.1 stereo(map,redt,bluet) UpdateWorld RenderWorld Flip WendEndFunction initglass() black=makequad(cam) EntityAlpha black,1 PositionEntity black,0,0,1.01 red=makequad(cam) EntityColor red,255,0,0 EntityFX red,1 EntityBlend red,3 PositionEntity red,0,0,1 TextureBlend redt,5 EntityTexture red,redt blue=makequad(cam) EntityColor blue,0,255,255 EntityFX blue,1 EntityBlend blue,3 PositionEntity blue,0,0,1 TextureBlend bluet,5 EntityTexture blue,bluetEnd FunctionFunction makequad(parent%) meshquad = CreateMesh(parent%) srf = CreateSurface(meshquad) AddVertex srf, -1, 1, 0, 0, 0 AddVertex srf, 1, 1, 0, 1, 0 AddVertex srf, -1,-1, 0, 0, 1 AddVertex srf, 1,-1, 0, 1, 1 AddTriangle srf, 0, 1, 2 AddTriangle srf, 3, 2, 1 Return meshquadEnd FunctionFunction stereo(map,rtext,btext,decal#=0.1) HideEntity red HideEntity blue HideEntity black Local oldx#=EntityX(cam) Local oldy#=EntityY(cam) Local oldz#=EntityZ(cam) CameraViewport cam, 0, 0, map, map ;red MoveEntity cam,-decal#,0,0 RenderWorld CopyRect 0,0,map,map,0,0,BackBuffer(),TextureBuffer(rtext) ;blue MoveEntity cam,decal#*2,0,0 RenderWorld CopyRect 0,0,map,map,0,0,BackBuffer(),TextureBuffer(btext) CameraViewport cam,0,0,GraphicsWidth(),GraphicsHeight() MoveEntity cam,-decal#,0,0 ShowEntity red ShowEntity blue ShowEntity black PositionEntity cam,oldx#,oldy#,oldz# End Function