Direct3D er en komponent i Microsoft DirectX rammer. Det giver en konsistent brugerflade til at få adgang 3D-hardware -og software- enheder, og styres ved hjælp af et programmeringssprog, der har direkte eller wrapper -baseret support til det. Programmering i 3D-miljøer kræver oprettelse af et rør til Direct3D rendering enhed tidligt i programkode , så oplysningerne kan skrives ind i systemet for ændringer og display. Kendt som IDirect3DDevice9 , denne grænseflade er Extensible og stammer fra Component Object Model IUnknown interface. Det giver dig mulighed for at tegne primitiver gennem kode , load ressourcer og komplekse objekter , ændre ansøgning variabler , juster gamma-og farvepalet indstillinger og anvende shaders til dine teksturer . Instruktioner
1
Opret en struct i din kode , der definerer alle parametre , som Direct3D enheden vil blive formaterede. DirectX API definerer en struct kaldet D3DPRESENT_PARAMETERS der indeholder alle relevante områder. Kontakt din SDK hjælpefilen for D3DPRPESENT_PARAMETERS og IDirect3DDevice9 konstruktør. Hjælp-filen er en . Chm dokument placeret i SDK install mappen.
2
Opret en pointer til IDirect3DDevice9 grænseflade, der ikke er initialiseret. Du skal bruge denne pointer til at henvise til singleton IDirect3DDevice9 struktur i hukommelsen. Opret en null pointer med denne kode: IDirect3DDevice9 * p_Device = NULL ;
3
Bestem de parametre , som du ønsker at formatere Direct3D Enhed. . Du bliver nødt til at konsultere SDK reference for en komplet liste over parametre til din version af DirectX , men krævede parametre er adapteren type, acceleration tilstand et håndtag til programmets vindue i Windows , en vertex processing mode , den D3DPRESENT_PARAMETERS struktur og markøren til enheden blev oprettet i Trin 2. .
4
Pass alle parametre via din Direct3D interface. En HRESULT vil blive returneret , der angiver, om operationen var en succes eller en fiasko. For eksempel: .
HRESULT = p_d3di -> CreateDevice ( D3DADAPTER_DEFAULT , D3DDEVTYPE_HAL , appWnd , D3DCREATE_HARDWARE_VERTEXPROCESSING , og p_PresentParams , & p_Device )
5
Udfør en check på HRESULT af handlingen ved brug af flow kontrol operatører. Fortsæt kun hvis du har en Direct3D anordning til at skrive til for at forhindre, at programmet går ned . For eksempel : Hej
if ( FAILED ( HRESULT )) { //deallocate alle ressourcer , display fejl besked boks , opsige program }
.