view_to_matrix(VIEW* view, float *matView, float *matProj);
Berechnet Transformations- und Projektionsmatritzen für den gegebenen View im pespektivischen oder isometrischen Modus. Läßt sich verwendenk, um Matritzen in einem View-Event zu verändern oder um Matritzen für Shader einzurichten.
Parameter:
view - View von dem die Matritze zu berechnen ist.
matView - float* Pointer, der mit der View-Transformationsmatrix gefüllt werden soll im [16] bzw. D3DXMATRIX -Format, oder NULL.
matProj - float* Pointer, der mit der View-Projektionsmatrix gefüllt werden soll im float[16] bzw. D3DXMATRIX-Format, oder NULL.
Geschwindigkeit:
Mittel
Edition:
A7.75 C LC
Beispiel (lite-C):
#include <d3d9.h>
...
// calculate the transformation matrix of a split frustum sector (used for PSSM shadows)
D3DXMATRIX* PSSM_getSectorMatrix(var sector_near,var sector_far)
{
static D3DXMATRIX mView,mProj,mViewProj;
// store the original clip range
var old_far = camera.clip_far;
var old_near = camera.clip_near;
// set the new clip range
camera.clip_far = sector_far;
camera.clip_near = sector_near;
// calculate the matrices
view_to_matrix(camera,&mView,&mProj);
// restore original view
camera.clip_far = old_far;
camera.clip_near = old_near;
// multiply the matrices to get the view-projection matrix
D3DXMatrixMultiply(&mViewProj,&mView,&mProj);
return &mViewProj;
}
Siehe auch:
VIEW, view_to_light, ISOMETRIC ► latest
version online