blob: a2d65dfda830fe5dc07da60631bfcb68bb98c0a3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
#pragma once
namespace crepe {
class ResourceManager;
class Asset;
/**
* \brief Resource interface
*
* Resource is an interface class used to represent a (deserialized) game resource (e.g.
* textures, sounds). Resources are always created from \ref Asset "assets" by ResourceManager.
*
* The game programmer has the ability to use the ResourceManager to keep instances of concrete
* resources between scenes, preventing them from being reinstantiated during a scene
* transition.
*/
class Resource {
public:
Resource(const Asset & src);
virtual ~Resource() = default;
};
} // namespace crepe
|