Well I can't really say without seeing some code but it could be
because if you use 3D objects or a matrix then it automatically
turns the backdrop on. This means that when you use 2D stuff afterwards
then it has to be redrawn each time you refresh the screen(sync).
Here is a small example:
`Make a simple floor`
make matrix 1,1000,1000,50,50
`Make a simple object`
make object cube 1,50
position object 1,500,0,500
`Position the camera to view`
position camera 500,500,-500
rotate camera 20,0,0
`Manual synchronisation`
sync on
sync rate 0
`Main loop`
do
`Draw the button`
ink rgb(150,0,0),0
box 0,0,100,50
ink rgb(50,0,0),0
box 0,45,95,50
ink rgb(100,0,0),0
box 0,0,5,45
ink rgb(200,0,0),0
box 95,0,100,45
ink rgb(250,0,0),0
box 0,0,95,5
ink rgb(255,255,255),0
center text 50,20,"BUTTON"
`Check for click`
clicked=0
if mouseclick()=1
if mousex()>=0 and mousex()=<100
if mousey()>=0 and mousey()=<50
clicked=1
endif
endif
endif
`If clicked then show message`
if clicked=1
ink rgb(150,150,150),0
box 100,100,540,380
ink rgb(250,250,250),0
box 105,100,540,105
ink rgb(200,200,200),0
box 535,100,540,375
ink rgb(100,100,100),0
box 100,100,105,375
ink rgb(50,50,50),0
box 105,375,540,380
ink rgb(255,255,255),0
center text 320,240,"Oy! Don't Click Me!"
endif
`Update screen`
sync
`End loop`
loop
Sorry if that isn't what you meant!
If not maybe you meant this:
`Make a simple floor`
make matrix 1,1000,1000,50,50
`Make a simple object`
make object cube 1,50
position object 1,500,0,500
`Position the camera to view`
position camera 500,500,-500
rotate camera 20,0,0
`Manual synchronisation`
sync on
sync rate 0
`Main loop`
do
`Draw the button`
ink rgb(150,0,0),0
box 0,0,100,50
ink rgb(50,0,0),0
box 0,45,95,50
ink rgb(100,0,0),0
box 0,0,5,45
ink rgb(200,0,0),0
box 95,0,100,45
ink rgb(250,0,0),0
box 0,0,95,5
ink rgb(255,255,255),0
center text 50,20,"BUTTON"
`Check for click`
if mouseclick()=1
if mousex()>=0 and mousex()=<100
if mousey()>=0 and mousey()=<50
gosub menu
endif
endif
endif
`If clicked then show message`
if clicked=1
ink rgb(150,150,150),0
box 100,100,540,380
ink rgb(250,250,250),0
box 105,100,540,105
ink rgb(200,200,200),0
box 535,100,540,375
ink rgb(100,100,100),0
box 100,100,105,375
ink rgb(50,50,50),0
box 105,375,540,380
ink rgb(255,255,255),0
center text 320,240,"Oy! Don't Click Me!"
endif
`Update screen`
sync
`End loop`
loop
menu:
do
ink rgb(150,150,150),0
box 100,100,540,380
ink rgb(250,250,250),0
box 105,100,540,105
ink rgb(200,200,200),0
box 535,100,540,375
ink rgb(100,100,100),0
box 100,100,105,375
ink rgb(50,50,50),0
box 105,375,540,380
ink rgb(255,255,255),0
center text 320,240,"Oy! Don't Click Me!"
if escapekey()=1 then exit
sync
loop
return