Direct2D

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca

Direct2Dè una collezione diAPIper lo sviluppo semplificato digraficabidimensionaleevettorialeper sistema operativoMicrosoft Windows.Direct2D è una libreria grafica ad alte prestazioni che mantiene l'interoperabilità con le APIGDIe GDI+ e le APIDirect3D/DirectDraw.[1]È in grado di sfruttare l'accelerazione video, se si sta usando unascheda graficacompatibile.

Caratteristiche

[modifica|modifica wikitesto]

L'API Direct2D è basata sul C++ e interfacciacodice managedcon codice nativo. Come Direct3D, fa uso delCOM,il che rende necessario solo un ridotto grado di astrazione. A differenza di WPF (sigla inglese perWindows Presentation Foundation), Direct2D è una API di rendering "immediate mode" (analogamente al GDI/GDI+), che richiede delle semplici invocazioniBeginDraw/Draw/EndDraw;in Direct2D non esiste il concetto di "scena"; la libreria non conserva strutture ad albero; lo stato delrenderingviene mantenuto tra le diverse richieste di disegno.

Direct2D riesce a minimizzare l'utilizzo CPU e può usarerendering hardware,su una scheda grafica che supportaDirect3d 10.1e/oDirect3D 10 Feature Level 9con i driverWDDM 1.1;il rendering software viene usato comefallback(ed è implementato tramiteWARP10) nei casi in cui non si può accedere all'hardware, come nellasessione 0,e per il rendering remoto lato server.

Le performance e l'utilizzo di memoria di Direct2D variano linearmentewith primitive counts[non chiaro]sia nel software, sia nello hardware.

Direct2D supporta le seguenti funzionalità:

  • rendering di testoClearType(fornito daDirectWrite)
  • antialiasingprimitiva per primitiva
  • Comandi didrawefill,per forme geometriche (segmenti, curve) e per immagini raster
  • pennelli che usano un colore fisso, con gradiente (lineare o radiale), e immagini raster.
  • rendering su livelli intermedi
  • Operazioni sulle figure geometriche (per es. unione, intersezione, allargamento, disegno del contorno, ecc.)

Direct2D permette di ottenere interoperabilità con GDI, GDI+ e Direct3D e permette di effettuare il rendering da e verso una superficie Direct3D, oppure undevice context(HDC) GDI/GDI+ (con la piena serializzazione delle superfici e deidevice context,il che le permette di lavorare con altre tecnologie native per Windows comeDirectWrite,Windows Imaging Component,ecc.) Questa interoperabilità permette allo sviluppatore di sostituire gradualmente sequenze di codice critiche con codice che usi Direct2D, senza dover modificare l'interocodice sorgente.

Direct2D usa unsistema di coordinatedevice-independent,il che consente di ridimensionare le coordinate in automatico, in funzione di impostazioni DPI diverse e che dipendono dalle risoluzioni video e dalle dimensioni delle periferiche di output.

Implementazioni

[modifica|modifica wikitesto]

Internet Explorer 9eMozilla Firefox 4usano Direct2D eDirectWrite.[2]

  1. ^Direct2D,sumsdn.microsoft.URL consultato il 26 marzo 2011.
  2. ^Microsoft isn't the only one developing a hardware-accelerated browserArchiviatoil 24 settembre 2019 inInternet Archive., 24 novembre, 2009.

Collegamenti esterni

[modifica|modifica wikitesto]