NNS_G3dGetResultMtx

C Specification

#include <nnsys/g3d/util.h>
BOOL
NNS_G3dGetResultMtx(
const NNSG3dRenderObj* pRenderObj,
MtxFx43* pos,
MtxFx33* nrm,
u32 nodeID
);

Arguments

pRenderObj Pointer to the rendering object.
pos Pointer to the matrix that is substituted for the clip coordinate matrix
nrm Pointer to the matrix that is substituted for the directional vector matrix
nodeID The node ID.

Return Values

Returns TRUE if the matrix was able to be extracted.

Description

Extracts any matrix corresponding to the nodeID that remains in the matrix stack after the NNS_G3dDraw function executes. A TRUE is returned if the function was able to extract the matrix, and a FALSE will be returned if it was unable to extract. When the return value is TRUE, the matrix mode will be changed to position / vector matrix mode. It will be set if pos and nrm are not NULL.

Make sure that pos_scale is not in the matrix to be obtained. (The vertex coordinate is scaled with the attribute designated by <model_data> of the intermediate (.imd) file. It is stored in NNSG3dResMdlInfo::posScale in fx32 format)

Caution:

When converting with g3cvtr and using the -s option, the joint matrices are all stored in the matrix stack. Rendering can be skipped when configuring the NNS_G3D_RENDEROBJ_FLAG_SKIP_SBC_DRAW of NNSG3dRenderObj::flag and calling the NNS_G3dDraw function. The matrix calculation can be skipped when configuring the NNS_G3D_RENDEROBJ_FLAG_SKIP_SBC_MTXCALC and calling the NNS_G3dDraw function.

Using this features allows you to:

@@Set the matrix in the matrix stack Process the matrix set in the stack Use the processed matrix for rendering

See Also

NNS_G3dSetResultMtx, NNS_G3dGetCurrentMtx

Revision History

08/02/2004 Initial version.


CONFIDENTIAL