From 4b1a2921e4f91287a306511a9d1e49e5f911ac7c Mon Sep 17 00:00:00 2001 From: Nomango <569629550@qq.com> Date: Thu, 1 Aug 2019 13:07:48 +0800 Subject: [PATCH] ResLoader supports image slices now minor --- kiwano-audio/src/Player.h | 4 +- kiwano/utils/ResLoader.cpp | 135 ++++++++++++------- kiwano/utils/ResLoader.h | 14 +- samples/Samples/Demo1.h | 8 +- samples/Samples/Demo2.h | 8 +- samples/Samples/Demo3.h | 2 +- samples/Samples/Demo4.h | 25 +--- samples/Samples/Demo5.h | 2 +- samples/Samples/Samples.vcxproj | 2 +- samples/Samples/Samples.vcxproj.filters | 31 ++++- samples/Samples/common.h | 3 + samples/Samples/main.cpp | 17 ++- samples/Samples/res/{res.json => index.json} | 25 ++-- samples/Samples/res/tiger.png | Bin 28275 -> 0 bytes samples/Samples/res/tiger/run/run01.png | Bin 0 -> 3754 bytes samples/Samples/res/tiger/run/run02.png | Bin 0 -> 3582 bytes samples/Samples/res/tiger/run/run03.png | Bin 0 -> 3369 bytes samples/Samples/res/tiger/run/run04.png | Bin 0 -> 3555 bytes samples/Samples/res/tiger/run/run05.png | Bin 0 -> 3664 bytes samples/Samples/res/tiger/run/run06.png | Bin 0 -> 3709 bytes samples/Samples/res/tiger/shock.png | Bin 0 -> 3559 bytes samples/Samples/res/tiger/stand.png | Bin 0 -> 12667 bytes samples/Samples/res/tiger/stand/stand01.png | Bin 0 -> 3550 bytes samples/Samples/res/tiger/stand/stand02.png | Bin 0 -> 3574 bytes samples/Samples/res/tiger/stand/stand03.png | Bin 0 -> 3631 bytes samples/Samples/res/tiger/stand/stand04.png | Bin 0 -> 3595 bytes samples/Samples/res/tiger/stand/stand05.png | Bin 0 -> 3525 bytes samples/Samples/res/tiger/stand/stand06.png | Bin 0 -> 3512 bytes 28 files changed, 171 insertions(+), 105 deletions(-) rename samples/Samples/res/{res.json => index.json} (51%) delete mode 100644 samples/Samples/res/tiger.png create mode 100644 samples/Samples/res/tiger/run/run01.png create mode 100644 samples/Samples/res/tiger/run/run02.png create mode 100644 samples/Samples/res/tiger/run/run03.png create mode 100644 samples/Samples/res/tiger/run/run04.png create mode 100644 samples/Samples/res/tiger/run/run05.png create mode 100644 samples/Samples/res/tiger/run/run06.png create mode 100644 samples/Samples/res/tiger/shock.png create mode 100644 samples/Samples/res/tiger/stand.png create mode 100644 samples/Samples/res/tiger/stand/stand01.png create mode 100644 samples/Samples/res/tiger/stand/stand02.png create mode 100644 samples/Samples/res/tiger/stand/stand03.png create mode 100644 samples/Samples/res/tiger/stand/stand04.png create mode 100644 samples/Samples/res/tiger/stand/stand05.png create mode 100644 samples/Samples/res/tiger/stand/stand06.png diff --git a/kiwano-audio/src/Player.h b/kiwano-audio/src/Player.h index 032aa2c4..3b4dc078 100644 --- a/kiwano-audio/src/Player.h +++ b/kiwano-audio/src/Player.h @@ -37,9 +37,9 @@ namespace kiwano ~Player(); - // 预加载音乐资源 + // 加载音乐资源 bool Load( - Resource const& res /* 音乐资源 */ + Resource const& res /* 音乐资源 */ ); // 播放音乐 diff --git a/kiwano/utils/ResLoader.cpp b/kiwano/utils/ResLoader.cpp index 7496aba9..461361f3 100644 --- a/kiwano/utils/ResLoader.cpp +++ b/kiwano/utils/ResLoader.cpp @@ -28,37 +28,90 @@ namespace kiwano { - namespace + namespace __res_loader_09 { - void LoadJsonData09(Json const& json_data, ResLoader* loader) + struct GlobalData { String path; + }; + + void LoadImageFromData(ResLoader* loader, GlobalData const& global_data, Json const& image_data); + bool CompareJsonWithString(Json const& data, const wchar_t* key, const wchar_t* value); + + void LoadJsonData(ResLoader* loader, Json const& json_data) + { + GlobalData global_data; if (json_data.count(L"path")) { - path = json_data[L"path"]; + global_data.path = json_data[L"path"]; } if (json_data.count(L"images")) { for (const auto& image : json_data[L"images"]) { - String file = image[L"file"]; - String id = image.count(L"id") ? image[L"id"] : file; - - if (image.count(L"type") && image[L"type"].as_string() == L"gif") - loader->AddGifImage(id, Resource(path + file)); - else - loader->AddImage(id, Resource(path + file)); + LoadImageFromData(loader, global_data, image); } } - - /*if (json_data.count(L"sounds")) + } + + void LoadImageFromData(ResLoader* loader, GlobalData const& global_data, Json const& image_data) + { + String id = image_data[L"id"]; + + if (image_data.count(L"file")) { - for (const auto& sound : json_data[L"sounds"]) + String file = image_data[L"file"]; + + // Gif image + if (CompareJsonWithString(image_data, L"type", L"gif")) { - loader->AddObj(); + loader->AddGifImage(id, Resource(global_data.path + file)); + return; } - }*/ + + if (!file.empty()) + { + if (image_data.count(L"rows") || image_data.count(L"cols")) + { + // Image slices + int rows = 1, cols = 1; + if (image_data.count(L"rows")) rows = image_data[L"rows"]; + if (image_data.count(L"cols")) cols = image_data[L"cols"]; + loader->AddFrames(id, Resource(global_data.path + file), cols, rows); + return; + } + else + { + // Simple image + loader->AddImage(id, Resource(global_data.path + file)); + return; + } + } + } + + // Frames + if (image_data.count(L"files")) + { + Array images; + images.reserve(image_data[L"files"].size()); + for (const auto& file : image_data[L"files"]) + { + auto filePath = file.as_string(); + ImagePtr image = new Image(global_data.path + file.as_string()); + if (image->IsValid()) + { + images.push_back(image); + } + } + loader->AddFrames(id, images); + } + + } + + bool CompareJsonWithString(Json const& data, const wchar_t* key, const wchar_t* value) + { + return data.count(key) && data[key].as_string() == value; } } @@ -96,7 +149,7 @@ namespace kiwano String version = json_data[L"version"]; if (version.empty() || version == L"0.9") { - LoadJsonData09(json_data, this); + __res_loader_09::LoadJsonData(this, json_data); } else { @@ -158,7 +211,7 @@ namespace kiwano return false; } - size_t ResLoader::AddFrames(String const& id, Array const& images) + bool ResLoader::AddFrames(String const& id, Array const& images) { if (images.empty()) return 0; @@ -181,11 +234,7 @@ namespace kiwano if (!image_arr.empty()) { FramesPtr frames = new (std::nothrow) Frames(image_arr); - if (frames) - { - res_.insert(std::make_pair(id, frames)); - return frames->GetFrames().size(); - } + return AddFrames(id, frames); } return 0; } @@ -196,12 +245,7 @@ namespace kiwano return 0; FramesPtr frames = new (std::nothrow) Frames(images); - if (frames) - { - res_.insert(std::make_pair(id, frames)); - return frames->GetFrames().size(); - } - return 0; + return AddFrames(id, frames); } size_t ResLoader::AddFrames(String const & id, Resource const & image, int cols, int rows) @@ -211,7 +255,7 @@ namespace kiwano ImagePtr raw = new (std::nothrow) Image; if (!raw || !raw->Load(image)) - return 0; + return false; float raw_width = raw->GetSourceWidth(); float raw_height = raw->GetSourceHeight(); @@ -228,19 +272,14 @@ namespace kiwano ImagePtr ptr = new (std::nothrow) Image(raw->GetBitmap()); if (ptr) { - ptr->Crop(Rect{ i * width, j * height, width, height }); + ptr->Crop(Rect{ j * width, i * height, width, height }); image_arr.push_back(ptr); } } } FramesPtr frames = new (std::nothrow) Frames(image_arr); - if (frames) - { - res_.insert(std::make_pair(id, frames)); - return frames->GetFrames().size(); - } - return 0; + return AddFrames(id, frames); } size_t ResLoader::AddFrames(String const & id, Resource const & image, Array const & crop_rects) @@ -263,6 +302,11 @@ namespace kiwano } FramesPtr frames = new (std::nothrow) Frames(image_arr); + return AddFrames(id, frames); + } + + size_t ResLoader::AddFrames(String const & id, FramesPtr frames) + { if (frames) { res_.insert(std::make_pair(id, frames)); @@ -271,16 +315,6 @@ namespace kiwano return 0; } - bool ResLoader::AddFrames(String const & id, FramesPtr frames) - { - if (frames) - { - res_.insert(std::make_pair(id, frames)); - return true; - } - return false; - } - bool ResLoader::AddObj(String const& id, ObjectPtr obj) { if (obj) @@ -321,4 +355,13 @@ namespace kiwano res_.clear(); } + ResLoader::ResLoader() + { + } + + ResLoader::~ResLoader() + { + Destroy(); + } + } \ No newline at end of file diff --git a/kiwano/utils/ResLoader.h b/kiwano/utils/ResLoader.h index 145e6aab..557b990e 100644 --- a/kiwano/utils/ResLoader.h +++ b/kiwano/utils/ResLoader.h @@ -27,6 +27,7 @@ namespace kiwano { + // 资源加载器 class KGE_API ResLoader { public: @@ -49,7 +50,7 @@ namespace kiwano bool AddGifImage(String const& id, GifImagePtr image); // 添加帧集合 - size_t AddFrames(String const& id, Array const& images); + bool AddFrames(String const& id, Array const& images); // 添加帧集合 size_t AddFrames(String const& id, Array const& images); @@ -63,17 +64,21 @@ namespace kiwano size_t AddFrames(String const& id, Resource const& image, Array const& crop_rects); // 添加帧集合 - bool AddFrames(String const& id, FramesPtr frames); + size_t AddFrames(String const& id, FramesPtr frames); // 添加对象 bool AddObj(String const& id, ObjectPtr obj); + // 获取图片资源 ImagePtr GetImage(String const& id) const; + // 获取 GIF 图片资源 GifImagePtr GetGifImage(String const& id) const; + // 获取序列帧 FramesPtr GetFrames(String const& id) const; + // 获取对象 ObjectPtr GetObj(String const& id) const; // 删除指定资源 @@ -91,6 +96,11 @@ namespace kiwano return dynamic_cast<_Ty*>((*iter).second.Get()); } + public: + ResLoader(); + + virtual ~ResLoader(); + protected: UnorderedMap res_; }; diff --git a/samples/Samples/Demo1.h b/samples/Samples/Demo1.h index 38ef868b..4bc7472d 100644 --- a/samples/Samples/Demo1.h +++ b/samples/Samples/Demo1.h @@ -7,15 +7,15 @@ class Demo1 : public Scene { public: - static ScenePtr Create(ResLoader* loader) + static ScenePtr Create() { - return new Demo1(loader); + return new Demo1; } - Demo1(ResLoader* loader) + Demo1() { // 获取人物图片 - ImagePtr man_image = loader->GetImage(L"man"); + ImagePtr man_image = g_Loader.GetImage(L"man"); // 缓动方程 auto ease_functions = { diff --git a/samples/Samples/Demo2.h b/samples/Samples/Demo2.h index 1495731e..1cc1832e 100644 --- a/samples/Samples/Demo2.h +++ b/samples/Samples/Demo2.h @@ -67,15 +67,15 @@ class Demo2 : public Scene { public: - static ScenePtr Create(ResLoader* loader) + static ScenePtr Create() { - return new Demo2(loader); + return new Demo2; } - Demo2(ResLoader* loader) + Demo2() { // 创建角色 - HeroPtr hero = new Hero(loader->GetGifImage(L"Kusanagi")); + HeroPtr hero = new Hero(g_Loader.GetGifImage(L"Kusanagi")); // 在屏幕上居中显示 hero->SetAnchor(0.5f, 0.5f); hero->SetPosition(WINDOW_WIDTH / 2, WINDOW_HEIGHT / 2); diff --git a/samples/Samples/Demo3.h b/samples/Samples/Demo3.h index b791897d..2ea0073f 100644 --- a/samples/Samples/Demo3.h +++ b/samples/Samples/Demo3.h @@ -11,7 +11,7 @@ class Demo3 TextPtr state_text; // 播放状态文字 public: - static ScenePtr Create(ResLoader* loader) + static ScenePtr Create() { return new Demo3; } diff --git a/samples/Samples/Demo4.h b/samples/Samples/Demo4.h index 6ef74780..132e09fc 100644 --- a/samples/Samples/Demo4.h +++ b/samples/Samples/Demo4.h @@ -17,28 +17,9 @@ class Tiger public: Tiger() { - // 获取图片原始大小 - ImagePtr image = new Image(L"res/tiger.png"); - Size source_size = image->GetSize(); - // 计算每帧图片大小 - Size frame_size = { source_size.x / 5, source_size.y / 3 }; - // 加载帧动画 - run_frames = new Frames; - for (int i = 0; i < 6; ++i) - { - Point pos = { (i % 5) * frame_size.x, (i / 5) * frame_size.y }; - ImagePtr frame = new Image(L"res/tiger.png", Rect{ pos, frame_size }); - run_frames->Add(frame); - } - - stand_frames = new Frames; - for (int i = 0; i < 6; ++i) - { - Point pos = { ((i + 1) % 5) * frame_size.x, ((i + 1) / 5 + 1) * frame_size.y }; - ImagePtr frame = new Image(L"res/tiger.png", Rect{ pos, frame_size }); - stand_frames->Add(frame); - } + run_frames = g_Loader.GetFrames(L"tiger_running"); + stand_frames = g_Loader.GetFrames(L"tiger_standing"); // 执行动画 AddAction( @@ -163,7 +144,7 @@ class Demo4 : public Scene { public: - static ScenePtr Create(ResLoader* loader) + static ScenePtr Create() { return new Demo4; } diff --git a/samples/Samples/Demo5.h b/samples/Samples/Demo5.h index 8f5a9b84..63b5cddd 100644 --- a/samples/Samples/Demo5.h +++ b/samples/Samples/Demo5.h @@ -8,7 +8,7 @@ class Demo5 : public Scene { public: - static ScenePtr Create(ResLoader* loader) + static ScenePtr Create() { return new Demo5; } diff --git a/samples/Samples/Samples.vcxproj b/samples/Samples/Samples.vcxproj index c05de61c..bc6c896c 100644 --- a/samples/Samples/Samples.vcxproj +++ b/samples/Samples/Samples.vcxproj @@ -214,7 +214,7 @@ - + diff --git a/samples/Samples/Samples.vcxproj.filters b/samples/Samples/Samples.vcxproj.filters index fdf10a3d..8d7c1556 100644 --- a/samples/Samples/Samples.vcxproj.filters +++ b/samples/Samples/Samples.vcxproj.filters @@ -4,14 +4,31 @@ - - - - - - + + src + + + src + + + src + + + src + + + src + + + src + - + + + + + {4460eeec-9e2f-46b6-909a-5ff4443075ce} + \ No newline at end of file diff --git a/samples/Samples/common.h b/samples/Samples/common.h index cf98daff..93c3750a 100644 --- a/samples/Samples/common.h +++ b/samples/Samples/common.h @@ -11,3 +11,6 @@ using namespace kiwano::network; const int WINDOW_WIDTH = 640; const int WINDOW_HEIGHT = 480; + +// 资源加载工具 +extern ResLoader g_Loader; diff --git a/samples/Samples/main.cpp b/samples/Samples/main.cpp index 8dbb0997..b8796125 100644 --- a/samples/Samples/main.cpp +++ b/samples/Samples/main.cpp @@ -11,7 +11,7 @@ namespace struct Demo { String title; - ScenePtr(*Create)(ResLoader*); + ScenePtr(*Create)(); }; Demo s_Demos[] = { @@ -25,11 +25,12 @@ namespace int s_DemoNum = sizeof(s_Demos) / sizeof(Demo); } +// 资源加载工具 +ResLoader g_Loader; + class DemoApp : public Application { - ResLoader loader_; - public: DemoApp() { @@ -46,12 +47,18 @@ public: void OnStart() override { // 从 JSON 文件中加载资源 - loader_.LoadFromJsonFile(L"res/res.json"); + g_Loader.LoadFromJsonFile(L"res/index.json"); // 切换到第一个场景 ChangeDemoScene(0); } + void OnDestroy() override + { + // 退出游戏时销毁资源 + g_Loader.Destroy(); + } + void ChangeDemoScene(int index) { if (s_CurrIndex != index) @@ -61,7 +68,7 @@ public: String title = s_Demos[index].title; Window::Instance()->SetTitle(L"Kiwano示例程序 - " + title); - ScenePtr scene = s_Demos[index].Create(&loader_); + ScenePtr scene = s_Demos[index].Create(); EnterScene(scene); // 添加按键监听 diff --git a/samples/Samples/res/res.json b/samples/Samples/res/index.json similarity index 51% rename from samples/Samples/res/res.json rename to samples/Samples/res/index.json index c5774f4f..5355d9c5 100644 --- a/samples/Samples/res/res.json +++ b/samples/Samples/res/index.json @@ -15,21 +15,26 @@ "file": "spring_forest.jpg" }, { - "id": "tiger", - "file": "tiger.png", - "rows": 3, - "cols": 5 + "id": "tiger_running", + "files": [ + "tiger/run/run01.png", + "tiger/run/run02.png", + "tiger/run/run03.png", + "tiger/run/run04.png", + "tiger/run/run05.png", + "tiger/run/run06.png" + ] + }, + { + "id": "tiger_standing", + "file": "tiger/stand.png", + "rows": 2, + "cols": 3 }, { "id": "Kusanagi", "file": "Kusanagi.gif", "type": "gif" } - ], - "sounds": [ - { - "id": "bg_music", - "file": "splash.mp3" - } ] } \ No newline at end of file diff --git a/samples/Samples/res/tiger.png b/samples/Samples/res/tiger.png deleted file mode 100644 index 4ddffcde9b410b238e1d810b4aaaa1312e933ec9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28275 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%0A%Ag7Ccs+%TQhnKI%`8BG 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 Z@&mpS(+J)kUgn`LO7Nwag+!ZvJ=@- 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 NT9}+NE;aOu{uc;ns{Q}~ literal 0 HcmV?d00001 diff --git a/samples/Samples/res/tiger/run/run02.png b/samples/Samples/res/tiger/run/run02.png new file mode 100644 index 0000000000000000000000000000000000000000..b4be56bb6395f206955174e2b577461dfdab5b88 GIT binary patch literal 3582 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 A$^ZZW literal 0 HcmV?d00001 diff --git a/samples/Samples/res/tiger/run/run04.png b/samples/Samples/res/tiger/run/run04.png new file mode 100644 index 0000000000000000000000000000000000000000..005680c4ee4cab197559bffb3641c231e045c966 GIT binary patch literal 3555 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 literal 0 HcmV?d00001 diff --git a/samples/Samples/res/tiger/run/run05.png b/samples/Samples/res/tiger/run/run05.png new file mode 100644 index 0000000000000000000000000000000000000000..e0c71b7a69ede30b2073a4c0b9fde786e845a61e GIT binary patch literal 3664 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 ZK|o5@#A<%W=sG8 literal 0 HcmV?d00001 diff --git a/samples/Samples/res/tiger/run/run06.png b/samples/Samples/res/tiger/run/run06.png new file mode 100644 index 0000000000000000000000000000000000000000..af3c5546eee2e376fc381141ebf79b15e05d08b5 GIT binary patch literal 3709 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 CRCE6T literal 0 HcmV?d00001 diff --git a/samples/Samples/res/tiger/shock.png b/samples/Samples/res/tiger/shock.png new file mode 100644 index 0000000000000000000000000000000000000000..41809eb809d38e6930fe00df17feea9077f903f8 GIT binary patch literal 3559 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 b0vSM5kQV>-I@jX0UoS6rAGa!(sO0|xMBpnd literal 0 HcmV?d00001 diff --git a/samples/Samples/res/tiger/stand.png b/samples/Samples/res/tiger/stand.png new file mode 100644 index 0000000000000000000000000000000000000000..1c6868eb29a7b71d4bc9af61445e709939398539 GIT binary patch literal 12667 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�(vyq%Aj-=Xg?A_3EI^{wRoT+( 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 E2R_0XNdN!< literal 0 HcmV?d00001 diff --git a/samples/Samples/res/tiger/stand/stand01.png b/samples/Samples/res/tiger/stand/stand01.png new file mode 100644 index 0000000000000000000000000000000000000000..864dcb950d6300d8fd5175cb717a4ff0888ebd8c GIT binary patch literal 3550 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 MF}E?RHu1XgFZAUdLjV8( literal 0 HcmV?d00001 diff --git a/samples/Samples/res/tiger/stand/stand02.png b/samples/Samples/res/tiger/stand/stand02.png new file mode 100644 index 0000000000000000000000000000000000000000..503f7c2301e7cb92f0e797d54f7b4c83aa524581 GIT binary patch literal 3574 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 P7tVgSlg&LVpOgOw_FG$d literal 0 HcmV?d00001 diff --git a/samples/Samples/res/tiger/stand/stand04.png b/samples/Samples/res/tiger/stand/stand04.png new file mode 100644 index 0000000000000000000000000000000000000000..d8c6b8c1315532684c5e37db61e2214c98878755 GIT binary patch literal 3595 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 literal 0 HcmV?d00001 diff --git a/samples/Samples/res/tiger/stand/stand05.png b/samples/Samples/res/tiger/stand/stand05.png new file mode 100644 index 0000000000000000000000000000000000000000..e4756cd44f05214bf5ff231d9b5fc9642f92c6ee GIT binary patch literal 3525 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 literal 0 HcmV?d00001 diff --git a/samples/Samples/res/tiger/stand/stand06.png b/samples/Samples/res/tiger/stand/stand06.png new file mode 100644 index 0000000000000000000000000000000000000000..b5337f8de381ad52a6daf2f1a09480fb7910bfc4 GIT binary patch literal 3512 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 literal 0 HcmV?d00001