/*///////////////////////////////////////////////////*/ /**/ /* AGO : Animations Graphiques Optimisées pour Ray2*/ /* ------------------------------------------------*/ /**/ /* A ultra-simple multi-purpose particle system*/ /* for animation optimizations */ /* (to reduce PlayAnim & IA use)*/ /**/ /*///////////////////////////////////////////////////*/ /**/ /* Version 1.0 : Francois "Rollie Tyler" Queinnec*/ /**/ /*////////////////////////////////////////////////*/ #ifndef __AGO__H #define __AGO__H /* LOL portage #include */ #ifdef U64 #include #include #endif /* U64*/ #include "GLD.h" #include "GMT.h" #ifdef __cplusplus extern "C" { #endif extern void *AGO_g_LastMaterialUsed; extern unsigned char AGO_SkipMaterial; extern unsigned short g_uwGlobalAlpha; extern float g_ffFrameTime; extern float g_ffLastFrameTime; extern float g_fTimeDifference; extern unsigned long g_ulVBLTime; extern float g_AGO_AnimTimeScale; extern int g_iCurrentPlanarSprite; float AGO_fGetTimeInSeconds(void); int GLI_vDrawWorldSprite(float *a3_fPosition,void *pVisualMaterial,float fscaleX,float fscaleY, GLD_tdstViewportAttributes *_p_stViewport, unsigned long AnimTime); int GLI_vDrawWorldPlanarSprite(float *a3_fPosition,void *pVisualMaterial,float fscaleX,float fscaleY, GLD_tdstViewportAttributes *_p_stViewport, unsigned long AnimTime); #ifdef U64 void GLI_vPrepareViewPort(void); #endif void AGO_vInit(void); void AGO_vDestroyPart(unsigned long ulPartNumber); void AGO_vProcessAllParts(GLD_tdstViewportAttributes *_p_stViewport); void AGO_vProcessPart(unsigned long ulPartNumber, GLD_tdstViewportAttributes *_p_stViewport); void AGO_vAddParticle(unsigned long PartType, MTH3D_tdstVector *p_stPosition, MTH3D_tdstVector *p_stDirection, void *hVisualMaterial, float parameter); #ifdef __cplusplus } #endif #endif /* __AGO__H*/