NNS_G2dDrawSprite*Fast

C Specification

#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 );

Description

Renders each type of sprite. The contents of the current matrix of the geometry engine will not be saved before and after rendering with the NNS_G2dDrawSpriteXXXFast() function. Since the Push and Pop processes of the current matrix stack are not performed, only that part will operate at a high speed. In particular, if it is not necessary to save each time the current matrix is rendered, 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);

As indicated in the code example below, NNS_G2dDrawSpriteXXX() is implemented via NNS_G2dDrawSpriteXXXFast() (Code Example 2).

Code Example 2:

NNS_G2dDrawSpriteXXX();
{
G3_PushMtx();
NNS_G2dDrawSpriteXXXFast();
G3_PopMtx(1);
}

See Also

NNS_G2dDrawSprite, NNS_G2dDrawSprite*

Revision History

11/10/2004 Initial version.


CONFIDENTIAL