JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

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

DrawText
Gehe zu Seite Zurück  1, 2, 3
 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> DirectX, OpenGL
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
GreveN
JLI Master


Alter: 37
Anmeldedatum: 08.01.2004
Beiträge: 901
Wohnort: Sachsen - Dresden
Medaillen: Keine

BeitragVerfasst am: 06.06.2006, 14:51    Titel: Antworten mit Zitat

Einen möglichen Fehler hab' ich glaub ich in deinem Source gefunden: Du versuchst "menubild.jpeg" zuladen, die Datei heißt aber nicht so. Aber kA, ob's das ist... ;)

Übrigens dein 'CreateD3DFont' in 'DrawText' ist auch komisch, der Aufruf gehört in den Konstruktor der Klasse oder von außen getätigt.

Weiß allerdings auch nicht, ob du den Source inzwischen überarbeitet hast, den du vorhins hoch geladen hattest.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Yahoo Messenger MSN Messenger
matmaster
Junior JLI'ler



Anmeldedatum: 18.02.2006
Beiträge: 67
Wohnort: Wien
Medaillen: Keine

BeitragVerfasst am: 06.06.2006, 15:09    Titel: Antworten mit Zitat

Die datei heißt "menubild.jpeg".

Ich habe es jetzt aufgeteil so wie du es gesagt hat (glaube es zumindest das du das so gemeint hast)

Hier ist das aufgeteilte Projekt : Projekt
Es funktioniert leider nur wenn ich das Surface nicht benutze, weil irgendetwas mit dem Surface nicht stimmt.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
GreveN
JLI Master


Alter: 37
Anmeldedatum: 08.01.2004
Beiträge: 901
Wohnort: Sachsen - Dresden
Medaillen: Keine

BeitragVerfasst am: 06.06.2006, 15:13    Titel: Antworten mit Zitat

Also die Datei heißt "menubild.jpg", ich weiß nicht, ob die D3DX-Funktion diesen Tippfehler automatisch kompensiert, fände ich etwas unlogisch.

Edit:
CPP:
CDirect3D Direct3;

...

void CSurface::LoadSurface(char* FilePath)
{
    Direct3.GetDevice()->CreateOffscreenPlainSurface(
                                        800,
                                        600,
                                        D3DFMT_A8R8G8B8,
                                        D3DPOOL_DEFAULT,
                                        &m_lpSurface,
                                        0);

     Direct3.GetDevice()->GetBackBuffer(0, 0,
                          D3DBACKBUFFER_TYPE_MONO,
                           &m_lpBackBuffer);

    D3DXLoadSurfaceFromFile(m_lpSurface,
                            NULL,
                            NULL,
                            FilePath,
                            NULL,
                            D3DX_FILTER_NONE,
                            0,
                            NULL);
}

So ist das Murks, übergib Lieber wieder einen Zeiger auf das Device, so wie ich das vorhin bei dem Font-Problem vorgeschlagen hatte.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Yahoo Messenger MSN Messenger
matmaster
Junior JLI'ler



Anmeldedatum: 18.02.2006
Beiträge: 67
Wohnort: Wien
Medaillen: Keine

BeitragVerfasst am: 06.06.2006, 18:18    Titel: Antworten mit Zitat

Zitat:
Also die Datei heißt "menubild.jpg"

Du hast recht jetzt merk ichs erst.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
matmaster
Junior JLI'ler



Anmeldedatum: 18.02.2006
Beiträge: 67
Wohnort: Wien
Medaillen: Keine

BeitragVerfasst am: 06.06.2006, 19:49    Titel: Antworten mit Zitat

Ich habe es geschafft es funktioniert ! Very Happy
Es wird das Bild angezeigt und der Text auch.

Aber : Wenn ich das Programm beende kommt eine Fehlermeldung in der steht:
Die Ausnahme "unknow software exception" (0x80000003) ist in der Anwendung an der Stelle 0x7c911230 aufgetreten.

Was bedeutet das ?, und woher soll ich wissen welche Stelle das "0x7c911230" ist ?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jonathan_Klein
Living Legend


Alter: 37
Anmeldedatum: 17.02.2003
Beiträge: 3433
Wohnort: Siegerland
Medaillen: Keine

BeitragVerfasst am: 06.06.2006, 20:02    Titel: Antworten mit Zitat

Wie wäre es mit Debuggen?
DebugBuild erstellen im Fenster modus starten, und hoffen das ein Fenster kommt in dem du auf Debug klicken kannst, dann öffnet sich VC und zeigt dir genau die Stelle an wo es abgestürtzt ist, mitsamt dem Inhalten sämtlicher Variablen usw.
_________________
https://jonathank.de/games/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
GreveN
JLI Master


Alter: 37
Anmeldedatum: 08.01.2004
Beiträge: 901
Wohnort: Sachsen - Dresden
Medaillen: Keine

BeitragVerfasst am: 06.06.2006, 20:08    Titel: Antworten mit Zitat

Glückwunsch, war ja 'ne schwere Geburt. :P

Exceptions können an vielen Stellen geworfen werden, ich würde als erstes mal die Exceptions fangen, die die Standardlib und die STL werfen... Unter Umständen bist du der Problemlösung damit schon ein ganzes Stückchen näher, könnte nämlich einfach ein falsch eingesetzter STL-Algorithmus sein, ein Container der Ärger macht, oder auch einfach nur ein überdimensioniertes 'new'.

Also den ganzen Code, der fehlerträchtig sein könnte mal in einen 'try'-Block stopfen und einen 'std::exception'-Handler dazu basteln:
CPP:
#include <exception>

...

try
{
// Hier kommt der auszuführende Code hin!
}
catch(const std::exception& except)
{
// Die Methode 'what' von except liefert einen String zurück, der Näheres über den Fehler aussagt, also den Rückgabewert ausgeben/loggen.
}
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Yahoo Messenger MSN Messenger
matmaster
Junior JLI'ler



Anmeldedatum: 18.02.2006
Beiträge: 67
Wohnort: Wien
Medaillen: Keine

BeitragVerfasst am: 07.06.2006, 18:33    Titel: Antworten mit Zitat

Zitat:
Aber : Wenn ich das Programm beende kommt eine Fehlermeldung in der steht:
Die Ausnahme "unknow software exception" (0x80000003) ist in der Anwendung an der Stelle 0x7c911230 aufgetreten.

Ich habe gerade herausgefunden das diese Fehlermelung nur an meinem Computer angezeigt wird. Als ich es bei meinem Freund ausprobiert habe ging es ohne Fehlermeldung. Und wenn ich das Spiel BOOM von Fallen beende kommt die Fehlermeldung auch.

Also glaube ich das mein PC ein Fehler hat.
Was soll ich jetzt tun?, hat jemand vielleicht ne ahnung wie ich den Fehler irgendwie beseitigen kann?

@Greven
ich habe getan was du gesagt hast. Leider ohne Erfolg

@Jonathan_Klein
Zitat:
DebugBuild erstellen im Fenster modus starten, und hoffen das ein Fenster kommt in dem du auf Debug klicken kannst, dann öffnet sich VC und zeigt dir genau die Stelle an wo es abgestürtzt ist, mitsamt dem Inhalten sämtlicher Variablen usw.

Wenn ich bWindowed auf TRUE setze und auf build drücke, dann funktioniert es gar nicht(es wird nicht einmal ein Fenster angezeigt)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jonathan_Klein
Living Legend


Alter: 37
Anmeldedatum: 17.02.2003
Beiträge: 3433
Wohnort: Siegerland
Medaillen: Keine

BeitragVerfasst am: 07.06.2006, 19:30    Titel: Antworten mit Zitat

du musst herausfinden, bei welche Zeile es abstürtzt. Das ginge mit einem Logbuch oder mit einem debugger.
Dann kansnte vielelicht ein try...catch block machen, um die exception zu fangen. Somit verhinderst du zumindest den Programm absturtzt.
Evtl. auch einfach ncohmal anders coden vielleicht gehts ja dann (hat mir bei einem ähnlichen Problem geholfen).
_________________
https://jonathank.de/games/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
OLiver
Super JLI'ler


Alter: 33
Anmeldedatum: 29.06.2003
Beiträge: 306
Wohnort: Jena
Medaillen: Keine

BeitragVerfasst am: 08.06.2006, 12:14    Titel: Antworten mit Zitat

Meistens kommen auch solche AVs am Ende wenn irgendwelcher Speicher nicht freigegeben wurde.
_________________
http://www.sieder25.org/ (Siedler 2 - Remake)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> DirectX, OpenGL Alle Zeiten sind GMT
Gehe zu Seite Zurück  1, 2, 3
Seite 3 von 3

 
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