Animationen

Fragen zu Grafik- & Soundproblemen und zur Spieleprogrammierung haben hier ihren Platz.
Benutzeravatar
Marvin133
Beiträge: 80
Registriert: 25.01.2010 15:51
Computerausstattung: Win 7 Home Premium 64 Bit \ PB 4.41 Demo\2.8Ghz QuadCore \4GB RAM\ nVidia GTS 250
Kontaktdaten:

Animationen

Beitrag von Marvin133 »

guten tag zusammen!
ich habe folgendes probel ich möchte ein reuhe von bildern als eine animation dasrstllen mit displaysprite and delay.jetzt habe ich das ganze in ner schleife drin weil ich das immer zeichen möchte wenn ich ein bestimmte tste grdückt habe nur wenn ich die taste drücke malt der pc nur das erste der ganzen sprites wie kann ich das ändern?

http://www.file-upload.net/download-219 ... da.7z.html
Win 7 Home Premium 64 Bit \ PB 4.41 Demo\2.8Ghz QuadCore \4GB RAM\ nVidia GTS 250

Bild
Benutzeravatar
Shadow-Gamer
Beiträge: 152
Registriert: 06.09.2009 13:31
Computerausstattung: NB: Intel P8700, Mobility ATI HD4650, 4GB, Win 7

Re: Animationen

Beitrag von Shadow-Gamer »

diese 2. Repeat-schleife war nicht so schön ne(taskmanager war nötig)^^

guckst du hier:

Code: Alles auswählen

InitSound()
InitSprite() 
                                                   
If InitKeyboard()=0                                               
   MessageRequester("Fehler","Konnte dx nicht finden",0)         
EndIf                                                           

If OpenScreen(800,600,32,"Vollbild") = 0                         
   MessageRequester("Fehler","Konnte kein Vollbild erstellen ",0) 
EndIf
                                                                                            
LoadSprite(1,"Data\Sprites\ZeldaGoWithout\ZeldaGo1.bmp",0)
LoadSprite(2,"Data\Sprites\ZeldaGoWithout\ZeldaGo2.bmp",0)
LoadSprite(3,"Data\Sprites\ZeldaGoWithout\ZeldaGo3.bmp",0)
LoadSprite(4,"Data\Sprites\ZeldaGoWithout\ZeldaGo4.bmp",0)
LoadSprite(5,"Data\Sprites\ZeldaGoWithout\ZeldaGo5.bmp",0)
LoadSprite(6,"Data\Sprites\ZeldaGoWithout\ZeldaGo6.bmp",0)
LoadSprite(7,"Data\Sprites\ZeldaGoWithout\ZeldaGo7.bmp",0)
LoadSprite(8,"Data\Sprites\ZeldaGoWithout\ZeldaGo8.bmp",0)
LoadSprite(9,"Data\Sprites\ZeldaGoWithout\ZeldaGo9.bmp",0)
LoadSprite(10,"Data\Sprites\ZeldaGoWithout\ZeldaGo10.bmp",0)

x=10
y=10

img = 1
For sprite = 1 To 10 Step 1
TransparentSpriteColor(sprite,RGB(255,255,255))
Next 

Repeat                                                 
  ExamineKeyboard()
  FlipBuffers()                                         
  ClearScreen(0)
  DisplayTransparentSprite(img,x,y)
  
  If KeyboardPushed(#PB_Key_Down)
     If img = 10
      img = 1
     Else 
      img+1
      y+1
     EndIf
     Delay(100)  
  If y>=600
      y=0
  EndIf
EndIf   
Until KeyboardPushed(1)
Edit: bissel verbessert
Zuletzt geändert von Shadow-Gamer am 26.01.2010 19:02, insgesamt 1-mal geändert.
Ich versuche ja nicht faul zu sein. :)
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Re: Animationen

Beitrag von Kaeru Gaman »

tjaaa.... bei dem Archiv meckert mein 7zip, "Ircorrect command line".
warum benutzt du nicht ZIP kompression?

und Code darfst du trotzdem posten, es geht nur darum, dass die sprites auch da sind.

ist auch möglicher Weise wieder ein Problem, dass man durch Codelesen alleine auch rausfindet.

ALSO

während die taste gedrückt wird, muss der Frame hochgezählt werden, und zwar immer um eins pro durchlauf.
du kannst also nicht einfach die Variable auf die erste Bildnummer setzen.

möglich wäre auch, dass du erstes Bild und Animationsframes getrennt behandelst, wäre vielleicht sogar einfacher.
Pseudocode:

Code: Alles auswählen

If KeyboardPushed( #PB_Key_Left )
  BasisFrame = #LinksGehn
  AnimFrame +1
  If AnimFrame > LastFrame
    AnimFrame = 0
  EndIf
ElseIf KeyboardPushed( #PB_Key_Right )
  BasisFrame = #RechtsGehn
  AnimFrame +1
  If AnimFrame > LastFrame
    AnimFrame = 0
  EndIf
Else
  BasisFrame = #StillStehn
  AnimFrame = 0
EndIf
DisplaySprite( BasisFrame + AnimFrame, x, y )
PS:
aha, Shadow-Gamer konnte dein Archiv anscheinend öffnen....
ein Delay() benutzt man normalerweise nicht in einer Game schleife, und wenn dann schon garnicht bedingt sondern absolut.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Shadow-Gamer
Beiträge: 152
Registriert: 06.09.2009 13:31
Computerausstattung: NB: Intel P8700, Mobility ATI HD4650, 4GB, Win 7

Re: Animationen

Beitrag von Shadow-Gamer »

Kaeru Gaman hat geschrieben:tjaaa.... bei dem Archiv meckert mein 7zip, "Ircorrect command line".
warum benutzt du nicht ZIP kompression?
hast schon recht, aber mit meinem 7Zip unter Xp hat es gefunzt
Ich versuche ja nicht faul zu sein. :)
Benutzeravatar
Marvin133
Beiträge: 80
Registriert: 25.01.2010 15:51
Computerausstattung: Win 7 Home Premium 64 Bit \ PB 4.41 Demo\2.8Ghz QuadCore \4GB RAM\ nVidia GTS 250
Kontaktdaten:

Re: Animationen

Beitrag von Marvin133 »

ist es möglich dieses programm für jede richtung zu schreiben und dann die ganzen unterprogramme in einem haupt porgramm zu laden?
Win 7 Home Premium 64 Bit \ PB 4.41 Demo\2.8Ghz QuadCore \4GB RAM\ nVidia GTS 250

Bild
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Re: Animationen

Beitrag von Kaeru Gaman »

da ist ganix mit unter- und hauptprogramm.

wenn du dir meinen pseudocode mal anschaust, wirst du sehen, dass sowohl links als auch rechts drin ist.
da stellt es kein problem dar, auch noch hoch und runter dazu zu bauen.
vielleicht dann ein wenig die struktur ändern, oder mit Flags arbeiten.

vielleicht solltest du erstmal ganz grundsätzlich mit Schleifen und Bedingungen arbeiten,
erstmal Grundlagen erlernen und üben, ein paar einfache Demos coden, bevor du dich an ein Spiel setzt.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Marvin133
Beiträge: 80
Registriert: 25.01.2010 15:51
Computerausstattung: Win 7 Home Premium 64 Bit \ PB 4.41 Demo\2.8Ghz QuadCore \4GB RAM\ nVidia GTS 250
Kontaktdaten:

Re: Animationen

Beitrag von Marvin133 »

Wenn man die ganze Bewegungs datei fertig hat kann man das dan als dll speichern und dann im hauptprogramm die dll öffnen und die funktion ausführen?
Win 7 Home Premium 64 Bit \ PB 4.41 Demo\2.8Ghz QuadCore \4GB RAM\ nVidia GTS 250

Bild
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Re: Animationen

Beitrag von Kaeru Gaman »

unter dementsprechendem Aufwand. lass es lieber.

so riesig viel ist das schließlich auch nicht, ein paar dutzend zeilen, die kannst du ohne mit der Wimper zu zucken in die Hauptschleife packen.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Antworten