# Geometry Command Cycle

Command Name | Corresponding API | Number of Execution Cycles (33MHz conversion) | Comments
G3OP_MTX_MODE | `G3*_MtxMode()` | 1 |
G3OP_MTX_PUSH | `G3*_PushMtx()` | 17 |
G3OP_MTX_POP | `G3*_PopMtx()` | 36 |
G3OP_MTX_STORE | `G3*_StoreMtx()` | 17 |
G3OP_MTX_RESTORE | `G3*_RestoreMtx()` | 36 |
G3OP_MTX_IDENTITY | `G3*_Identity()` | 19 |
G3OP_MTX_LOAD_4x4 | `G3*_LoadMtx44()` | 34 |
G3OP_MTX_LOAD_4x3 | `G3*_LoadMtx43()` | 30 |
G3OP_MTX_MULT_4x4 | `G3*_MultMtx44()` | 35 | 65 in Position&Vector mode
G3OP_MTX_MULT_4x3 | `G3*_MultMtx43()` | 31 | 61 in Position&Vector mode
G3OP_MTX_MULT_3x3 | `G3*_MultMtx33()` | 28 | 58 in Position&Vector mode
G3OP_MTX_SCALE | `G3*_Scale()` | 22 |
G3OP_MTX_TRANS | `G3*_Translate()` | 22 | 52 in Position&Vector mode
G3OP_COLOR | `G3*_Color()` | 1 |
G3OP_NORMAL | `G3*_Normal()` | 9-12(+2)`?1` | Increases according to the number of lights.
G3OP_TEXCOORD | `G3*_TexCoord()` | 1(+1)`?1` |
G3OP_VTX_16 | `G3*_Vtx()` | 9(+2)`?1` |
G3OP_VTX_10 | `G3*_Vtx10()` | 8(+2)`?1` |
G3OP_VTX_XY | `G3*_VtxXY()` | 8(+2)`?1` |
G3OP_VTX_XZ | `G3*_VtxXZ()` | 8(+2)`?1` |
G3OP_VTX_YZ | `G3*_VtxYZ()` | 8(+2)`?1` |
G3OP_VTX_DIFF | `G3*_VtxDiff()` | 8(+2)`?1` |
G3OP_POLYGON_ATTR | `G3*_PolygonAttr()` | 1 |
G3OP_TEXIMAGE_PARAM | `G3*_TexImageParam()` | 1 |
G3OP_TEXPLTT_BASE | `G3*_TexPlttBase()` | 1 |
G3OP_DIF_AMB | `G3*_MaterialColorDiffAmb()` | 4 |
G3OP_SPE_EMI | `G3*_MaterialColorSpecEmi()` | 4 |
G3OP_LIGHT_VECTOR | `G3*_LightVector()` | 6 |
G3OP_LIGHT_COLOR | `G3*_LightColor()` | 1 |
G3OP_SHININESS | `G3*_Shininess()` | 32 |
G3OP_BEGIN | `G3*_Begin()` | 1 |
G3OP_END | `G3*_End()` | 1 |
G3OP_SWAP_BUFFERS | `G3*_SwapBuffers()` | 392 |
G3OP_VIEWPORT | `G3*_ViewPort()` | 1 |
G3OP_BOX_TEST | `G3*_BoxTest()` | 103 |
G3OP_POS_TEST | `G3*_PositionTest()` | 9 |
G3OP_VEC_TEST | `G3*_VectorTest()` | 5 |

Note 1: The number of command cycles corresponding to each source increases when an environment map is used.
Example: The number of cycles for the `G3OP_TEXCOORD` command increases by 1 when `GX_TEXGEN_TEXCOORD` is specified to the `G3OP_TEXIMAGE_PARAM` command.

## Revision History

2006/04/10

- Added a note that the number of command cycles increases when using an environment map.

2004/01/19 Initial version.

CONFIDENTIAL