From aaa169f86cbf0e7a59e926d1c2cc5169288031ba Mon Sep 17 00:00:00 2001 From: "wrenczes@gmail.com" Date: Thu, 21 Apr 2011 22:48:22 +0000 Subject: [PATCH] Consolidated some loose strings into constant declarations in order to reduce allocation thrashing on temporary string constructs. I'm sure there are more, but "back_thumb", "back", and "backdrop.jpg" were the ones that showed up most in memory profiling. --- projects/mtg/include/WResourceManager.h | 3 +++ projects/mtg/src/GameApp.cpp | 4 ++-- projects/mtg/src/GameStateDeckViewer.cpp | 2 +- projects/mtg/src/GuiBackground.cpp | 4 +++- projects/mtg/src/GuiHand.cpp | 2 +- projects/mtg/src/GuiStatic.cpp | 2 +- projects/mtg/src/WGui.cpp | 12 ++++++------ 7 files changed, 17 insertions(+), 12 deletions(-) diff --git a/projects/mtg/include/WResourceManager.h b/projects/mtg/include/WResourceManager.h index fdd3858c5..e0a4925f1 100644 --- a/projects/mtg/include/WResourceManager.h +++ b/projects/mtg/include/WResourceManager.h @@ -5,6 +5,9 @@ #include #include +const std::string kGenericCardID = "back"; +const std::string kGenericCardThumbnailID = "back_thumb"; + enum ENUM_WRES_INFO { WRES_UNLOCKED = 0, //Resource is unlocked. diff --git a/projects/mtg/src/GameApp.cpp b/projects/mtg/src/GameApp.cpp index d2c5303a7..064694e3e 100644 --- a/projects/mtg/src/GameApp.cpp +++ b/projects/mtg/src/GameApp.cpp @@ -164,12 +164,12 @@ void GameApp::Create() LOG("--Loading back.jpg"); WResourceManager::Instance()->RetrieveTexture("back.jpg", RETRIEVE_MANAGE); - JQuadPtr jq = WResourceManager::Instance()->RetrieveQuad("back.jpg", 0, 0, 0, 0, "back", RETRIEVE_MANAGE); + JQuadPtr jq = WResourceManager::Instance()->RetrieveQuad("back.jpg", 0, 0, 0, 0, kGenericCardID, RETRIEVE_MANAGE); if (jq.get()) jq->SetHotSpot(jq->mWidth / 2, jq->mHeight / 2); WResourceManager::Instance()->RetrieveTexture("back_thumb.jpg", RETRIEVE_MANAGE); - WResourceManager::Instance()->RetrieveQuad("back_thumb.jpg", 0, 0, MTG_MINIIMAGE_WIDTH, MTG_MINIIMAGE_HEIGHT, "back_thumb", RETRIEVE_MANAGE); + WResourceManager::Instance()->RetrieveQuad("back_thumb.jpg", 0, 0, MTG_MINIIMAGE_WIDTH, MTG_MINIIMAGE_HEIGHT, kGenericCardThumbnailID, RETRIEVE_MANAGE); LOG("--Loading particles.png"); WResourceManager::Instance()->RetrieveTexture("particles.png", RETRIEVE_MANAGE); diff --git a/projects/mtg/src/GameStateDeckViewer.cpp b/projects/mtg/src/GameStateDeckViewer.cpp index d7909b320..b582d42cb 100644 --- a/projects/mtg/src/GameStateDeckViewer.cpp +++ b/projects/mtg/src/GameStateDeckViewer.cpp @@ -1316,7 +1316,7 @@ void GameStateDeckViewer::renderCard(int id, float rotation) if (!WResourceManager::Instance()->IsThreaded()) { - JQuadPtr backQuad = WResourceManager::Instance()->GetQuad("back"); + JQuadPtr backQuad = WResourceManager::Instance()->GetQuad(kGenericCardID); JQuadPtr quad; int cacheError = CACHE_ERROR_NONE; diff --git a/projects/mtg/src/GuiBackground.cpp b/projects/mtg/src/GuiBackground.cpp index bcb41ff22..3de4b474b 100644 --- a/projects/mtg/src/GuiBackground.cpp +++ b/projects/mtg/src/GuiBackground.cpp @@ -5,6 +5,8 @@ #include "GameObserver.h" #include "Rules.h" +const std::string kBackdropFile = "backdrop.jpg"; + GuiBackground::GuiBackground() { } @@ -24,7 +26,7 @@ void GuiBackground::Render() } if (!quad.get()) { - quad = WResourceManager::Instance()->RetrieveTempQuad("backdrop.jpg"); + quad = WResourceManager::Instance()->RetrieveTempQuad(kBackdropFile); } if (quad.get()) { diff --git a/projects/mtg/src/GuiHand.cpp b/projects/mtg/src/GuiHand.cpp index 48807d663..ca5d64e3d 100644 --- a/projects/mtg/src/GuiHand.cpp +++ b/projects/mtg/src/GuiHand.cpp @@ -68,7 +68,7 @@ GuiHandOpponent::GuiHandOpponent(MTGHand* hand) : void GuiHandOpponent::Render() { - JQuadPtr quad = WResourceManager::Instance()->GetQuad("back_thumb"); + JQuadPtr quad = WResourceManager::Instance()->GetQuad(kGenericCardThumbnailID); float x = 45; for (vector::iterator it = cards.begin(); it != cards.end(); ++it) diff --git a/projects/mtg/src/GuiStatic.cpp b/projects/mtg/src/GuiStatic.cpp index c1fe24e9d..0844befef 100644 --- a/projects/mtg/src/GuiStatic.cpp +++ b/projects/mtg/src/GuiStatic.cpp @@ -151,7 +151,7 @@ void GuiGameZone::toggleDisplay() void GuiGameZone::Render() { //Texture - JQuadPtr quad = WResourceManager::Instance()->GetQuad("back_thumb"); + JQuadPtr quad = WResourceManager::Instance()->GetQuad(kGenericCardThumbnailID); float scale = defaultHeight / quad->mHeight; quad->SetColor(ARGB((int)(actA),255,255,255)); diff --git a/projects/mtg/src/WGui.cpp b/projects/mtg/src/WGui.cpp index 4e772c8dd..034022411 100644 --- a/projects/mtg/src/WGui.cpp +++ b/projects/mtg/src/WGui.cpp @@ -1359,14 +1359,14 @@ void WGuiCardImage::Render() JQuadPtr q; if (bThumb) { - q = WResourceManager::Instance()->GetQuad("back_thumb"); + q = WResourceManager::Instance()->GetQuad(kGenericCardThumbnailID); #if defined WIN32 || defined LINUX if(!q) - q = WResourceManager::Instance()->GetQuad("back"); + q = WResourceManager::Instance()->GetQuad(kGenericCardID); #endif } else - q = WResourceManager::Instance()->GetQuad("back"); + q = WResourceManager::Instance()->GetQuad(kGenericCardID); float scale = p.actZ * 257.f / q->mHeight; q->SetColor(ARGB(255,255,255,255)); renderer->RenderQuad(q.get(), p.x, p.y, 0, scale, scale); @@ -1429,14 +1429,14 @@ void WGuiCardDistort::Render() //Default to back. if (bThumb) { - q = WResourceManager::Instance()->GetQuad("back_thumb"); + q = WResourceManager::Instance()->GetQuad(kGenericCardThumbnailID); #if defined WIN32 || defined LINUX if(!q) - q = WResourceManager::Instance()->GetQuad("back"); + q = WResourceManager::Instance()->GetQuad(kGenericCardID); #endif } else - q = WResourceManager::Instance()->GetQuad("back"); + q = WResourceManager::Instance()->GetQuad(kGenericCardID); } else {