Wenn ich die Cam so einstelle:
...
X_MAKE3D 1,1000,45
X_CAMERA 0,50,0,0,0,0
X_DRAWAXES 0,0,0
...
seh ich die Achse nicht!
Bei :
...
X_MAKE3D 1,1000,45
X_CAMERA 0,50,0.01, 0,0,0
X_DRAWAXES 0,0,0
...
Seh ich sie.... wo ist der Fehler?
Der bekommt den Up-Vector nicht hin.
Dein XZ von Kamera und Lookat ist gleich.
Entweder: X_UPVECTOR 1,0,0 vorher machen, oder xz_cam <> xz_lookat machen.
Irgendwie komisch ...
GLBasic versucht den Upvector 0,1,0 zu machen. Aber: Wenn Du in Richtung 0,-1,0 schaust (also Richtung von Up-vector), dann kann das nicht gehen. Der Up muss 90° auf dem Lookat stehen.
Und wie schaffen es manche eine 360° rundumsicht zu machen in OpenGL, in alle Richtungen...
Versteh ich jetzt net wirklich :S
Bei mir gehts auch soweit, nur bei 0,0,0 gehen halt die "Lichter aus" :D
schau, ob der Winkel von Cam->lookat zu 0,1,0 > 5° ist. Wenn net, dann mach vorher ein X_CAMERAUP 1,0,0.
v1 = lookat - campos
v2 = 0,1,0
winkel = ACOS( (v1.x*v2.x + v1.y*v2.y) / ( SQR( v1.x^2 + v1.y^2) * SQR( v2.x^2 + v2.y^2) ) )