Da ich wieder Zeit und Muse gefunden habe an meinem Projekt weiter zu arbeiten, habe ich, um Text auf den Bildschirm zu bekommen, D2D 1.1 in meinem D3D11 Projekt eingebunden. Auf Windows 8/8.1/10 klappt auch alles, auf Windows 7 (mit KB2670838) sehe ich den Text nicht und bekomme auch keine Fehlermeldung zurück. Muss ich für Win7 irgend was spezielles beachten oder kann das ein Treiber Problem sein?
Die Initialisierung sieht im wesentlich so aus:
Code: Alles auswählen
if (FAILED(D2D1CreateFactory(D2D1_FACTORY_TYPE_SINGLE_THREADED, options, &factory)))
MessageBox(0, "[D2D1] Create Factory", "Error", MB_OK | MB_ICONERROR);
if (FAILED(swapchain->GetBuffer(0, IID_PPV_ARGS(&back_buffer))))
MessageBox(0, "[D2D1] Get Back Buffer", "Error", MB_OK | MB_ICONERROR);
if (FAILED(factory->CreateDxgiSurfaceRenderTarget(back_buffer,
D2D1::RenderTargetProperties(D2D1_RENDER_TARGET_TYPE_DEFAULT, D2D1::PixelFormat(DXGI_FORMAT_UNKNOWN, D2D1_ALPHA_MODE_PREMULTIPLIED)
), &render_target)))
MessageBox(0, "[D2D1] Create Render Target", "Error", MB_OK | MB_ICONERROR);
Code: Alles auswählen
render_target->BeginDraw();
render_target->DrawText(.....);
render_target->EndDraw();