cygwin_exception::open_stackdumpfile Fehlermeldung
-
Hallo,
ich verfolge ein DirectX11-Tutorial (http://www.directxtutorial.com/LessonList.aspx?listid=11) und erhalte bei Code aus "Lesson 3: Rendering Frames"(http://www.directxtutorial.com/Lesson.aspx?lessonid=11-4-3)
folgende Fehlermeldung:cygwin_exception::open_stackdumpfile: Dumping stack trace to datei.exe.stackdump
Nach Auskommentieren von Code habe ich erkannt, dass die Fehlerursache
in der Zeileswapchain->GetBuffer(0, __uuidof(ID3D11Texture2D), (LPVOID*)&pBackBuffer);
liegt. Den 3. Parameter habe ich mal NULL gesetzt, dennoch die gleiche
Fehlermeldung. Den 2.Parameter konnte ich jedoch nicht NULL setzen, da die
Funktion sonst nicht erkannt wird.
-
Zeig mal Deinen kompletten Code.
-
Hast du denn den Code für
InitD3D
aus Lesson 2 beibehalten, so daßswapchain
initialisiert wird?
Das ist, was mit// Direct3D initialization // ...
gemeint ist.
-
Den Code habe ich über copy and paste übernommen.
Als einzige Änderung wurde in der RenderFrame()-Funktion in Zeiledevcon->ClearRenderTargetView(backbuffer, D3DXCOLOR(0.0f, 0.2f, 0.4f, 1.0f));
der 2. Parameter ersetzt, da D3DXCOLOR nicht erkannt wird.
float clearColor[4] = { 0.0f, 0.0f, 0.25f, 1.0f }; devcon->ClearRenderTargetView(backbuffer, clearColor);
-
Dann hast du beim C&P trotzdem etwas falsch gemacht.
Zeige doch einfach mal deineInitD3D
-Funktion.
-
void InitD3D(HWND hWnd){ DXGI_SWAP_CHAIN_DESC scd; ZeroMemory(&scd, sizeof(DXGI_SWAP_CHAIN_DESC)); scd.BufferCount = 1; scd.BufferDesc.Format = DXGI_FORMAT_R8G8B8A8_UNORM; scd.BufferUsage = DXGI_USAGE_RENDER_TARGET_OUTPUT; scd.OutputWindow = hWnd; scd.Windowed = TRUE; // create a device, device context and swap chain D3D11CreateDeviceAndSwapChain(NULL, D3D_DRIVER_TYPE_HARDWARE, NULL, NULL, NULL, NULL, D3D11_SDK_VERSION, &scd, &swapchain, &dev, NULL, &devcon); //get the address of the back buffer ID3D11Texture2D *pBackBuffer; swapchain->GetBuffer(0, __uuidof(ID3D11Texture2D),(LPVOID*)&pBackBuffer); }
-
Überprüfe mal den Rückgabewert von D3D11CreateDeviceAndSwapChain bzw. schau mal welchen Wert
swapchain
nach dem Aufruf hat.Verwendest du denn eine IDE, wo du den Code auch debuggen kannst?
PS: Schon wieder Code, wo der Rückgabewert nicht überprüft wird (hatte ich gerade in einem anderen Forum auch)...