Camera problem beim ersten spiel

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

joni8a

Betreff: Camera problem beim ersten spiel

BeitragSa, Feb 24, 2007 23:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Halihalöle, ich habe ien Problem. Ih habe an meinem ersten spiel den anfang gemacht und stecke nun wortwörtlich in der sch...
Wäre super nett wenn ihr auch mal mein quellcode ansehen könntet. Das problem besteht darin das die camera sich nicht bewegen lässt. Sry wenn dies dumme Fehler sind, aber wie gesagt es ist mein erstes 3D game.

danke schon mal im voraus Joni8a

Code: [AUSKLAPPEN]

Graphics3D 640,480
SetBuffer BackBuffer()

;modelle
ball=CreateSphere(32)
;ende modelle

;texturen
gesicht=LoadTexture("smily.bmp")
boden=LoadTexture("grass.bmp")
wasser=LoadTexture("water.bmp")
himmel=LoadTexture("himmel.bmp")
;ende texturen

;heightmap
map=LoadTerrain("heightmap.bmp")
himmeln=CreatePlane()
;ende heightmap

;gegenstände texturieren
EntityTexture ball,gesicht
EntityTexture map,boden
EntityTexture himmeln,himmel
;EntityTexture water,wasser
;ende gegenstände texturiren

;gegenstände positonieren
PositionEntity map,0,0,0
PositionEntity ball,x,y,z
PositionEntity himmeln,0,5,0
RotateEntity himmeln,0,180,0
;ende gegenstände positonieren

;wasser
;water=CreatePlane()
;EntityTexture water,wasser
;MoveEntity water,0,10,0
;EntityAlpha water,0.6
;ende wasser


;variablen
x=0
y=0
z=0

xc=0
yc=5
zc=5
;ende variablen

;objektebewegen
Repeat
;camera
cam=CreateCamera()
MoveEntity cam,xc,yc,zc
;ende camera

If KeyDown(200) Then z=z+100 And zc=zc+100
If KeyDown(208) Then z=z-100 And zc=zc-100
If KeyDown(203) Then x=x-100 And xc=zc-100
If KeyDown(205) Then x=x-100 And xc=zc+100
;ende objektebewegen

RenderWorld
Flip
UpdateWorld

Until KeyHit(1)
 

Lastsamurai

BeitragSo, Feb 25, 2007 0:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Also...

1. Du erstellst immer wieder eine neue Kamera in der Repeat - Until Schleife... du darfst sie nur 1 mal laden (außer wenn du sowas wie Splitscreen machst dann brauchst 2) und kannst sie dann immer bewegen

2. Du brauchst nicht unbedingt die Variablen xc, yc, zc um die Kamera zu bewegen. Ich mache es immer so:

Code: [AUSKLAPPEN]


If Keydown(200) Then MoveEntity cam,0,0,100   ;wenn die taste gedrückt ist dann kamera um 100 einheiten nach Z verschieben

If Keydown(208) Then MoveEntity cam,0,0,-100



und das für alle tasten...

das gehört dann in eine Schleife... außerdem würde ich kleinere zahlen für die Bewegung nehmen denn 100 ist seehr viel Smile
würde so 5 nehmen je nach dem was es wird


Falls die nächste Frage sein wird wie man sie dreht:

Code: [AUSKLAPPEN]


If Keydown(203) Then TurnEntity cam,0,-1,0

If Keydown(205) Then TurnEntity cam,0,1,0



mit den negativen zahlen musst mal gucken ob das richtig herum ist bin mir nicht sicher...

Mfg. Lasti
 

joni8a

BeitragSo, Feb 25, 2007 0:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,
Code: [AUSKLAPPEN]

I=1 to unendlich
VIELEN DANK
next
end

Oh man echt vielen dank ohne dich wäre ich wahrscheinlich nie weiter gekommen.

joni8a
 

joni8a

BeitragSo, Feb 25, 2007 0:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo, ich habe nun noch eine frage ich möchte es so machen das der ball sich bewegt und die kamera hinterher, aber dies tut er nicht, wieso?

danke schon mal im voraus joni8a
 

Lastsamurai

BeitragSo, Feb 25, 2007 0:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Dafür musst du den Ball als Parent für die Kamera festlegen... dann folgt die Kamera dem Ball überall hin

Code: [AUSKLAPPEN]


cam = CreateCamera(sphere)



Hierbei muss sphere deinem Ball entsprechen

Andernfalls kannst du auch EntityParent,cam,sphere benutzen ist das selbe Smile

Dann musst du natürlich nicht mehr die Kamera bewegen sondern direkt den Ball
 

joni8a

BeitragSo, Feb 25, 2007 10:28
Antworten mit Zitat
Benutzer-Profile anzeigen
danke für die antwort, nun bin ich aber im ball ich würde es gerne so machen das ich schräk von oben auf ihn herauf schaue.
*ERLEDIGT*
joni8a
Nun habe ich ne andere frage wie kann ich eine kugel den hügel hochrollen lassen und wieder runter(gegebenenfalss)

joni8a

biggicekey

BeitragSo, Feb 25, 2007 11:37
Antworten mit Zitat
Benutzer-Profile anzeigen
dazu musst du schon mit kollisionen arbeiten.
außerdem müsste man auch wissen was das für hügel sind (terrain? etc.


schau dir doch mal samples an die bei blitz3d dabei sind da kannst du schonmal viel draus lernen.
du kannst ja nicht verlangen das dir jemand dein game schritt für schritt vorproggt.
wie man sieht hast du das letzte problem ja auch selbst gelöst.
also erst nachdenken und suchen und dann posten.
außerdem riecht das hier sehr nach beginner.
#45 www.icekeyunlimited.de www.starcrusade.de
Gewinner BCC#17 !!! mit dotkiller
Nothing more to register - you've cleaned us out![/size]
 

joni8a

BeitragSo, Feb 25, 2007 14:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo, ich habe mir nun einmal das thema collision angeschaut, aber ich verstehe es nicht ganz, kann einer von euch mir das vielleicht erklären?

vielen dank schon mal im vorraus

BladeRunner

Moderator

BeitragSo, Feb 25, 2007 22:03
Antworten mit Zitat
Benutzer-Profile anzeigen
~VERSCHOBEN~
Dieser Thread passte nicht in das Forum, in dem er ursprünglich gepostet wurde.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group