Udostępnij przez


Funkcje interfejsu API (Direct3D 10)

Potok grafiki Direct3D 10 reprezentuje fundamentalną zmianę architektury, przebudowaną od podstaw sprzętu i oprogramowania w celu zasilania nowej generacji gier i aplikacji multimedialnych 3D. Korzysta z modelu sterowników wyświetlania systemu Windows (WDDM), który umożliwia ulepszenia wydajności i zachowania, takie jak pamięć wirtualnego procesora GPU.

Deweloperzy zaznajomieni z direct3D 9 odkryją szereg ulepszeń funkcjonalnych i ulepszeń wydajności w wersji Direct3D 10, w tym:

  • Możliwość przetwarzania całych elementów pierwotnych w nowym etapie cieniowania geometrii .
  • Możliwość wyprowadzania danych wierzchołków wygenerowanych przez potok do pamięci przy użyciu etapu strumienia wyjściowego.
  • Organizacja stanu potoku do 5 niezmiennych obiektów stanu , umożliwiając szybką konfigurację potoku.
  • Organizacja stałych cieniowania w stałych , minimalizując obciążenie przepustowości na potrzeby dostarczania danych stałych cieniowania.
  • Możliwość przeprowadzania zamiany materiału pierwotnego i konfiguracji przy użyciu cieniowania geometrii.
  • Nowe typy zasobów (w tym tablice tekstur, które można indeksować z cieniowania) i formaty zasobów.
  • Zwiększona uogólnienie dostępu do zasobów przy użyciu widoku .
  • Starsze bity (limity) możliwości sprzętu zostały usunięte na rzecz bogatego zestawu gwarantowanych funkcji, które są przeznaczone dla sprzętu 10-klasy Direct3D (minimum).
  • Warstwowe środowisko uruchomieniowe — interfejs API Direct3D 10 jest konstruowany z warstwami, począwszy od podstawowych funkcji podstawowych oraz tworzenia opcjonalnych i pomocniczych dla deweloperów funkcji (debugowania itp.) w warstwach zewnętrznych.
  • Pełna integracja HLSL — wszystkie cieniowania Direct3D 10 są zapisywane w programie HLSL i implementowane przy użyciu rdzenia wspólnego cieniowania.
  • Wzrost liczby obiektów docelowych renderowania, tekstur i próbek. Nie ma również limitu długości cieniowania.
  • Operacje cieniowania liczb całkowitych i bitowych.
  • Odczyt zwrotny powierzchni głębokości/wzornika lub wieloprzykładowego zasobu, gdy nie jest już powiązany jako element docelowy renderowania.
  • Obsługa wieloskładników alfa-pokrycie.

Istnieją dodatkowe różnice behawioralne, o których powinni wiedzieć deweloperzy Direct3D 9 (zobacz Direct3D 9 do Direct3D 10 Considerations).

Oto lista funkcji Direct3D 9, które nie są już obsługiwane lub zostały zmienione w direct3D 10 (zobacz Przestarzałe funkcje).

Przewodnik programowania dla Direct3D 10