JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=aa2be35dc198ce8562b996f1778a6627Medaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Sprite mit einem File animieren

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> DirectX, OpenGL
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Beni5
Super JLI'ler


Alter: 36
Anmeldedatum: 12.11.2003
Beiträge: 310
Wohnort: Switzerland
Medaillen: Keine

BeitragVerfasst am: 15.12.2003, 10:47    Titel: Sprite mit einem File animieren Antworten mit Zitat

Hallo!

Ich bin gerad ebeim Kapitel wo man Sprites animieren lernt. Jetzt wollte ich mal probieren das mit 1 File zu tun , wie es beim rpg maker ist.
Und dazu hab ich die Methode Sprite um eine Variable size erweitert. Dort muss man angeben wie gross ein Bildchen des ganzen Bildes ist , also von einer Animation. ( Bsp. das bild ist 512x32 , dann ist eines 32).
Nun habe ich in der Draw funktion noch eine Schleife gemacht, jedoch stürzt er jetzt ab oder er zeichnet nur 1 Bild. Hier ist der Code:

Code:
// Sprite zeichnen
void CSprite::Draw(int size)
{
   int NumberOfFrame=0;

   while(1)
   {
   while(NumberOfFrame <= m_Width/size)
   {
   RECT FrameNumber = {0,0,0,0};

   FrameNumber.left   =NumberOfFrame*size;   
    FrameNumber.right  =NumberOfFrame*size+size;
    FrameNumber.top    =0;
   FrameNumber.bottom =size;

    m_lpSprite->Draw(m_lpTexture,
                     &FrameNumber,
                     &m_vScale,
                     &m_vRotationCenter,
                     m_Rotation,
                     &m_vPosition,
                     0xFFFFFFFF);
   NumberOfFrame++;
   }
   NumberOfFrame=0;
   }
}
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 15.12.2003, 12:17    Titel: Antworten mit Zitat

http://www.jliforum.de/board/viewtopic.php?t=1654

Das ist doch im Grunde das gleiche von dir nur das du eine zusätzliche Variable hast.
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beni5
Super JLI'ler


Alter: 36
Anmeldedatum: 12.11.2003
Beiträge: 310
Wohnort: Switzerland
Medaillen: Keine

BeitragVerfasst am: 15.12.2003, 12:41    Titel: Antworten mit Zitat

Ne überhaupt net , hier geht's um Sprites und damals war es keine Animation. Ich weiss es funktioniert ähnlich , und das problem damals habe ich gelöst und jetzt verwende ich ein teil des gleichen codes. Das Problem muss irgendwo anders liegen...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
The Lord of Programming
Living Legend


Alter: 37
Anmeldedatum: 14.03.2003
Beiträge: 3122

Medaillen: Keine

BeitragVerfasst am: 15.12.2003, 12:45    Titel: Antworten mit Zitat

Hast du mal versucht rauszufinden, wann genau der Fehler auftritt?
Z.B. mit Debuggen.

PS: Vielleicht übergibst du ja auch eine falsche Größe als Parameter Wink
_________________
www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console


Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Chewie
Super JLI'ler



Anmeldedatum: 17.07.2003
Beiträge: 382

Medaillen: Keine

BeitragVerfasst am: 15.12.2003, 13:05    Titel: Antworten mit Zitat

Code:

while (1)


Question Question
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 15.12.2003, 13:10    Titel: Antworten mit Zitat

LOL, gut erkannt.
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
The Lord of Programming
Living Legend


Alter: 37
Anmeldedatum: 14.03.2003
Beiträge: 3122

Medaillen: Keine

BeitragVerfasst am: 15.12.2003, 13:18    Titel: Antworten mit Zitat

Das hab ich mir auch schon gedacht, aber dann dürfte das Proggy eigentlich nicht Abstürzen, sondern einfach nur in einer Endlosschleife laufen Wink
_________________
www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console


Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beni5
Super JLI'ler


Alter: 36
Anmeldedatum: 12.11.2003
Beiträge: 310
Wohnort: Switzerland
Medaillen: Keine

BeitragVerfasst am: 15.12.2003, 14:00    Titel: Antworten mit Zitat

ja es liegt auch am while(1), aber wenn ich es anderst mache wird es garnicht animiert... und ich will ja das e sdie ganze zeit animiert ist
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 15.12.2003, 15:00    Titel: Antworten mit Zitat

Dazu vererwendet man auch meist eine Funktion Tick() die jeden Hauptschleifendurchgabng für jedes Objekt (Sprite) aufgerufen wird.

Diese Funktion sollte dann die FrameNummer erhöhen. So hast du dann keine Endlosschleife.
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beni5
Super JLI'ler


Alter: 36
Anmeldedatum: 12.11.2003
Beiträge: 310
Wohnort: Switzerland
Medaillen: Keine

BeitragVerfasst am: 15.12.2003, 15:48    Titel: Antworten mit Zitat

Ah ich hab's gelöst.. die while schlefie war überflüssig weil es ja sowieso schon ne endlosschleife hat.
vielen dank an euch Very Happy
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> DirectX, OpenGL Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum