NNS_G3D_SBC_NODEDESC
Command Format
| Offset (bytes) |
Description for NNS_G3D_SBCFLG_000 |
| 0 |
NNS_G3D_SBC_NODEDESC | NNS_G3D_SBCFLG_000 |
| 1 |
The node ID of a node that is targeted for transformation. |
| 2 |
The node ID of the parent node of the node that is targeted for calculation. |
| 3 |
Flag (NNSG3dSbcNodeDescFlag) |
| Offset (bytes) |
Description for NNS_G3D_SBCFLG_001. |
| 0 |
NNS_G3D_SBC_NODEDESC | NNS_G3D_SBCFLG_001 |
| 1 |
The node ID of a node that is targeted for transformation. |
| 2 |
The node ID of the parent node of the node that is targeted for calculation. |
| 3 |
Flag (NNSG3dSbcNodeDescFlag). |
| 4 |
The matrix stack ID where the calculation results are stored. |
| Offset (bytes) |
Description for NNS_G3D_SBCFLG_010. |
| 0 |
NNS_G3D_SBC_NODEDESC | NNS_G3D_SBCFLG_010 |
| 1 |
The node ID of a node that is targeted for transformation. |
| 2 |
The node ID of the parent node of the node that is targeted for calculation. |
| 3 |
Flag (NNSG3dSbcNodeDescFlag). |
| 4 |
The ID of the matrix stack from which restoration is done before calculation. |
| Offset (bytes) |
Description for NNS_G3D_SBCFLG_011. |
| 0 |
NNS_G3D_SBC_NODEDESC | NNS_G3D_SBCFLG_011 |
| 1 |
The node ID of a node that is targeted for transformation. |
| 2 |
The node ID of the parent node of the node that is targeted for calculation. |
| 3 |
Flag (NNSG3dSbcNodeDescFlag). |
| 4 |
The matrix stack ID where the calculation results are stored. |
| 5 |
The ID of the matrix stack from which restoration is done before calculation. |
Description
The NNS_G3D_SBC_NODEDESC command defines the parent / child relationship between nodes. By default, this command calls the sbc.c NNSi_G3dFuncSbc_NODEDESC function. The following processes are performed inside this function:
- Restores the
position / vector matrix to the current matrix stack from the matrix stack (depending on command variations).
- Sets the
NNSG3dJntAnmResult pointer to the pJntAnmResult member in the NNS_G3dRS structure.
- Checks the timing
A callback. The callback in this position is convenient when substituting the joint calculation in the callback function. You can skip processing until the next callback by setting the NNS_G3D_RSFLAG_SKIP flag of NNS_G3dRS in the callback function.
- Sets the joint information in
*pMatAnmResult when the joint information is static image / animation.
- Checks the timing
B callback. The callback in this position is convenient when processing the results of the joint calculation in the callback function.
- Sends the joint matrix to the geometry engine.
- Checks the timing
C callback. The callback in this position is used when performing some sort of operation after this command finishes.
- Stores the
position / vector matrix from the current matrix to the matrix stack (depending on command variations).
| Timing for Calling a Callback Function |
Usage |
NNS_G3D_SBC_CALLBACK_TIMING_A |
When you want a user program to calculate the NNSG3dJntAnmResult structure. |
NNS_G3D_SBC_CALLBACK_TIMING_B |
When you want to manipulate the results of calculations on the NNSG3dJntAnmResult structure in a user program. |
NNS_G3D_SBC_CALLBACK_TIMING_C |
When you want to enter some process after this command ends. |
| Option Flag |
Operation |
NNS_G3D_SBCFLG_000 |
Performs calculation on the current matrix. Does not store calculation results in the matrix stack. |
NNS_G3D_SBCFLG_001 |
Performs calculation on the current matrix. Then stores calculation results in the matrix stack. |
NNS_G3D_SBCFLG_010 |
Restores from the matrix stack and then calculates. Does not store calculation results in the matrix stack. |
NNS_G3D_SBCFLG_011 |
Restores from the matrix stack and then calculates. Then stores calculation results in the matrix stack. |
See Also
Revision History
10/14/2004 Revised description.
08/02/2004 Initial version.