Files
Leviathan/Client/Game/engine/Renderer/KSpriteLoader.h
T
2026-06-01 12:46:52 +02:00

65 lines
1.2 KiB
C++

// KSpriteLoader.h: interface for the KSpriteLoader class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(_KSPRITELOADER_H__INCLUDED_)
#define _KSPRITELOADER_H__INCLUDED_
#pragma once
#pragma warning(disable:4786)
//#include <string>
//#include <vector>
#include "K3DTypes.h"
#include "KResource.h"
class KStream;
class K3DRenderDevice;
class KSpriteLoader
{
public:
/// Sprite Render mode
enum
{
SRM_USEADDITIVE = 0x80000000,
SRM_CWROTATE = 0x40000000,
SRM_CCWROTATE = 0x20000000
};
enum
{
ATTR_VISIBILITY = 0,
ATTR_XSCALE,
ATTR_YSCALE,
ATTR_XMOVE,
ATTR_YMOVE,
ATTR_ROTATE,
ATTR_MIRRORX,
ATTR_MIRRORY,
ATTR_MAX,
};
KSpriteLoader();
virtual ~KSpriteLoader();
bool Load( KStream &stream );
/// 개별 화일 추가 용도
bool Load_Icon( const char * pFileName );
// bintitle.
bool Load_IconEx( const char * pFileName );
int GetResCount();
KResSpriteAnimation* KSpriteLoader::GetRes( int nIndex);
protected:
void loadAnimation( const char* szAniName, std::vector<std::string> & vecFrameList );
private:
std::vector<KResSpriteAnimationSPtr> m_vecRes;
};
#endif // !defined(_KSPRITELOADER_H__INCLUDED_)