meshbundle.h

来自「java实现的简单的分形树。简单易学!是学习分形知识的很好的例子。其java语法」· C头文件 代码 · 共 48 行

H
48
字号
// --------------------------------------------------------------------------
// Dingus project - a collection of subsystems for game/graphics applications
// --------------------------------------------------------------------------

#ifndef __MESH_BUNDLE_H
#define __MESH_BUNDLE_H

#include "StorageResourceBundle.h"
#include "DeviceResource.h"
#include "../gfx/Mesh.h"
#include "../utils/Singleton.h"

namespace dingus {


class CMeshBundle :	public CStorageResourceBundle<CMesh>,
					public CSingleton<CMeshBundle>,
					public IDeviceResource
{
public:
	virtual void createResource();
	virtual void activateResource();
	virtual void passivateResource();
	virtual void deleteResource();

protected:
	virtual CMesh* loadResourceById( const CResourceId& id, const CResourceId& fullName );
	virtual void deleteResource( CMesh& resource ) { delete &resource; }
	
private:
	IMPLEMENT_SIMPLE_SINGLETON(CMeshBundle);
	CMeshBundle();
	virtual ~CMeshBundle() { clear(); };
	
	/// @return false on not found
	bool loadMesh( const CResourceId& id, const CResourceId& fullName, CMesh& mesh ) const;
};


}; // namespace


/// Shortcut macro
#define RGET_MESH(rid) dingus::CMeshBundle::getInstance().getResourceById(rid)


#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?