Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Legend

Alter Hase

Beiträge: 731

Beruf: Softwareentwickler

  • Private Nachricht senden

11

02.08.2013, 17:21

Dann ist shader schon hin.
"Wir müssen uns auf unsere Kernkompetenzen konzentrieren!" - "Juhu, wir machen eine Farm auf!"

Netzwerkbibliothek von mir, C#, LGPL: https://sourceforge.net/projects/statetransmitt/

12

02.08.2013, 17:49

Ich hab das delete shader; mal kommentiert, gab keinen Fehler, woher weiß ich jetzt das der zeiger gelöscht wurde?

Legend

Alter Hase

Beiträge: 731

Beruf: Softwareentwickler

  • Private Nachricht senden

13

02.08.2013, 17:52

Setzt doch mal nen Breakpoint in den Destruktor der Klasse von shader.
"Wir müssen uns auf unsere Kernkompetenzen konzentrieren!" - "Juhu, wir machen eine Farm auf!"

Netzwerkbibliothek von mir, C#, LGPL: https://sourceforge.net/projects/statetransmitt/

14

02.08.2013, 17:54

Nein, das Programm wird nicht durch den Breakpoint beendet.

15

02.08.2013, 17:55

In der Ausgabe steht das:

Quellcode

1
2
3
4
5
6
Der Thread 0x1b88 hat mit Code 0 (0x0) geendet.
DXGI WARNING: Process is terminating. Using simple reporting. Please call ReportLiveObjects() at runtime for standard reporting. [ STATE_CREATION WARNING #0: ]
DXGI WARNING: Live Producer at 0x0048CEE0, Refcount: 4. [ STATE_CREATION WARNING #0: ]
DXGI WARNING:   Live Object at 0x00494730, Refcount: 2. [ STATE_CREATION WARNING #0: ]
DXGI WARNING: Live                         Object :      1 [ STATE_CREATION WARNING #0: ]
Das Programm "[8124] testGame.exe" wurde mit Code 0 (0x0) beendet.

FSA

Community-Fossil

  • Private Nachricht senden

16

02.08.2013, 21:08

Zitat von »SuperManitu«

Nein, das Programm wird nicht durch den Breakpoint beendet.

Ähm ja das ist richtig. Du sollst den Breakpoint in den Destruktor setzen. Denk mal nach warum.
Tipp: Dein Fehler entsteht doch im Destruktor...

Zitat

Der RCCSWU (RandomCamelCaseSomtimesWithUndersquare) Stil bricht auch mal mit den veraltet strukturierten Denkmustern und erlaubt dem Entwickler seine Kreativität zu entfalten.

17

03.08.2013, 11:35

Der Fehler entsteht bei

C-/C++-Quelltext

1
pPS->Release();

dort wird der

C-/C++-Quelltext

1
ID3D11PixelShader* pPS;

wieder freigegeben

FSA

Community-Fossil

  • Private Nachricht senden

18

03.08.2013, 15:28

Hui du stehst aber auf der Leitung ;) oder ich verstehe dich nur nicht.
Hast du den Breakpoint an die Fehlerstelle gesetzt?
Wenn ja: Prüfe einfach, ob zwei mal bei deinem Breakpoint gehalten wird. Wenn das so ist, ist das zweite mal nicht richtig.
Wenn nein: Versuche ein bisschen mit dem Debugger zu arbeiten. Er ist ein unglaublich mächtiges Tool.

Zitat

Der RCCSWU (RandomCamelCaseSomtimesWithUndersquare) Stil bricht auch mal mit den veraltet strukturierten Denkmustern und erlaubt dem Entwickler seine Kreativität zu entfalten.

19

03.08.2013, 15:42

Ich bin mir nicht sicher ob ich dich richtig verstehe, aber der destruktor wird nur einmal beim beenden des programms ausgeführt.
Das Problem ist das Freigeben der beiden Zeiger.
Die beiden sind aber nicht leer, das habe ich getestet.

FSA

Community-Fossil

  • Private Nachricht senden

20

03.08.2013, 18:40

Lade mal bitte den kompletten Code in richtiger Formatierung hoch. Ich kann dir so nicht effektiv helfen.

Zitat

Der RCCSWU (RandomCamelCaseSomtimesWithUndersquare) Stil bricht auch mal mit den veraltet strukturierten Denkmustern und erlaubt dem Entwickler seine Kreativität zu entfalten.

Werbeanzeige