njDrawSprite2D | Japanese |
---|---|
--|INDEX|-> | |
Draws 2D sprite |
#include <Ninja.h> void njDrawSprite2D( *sp, n, pri, attr ) NJS_SPRITE *sp Int n Float pri Uint32 attr
NJD_SPRITE_ANGLE | Validate texture rotation |
NJD_SPRITE_COLOR | Validate texture color operation The value set to njSetConstantMaterial() is used as color data |
NJD_SPRITE_HFLIP | Reverse texture horizontally (L<->R) |
NJD_SPRITE_VFLIP | Reverse texture vertically (Up<->Down) |
NJD_SPRITE_HVFLIP | Reverse texture horizontally and vertically. |
NJD_SPRITE_ALPHA | Set if translucent is used. |
typedef struct { NJS_POINT3 p; /* point */ NJS_VECTOR v; /* normal */ Float sx,sy; /* scale */ Angle ang; /* angle */ NJS_TEXLIST *tlist; /* texture list */ NJS_TEXANIM *tanim; /* animation list */ } NJS_SPRITE;
typedef struct { Sint16 sx,sy; /* size */ Sint16 cx,cy; /* center */ Sint16 u1,v1; /* tex1 */ Sint16 u2,v2; /* tex2 */ Sint16 texid; /* texture id */ Sint16 attr; /* attribute */ } NJS_TEXANIM;
NJS_TEXANIM anim[] = { { 128,128, 64, 64, 0, 0,127,127, 0, 0 }, { 128,128, 64, 64,128, 0,255,127, 0, 0 }, { 128,128, 64, 64, 0,128,127,255, 0, 0 }, { 128,128, 64, 64,128,128,255,255, 0, 0 }, { 128,128, 64, 64, 0, 0,127,127, 1, 0 }, { 128,128, 64, 64,128, 0,255,127, 1, 0 }, { 128,128, 64, 64, 0,128,127,255, 1, 0 }, { 128,128, 64, 64,128,128,255,255, 1, 0 }, }; main() { NJS_SPRITE sprite; : Initial settings : sprite.tlist = &texlist; sprite.tanim = anim; sprite.ang = 0x4000; sprite.sx = 1.0f; sprite.sy = 1.0f; sprite.p.x = 320.0f; sprite.p.y = 240.0f; njLoadTexture( &texlist ); njDrawSprite2D( &sprite, 2, -150.f, NJD_SPRITE_ANGLE ); ...... }
njDrawSprite2D | --|INDEX|-> |
---|