#include <nnsys/g2d/g2d_Softsprite.h>
void NNS_G2dDrawSpriteFast
(
s16 px, s16 py, int pz,
int sx, int sy,
int U0, int V0, int U1, int V1
);
void NNS_G2dDrawSpriteSimpleFast ( const NNSG2dSimpleSprite* pS );
void NNS_G2dDrawSpriteBasicFast ( const NNSG2dBasicSprite* pB );
void NNS_G2dDrawSpriteExtendedFast( const NNSG2dExtendedSprite* pE );
Renders each type of sprite. The contents of the current matrix of the geometry engine are not saved before and after rendering with the NNS_G2dDrawSpriteXXXFast
function. Because the push and pop processes of the current matrix stack are not performed, the speed of the operation is increased correspondingly. In particular, if it is not necessary to save the current matrix with each render, more efficient processing becomes possible (Code Example 1).
Code Example 1: G3_PushMtx(); for( i = 0; i < N; i++ ) { G3_Identity();// Or G3_LoadMtx43( &mtx ), etc. NNS_G2dDrawSpriteXXXFast(); } G3_PopMtx(1);
NNS_G2dDrawSpriteXXX
is implemented via NNS_G2dDrawSpriteXXXFast
.Code Example 2: NNS_G2dDrawSpriteXXX(); { G3_PushMtx(); NNS_G2dDrawSpriteXXXFast(); G3_PopMtx(1); }
NNS_G2dDrawSprite
NNS_G2dDrawSprite*
2004/11/10 Initial version.
CONFIDENTIAL