Bagikan melalui


Metode IDirect3DDevice9::MultiplyTransform (d3d9.h)

Mengalikan matriks dunia, tampilan, atau proyeksi perangkat dengan matriks tertentu.

Sintaks

HRESULT MultiplyTransform(
  [in] D3DTRANSFORMSTATETYPE unnamedParam1,
  [in] const D3DMATRIX       *unnamedParam2
);

Parameter

[in] unnamedParam1

Jenis: D3DTRANSFORMSTATETYPE

Anggota jenis D3DTRANSFORMSTATETYPE yang dijumlahkan, atau makro D3DTS_WORLDMATRIX yang mengidentifikasi matriks perangkat mana yang akan dimodifikasi. Pengaturan yang paling umum, D3DTS_WORLDMATRIX(0), memodifikasi matriks dunia, tetapi Anda dapat menentukan bahwa metode memodifikasi tampilan atau matriks proyeksi, jika diperlukan.

[in] unnamedParam2

Jenis: const D3DMATRIX*

Arahkan ke struktur D3DMATRIX yang memodifikasi transformasi saat ini.

Nilai kembali

Jenis: HRESULT

Jika metode berhasil, nilai yang dikembalikan D3D_OK. D3DERR_INVALIDCALL jika salah satu argumen tidak valid.

Keterangan

Urutan perkalian adalah pMatrix times State.

Aplikasi mungkin menggunakan metode IDirect3DDevice9::MultiplyTransform untuk bekerja dengan hierarki transformasi. Misalnya, geometri dan transformasi yang menjelaskan lengan mungkin diatur dalam hierarki berikut.


    
    shoulder_transformation
    
    upper_arm geometry
    
    elbow transformation
    
    lower_arm geometry
    
    wrist transformation
    
    hand geometry

Aplikasi mungkin menggunakan serangkaian panggilan berikut untuk merender hierarki ini. Tidak semua parameter ditampilkan dalam pseudocode ini.


IDirect3DDevice9::SetTransform(D3DTS_WORLDMATRIX(0), 
                               shoulder_transform)
IDirect3DDevice9::DrawPrimitive(upper_arm)
IDirect3DDevice9::MultiplyTransform(D3DTS_WORLDMATRIX(0), 
                                    elbow_transform)
IDirect3DDevice9::DrawPrimitive(lower_arm)
IDirect3DDevice9::MultiplyTransform(D3DTS_WORLDMATRIX(0), 
                                    wrist_transform)
IDirect3DDevice9::DrawPrimitive(hand)

Persyaratan

Persyaratan Nilai
Target Platform Windows
Header d3d9.h (termasuk D3D9.h)
Pustaka D3D9.lib

Lihat juga

D3DTS_WORLD

D3DTS_WORLDMATRIX

D3DTS_WORLDn

IDirect3DDevice9

IDirect3DDevice9::D rawPrimitive

IDirect3DDevice9::SetTransform