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