; AntiAliasMode Example ; --------------------- ; Requires Extended mode. Graphics3D 640,480,0,2 SetBuffer BackBuffer() camera=CreateCamera() PositionEntity camera,0,2,-7 RotateEntity camera,10,0,0 light=CreateLight() RotateEntity light,45,45,0 ; Thin, high-contrast girders show jagged edges clearly tower=CreatePivot() PositionEntity tower,0,1,2 For i=0 To 5 girder=CreateCube(tower) ScaleEntity girder,2.5,0.08,0.08 RotateEntity girder,0,i*30,i*15 PositionEntity girder,0,i*0.5-1,0 EntityColor girder,255,255-i*30,60+i*30 Next ; A dark backdrop maximises edge contrast back=CreateCube() ScaleEntity back,12,8,0.1 PositionEntity back,0,3,12 EntityColor back,20,20,35 mode=1 While Not KeyDown(1) ; Keys 0-3 select the anti-aliasing method If KeyHit(11) Then mode=0 If KeyHit(2) Then mode=1 If KeyHit(3) Then mode=2 If KeyHit(4) Then mode=3 ; Select the whole-screen anti-aliasing method AntiAliasMode mode If mode=0 Then label$="off - count the jaggies" If mode=1 Then label="FXAA (default)" If mode=2 Then label="4x MSAA - sharp geometry edges" If mode=3 Then label="TAA - stable fine detail" ; Slow rotation makes edge crawl obvious TurnEntity tower,0,0.3,0 ; Arrow keys move the camera If KeyDown(200) Then MoveEntity camera,0,0,0.1 If KeyDown(208) Then MoveEntity camera,0,0,-0.1 If KeyDown(203) Then TurnEntity camera,0,1,0 If KeyDown(205) Then TurnEntity camera,0,-1,0 RenderWorld Text 0,0,"0-3: anti-alias mode Arrow keys: move camera Esc: exit" Text 0,20,"AntiAliasMode "+mode+" ("+label+")" Flip Wend End