AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Direct2D 1.1 CreateDeviceContext
Thema durchsuchen
Ansicht
Themen-Optionen

Direct2D 1.1 CreateDeviceContext

Ein Thema von SonnyBoyPro · begonnen am 31. Jan 2014 · letzter Beitrag vom 4. Feb 2014
 
SonnyBoyPro

Registriert seit: 9. Mai 2007
68 Beiträge
 
#4

AW: Direct2D 1.1 CreateDeviceContext

  Alt 31. Jan 2014, 21:19
hab so übersetzt:
Delphi-Quellcode:
ID2D1Factory1 = interface(ID2D1Factory)
        ['{bb12d362-daee-4b9a-aa1d-14ba401cfa1f}']

        function CreateDevice(dxgiDevice: IDXGIDevice; out d2dDevice: ID2D1Device): HResult; stdcall;
momentan kämpf ich halt auf zwei Fronten: zum einen das Framework kapieren und zum anderen übersetzen. Und bin mir momentan auch nicht sicher ob ich
falsch übersetzt oder falsch angewendet habe.

Zum Aufruf:
die Klasse vom ID2D1Device ist beim Aufruf nicht nil. GetMaximumTextureMemory z.B. liefert einen Wert zurück.


Über D2D1CreateDeviceContext schaff ich's zumindest schon mal einen ID2D1DeviceContext für eine D11-Texture zu kreieren und darauf zu zeichnen

kurzes Code-Schnippsel:
Delphi-Quellcode:
hr := DeviceD11.CreateTexture2D(texDesc, nil, m_pOffscreenTexture);
    hr := DeviceD11.CreateShaderResourceView(m_pOffscreenTexture, nil, m_pTextureRV);

    { Direct2D 1.1 }
    D2D1CreateFactory(D2D1_FACTORY_TYPE_MULTI_THREADED, ID2D1Factory1, nil, gD2DFactory);
    DWriteCreateFactory(DWRITE_FACTORY_TYPE_SHARED, IDWriteFactory, IUnknown(gDWriteFactory));

    gDWriteFactory.CreateTextFormat('Calibri', nil, DWRITE_FONT_WEIGHT_REGULAR, DWRITE_FONT_STYLE_NORMAL, DWRITE_FONT_STRETCH_NORMAL, 72.0, 'de-gr',
        FTextFormat);
    FTextFormat.SetWordWrapping(DWRITE_WORD_WRAPPING_NO_WRAP);
    lDxgiSurface := nil;
    hr := m_pOffscreenTexture.QueryInterface(IDXGISurface, lDxgiSurface);
    hr := D2D1CreateDeviceContext(lDxgiSurface, TD2D1_CREATION_PROPERTIES(nil^),m_d2dContext);
    m_d2dContext.SetTextAntialiasMode(D2D1_TEXT_ANTIALIAS_MODE_GRAYSCALE);
Ergebnis siehe Anhang. Zwar noch nicht viel aber zumindest funktioniert's mal Direct2D 1.1 in Kombination mit Direct3D11

Sobald ich mal ne halbwegs fertig übersetzte Version habe bekommt die Community natürlich das Ergebnis zur Verfügung gestellt

bg
Angehängte Grafiken
Dateityp: jpg DirectD3D11_D21_Test.jpg (60,4 KB, 29x aufgerufen)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:14 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz