; ShaderInt Example ; ----------------- ; Requires Extended mode. Graphics3D 640,480,0,2 SetBuffer BackBuffer() camera=CreateCamera() PositionEntity camera,0,0,-5 light=CreateLight() RotateEntity light,35,-30,0 cube=CreateCube() ; The shader declares an integer parameter named Mode shader=LoadShader("assets/help_surface.b3shader") EntityShader cube,shader mode=1 While Not KeyDown(1) ; Press 1 / 2 to pick the shader's mode switch If KeyHit(2) Then mode=0 If KeyHit(3) Then mode=1 ; Send the integer switch to the shader ShaderInt shader,"Mode",mode TurnEntity cube,0.2,0.4,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 mode_name$="plain tint" If mode=1 Then mode_name="tint plus glow" Color 255,255,255 Text 0,0,"1 / 2 : mode Arrow keys: move camera Esc: exit" Text 0,20,"ShaderInt shader,"+Chr$(34)+"Mode"+Chr$(34)+","+mode+" ("+mode_name+")" Flip Wend FreeShader shader End