blob: f0d45757bc749b4aec92471d29edad8334e639eb (
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
25
26
27
28
29
30
31
32
33
34
35
36
37
|
#include <crepe/Sound.h>
#include <crepe/api/AssetManager.h>
#include <crepe/api/Texture.h>
using namespace crepe;
int main() {
// this needs to be called before the asset manager otherwise the destructor
// of sdl is not in the right order
{ Texture test("../asset/texture/img.png"); }
// FIXME: make it so the issue described by the above comment is not possible
// (i.e. the order in which internal classes are instantiated should not
// impact the way the engine works).
auto & mgr = AssetManager::get_instance();
{
// TODO: [design] the Sound class can't be directly included by the user as
// it includes SoLoud headers.
auto bgm = mgr.cache<Sound>("../mwe/audio/bgm.ogg");
auto sfx1 = mgr.cache<Sound>("../mwe/audio/sfx1.wav");
auto sfx2 = mgr.cache<Sound>("../mwe/audio/sfx2.wav");
auto img = mgr.cache<Texture>("../asset/texture/img.png");
auto img1 = mgr.cache<Texture>("../asset/texture/second.png");
}
{
auto bgm = mgr.cache<Sound>("../mwe/audio/bgm.ogg");
auto sfx1 = mgr.cache<Sound>("../mwe/audio/sfx1.wav");
auto sfx2 = mgr.cache<Sound>("../mwe/audio/sfx2.wav");
auto img = mgr.cache<Texture>("../asset/texture/img.png");
auto img1 = mgr.cache<Texture>("../asset/texture/second.png");
}
}
|