GLBasic forum

Other languages => GLBasic - de => Topic started by: xverbatim on 2007-Mar-01

Title: showscreen nach if key geht nicht?
Post by: xverbatim on 2007-Mar-01
hallo,

blicke hier irgendwie nicht durch , wenn ich nach der space tasten abfrage showscreen setzte, ist meine grafik plötzlich verschwunden, ich wollte eigenlich in der tastenabfrage eine camera-
umpositionierung reinsetzen...

wieso verschwindet denn das objekt ?
wenn ich showscreen vor if key setze sehe ich zwar das objekt, kann hinterher aber nicht mehr zeichnen ??!?!?!

würde mich über "aufklärung" freuen...
gruß thomas


Code (glbasic) Select
LOADSPRITE "c:\kugel.bmp", 0
X_LOADOBJ "c:\kugel.ddd", 0
X_MAKE3D 1,500,45
X_CAMERA 0,0,450 ,  0,0,0
X_SETTEXTURE 0, -1
X_DRAWOBJ 0,0

LET x=1

test:
IF KEY(57)
   LET x=x+1
   PRINT x,100,100
ENDIF

SHOWSCREEN

GOTO test
Title: showscreen nach if key geht nicht?
Post by: xverbatim on 2007-Mar-01
hi nochmal,

habe es jetzt hinbekommen, was ich noch fragen wollte, wenn ich die cameraposition zur laufzeit verändern will, muß ich immer make3d +x_camera+x_settexture+X_Drawobj setzen?

oder gibt es da noch was zu beachten ?


thomas



Code (glbasic) Select
LOADSPRITE "c:\kugel.bmp", 0
X_LOADOBJ "c:\kugel.ddd", 0

X_MAKE3D 1,500,45

X_CAMERA 0,0,450 ,  0,0,0
X_SETTEXTURE 0, -1
X_DRAWOBJ 0,0

SHOWSCREEN


LET x=1
 


test:

IF KEY(57)
LET x=x+1

X_MAKE3D 1,500,45
X_CAMERA 0,0,450+x ,  0,0,0
X_SETTEXTURE 0, -1
X_DRAWOBJ 0,0

SHOWSCREEN

ENDIF

 GOTO test
Title: showscreen nach if key geht nicht?
Post by: Kitty Hello on 2007-Mar-01
Das passt super. Wenn Du die Kamera bewegen willst, dann doch nicht innerhalb von einem SHOWSCREEN, oder? Wenn ja (wg. VIEWPORT z.B.) dann immer X_MAKE3D, X_CAMERA.
Es ist eigentlich recht einfach.
X_MAKE3D macht einen 3D Viewport (also Perspektive, Z-Buffer usw.)
X_CAMERA setzt wohin Du schaust
X_DRAWOBJ zeichnet dann das Objekt relativ zur Kamera.
X_SETTEXTURE setzt die aktuelle Textur -> das willst Du _vor_ X_DRAWOBJ.