post the whole code that demonstrates the problem so i can compile it and try it myself
does this code work for you?
Rem Isometric Camera Example
Rem Written By Jason Clogg
h=d3d_get_desktop_height()
w=d3d_get_desktop_width()
d=d3d_get_desktop_depth()
set display mode w,h,d
sync on
autocam off
d3d_init
color backdrop 0,0
make camera 1:color backdrop 1,0
make camera 2:color backdrop 2,0
make camera 3:color backdrop 3,0
set camera view 0,0,0,w/2,h/2
set camera view 1,w/2,0,w,h/2
set camera view 2,0,h/2,w/2,h
set camera view 3,w/2,h/2,w,h
D3D_Font 1,"Arial",10,0,0,1
D3D_Font 2,"Arial",9,0,0,1
D3D_MAKE_3DTEXT 1, 1, "Isometric", .5, 2, 1
D3D_MAKE_TEAPOT 2
position camera 0,0,0,-10:point camera 0,0,0,0
position camera 1,0,10,0:point camera 1,0,0,0
position camera 2,10,0,0:point camera 2,0,0,0
position camera 3,0,5,-10:point camera 3,0,0,0
d3d_set_ortho_projection 0,10
d3d_set_ortho_projection 1,10
d3d_set_ortho_projection 2,10
angle#=0
title$="Perspective"
ShowIsometric=0
clicking=0
do
d3d_line w/2,0,w/2,h,d3d_rgba(255,255,255,255)
d3d_line 0,h/2,w,h/2,d3d_rgba(255,255,255,255)
rem Find out which camera view the cursor is in
CurrentCam=D3D_CURSOR_IN_CAMERA(0,4)
D3D_PICK_CAMERA CurrentCam, MouseX(), MouseY(),0
x1#=D3D_CAMERA_VECTOR_X()
y1#=D3D_CAMERA_VECTOR_Y()
z1#=D3D_CAMERA_VECTOR_Z()
D3D_PICK_CAMERA CurrentCam, MouseX(), MouseY(),500
x2#=D3D_CAMERA_VECTOR_X()
y2#=D3D_CAMERA_VECTOR_Y()
z2#=D3D_CAMERA_VECTOR_Z()
PickObject#=Intersect object(1,x1#,y1#,z1#,x2#,y2#,z2#)
if mouseclick()=1 and CurrentCam=3
if clicking=0
clicking=1
if ShowIsometric=0
title$="Isometric"
d3d_set_ortho_projection 3,10
ShowIsometric=1
else
title$="Perspective"
d3d_reset_camera 3
ShowIsometric=0
endif
endif
else
clicking=0
endif
d3d_startText
D3D_GET_CAMERA_NORMAL 0
d3d_text 1,1,2,0,"Front - Camera Normal= (" + str$(D3D_CAMERA_VECTOR_X()) + "," + str$(D3D_CAMERA_VECTOR_Y()) + "," + str$(D3D_CAMERA_VECTOR_Z()) + ")"
D3D_GET_CAMERA_NORMAL 1
d3d_text 1,w/2+2,0,0,"Top - Camera Normal= (" + str$(D3D_CAMERA_VECTOR_X()) + "," + str$(D3D_CAMERA_VECTOR_Y()) + "," + str$(D3D_CAMERA_VECTOR_Z()) + ")"
D3D_GET_CAMERA_NORMAL 2
d3d_text 1,1,h/2+1,0,"Left - Camera Normal= (" + str$(D3D_CAMERA_VECTOR_X()) + "," + str$(D3D_CAMERA_VECTOR_Y()) + "," + str$(D3D_CAMERA_VECTOR_Z()) + ")"
D3D_GET_CAMERA_NORMAL 3
d3d_text 1,w/2+1,h/2+1,0,title$ + " - Camera Normal= (" + str$(D3D_CAMERA_VECTOR_X()) + "," + str$(D3D_CAMERA_VECTOR_Y()) + "," + str$(D3D_CAMERA_VECTOR_Z()) + ")"
d3d_text 1,w,2,2,"Current Camera=" + str$(CurrentCam)
d3d_text 1,w,25,2,"Cursor on Object 1=" + str$(PickObject#)
d3d_text 1,w,48,2,"FPS=" + str$(screen fps())
d3d_text 2,w,h-15,2,"Isometric Camera examples by Jason Clogg"
d3d_endtext
select CurrentCam
case 0
DrawBox(0,0,w/2,h/2, rgb(255,0,0))
endcase
case 1
DrawBox(w/2,0,w-1,h/2, rgb(255,0,0))
endcase
case 2
DrawBox(0,h/2,w/2,h-1, rgb(255,0,0))
endcase
case 3
DrawBox(w/2,h/2,w-1,h-1, rgb(255,0,0))
endcase
endselect
position object 2,sin(angle#)*3,0,cos(angle#)*3
angle#=wrapvalue(angle#-.1)
turn object right 1,.1
sync
loop
end
function DrawBox( x1, y1, x2, y2, color)
d3d_line x1,y1,x2,y1,color
d3d_line x1,y1,x1,y2,color
d3d_line x2,y1,x2,y2,color
d3d_line x1,y2,x2,y2,color
endfunction