3D Schüsse Sprites von der seite anders aussehen lassen

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

Dottakopf

Betreff: 3D Schüsse Sprites von der seite anders aussehen lassen

BeitragSo, März 20, 2011 15:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi Blitzer!

ich habe eine ganz simples Problem:

Eine Waffe erstellt Schüsse(Sprites). Diese sollen von hinten(sicht des Schützen) anders aussehen als von der Seite.

Ausssicht des Schützen sieht der Schuss wie eine Kugel aus, und von der Seite soll es eine andere Form haben. Beispiel ein laser...also in die länge gezogen. Wie wird das richtig umgesetzt ? Braucht man da 2 Sprites oder kann man das Sprite irgendwie in die Z richtung scallieren?


hier ein ganz simples Beispiel:
Code: [AUSKLAPPEN]

Graphics3D 640, 480, 16, 2
SetBuffer BackBuffer()



Global shot_timer




Global sprite = LoadSprite("bild.bmp",+4+256) ;sprite laden
PositionEntity sprite, 0, 0, 0
HideEntity sprite


Global waffe = CreateCube() ;eine "waffe"
ScaleEntity waffe,1,1,3



Global camera = CreateCamera(); Cam die sich dreht (um auch die seite schüsse sehen zu können)
MoveEntity camera,0,5,-20

Global CamPivot = CreatePivot()
EntityParent camera,CamPivot
MoveEntity CamPivot,0,0,10



Type shot
   Field shot_x
   Field shot_y
   Field shot_z
   Field shot_sprite
End Type






While Not KeyHit(1)



   create_shot()
   update_shots()




   TurnEntity CamPivot,0,1,0

   UpdateWorld()
   RenderWorld
   Flip
Wend
End




Function create_shot()

   shot_timer=shot_timer+1
   If MouseDown(1) And shot_timer > 20 Then
      shot_timer=0

      s.shot = New shot
         s\shot_sprite = CopyEntity(sprite)
         s\shot_x = EntityX(waffe)
         s\shot_y = EntityY(waffe)
         s\shot_z = EntityZ(waffe)+3
         ShowEntity s\shot_sprite

   End If


      



End Function




Function update_shots()

      For s.shot = Each shot
         MoveEntity s\shot_sprite ,0,0,0.3
      Next



End Function





wie wirds gemacht ?

Gruß
Dottakopf
Rechtschreibfehler gelten der allgemeinen Belustigung!

Mr.Keks

BeitragSo, März 20, 2011 16:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Erstelle einfach ein Mesh, das sozusagen aus drei sich kreuzenden Sprites besteht, die sich nicht zur Kamera ausrichten. Das gibt schon einen hinreichend schicken Effekt, solange es additiv gerendert wird. Der Punkt, wo sich alle drei Flächen schneiden, sollte auch der Mittelpunkt deines Schusses sein. So sind jedenfalls unsere Schüsse in DGX umgesetzt.
MrKeks.net
  • Zuletzt bearbeitet von Mr.Keks am So, März 20, 2011 16:14, insgesamt einmal bearbeitet

Dottakopf

BeitragSo, März 20, 2011 16:12
Antworten mit Zitat
Benutzer-Profile anzeigen
ah okey
Nur kurz die frage, was heißt Additiv rendern? und wie wirds umgesetzt Embarassed
Rechtschreibfehler gelten der allgemeinen Belustigung!

Mr.Keks

BeitragSo, März 20, 2011 16:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Modus 3 bei EntityBlend. B3d-Sprites werden standardmäßig damit erstellt, bei Meshes muss man es manuell festlegen. (Ich habe in dem Beitrag oben noch ein Detail nachgetragen, während deines letzten Posts.)
MrKeks.net

Dottakopf

BeitragSo, März 20, 2011 16:35
Antworten mit Zitat
Benutzer-Profile anzeigen
supi danke !
Rechtschreibfehler gelten der allgemeinen Belustigung!

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group