Bagikan melalui


ID3DX10Mesh::Optimalkan metode

Menghasilkan jala baru dengan wajah dan simpul yang diurutkan ulang untuk mengoptimalkan performa menggambar.

Sintaks

HRESULT Optimize(
  [in]  UINT        Flags,
  [in]  UINT        *pFaceRemap,
  [out] LPD3D10BLOB *ppVertexRemap
);

Parameter

Bendera [in]

Jenis: UINT

Menentukan jenis pengoptimalan yang akan dilakukan. Parameter ini dapat diatur ke kombinasi satu atau beberapa bendera dari D3DXMESHOPT dan D3DXMESH (kecuali D3DXMESH_32BIT, D3DXMESH_IB_WRITEONLY, dan D3DXMESH_WRITEONLY).

pFaceRemap [in]

Jenis: UINT*

Array UINT, satu per wajah, yang mengidentifikasi wajah jala asli yang sesuai dengan setiap wajah dalam jala yang dioptimalkan. Jika nilai yang disediakan untuk argumen ini adalah NULL, data remap wajah tidak dikembalikan.

ppVertexRemap [out]

Jenis: LPD3D10BLOB*

Alamat penunjuk ke Antarmuka ID3D10Blob, yang berisi DWORD untuk setiap puncak yang menentukan bagaimana simpul baru memetakan ke simpul lama. Remap ini berguna jika Anda perlu mengubah data eksternal berdasarkan pemetaan vertex baru.

Mengembalikan nilai

Jenis: HRESULT

Nilai yang dikembalikan adalah salah satu nilai yang tercantum dalam Direct3D 10 Return Codes.

Keterangan

Metode ini menghasilkan jala baru. Sebelum menjalankan Optimize, aplikasi harus menghasilkan buffer yang berdampingan dengan memanggil ID3DX10Mesh::GenerateAdjacencyAndPointReps. Buffer yang berdampingan berisi data yang berdampingan, seperti daftar tepi dan wajah yang berdampingan satu sama lain.

Metode ini sangat mirip dengan metode ID3DX10Mesh::CloneMesh , kecuali bahwa metode ini dapat melakukan pengoptimalan sambil menghasilkan klon baru jala. Jala output mewarisi semua parameter pembuatan jala input.

Persyaratan

Persyaratan Nilai
Header
D3DX10.h
Pustaka
D3DX10.lib

Lihat juga

ID3DX10Mesh

Antarmuka D3DX