Noch eine Frage zu types in BB3D
Übersicht

sven123Betreff: Noch eine Frage zu types in BB3D |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich habe jetzt hier durch die viele hilfe des Forums und durch einige investierte Zeit ein 3D Firspersonschooter zusammen gebastelt.Man sieht jetzt also einen Flieger aus der Cockpit Perspektive.Mein Problem ist jetzt nur das ich meinen Flieger auch die Fähigkeit des schiesens nicht vorenthaten will.Nur leider Funktioniert das schiesen immer noch nicht.Warum?
Code: [AUSKLAPPEN] Graphics3D 800,600,0,1
AppTitle "Rammjäger" HidePointer SetBuffer BackBuffer() Global pivot ;Laden der Texturen und Meshs terrain=LoadTerrain("f:\Grassclip.bmp") text1=LoadTexture("f:\Gras.jpg") metallpyramide=LoadMesh("f:\pyramide.x") Gebaude=LoadMesh("f:\house.x") Burg=LoadMesh("f:\Burg.x") himmel=LoadTexture("f:\himmel2.jpg") Baumstumpf=LoadMesh("f:\Baumstumpf.x") Baumstumpf1=LoadMesh("f:\Baumstumpf.x") Baumstumpf2=LoadMesh("f:\Baumstumpf.x") Baumstumpf3=LoadMesh("f:\Baumstumpf.x") cockpit=LoadImage("f:\rearcockpit1.bmp") Fadenkreutz=LoadImage("f:\Fadenkreutz.bmp") ; sprite=CreateSprite () ;das sprite (bullet) ScaleSprite sprite,0.2,0.2 HideEntity sprite ; Type bullets Field sprite Field life Field speed# Field max_life End Type ;Objekt richtig drehen ;Erstellen eines Pivot für die Kollision sky=CreateSphere(32) FlipMesh sky ScaleEntity sky,7000,9000,7000 PositionEntity sky,6500,1000,6800 ;Metallpyramide PositionEntity metallpyramide,5000,20,7800 PositionEntity Baumstumpf,Rand(-2000,6000),5,Rand(-1000,9000) PositionEntity Baumstumpf1,Rand(-2000,6000),5,Rand(-1000,9000) PositionEntity Baumstumpf2,Rand(-2000,6000),5,Rand(-1000,9000) PositionEntity Baumstumpf3,4200,20,9000 ; PositionEntity Burg,5000,-5,8000 ;Das Terrain erstellen und Texturieren EntityTexture terrain,text1,0,0 ScaleEntity terrain,50,60,50 ScaleTexture text1,20,20 ;Spielfigur posizionieren TerrainDetail terrain,8000,True ;Position der Hand ;Position des Hauses PositionMesh Gebaude,9000,-250,-9000 ;Die Textur des Hauses bearbeiten und verwenden EntityTexture sky,himmel RotateMesh Gebaude,180,0,0 ;;;;;;;;;;;;;;;;;;;;;;;;;;------Die Eintsellung der Kamera auf Firstpersonsicht sicht ;; ;; ;Kameravoreinstellungen cam=CreateCamera() PositionEntity cam,5100,2050,8075 ; CameraRange cam,1,80000 light=CreateLight() LightRange light,80000 TurnEntity light,45,45,45 EntityParent light,cam TurnEntity cam,10,106,0 PositionEntity cam,3007,1025,5845 TurnEntity cam,270,0,270 ;Kollisionsabfrage EntityType terrain,2 EntityType cam,1 EntityType Burg,3 EntityType metallpyramide,4 ;Bäume EntityType Baumstumpf,6 EntityType Baumstumpf1,6 EntityType Baumstumpf2,6 EntityType Baumstumpf3,6 ; EntityType sky,5 Collisions 1,2,2,1 Collisions 1,3,2,1 Collisions 1,4,2,1 Collisions 1,5,2,1 Collisions 1,6,2,1 ; EntityOrder sky,1 ;Steuerung des Spieler und der Cam ;;;;;;;;;;;;;;;;;;;;-------Hauptschleife While Not KeyHit(1) If MouseHit(1) Then add_bullet(sprite,150,0.5,cam) move_bullets() ;Mausabfrage RotateEntity cam,EntityPitch(cam)+MouseYSpeed(),EntityYaw(cam)-MouseXSpeed(),0 If Not KeyDown(200)=1 Then MoveEntity cam,0,-15,0 If KeyDown(200)=1 Then MoveEntity cam,0,0,20 If KeyDown(203)=1 Then MoveEntity cam,-20,0,0 If KeyDown(205)=1 Then MoveEntity cam,20,0,0 If KeyHit(35)=1 Then SaveBuffer BackBuffer(),"screenshots.bmp" EndIf If KeyDown(1) Then End UpdateWorld RenderWorld MaskImage cockpit,128,128,255 DrawImage Fadenkreutz,370,250 DrawImage cockpit,0,380 Flip Wend ClearWorld End ;Funktionen Function add_bullet(sprite,max_life,speed#,cam) ;erstellt ein sprite b.bullets=New bullets b\sprite=CopyEntity (sprite) b\max_life=max_life b\speed#=speed# PositionEntity b\sprite,EntityX(cam),EntityY(cam)+10,EntityZ(cam) RotateEntity b\sprite,EntityPitch(cam),EntityYaw(cam),EntityRoll(cam) ShowEntity b\sprite End Function Function move_bullets() ;bewegt die sprites For b.bullets=Each bullets MoveEntity b\sprite,0,0,b\speed# b\life=b\life+1 If b\life>b\max_life Then FreeEntity b\sprite : Delete b Next End Function |
||
Amd Athlon 2200+,Saphire Atlantis Radeon9800pro,1024 MB DDR RAm,40 Gb Festblatte.
'in shâ'a llâh=so Gott will Fertiges Projekt:Invasion der Heuschrecken |
![]() |
simi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Warum machst du 100 Treads zu einem Thema auf????????? | ||
sven123 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ich wollte des eigentlich in meinen alten Thread schreiben ![]() ![]() ![]() |
||
Amd Athlon 2200+,Saphire Atlantis Radeon9800pro,1024 MB DDR RAm,40 Gb Festblatte.
'in shâ'a llâh=so Gott will Fertiges Projekt:Invasion der Heuschrecken |
Darren |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
außerdem würde ich dir empfehlen nur die interessanten codestellen zu posten | ||
sven123 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ja ich werde deinen Tip beachten aber in diesem Falle ist der ganze Code wichtig.Ich habe in diesem kleinen 3d Programm sprites eingebaut die die Schüsse der Waffe darstellen.Die schüsse gehen von der Egoperspektive,von einem Cockpit aus.es funktioniert auch alles(Das die Sprites(Schüsse)fliegen) auser wenn ich diese stelle hinzufüge warum?Und wie kann ich es schaffen das die Schüsse trotzdem zu sehen sind und fliegen und die Codestelle trotzdem so wie sie ist erhalten bleibt!
Hier die Problemstelle. Code: [AUSKLAPPEN] ;Mausabfrage
RotateEntity cam,EntityPitch(cam)+MouseYSpeed(),EntityYaw(cam)-MouseXSpeed(),0 If Not KeyDown(200)=1 Then MoveEntity cam,0,-15,0 If KeyDown(200)=1 Then MoveEntity cam,0,0,20 If KeyDown(203)=1 Then MoveEntity cam,-20,0,0 If KeyDown(205)=1 Then MoveEntity cam,20,0,0 Und hier der ganze code für den nötigen Kontext. Code: [AUSKLAPPEN] Graphics3D 800,600,0,1
AppTitle "Rammjäger" HidePointer SetBuffer BackBuffer() ;Laden der Texturen und Meshs terrain=LoadTerrain("f:\Grassclip.bmp") text1=LoadTexture("f:\Gras.jpg") metallpyramide=LoadMesh("f:\pyramide.x") Gebaude=LoadMesh("f:\house.x") Burg=LoadMesh("f:\Burg.x") himmel=LoadTexture("f:\himmel2.jpg") Baumstumpf=LoadMesh("f:\Baumstumpf.x") Baumstumpf1=LoadMesh("f:\Baumstumpf.x") Baumstumpf2=LoadMesh("f:\Baumstumpf.x") Baumstumpf3=LoadMesh("f:\Baumstumpf.x") cockpit=LoadImage("f:\rearcockpit1.bmp") Fadenkreutz=LoadImage("f:\Fadenkreutz.bmp") ; sprite=CreateSprite () ;das sprite (bullet) ScaleSprite sprite,0.2,0.2 HideEntity sprite Type bullets Field sprite Field life Field speed# Field max_life End Type ;Objekt richtig drehen sky=CreateSphere(32) FlipMesh sky ScaleEntity sky,7000,9000,7000 PositionEntity sky,6500,1000,6800 ;Metallpyramide PositionEntity metallpyramide,5000,20,7800 PositionEntity Baumstumpf,Rand(-2000,6000),5,Rand(-1000,9000) PositionEntity Baumstumpf1,Rand(-2000,6000),5,Rand(-1000,9000) PositionEntity Baumstumpf2,Rand(-2000,6000),5,Rand(-1000,9000) PositionEntity Baumstumpf3,4200,20,9000 ; PositionEntity Burg,5000,-5,8000 ;Das Terrain erstellen und Texturieren EntityTexture terrain,text1,0,0 ScaleEntity terrain,50,60,50 ScaleTexture text1,20,20 ;Spielfigur posizionieren TerrainDetail terrain,8000,True ;Position der Hand ;Position des Hauses PositionMesh Gebaude,9000,-250,-9000 ;Die Textur des Hauses bearbeiten und verwenden EntityTexture sky,himmel RotateMesh Gebaude,180,0,0 ;;;;;;;;;;;;;;;;;;;;;;;;;;------Die Eintsellung der Kamera auf Firstpersonsicht sicht ;; ;; ;Kameravoreinstellungen cam=CreateCamera() PositionEntity cam,5100,2050,8075 ; CameraRange cam,1,80000 light=CreateLight() LightRange light,80000 TurnEntity light,45,45,45 EntityParent light,cam TurnEntity cam,10,106,0 PositionEntity cam,3007,1025,5845 TurnEntity cam,270,0,270 ;Kollisionsabfrage EntityType terrain,2 EntityType cam,1 EntityType Burg,3 EntityType metallpyramide,4 ;Bäume EntityType Baumstumpf,6 EntityType Baumstumpf1,6 EntityType Baumstumpf2,6 EntityType Baumstumpf3,6 ; EntityType sky,5 Collisions 1,2,2,1 Collisions 1,3,2,1 Collisions 1,4,2,1 Collisions 1,5,2,1 Collisions 1,6,2,1 ; EntityOrder sky,1 ;Hauptschleife SetBuffer BackBuffer() While Not KeyHit(1) Cls If MouseHit(1) Then add_bullet(sprite,150,0.5,cam) move_bullets() ;Mausabfrage RotateEntity cam,EntityPitch(cam)+MouseYSpeed(),EntityYaw(cam)-MouseXSpeed(),0 If Not KeyDown(200)=1 Then MoveEntity cam,0,-15,0 If KeyDown(200)=1 Then MoveEntity cam,0,0,20 If KeyDown(203)=1 Then MoveEntity cam,-20,0,0 If KeyDown(205)=1 Then MoveEntity cam,20,0,0 UpdateWorld RenderWorld Flip Wend End Function add_bullet(sprite,max_life,speed#,cam) ;erstellt ein sprite b.bullets=New bullets b\sprite=CopyEntity (sprite) b\max_life=max_life b\speed#=speed# PositionEntity b\sprite,EntityX(cam),EntityY(cam),EntityZ(cam) RotateEntity b\sprite,EntityPitch(cam),EntityYaw(cam),EntityRoll(cam) ShowEntity b\sprite End Function Function move_bullets() ;bewegt die sprites For b.bullets=Each bullets MoveEntity b\sprite,0,0,b\speed# b\life=b\life+1 If b\life>b\max_life Then FreeEntity b\sprite : Delete b Next End Function |
||
Amd Athlon 2200+,Saphire Atlantis Radeon9800pro,1024 MB DDR RAm,40 Gb Festblatte.
'in shâ'a llâh=so Gott will Fertiges Projekt:Invasion der Heuschrecken |
Darren |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
versuch es mal mit:
entityfx bullet,16 es kann sein dass du die sprites nicht siehst obwohl sie da sind |
||
sven123 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
@DarrenSharm
Wo soll ich das einfügen,also an welcher stelle? |
||
Amd Athlon 2200+,Saphire Atlantis Radeon9800pro,1024 MB DDR RAm,40 Gb Festblatte.
'in shâ'a llâh=so Gott will Fertiges Projekt:Invasion der Heuschrecken |
Darren |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
nach dem befehl
bullet=copyentity(sprite) MFG Darren |
||
sven123 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Meinst du so?Funktioniert aber auch nicht!
Code: [AUSKLAPPEN] ;Funktionen
Function add_bullet(sprite,max_life,speed#,cam) ;erstellt ein sprite b.bullets=New bullets b\sprite=CopyEntity (sprite) EntityFX b\sprite,16 b\max_life=max_life b\speed#=speed# PositionEntity b\sprite,EntityX(cam),EntityY(cam)+10,EntityZ(cam) RotateEntity b\sprite,EntityPitch(cam),EntityYaw(cam),EntityRoll(cam) ShowEntity b\sprite End Function |
||
Amd Athlon 2200+,Saphire Atlantis Radeon9800pro,1024 MB DDR RAm,40 Gb Festblatte.
'in shâ'a llâh=so Gott will Fertiges Projekt:Invasion der Heuschrecken |
sven123 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke für euere hilfe jetzt habe ich das Problem endeckt.Ich musste einfach den speed der Sprites erhöhen die waren einfach langsamer als die Kamera. | ||
Amd Athlon 2200+,Saphire Atlantis Radeon9800pro,1024 MB DDR RAm,40 Gb Festblatte.
'in shâ'a llâh=so Gott will Fertiges Projekt:Invasion der Heuschrecken |
Darren |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
supi 8) 8) 8) 8) 8) | ||
sven123 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
jo finde ich auch endlich habe ich es geschafft,aber eine Frage,die ist allerdings sehr Noobig,hätte ich trotzdem noch wie kann ich in BB3d screenshots machen?Wenn ich mir savebuffer ein bild mache hängt sich der computer auf! | ||
Amd Athlon 2200+,Saphire Atlantis Radeon9800pro,1024 MB DDR RAm,40 Gb Festblatte.
'in shâ'a llâh=so Gott will Fertiges Projekt:Invasion der Heuschrecken |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group