Struktur D3DCAPS9 (d3d9caps.h)

Mewakili kemampuan perangkat keras yang diekspos melalui objek Direct3D.

Sintaks

typedef struct _D3DCAPS9 {
  D3DDEVTYPE        DeviceType;
  UINT              AdapterOrdinal;
  DWORD             Caps;
  DWORD             Caps2;
  DWORD             Caps3;
  DWORD             PresentationIntervals;
  DWORD             CursorCaps;
  DWORD             DevCaps;
  DWORD             PrimitiveMiscCaps;
  DWORD             RasterCaps;
  DWORD             ZCmpCaps;
  DWORD             SrcBlendCaps;
  DWORD             DestBlendCaps;
  DWORD             AlphaCmpCaps;
  DWORD             ShadeCaps;
  DWORD             TextureCaps;
  DWORD             TextureFilterCaps;
  DWORD             CubeTextureFilterCaps;
  DWORD             VolumeTextureFilterCaps;
  DWORD             TextureAddressCaps;
  DWORD             VolumeTextureAddressCaps;
  DWORD             LineCaps;
  DWORD             MaxTextureWidth;
  DWORD             MaxTextureHeight;
  DWORD             MaxVolumeExtent;
  DWORD             MaxTextureRepeat;
  DWORD             MaxTextureAspectRatio;
  DWORD             MaxAnisotropy;
  float             MaxVertexW;
  float             GuardBandLeft;
  float             GuardBandTop;
  float             GuardBandRight;
  float             GuardBandBottom;
  float             ExtentsAdjust;
  DWORD             StencilCaps;
  DWORD             FVFCaps;
  DWORD             TextureOpCaps;
  DWORD             MaxTextureBlendStages;
  DWORD             MaxSimultaneousTextures;
  DWORD             VertexProcessingCaps;
  DWORD             MaxActiveLights;
  DWORD             MaxUserClipPlanes;
  DWORD             MaxVertexBlendMatrices;
  DWORD             MaxVertexBlendMatrixIndex;
  float             MaxPointSize;
  DWORD             MaxPrimitiveCount;
  DWORD             MaxVertexIndex;
  DWORD             MaxStreams;
  DWORD             MaxStreamStride;
  DWORD             VertexShaderVersion;
  DWORD             MaxVertexShaderConst;
  DWORD             PixelShaderVersion;
  float             PixelShader1xMaxValue;
  DWORD             DevCaps2;
  float             MaxNpatchTessellationLevel;
  DWORD             Reserved5;
  UINT              MasterAdapterOrdinal;
  UINT              AdapterOrdinalInGroup;
  UINT              NumberOfAdaptersInGroup;
  DWORD             DeclTypes;
  DWORD             NumSimultaneousRTs;
  DWORD             StretchRectFilterCaps;
  D3DVSHADERCAPS2_0 VS20Caps;
  D3DPSHADERCAPS2_0 PS20Caps;
  DWORD             VertexTextureFilterCaps;
  DWORD             MaxVShaderInstructionsExecuted;
  DWORD             MaxPShaderInstructionsExecuted;
  DWORD             MaxVertexShader30InstructionSlots;
  DWORD             MaxPixelShader30InstructionSlots;
} D3DCAPS9;

Anggota

DeviceType

Jenis: D3DDEVTYPE

Anggota jenis enumerasi D3DDEVTYPE , yang mengidentifikasi jenis sumber daya apa yang digunakan untuk memproses simpul.

AdapterOrdinal

Jenis: UINT

Adapter tempat perangkat Direct3D ini dibuat. Ordinal ini hanya valid untuk diteruskan ke metode antarmuka IDirect3D9 yang membuat perangkat Direct3D ini. Antarmuka IDirect3D9 selalu dapat diambil dengan memanggil GetDirect3D.

Caps

Jenis: DWORD

Kemampuan khusus driver berikut.

Nilai Makna
D3DCAPS_READ_SCANLINE
Piranti keras tampilan mampu mengembalikan baris pemindaian saat ini.
D3DCAPS_OVERLAY
Driver tampilan mendukung DDI overlay yang memungkinkan verifikasi kemampuan overlay. Untuk informasi selengkapnya tentang DDI overlay, lihat Overlay DDI.
Perbedaan antara Direct3D 9 dan Direct3D 9Ex:

Bendera ini hanya tersedia di Direct3D 9Ex.

 

Caps2

Jenis: DWORD

Kemampuan khusus driver yang diidentifikasi di D3DCAPS2.

Caps3

Jenis: DWORD

Kemampuan khusus driver yang diidentifikasi dalam D3DCAPS3.

PresentationIntervals

Jenis: DWORD

Masker bit nilai yang mewakili interval pertukaran presentasi apa yang tersedia.

Nilai Makna
D3DPRESENT_INTERVAL_IMMEDIATE
Driver mendukung interval pertukaran presentasi langsung.
D3DPRESENT_INTERVAL_ONE
Driver mendukung interval pertukaran presentasi dari setiap refresh layar.
D3DPRESENT_INTERVAL_TWO
Driver mendukung interval pertukaran presentasi dari setiap refresh layar kedua.
D3DPRESENT_INTERVAL_THREE
Driver mendukung interval pertukaran presentasi dari setiap refresh layar ketiga.
D3DPRESENT_INTERVAL_FOUR
Driver mendukung interval pertukaran presentasi dari setiap refresh layar keempat.

CursorCaps

Jenis: DWORD

Masker bit yang menunjukkan dukungan perangkat keras apa yang tersedia untuk kursor. Direct3D 9 tidak menentukan kemampuan kursor alpha-blending.

Nilai Makna
D3DCURSORCAPS_COLOR
Kursor penuh warna didukung dalam perangkat keras. Secara khusus, bendera ini menunjukkan bahwa driver mendukung setidaknya kursor warna perangkat keras dalam mode resolusi tinggi (dengan garis pemindaian lebih besar dari atau sama dengan 400).
D3DCURSORCAPS_LOWRES
Kursor penuh warna didukung dalam perangkat keras. Secara khusus, bendera ini menunjukkan bahwa driver mendukung kursor warna perangkat keras dalam mode resolusi tinggi dan resolusi rendah (dengan garis pemindaian kurang dari 400).

DevCaps

Jenis: DWORD

Bendera yang mengidentifikasi kemampuan perangkat.

Nilai Makna
D3DDEVCAPS_CANBLTSYSTONONLOCAL
Perangkat mendukung blit dari tekstur memori sistem hingga tekstur memori video nonlokal.
D3DDEVCAPS_CANRENDERAFTERFLIP
Perangkat dapat mengantre perintah penyajian setelah membalik halaman. Aplikasi tidak mengubah perilakunya jika bendera ini diatur; kemampuan ini berarti bahwa perangkat relatif cepat.
D3DDEVCAPS_DRAWPRIMITIVES2
Perangkat dapat mendukung setidaknya driver yang mematuhi DirectX 5.
D3DDEVCAPS_DRAWPRIMITIVES2EX
Perangkat dapat mendukung setidaknya driver yang mematuhi DirectX 7.
D3DDEVCAPS_DRAWPRIMTLVERTEX
Perangkat mengekspor IDirect3DDevice9::D rawPrimitive-aware hal.
D3DDEVCAPS_EXECUTESYSTEMMEMORY
Perangkat dapat menggunakan buffer eksekusi dari memori sistem.
D3DDEVCAPS_EXECUTEVIDEOMEMORY
Perangkat dapat menggunakan buffer eksekusi dari memori video.
D3DDEVCAPS_HWRASTERIZATION
Perangkat memiliki akselerasi perangkat keras untuk rasterisasi adegan.
D3DDEVCAPS_HWTRANSFORMANDLIGHT
Perangkat dapat mendukung transformasi dan pencahayaan dalam perangkat keras.
D3DDEVCAPS_NPATCHES
Perangkat mendukung patch N.
D3DDEVCAPS_PUREDEVICE
Perangkat dapat mendukung rasterisasi, transformasi, pencahayaan, dan bayangan dalam perangkat keras.
D3DDEVCAPS_QUINTICRTPATCHES
Perangkat mendukung kurva Bézier kuintik dan B-splines.
D3DDEVCAPS_RTPATCHES
Perangkat mendukung patch persegi panjang dan segitiga.
D3DDEVCAPS_RTPATCHHANDLEZERO
Ketika kemampuan perangkat ini diatur, arsitektur perangkat keras tidak memerlukan penembolokan informasi apa pun, dan patch yang tidak di-cache (menangani nol) akan digambar seefisien yang di-cache. Perhatikan bahwa pengaturan D3DDEVCAPS_RTPATCHHANDLEZERO tidak berarti bahwa patch dengan handel nol dapat digambar. Patch handle-zero selalu dapat digambar apakah batas ini diatur atau tidak.
D3DDEVCAPS_SEPARATETEXTUREMEMORIES
Perangkat berteksur dari kumpulan memori terpisah.
D3DDEVCAPS_TEXTURENONLOCALVIDMEM
Perangkat dapat mengambil tekstur dari memori video non-lokal.
D3DDEVCAPS_TEXTURESYSTEMMEMORY
Perangkat dapat mengambil tekstur dari memori sistem.
D3DDEVCAPS_TEXTUREVIDEOMEMORY
Perangkat dapat mengambil tekstur dari memori perangkat.
D3DDEVCAPS_TLVERTEXSYSTEMMEMORY
Perangkat dapat menggunakan buffer dari memori sistem untuk simpul yang diubah dan menyala.
D3DDEVCAPS_TLVERTEXVIDEOMEMORY
Perangkat dapat menggunakan buffer dari memori video untuk sudut yang diubah dan menyala.

PrimitiveMiscCaps

Jenis: DWORD

Kemampuan primitif driver lain-lain. Lihat D3DPMISCCAPS.

RasterCaps

Jenis: DWORD

Informasi tentang kemampuan menggambar raster. Anggota ini bisa menjadi satu atau beberapa bendera berikut.

Nilai Makna
D3DPRASTERCAPS_ANISOTROPY
Perangkat mendukung pemfilteran anisotropic.
D3DPRASTERCAPS_COLORPERSPECTIVE
Perangkat mengurai perspektif warna dengan benar.
D3DPRASTERCAPS_DITHER
Perangkat dapat melakukan dither untuk meningkatkan resolusi warna.
D3DPRASTERCAPS_DEPTHBIAS
Perangkat mendukung bias kedalaman warisan. Untuk bias kedalaman sejati, lihat D3DPRASTERCAPS_SLOPESCALEDEPTHBIAS.
D3DPRASTERCAPS_FOGRANGE
Perangkat mendukung kabut berbasis rentang. Dalam kabut berbasis rentang, jarak objek dari penampil digunakan untuk menghitung efek kabut, bukan kedalaman objek (yaitu, koordinat z) dalam adegan.
D3DPRASTERCAPS_FOGTABLE
Perangkat menghitung nilai kabut dengan merujuk ke tabel pencarian yang berisi nilai kabut yang diindeks ke kedalaman piksel tertentu.
D3DPRASTERCAPS_FOGVERTEX
Perangkat menghitung nilai kabut selama operasi pencahayaan dan menginterpolasi nilai kabut selama rasterisasi.
D3DPRASTERCAPS_MIPMAPLODBIAS
Perangkat mendukung penyesuaian bias tingkat detail. Penyesuaian bias ini memungkinkan aplikasi untuk membuat mipmap tampak crisper atau kurang tajam dari biasanya. Untuk informasi selengkapnya tentang bias tingkat detail dalam mipmaps, lihat D3DSAMP_MIPMAPLODBIAS.
D3DPRASTERCAPS_MULTISAMPLE_TOGGLE
Perangkat mendukung pengalihan multisampling aktif dan nonaktif antara IDirect3DDevice9::BeginScene dan IDirect3DDevice9::EndScene (menggunakan D3DRS_MULTISAMPLEANTIALIAS).
D3DPRASTERCAPS_SCISSORTEST
Perangkat mendukung pengujian gunting. Lihat Tes Gunting (Direct3D 9).
D3DPRASTERCAPS_SLOPESCALEDEPTHBIAS
Perangkat melakukan bias kedalaman berbasis skala kelopak benar. Ini berbeda dengan bias kedalaman gaya warisan.
D3DPRASTERCAPS_WBUFFER
Perangkat mendukung buffering kedalaman menggunakan w.
D3DPRASTERCAPS_WFOG
Perangkat mendukung kabut berbasis w. Kabut berbasis W digunakan ketika matriks proyeksi perspektif ditentukan, tetapi proyeksi affine masih menggunakan kabut berbasis z. Sistem menganggap matriks proyeksi yang berisi nilai bukan nol dalam elemen [3][4] sebagai matriks proyeksi perspektif.
D3DPRASTERCAPS_ZBUFFERLESSHSR
Perangkat dapat melakukan penghapusan permukaan tersembunyi (HSR) tanpa mengharuskan aplikasi untuk mengurutkan poligon dan tanpa memerlukan alokasi buffer kedalaman. Ini meninggalkan lebih banyak memori video untuk tekstur. Metode yang digunakan untuk melakukan HSR tergantung pada perangkat keras dan transparan terhadap aplikasi.

HSR tanpa buffer Z dilakukan jika tidak ada permukaan buffer kedalaman yang terkait dengan permukaan target penyajian dan pengujian perbandingan buffer kedalaman diaktifkan (yaitu, ketika nilai status yang terkait dengan konstanta enumerasi D3DRS_ZENABLE diatur ke TRUE).

D3DPRASTERCAPS_ZFOG
Perangkat mendukung kabut berbasis z.
D3DPRASTERCAPS_ZTEST
Perangkat dapat melakukan operasi z-test. Ini secara efektif merender primitif dan menunjukkan apakah ada piksel z yang telah dirender.

ZCmpCaps

Jenis: DWORD

Kemampuan perbandingan Z-buffer. Anggota ini bisa menjadi satu atau beberapa bendera berikut.

Nilai Makna
D3DPCMPCAPS_ALWAYS
Selalu lulus uji z.
D3DPCMPCAPS_EQUAL
Lulus z-test jika z baru sama dengan z saat ini.
D3DPCMPCAPS_GREATER
Lulus z-test jika z baru lebih besar dari z saat ini.
D3DPCMPCAPS_GREATEREQUAL
Lulus z-test jika z baru lebih besar dari atau sama dengan z saat ini.
D3DPCMPCAPS_LESS
Lulus z-test jika z baru kurang dari z saat ini.
D3DPCMPCAPS_LESSEQUAL
Lulus z-test jika z baru kurang dari atau sama dengan z saat ini.
D3DPCMPCAPS_NEVER
Selalu gagal uji-z.
D3DPCMPCAPS_NOTEQUAL
Lulus z-test jika z baru tidak sama dengan z saat ini.

SrcBlendCaps

Jenis: DWORD

Kemampuan blending sumber. Anggota ini bisa menjadi satu atau beberapa bendera berikut. (Nilai RGBA sumber dan tujuan ditunjukkan oleh subskrip dan d.)

Nilai Makna
D3DPBLENDCAPS_BLENDFACTOR
Driver mendukung D3DBLEND_BLENDFACTOR dan D3DBLEND_INVBLENDFACTOR. Lihat D3DBLEND.
D3DPBLENDCAPS_BOTHINVSRCALPHA
Faktor campuran sumber adalah (1 - Sebagai, 1 - Sebagai, 1 - Sebagai, 1 - Sebagai) dan faktor campuran tujuan adalah (As, As, As, As); pilihan campuran tujuan ditimpa.
D3DPBLENDCAPS_BOTHSRCALPHA
Driver mendukung mode campuran D3DBLEND_BOTHSRCALPHA. (Mode campuran ini sudah usang. Untuk informasi selengkapnya, lihat D3DBLEND.)
D3DPBLENDCAPS_DESTALPHA
Faktor campuran adalah (Ad, Ad, Ad, A d, Ad).
D3DPBLENDCAPS_DESTCOLOR
Faktor campuran adalah (Rd, Gd, Bd, Ad).
D3DPBLENDCAPS_INVDESTALPHA
Faktor campuran adalah (1 - Ad, 1 - Ad, 1 - Ad, 1 - Ad).
D3DPBLENDCAPS_INVDESTCOLOR
Faktor campuran adalah (1 - Rd, 1 - Gd, 1 - Bd, 1 - Ad).
D3DPBLENDCAPS_INVSRCALPHA
Faktor campuran adalah (1 - Sebagai, 1 - Sebagai, 1 - Sebagai, 1 - Sebagai).
D3DPBLENDCAPS_INVSRCCOLOR
Faktor campuran adalah (1 - Rs, 1 - Gs, 1 - Bs, 1 - Sebagai).
D3DPBLENDCAPS_INVSRCCOLOR2
Faktor campuran adalah (1 - PSOutColor[1]r, 1 - PSOutColor[1]g, 1 - PSOutColor[1]b, tidak digunakan)). Lihat Merender Blending Target.
Perbedaan antara Direct3D 9 dan Direct3D 9Ex:

Bendera ini hanya tersedia di Direct3D 9Ex.

 
D3DPBLENDCAPS_ONE
Faktor campuran adalah (1, 1, 1, 1).
D3DPBLENDCAPS_SRCALPHA
Faktor campuran adalah (As, As, As, As).
D3DPBLENDCAPS_SRCALPHASAT
Faktor campuran adalah (f, f, f, 1); f = min(As, 1 - Ad).
D3DPBLENDCAPS_SRCCOLOR
Faktor campuran adalah (Rs, Gs, Bs, As).
D3DPBLENDCAPS_SRCCOLOR2
Faktor campuran adalah (PSOutColor[1]r, PSOutColor[1]g, PSOutColor[1]b, tidak digunakan). Lihat Merender Blending Target.
Perbedaan antara Direct3D 9 dan Direct3D 9Ex:

Bendera ini hanya tersedia di Direct3D 9Ex.

 
D3DPBLENDCAPS_ZERO
Faktor campuran adalah (0, 0, 0, 0).

DestBlendCaps

Jenis: DWORD

Kemampuan penpaduan tujuan. Anggota ini bisa menjadi kemampuan yang sama yang didefinisikan untuk anggota SrcBlendCaps.

AlphaCmpCaps

Jenis: DWORD

Kemampuan perbandingan uji alfa. Anggota ini dapat menyertakan bendera kemampuan yang sama yang ditentukan untuk anggota ZCmpCaps. Jika anggota ini hanya berisi kemampuan D3DPCMPCAPS_ALWAYS atau hanya kemampuan D3DPCMPCAPS_NEVER, driver tidak mendukung pengujian alfa. Jika tidak, bendera mengidentifikasi perbandingan individu yang didukung untuk pengujian alfa.

ShadeCaps

Jenis: DWORD

Kemampuan operasi bayangan. Diasumsikan, secara umum, bahwa jika perangkat mendukung perintah tertentu sama sekali, perangkat mendukung mode D3DSHADE_FLAT (seperti yang ditentukan dalam jenis enumerasi D3DSHADEMODE ). Bendera ini menentukan apakah driver juga dapat mendukung bayangan Gouraud dan apakah komponen warna alfa didukung. Ketika komponen alfa tidak didukung, nilai alfa warna yang dihasilkan secara implisit 255. Ini adalah alfa maksimum yang mungkin (yaitu, komponen alfa berada pada intensitas penuh).

Warna, sorotan spekular, kabut, dan interpolan alfa dari segitiga masing-masing memiliki bendera kemampuan yang dapat digunakan aplikasi untuk mengetahui bagaimana mereka diimplementasikan oleh driver perangkat.

Anggota ini bisa menjadi satu atau beberapa bendera berikut.

Nilai Makna
D3DPSHADECAPS_ALPHAGOURAUDBLEND
Perangkat dapat mendukung komponen alfa untuk transparansi campuran Gouraud (status D3DSHADE_GOURAUD untuk jenis enumerasi D3DSHADEMODE). Dalam mode ini, komponen warna alfa dari primitif disediakan pada simpul dan diinterpolasi di wajah bersama dengan komponen warna lainnya.
D3DPSHADECAPS_COLORGOURAUDRGB
Perangkat dapat mendukung bayangan Gouraud berwarna. Dalam mode ini, komponen warna per puncak (merah, hijau, dan biru) diinterpolasi di seluruh wajah segitiga.
D3DPSHADECAPS_FOGGOURAUD
Perangkat dapat mendukung kabut dalam mode bayangan Gouraud.
D3DPSHADECAPS_SPECULARGOURAUDRGB
Perangkat mendukung bayangan Gouraud dari sorotan spekular.

TextureCaps

Jenis: DWORD

Kemampuan pemetaan tekstur lain-lain. Anggota ini bisa menjadi satu atau beberapa bendera berikut.

Nilai Makna
D3DPTEXTURECAPS_ALPHA
Alpha dalam piksel tekstur didukung.
D3DPTEXTURECAPS_ALPHAPALETTE
Perangkat dapat menggambar alfa dari palet tekstur.
D3DPTEXTURECAPS_CUBEMAP
Mendukung tekstur kubus.
D3DPTEXTURECAPS_CUBEMAP_POW2
Perangkat mengharuskan peta tekstur kubus memiliki dimensi yang ditentukan sebagai kekuatan dua.
D3DPTEXTURECAPS_MIPCUBEMAP
Perangkat mendukung tekstur kubus mipmapped.
D3DPTEXTURECAPS_MIPMAP
Perangkat mendukung tekstur mipmapped.
D3DPTEXTURECAPS_MIPVOLUMEMAP
Perangkat mendukung tekstur volume mipmapped.
D3DPTEXTURECAPS_NONPOW2CONDITIONAL
D3DPTEXTURECAPS_POW2 juga diatur, secara kondisional mendukung penggunaan tekstur 2D dengan dimensi yang bukan kekuatan dua. Perangkat yang mengekspos kemampuan ini dapat menggunakan tekstur seperti itu jika semua persyaratan berikut terpenuhi.
  • Mode penetapan alamat tekstur untuk tahap tekstur diatur ke D3DTADDRESS_CLAMP.
  • Pembungkusan tekstur untuk tahap tekstur dinonaktifkan (D3DRS_WRAP n diatur ke 0).
  • Mipmapping tidak digunakan (gunakan filter pembesaran saja).
  • Format tekstur tidak boleh D3DFMT_DXT1 melalui D3DFMT_DXT5.

Jika bendera ini tidak diatur, dan D3DPTEXTURECAPS_POW2 juga tidak diatur, maka dukungan tanpa syarat disediakan untuk tekstur 2D dengan dimensi yang bukan kekuatan dua.

Tekstur yang bukan kekuatan dua tidak dapat diatur pada tahap yang akan dibaca berdasarkan komputasi shader (seperti bem - ps dan texm3x3 - instruksi ps dalam shader piksel versi 1_0 hingga 1_3). Misalnya, tekstur ini dapat digunakan untuk menyimpan benjolan yang akan diumpankan ke dalam pembacaan tekstur, tetapi bukan peta lingkungan yang digunakan dalam texbem - ps, texbeml - ps, dan texm3x3spec - ps. Ini berarti bahwa tekstur dengan dimensi yang bukan kekuatan dua tidak dapat ditangani atau diambil sampelnya menggunakan koordinat tekstur yang dihitung dalam shader. Jenis operasi ini dikenal sebagai baca dependen dan tidak dapat dilakukan pada jenis tekstur ini.

D3DPTEXTURECAPS_NOPROJECTEDBUMPENV
Perangkat tidak mendukung operasi pencarian lingkungan benjolan yang diproyeksikan dalam shader fungsi yang dapat diprogram dan tetap.
D3DPTEXTURECAPS_PERSPECTIVE
Teksur koreksi perspektif didukung.
D3DPTEXTURECAPS_POW2
Jika D3DPTEXTURECAPS_NONPOW2CONDITIONAL tidak diatur, semua tekstur harus memiliki lebar dan tinggi yang ditentukan sebagai daya dua. Persyaratan ini tidak berlaku untuk tekstur kubus atau tekstur volume.

Jika D3DPTEXTURECAPS_NONPOW2CONDITIONAL juga diatur, secara kondisional mendukung penggunaan tekstur 2D dengan dimensi yang bukan kekuatan dua. Lihat deskripsi D3DPTEXTURECAPS_NONPOW2CONDITIONAL.

Jika bendera ini tidak diatur, dan D3DPTEXTURECAPS_NONPOW2CONDITIONAL juga tidak diatur, maka dukungan tanpa syarat disediakan untuk tekstur 2D dengan dimensi yang bukan kekuatan dua.

D3DPTEXTURECAPS_PROJECTED
Mendukung bendera transformasi tekstur D3DTTFF_PROJECTED. Saat diterapkan, perangkat membagi koordinat tekstur yang diubah dengan koordinat tekstur terakhir. Jika kemampuan ini ada, maka pembagian proyektif terjadi per piksel. Jika kemampuan ini tidak ada, tetapi pembagian proyektif tetap perlu terjadi, maka itu dilakukan berdasarkan per puncak oleh runtime Direct3D.
D3DPTEXTURECAPS_SQUAREONLY
Semua tekstur harus persegi.
D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE
Indeks tekstur tidak diskalakan oleh ukuran tekstur sebelum interpolasi.
D3DPTEXTURECAPS_VOLUMEMAP
Perangkat mendukung tekstur volume.
D3DPTEXTURECAPS_VOLUMEMAP_POW2
Perangkat mengharuskan peta tekstur volume memiliki dimensi yang ditentukan sebagai kekuatan dua.

TextureFilterCaps

Jenis: DWORD

Kemampuan pemfilteran tekstur untuk tekstur. Kemampuan pemfilteran per tahap mencerminkan mode pemfilteran mana yang didukung untuk tahap tekstur saat melakukan perpaduan beberapa tekstur. Anggota ini dapat menjadi kombinasi dari bendera pemfilteran tekstur per tahap yang ditentukan dalam D3DPTFILTERCAPS.

CubeTextureFilterCaps

Jenis: DWORD

Kemampuan pemfilteran tekstur untuk tekstur kubus. Kemampuan pemfilteran per tahap mencerminkan mode pemfilteran mana yang didukung untuk tahap tekstur saat melakukan perpaduan beberapa tekstur. Anggota ini dapat menjadi kombinasi dari bendera pemfilteran tekstur per tahap yang ditentukan dalam D3DPTFILTERCAPS.

VolumeTextureFilterCaps

Jenis: DWORD

Kemampuan pemfilteran tekstur untuk tekstur volume. Kemampuan pemfilteran per tahap mencerminkan mode pemfilteran mana yang didukung untuk tahap tekstur saat melakukan perpaduan beberapa tekstur. Anggota ini dapat menjadi kombinasi dari bendera pemfilteran tekstur per tahap yang ditentukan dalam D3DPTFILTERCAPS.

TextureAddressCaps

Jenis: DWORD

Kemampuan alamat tekstur untuk objek tekstur. Anggota ini bisa menjadi satu atau beberapa bendera berikut.

Nilai Makna
D3DPTADDRESSCAPS_BORDER
Perangkat mendukung pengaturan koordinat di luar rentang [0.0, 1.0] ke warna batas, seperti yang ditentukan oleh status tahap tekstur D3DSAMP_BORDERCOLOR.
D3DPTADDRESSCAPS_CLAMP
Perangkat dapat menjepit tekstur ke alamat.
D3DPTADDRESSCAPS_INDEPENDENTUV
Perangkat dapat memisahkan mode pengalamatan tekstur dari koordinat tekstur Anda dan v. Kemampuan ini sesuai dengan nilai status render D3DSAMP_ADDRESSU dan D3DSAMP_ADDRESSV.
D3DPTADDRESSCAPS_MIRROR
Perangkat dapat mencerminkan tekstur ke alamat.
D3DPTADDRESSCAPS_MIRRORONCE
Perangkat dapat mengambil nilai absolut koordinat tekstur (dengan demikian, mencerminkan sekitar 0) dan kemudian menjepit ke nilai maksimum.
D3DPTADDRESSCAPS_WRAP
Perangkat dapat membungkus tekstur ke alamat.

VolumeTextureAddressCaps

Jenis: DWORD

Kemampuan alamat tekstur untuk tekstur volume. Anggota ini dapat menjadi satu atau beberapa bendera yang ditentukan untuk anggota TextureAddressCaps.

LineCaps

Jenis: DWORD

Mendefinisikan kemampuan untuk primitif gambar garis.

Nilai Makna
D3DLINECAPS_ALPHACMP
Mendukung perbandingan alfa-test.
D3DLINECAPS_ANTIALIAS
Garis antialisi didukung.
D3DLINECAPS_BLEND
Mendukung penpaduan sumber.
D3DLINECAPS_FOG
Mendukung kabut.
D3DLINECAPS_TEXTURE
Mendukung pemetaan tekstur.
D3DLINECAPS_ZTEST
Mendukung perbandingan z-buffer.

MaxTextureWidth

Jenis: DWORD

Lebar tekstur maksimum untuk perangkat ini.

MaxTextureHeight

Jenis: DWORD

Tinggi tekstur maksimum untuk perangkat ini.

MaxVolumeExtent

Jenis: DWORD

Nilai maksimum untuk salah satu dari tiga dimensi (lebar, tinggi, dan kedalaman) tekstur volume.

MaxTextureRepeat

Jenis: DWORD

Angka ini menunjukkan rentang maksimum bit bilangan bulat dari koordinat tekstur pasca-dinormalisasi. Koordinat tekstur disimpan sebagai bilangan bulat bertanda 32-bit menggunakan 27 bit untuk menyimpan bagian bilangan bulat dan 5 bit untuk pecahan titik mengambang. Indeks bilangan bulat maksimum, 2²⁷, digunakan untuk menentukan koordinat tekstur maksimum, tergantung pada bagaimana perangkat keras melakukan penskalaan koordinat tekstur.

Beberapa perangkat keras melaporkan batas D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE. Untuk kasus ini, perangkat menangguhkan koordinat tekstur penskalaan berdasarkan ukuran tekstur hingga setelah interpolasi dan penerapan mode alamat tekstur, sehingga berapa kali tekstur dapat dibungkus diberikan oleh nilai bilangan bulat dalam MaxTextureRepeat.

Kurang diinginkan, pada beberapa D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE perangkat keras tidak diatur dan perangkat menskalakan koordinat tekstur berdasarkan ukuran tekstur (menggunakan tingkat detail tertinggi) sebelum interpolasi. Ini membatasi berapa kali tekstur dapat dibungkus ke ukuran MaxTextureRepeat / tekstur.

Misalnya, asumsikan bahwa MaxTextureRepeat sama dengan 32k dan ukuran teksturnya adalah 4k. Jika set perangkat keras D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE, maka berapa kali tekstur dapat dibungkus sama dengan MaxTextureRepeat, yaitu 32k dalam contoh ini. Jika tidak, berapa kali tekstur dapat dibungkus sama dengan MaxTextureRepeat dibagi dengan ukuran tekstur, yaitu 32k/4k dalam contoh ini.

MaxTextureAspectRatio

Jenis: DWORD

Rasio aspek tekstur maksimum yang didukung oleh perangkat keras, biasanya kekuatan 2.

MaxAnisotropy

Jenis: DWORD

Nilai valid maksimum untuk status tahap tekstur D3DSAMP_MAXANISOTROPY.

MaxVertexW

Jenis: float

Nilai kedalaman berbasis W maksimum yang didukung perangkat.

GuardBandLeft

Jenis: float

Koordinat ruang layar dari wilayah kliping guard-band. Koordinat di dalam persegi ini tetapi di luar persegi panjang viewport secara otomatis terpotong.

GuardBandTop

Jenis: float

Koordinat ruang layar dari wilayah kliping guard-band. Koordinat di dalam persegi ini tetapi di luar persegi panjang viewport secara otomatis terpotong.

GuardBandRight

Jenis: float

Koordinat ruang layar dari wilayah kliping guard-band. Koordinat di dalam persegi ini tetapi di luar persegi panjang viewport secara otomatis terpotong.

GuardBandBottom

Jenis: float

Koordinat ruang layar dari wilayah kliping guard-band. Koordinat di dalam persegi ini tetapi di luar persegi panjang viewport secara otomatis terpotong.

ExtentsAdjust

Jenis: float

Jumlah piksel untuk menyesuaikan persegi panjang luar untuk mengakomodasi kernel antialias.

StencilCaps

Jenis: DWORD

Bendera yang menentukan operasi stensil-buffer yang didukung. Operasi stensil diasumsikan berlaku untuk ketiga status render operasi stensil-buffer (D3DRS_STENCILFAIL, D3DRS_STENCILPASS, dan D3DRS_STENCILZFAIL).

Untuk informasi selengkapnya, lihat D3DSTENCILCAPS.

FVFCaps

Jenis: DWORD

Kemampuan format vertex yang fleksibel.

Nilai Makna
D3DFVFCAPS_DONOTSTRIPELEMENTS
Lebih baik elemen vertex tidak dilucuti. Artinya, jika format verteks berisi elemen yang tidak digunakan dengan status render saat ini, tidak perlu meregenerasi simpul. Jika bendera kemampuan ini tidak ada, stripping elemen asing dari format vertex memberikan performa yang lebih baik.
D3DFVFCAPS_PSIZE
Ukuran titik ditentukan oleh status render atau data vertex. Jika FVF digunakan, ukuran titik dapat berasal dari data ukuran titik dalam deklarasi puncak. Jika tidak, ukuran titik ditentukan oleh status render D3DRS_POINTSIZE. Jika aplikasi menyediakan ukuran titik dalam keduanya (status render dan deklarasi puncak), data vertex akan mengambil alih data status render.
D3DFVFCAPS_TEXCOORDCOUNTMASK
Menutupi WORD rendah FVFCaps. Bit ini, ditransmisikan ke jenis data WORD, menjelaskan jumlah total kumpulan koordinat tekstur yang dapat digunakan perangkat secara bersamaan untuk beberapa perpaduan tekstur. (Anda dapat menggunakan hingga delapan set koordinat tekstur untuk puncak apa pun, tetapi perangkat hanya dapat memadukan menggunakan jumlah set koordinat tekstur yang ditentukan.)

TextureOpCaps

Jenis: DWORD

Kombinasi bendera yang menjelaskan operasi tekstur yang didukung oleh perangkat ini. Bendera berikut ditentukan.

Nilai Makna
D3DTEXOPCAPS_ADD
Operasi D3DTOP_ADD penpaduan tekstur didukung.
D3DTEXOPCAPS_ADDSIGNED
Operasi D3DTOP_ADDSIGNED penpaduan tekstur didukung.
D3DTEXOPCAPS_ADDSIGNED2X
Operasi D3DTOP_ADDSIGNED2X penpaduan tekstur didukung.
D3DTEXOPCAPS_ADDSMOOTH
Operasi D3DTOP_ADDSMOOTH penpaduan tekstur didukung.
D3DTEXOPCAPS_BLENDCURRENTALPHA
Operasi D3DTOP_BLENDCURRENTALPHA penpaduan tekstur didukung.
D3DTEXOPCAPS_BLENDDIFFUSEALPHA
Operasi D3DTOP_BLENDDIFFUSEALPHA penpaduan tekstur didukung.
D3DTEXOPCAPS_BLENDFACTORALPHA
Operasi D3DTOP_BLENDFACTORALPHA penpaduan tekstur didukung.
D3DTEXOPCAPS_BLENDTEXTUREALPHA
Operasi D3DTOP_BLENDTEXTUREALPHA penpaduan tekstur didukung.
D3DTEXOPCAPS_BLENDTEXTUREALPHAPM
Operasi D3DTOP_BLENDTEXTUREALPHAPM penpaduan tekstur didukung.
D3DTEXOPCAPS_BUMPENVMAP
Operasi D3DTOP_BUMPENVMAP penpaduan tekstur didukung.
D3DTEXOPCAPS_BUMPENVMAPLUMINANCE
Operasi D3DTOP_BUMPENVMAPLUMINANCE penpaduan tekstur didukung.
D3DTEXOPCAPS_DISABLE
Operasi D3DTOP_DISABLE penpaduan tekstur didukung.
D3DTEXOPCAPS_DOTPRODUCT3
Operasi D3DTOP_DOTPRODUCT3 penpaduan tekstur didukung.
D3DTEXOPCAPS_LERP
Operasi D3DTOP_LERP penpaduan tekstur didukung.
D3DTEXOPCAPS_MODULATE
Operasi D3DTOP_MODULATE penpaduan tekstur didukung.
D3DTEXOPCAPS_MODULATE2X
Operasi D3DTOP_MODULATE2X penpaduan tekstur didukung.
D3DTEXOPCAPS_MODULATE4X
Operasi D3DTOP_MODULATE4X penpaduan tekstur didukung.
D3DTEXOPCAPS_MODULATEALPHA_ADDCOLOR
Operasi D3DTOP_MODULATEALPHA_ADDCOLOR penpaduan tekstur didukung.
D3DTEXOPCAPS_MODULATECOLOR_ADDALPHA
Operasi D3DTOP_MODULATECOLOR_ADDALPHA penpaduan tekstur didukung.
D3DTEXOPCAPS_MODULATEINVALPHA_ADDCOLOR
Operasi D3DTOP_MODULATEINVALPHA_ADDCOLOR penpaduan tekstur didukung.
D3DTEXOPCAPS_MODULATEINVCOLOR_ADDALPHA
Operasi D3DTOP_MODULATEINVCOLOR_ADDALPHA penpaduan tekstur didukung.
D3DTEXOPCAPS_MULTIPLYADD
Operasi D3DTOP_MULTIPLYADD penpaduan tekstur didukung.
D3DTEXOPCAPS_PREMODULATE
Operasi D3DTOP_PREMODULATE penpaduan tekstur didukung.
D3DTEXOPCAPS_SELECTARG1
Operasi D3DTOP_SELECTARG1 penpaduan tekstur didukung.
D3DTEXOPCAPS_SELECTARG2
Operasi D3DTOP_SELECTARG2 penpaduan tekstur didukung.
D3DTEXOPCAPS_SUBTRACT
Operasi D3DTOP_SUBTRACT penpaduan tekstur didukung.

MaxTextureBlendStages

Jenis: DWORD

Jumlah maksimum tahap penpaduan tekstur yang didukung dalam alur fungsi tetap. Nilai ini adalah jumlah blender yang tersedia. Dalam alur piksel yang dapat diprogram, ini sesuai dengan jumlah register tekstur unik yang digunakan oleh instruksi piksel shader.

MaxSimultaneousTextures

Jenis: DWORD

Jumlah maksimum tekstur yang dapat secara bersamaan terikat ke tahap sampler alur fungsi tetap. Jika tekstur yang sama terikat ke dua tahap sampler, tekstur dihitung sebagai dua tekstur.

Nilai ini tidak memiliki arti dalam alur yang dapat diprogram di mana jumlah tahap sampler ditentukan oleh setiap versi shader piksel. Setiap versi shader piksel juga menentukan jumlah instruksi deklarasi tekstur. Lihat Pixel Shaders.

VertexProcessingCaps

Jenis: DWORD

Kemampuan pemrosesan vertex. Untuk perangkat fisik tertentu, kemampuan ini mungkin bervariasi di seluruh perangkat Direct3D tergantung pada parameter yang disediakan untuk CreateDevice. Lihat D3DVTXPCAPS.

MaxActiveLights

Jenis: DWORD

Jumlah maksimum lampu yang dapat aktif secara bersamaan. Untuk perangkat fisik tertentu, kemampuan ini mungkin bervariasi di seluruh perangkat Direct3D tergantung pada parameter yang disediakan untuk CreateDevice.

MaxUserClipPlanes

Jenis: DWORD

Jumlah maksimum bidang kliping yang ditentukan pengguna yang didukung. Anggota ini bisa 0. Untuk perangkat fisik tertentu, kemampuan ini dapat bervariasi di seluruh perangkat Direct3D tergantung pada parameter yang disediakan untuk CreateDevice.

MaxVertexBlendMatrices

Jenis: DWORD

Jumlah maksimum matriks yang dapat diterapkan perangkat ini saat melakukan perpaduan verteks multimatrix. Untuk perangkat fisik tertentu, kemampuan ini dapat bervariasi di seluruh perangkat Direct3D tergantung pada parameter yang disediakan untuk CreateDevice.

MaxVertexBlendMatrixIndex

Jenis: DWORD

Nilai DWORD yang menentukan indeks matriks maksimum yang dapat diindeks menggunakan indeks per-vertex. Jumlah matriks adalah MaxVertexBlendMatrixIndex + 1, yang merupakan ukuran palet matriks. Jika normal ada dalam data puncak yang perlu dipadukan untuk pencahayaan, maka jumlah matriks adalah setengah dari angka yang ditentukan oleh bendera kemampuan ini. Jika MaxVertexBlendMatrixIndex diatur ke nol, driver tidak mendukung penpaduan vertex terindeks. Jika nilai ini bukan nol, maka rentang indeks yang valid adalah nol melalui MaxVertexBlendMatrixIndex.

Nilai nol untuk MaxVertexBlendMatrixIndex menunjukkan bahwa driver tidak mendukung matriks terindeks.

Ketika pemrosesan vertex perangkat lunak digunakan, 256 matriks dapat digunakan untuk perpaduan vertex terindeks, dengan atau tanpa pencamuran normal.

Untuk perangkat fisik tertentu, kemampuan ini dapat bervariasi di seluruh perangkat Direct3D tergantung pada parameter yang disediakan untuk CreateDevice.

MaxPointSize

Jenis: float

Ukuran maksimum titik primitif. Jika diatur ke 1.0f, maka perangkat tidak mendukung kontrol ukuran titik. Rentangnya lebih besar dari atau sama dengan 1,0f.

MaxPrimitiveCount

Jenis: DWORD

Jumlah maksimum primitif untuk setiap panggilan DrawPrimitive . Ada dua kasus:

  • Jika MaxPrimitiveCount tidak sama dengan 0xffff, Anda dapat menggambar paling banyak primitif MaxPrimitiveCount dengan setiap panggilan gambar.
  • Namun, jika MaxPrimitiveCount sama dengan 0xffff, Anda masih dapat menggambar paling banyak MaxPrimitiveCount primitif, tetapi Anda juga dapat menggunakan tidak lebih dari simpul unik MaxPrimitiveCount (karena setiap primitif berpotensi menggunakan tiga simpul yang berbeda).

MaxVertexIndex

Jenis: DWORD

Ukuran maksimum indeks yang didukung untuk pemrosesan puncak perangkat keras. Dimungkinkan untuk membuat buffer indeks 32-bit; namun, Anda tidak akan dapat merender dengan buffer indeks kecuali nilai ini lebih besar dari 0x0000FFFF.

MaxStreams

Jenis: DWORD

Jumlah maksimum aliran data bersamaan untuk SetStreamSource. Rentang yang valid adalah 1 hingga 16. Perhatikan bahwa jika nilai ini adalah 0, maka driver bukan driver Direct3D 9.

MaxStreamStride

Jenis: DWORD

Langkah maksimum untuk SetStreamSource.

VertexShaderVersion

Jenis: DWORD

Dua angka yang mewakili shader puncak utama dan sub versi. Untuk informasi selengkapnya tentang instruksi yang didukung untuk setiap versi shader vertex, lihat Versi 1_x, Versi 2_0, Versi 2_0 Diperluas, atau Versi 3_0.

MaxVertexShaderConst

Jenis: DWORD

Jumlah vertex shader Vertex Shader Register yang disediakan untuk konstanta.

PixelShaderVersion

Jenis: DWORD

Dua angka yang mewakili shader piksel utama dan sub versi. Untuk informasi selengkapnya tentang instruksi yang didukung untuk setiap versi shader piksel, lihat Versi 1_x, Versi 2_0, Versi 2_0 Diperluas, atau Versi 3_0.

PixelShader1xMaxValue

Jenis: float

Nilai maksimum komponen aritmatika shader piksel. Nilai ini menunjukkan rentang nilai internal yang didukung untuk operasi penpaduan warna piksel. Dalam rentang yang mereka laporkan, implementasi harus memungkinkan data untuk melewati pemrosesan piksel yang tidak dimodifikasi (tidak terlampir). Biasanya, nilai anggota ini adalah nilai absolut. Misalnya, 1,0 menunjukkan bahwa rentangnya adalah -1,0 hingga 1, dan 8,0 menunjukkan bahwa rentangnya adalah -8,0 hingga 8,0. Nilainya harus >= 1.0 untuk perangkat keras apa pun yang mendukung shader piksel.

DevCaps2

Jenis: DWORD

Kemampuan driver perangkat untuk tessellation adaptif. Untuk informasi selengkapnya, lihat D3DDEVCAPS2

MaxNpatchTessellationLevel

TBD

Reserved5

TBD

MasterAdapterOrdinal

Jenis: UINT

Angka ini menunjukkan perangkat mana yang merupakan master untuk bawahan ini. Angka ini diambil dari ruang yang sama dengan nilai adaptor.

Untuk dukungan multihead, satu kepala akan ditandai kepala master, dan semua kepala lain pada kartu yang sama akan ditandai kepala bawahan. Jika lebih dari satu adaptor multihead ada dalam sistem, master dan bawahannya dari satu adaptor multihead disebut grup.

AdapterOrdinalInGroup

Jenis: UINT

Angka ini menunjukkan urutan di mana kepala dirujuk oleh API. Nilai untuk adaptor master selalu 0. Nilai-nilai ini tidak sesuai dengan ordinal adaptor. Mereka hanya berlaku untuk kepala dalam grup.

NumberOfAdaptersInGroup

Jenis: UINT

Jumlah adaptor dalam grup adaptor ini (hanya jika master). Ini akan menjadi 1 untuk adaptor konvensional. Nilainya akan lebih besar dari 1 untuk adaptor master kartu multihead. Nilainya akan menjadi 0 untuk adaptor bawahan kartu multihead. Setiap kartu dapat memiliki paling banyak satu master, tetapi mungkin memiliki banyak bawahan.

DeclTypes

Jenis: DWORD

Kombinasi satu atau beberapa jenis data yang terkandung dalam deklarasi puncak. Lihat D3DDTCAPS.

NumSimultaneousRTs

Jenis: DWORD

Jumlah target render simultan. Angka ini harus minimal satu.

StretchRectFilterCaps

Jenis: DWORD

Kombinasi konstanta yang menjelaskan operasi yang didukung oleh StretchRect. Bendera yang mungkin diatur dalam bidang ini adalah:

Terus-menerus Deskripsi
D3DPTFILTERCAPS_MINFPOINT Perangkat mendukung pemfilteran sampel titik untuk menambang persegi panjang. Jenis filter ini diminta dengan memanggil StretchRect menggunakan D3DTEXF_POINT.
D3DPTFILTERCAPS_MAGFPOINT Perangkat mendukung pemfilteran sampel titik untuk memperbesar persegi panjang. Jenis filter ini diminta dengan memanggil StretchRect menggunakan D3DTEXF_POINT.
D3DPTFILTERCAPS_MINFLINEAR Perangkat mendukung pemfilteran interpolasi bilinear untuk menambang persegi panjang. Jenis filter ini diminta dengan memanggil StretchRect menggunakan D3DTEXF_LINEAR.
D3DPTFILTERCAPS_MAGFLINEAR Perangkat mendukung pemfilteran interpolasi bilinear untuk memperbesar persegi panjang. Jenis filter ini diminta dengan memanggil StretchRect menggunakan D3DTEXF_LINEAR.
 

Untuk informasi selengkapnya, lihat D3DTEXTUREFILTERTYPE dan D3DTEXTUREFILTERTYPE.

VS20Caps

Jenis: D3DVSHADERCAPS2_0

Perangkat mendukung kemampuan vertex shader versi 2_0 yang diperluas. Lihat D3DVSHADERCAPS2_0.

PS20Caps

Jenis: D3DPSHADERCAPS2_0

Perangkat mendukung kemampuan piksel shader versi 2_0 yang diperluas. Lihat D3DPSHADERCAPS2_0.

VertexTextureFilterCaps

Jenis: DWORD

Perangkat mendukung kemampuan filter tekstur shader vertex. Lihat D3DPTFILTERCAPS.

MaxVShaderInstructionsExecuted

Jenis: DWORD

Jumlah maksimum instruksi shader vertex yang dapat dijalankan saat menggunakan kontrol alur. Jumlah maksimum instruksi yang dapat diprogram adalah MaxVertexShader30InstructionSlots.

MaxPShaderInstructionsExecuted

Jenis: DWORD

Jumlah maksimum instruksi pemisah piksel yang dapat dijalankan saat menggunakan kontrol alur. Jumlah maksimum instruksi yang dapat diprogram adalah MaxPixelShader30InstructionSlots.

MaxVertexShader30InstructionSlots

Jenis: DWORD

Jumlah maksimum slot instruksi shader vertex yang didukung. Nilai maksimum yang dapat diatur pada batas ini adalah 32768. Perangkat yang mendukung vs_3_0 diperlukan untuk mendukung setidaknya 512 slot instruksi.

MaxPixelShader30InstructionSlots

Jenis: DWORD

Jumlah maksimum slot instruksi pemisah piksel yang didukung. Nilai maksimum yang dapat diatur pada batas ini adalah 32768. Perangkat yang mendukung ps_3_0 diperlukan untuk mendukung setidaknya 512 slot instruksi.

Keterangan

Anggota MaxTextureBlendStages dan MaxSimultaneousTextures mungkin tampak mirip, tetapi berisi informasi yang berbeda. Anggota MaxTextureBlendStages berisi jumlah total tahapan penpaduan tekstur yang didukung oleh perangkat saat ini, dan anggota MaxSimultaneousTextures menjelaskan berapa banyak tahapan tersebut yang dapat memiliki tekstur yang terikat dengannya dengan menggunakan metode SetTexture .

Ketika driver mengisi struktur ini, driver dapat mengatur nilai untuk kemampuan execute-buffer, bahkan ketika antarmuka yang digunakan untuk mengambil kemampuan (seperti IDirect3DDevice9) tidak mendukung buffer eksekusi.

Secara umum, masalah performa dapat terjadi jika Anda menggunakan tekstur dan kemudian memodifikasinya selama adegan. Pastikan bahwa tidak ada tekstur yang digunakan dalam blok BeginScene dan EndScene saat ini yang dikeluarkan kecuali benar-benar diperlukan. Dalam kasus penggunaan tekstur yang sangat tinggi dalam adegan, hasilnya tidak ditentukan. Ini terjadi ketika Anda memodifikasi tekstur yang telah Anda gunakan dalam adegan dan tidak ada memori tekstur cadangan yang tersedia. Untuk sistem tersebut, konten z-buffer menjadi tidak valid di EndScene. Aplikasi tidak boleh memanggil UpdateSurface ke atau dari buffer belakang pada jenis perangkat keras ini di dalam pasangan BeginScene/EndScene. Selain itu, aplikasi tidak boleh mencoba mengakses z-buffer jika bendera kemampuan D3DPRASTERCAPS_ZBUFFERLESSHSR diatur. Akhirnya, aplikasi tidak boleh mengunci buffer belakang atau z-buffer di dalam pasangan BeginScene/EndScene.

Bendera berikut mengenai tekstur mipmapped tidak didukung di Direct3D 9.

  • D3DPTFILTERCAPS_LINEAR
  • D3DPTFILTERCAPS_LINEARMIPLINEAR
  • D3DPTFILTERCAPS_LINEARMIPNEAREST
  • D3DPTFILTERCAPS_MIPNEAREST
  • D3DPTFILTERCAPS_NEAREST

Persyaratan

   
Header d3d9caps.h

Lihat juga

Struktur Direct3D

GetDeviceCaps