 |
JLI Spieleprogrammierung
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
HotAcid Super JLI'ler

Alter: 43 Anmeldedatum: 04.08.2002 Beiträge: 372 Wohnort: Berlin Medaillen: Keine
|
Verfasst am: 09.11.2003, 19:19 Titel: Problem mit Sprites |
|
|
Hallo,
bei dem Versuch, ein schönes Sprite anzeigen zu lassen, bleibt mein Bildschirm leider schwarz... ich wüsste nun gerne mal, ob jemand ne Idee hat, woran das liegen könnte...
hier mal ein paar Codefetzen:
Code: | #define QUESTION_MARK "png/fragezeichen%d.png"
//...
for (i=0; i<10; i++)
{
sprintf(Filename,QUESTION_MARK,i);
ResourceManager.AddTexture(Filename);
}
//...
QuestionMark.Create(m_lpD3DDevice,m_lpResManager,8);
QuestionMark.SetPosition(200,600);
for(int i=0;i<10;i++)
{
sprintf(m_Buffer,QUESTION_MARK,i);
QuestionMark.AddTexture(m_lpResManager->GetTexture(m_Buffer)); // bei dieser Zeile passiert es
}
|
das waren jetzt hoffenltich alle relevanten Fetzen!
meine Ordnerstruktur:
Projektverzeichnis
--> debug
--> png / fragezeichen0.png
--> png / ...
--> png / fragezeichen9.png
--> (Quellcode-Dateien)
--> Arbeitsbereichsdatei.dsw
bin für jeden kleinen Tipp dankbar _________________ StGB §§ 328 Abs. 2 Pkt 3:
Mit Freiheitsstrafe bis zu fünf Jahren oder mit Geldstrafe wird bestraft, wer eine nukleare Explosion verursacht. |
|
Nach oben |
|
 |
The Lord of Programming Living Legend

Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 09.11.2003, 21:57 Titel: |
|
|
Verwendest du einen Backbuffer?
Vielleicht hast du dann vergessen zu flippen  _________________ 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 |
|
 |
HotAcid Super JLI'ler

Alter: 43 Anmeldedatum: 04.08.2002 Beiträge: 372 Wohnort: Berlin Medaillen: Keine
|
Verfasst am: 09.11.2003, 22:57 Titel: |
|
|
*arg*
werde dabei noch verrückt...mit dem Backbuffer hats wohl weniger was zu tun, denn:
der folgende Code funktioniert (Aufbau analog zu JLI Asteroids):
main.cpp
Code: | CSprite qm;
//...
WinMain:
Direct3D.BeginScene();
MainMenue.Show();
qm.Draw();
//...
Init:
ResourceManager.AddTexture("png/fragezeichen0.png");
qm.Create(Direct3D.GetDevice(),&ResourceManager,8);
qm.SetPosition(100,600);
qm.AddTexture(ResourceManager.GetTexture("png/fragezeichen0.png")) |
aber wenn ich die letzten drei Anweisungen in die Funktion CMainMenue::createQuestionMark packe, geht es nicht mehr...habe wirklich fast ganz analog zu JLI Asteroids gearbeitet...der einzige Unterschied: ich erzeuge mein Sprite nicht dynamisch, aber daran kanns ja wohl nicht liegen?
dankeschön!
cu Felix _________________ StGB §§ 328 Abs. 2 Pkt 3:
Mit Freiheitsstrafe bis zu fünf Jahren oder mit Geldstrafe wird bestraft, wer eine nukleare Explosion verursacht. |
|
Nach oben |
|
 |
HotAcid Super JLI'ler

Alter: 43 Anmeldedatum: 04.08.2002 Beiträge: 372 Wohnort: Berlin Medaillen: Keine
|
Verfasst am: 10.11.2003, 16:09 Titel: |
|
|
inzwischen bin ich mir sicher, dass ich irgendetwas vergessen habe, aber ich finde den Fehler einfach nicht!!!
hat wirklich niemand ne Idee, woran es liegen könnte?
der Fehler wird durch folgende Zeile verursacht: Code: | QuestionMark->AddTexture(m_lpResManager->GetTexture(m_Buffer)); |
HILFE
cu Felix _________________ StGB §§ 328 Abs. 2 Pkt 3:
Mit Freiheitsstrafe bis zu fünf Jahren oder mit Geldstrafe wird bestraft, wer eine nukleare Explosion verursacht. |
|
Nach oben |
|
 |
Chewie Super JLI'ler
Anmeldedatum: 17.07.2003 Beiträge: 382
Medaillen: Keine
|
Verfasst am: 10.11.2003, 16:21 Titel: |
|
|
Du arbeitest im ersten Code Teil mit einer Instanz von ResourceManager und mit einem Pointer drauf. Falls das gewollt ist, schau mal ob der Pointer eh gesetzt wird und nicht null ist. |
|
Nach oben |
|
 |
HotAcid Super JLI'ler

Alter: 43 Anmeldedatum: 04.08.2002 Beiträge: 372 Wohnort: Berlin Medaillen: Keine
|
Verfasst am: 10.11.2003, 16:26 Titel: |
|
|
ähm...ja... ich will dann doch mal verraten, was los war:
mein fehlerhafter code: Code: |
// GameManager initialisieren
MainMenue.Init(&Direct3D,Direct3D.GetDevice(),&ResourceManager,&DXAudio);
// create textures
// question mark in the mein menue
for (i=0; i<10; i++)
{
sprintf(Filename,QUESTION_MARK,i);
ResourceManager.AddTexture(Filename);
}
|
und so geht es wie von Zauberhand: Code: |
// create textures
// question mark in the mein menue
for (i=0; i<10; i++)
{
sprintf(Filename,QUESTION_MARK,i);
ResourceManager.AddTexture(Filename);
}
// GameManager initialisieren
MainMenue.Init(&Direct3D,Direct3D.GetDevice(),&ResourceManager,&DXAudio); |
dann kann ich jetzt ja beruhigt weiterarbeiten
cu Felix _________________ StGB §§ 328 Abs. 2 Pkt 3:
Mit Freiheitsstrafe bis zu fünf Jahren oder mit Geldstrafe wird bestraft, wer eine nukleare Explosion verursacht. |
|
Nach oben |
|
 |
|
|
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
|