diff --git a/WickedEngine/wiRenderPath2D.cpp b/WickedEngine/wiRenderPath2D.cpp index 164d95dc6..57741e487 100644 --- a/WickedEngine/wiRenderPath2D.cpp +++ b/WickedEngine/wiRenderPath2D.cpp @@ -35,7 +35,7 @@ namespace wi } else { - rtStenciled = Texture(); // this will be deleted here + rtStenciled = {}; // this will be deleted here } { @@ -121,13 +121,13 @@ namespace wi switch (y.type) { default: - case RenderItem2D::SPRITE: + case RenderItem2D::TYPE::SPRITE: if (y.sprite != nullptr) { y.sprite->Update(dt); } break; - case RenderItem2D::FONT: + case RenderItem2D::TYPE::FONT: if (y.font != nullptr) { y.font->Update(dt); @@ -162,13 +162,13 @@ namespace wi switch (y.type) { default: - case RenderItem2D::SPRITE: + case RenderItem2D::TYPE::SPRITE: if (y.sprite != nullptr) { y.sprite->FixedUpdate(); } break; - case RenderItem2D::FONT: + case RenderItem2D::TYPE::FONT: if (y.font != nullptr) { y.font->FixedUpdate(); @@ -210,7 +210,7 @@ namespace wi { for (auto& y : x.items) { - if (y.type == RenderItem2D::SPRITE && + if (y.type == RenderItem2D::TYPE::SPRITE && y.sprite != nullptr && y.sprite->params.stencilComp != wi::image::STENCILMODE_DISABLED) { @@ -254,7 +254,7 @@ namespace wi { for (auto& y : x.items) { - if (y.type == RenderItem2D::SPRITE && + if (y.type == RenderItem2D::TYPE::SPRITE && y.sprite != nullptr && y.sprite->params.stencilComp != wi::image::STENCILMODE_DISABLED) { @@ -274,13 +274,13 @@ namespace wi switch (y.type) { default: - case RenderItem2D::SPRITE: + case RenderItem2D::TYPE::SPRITE: if (y.sprite != nullptr && y.sprite->params.stencilComp == wi::image::STENCILMODE_DISABLED) { y.sprite->Draw(cmd); } break; - case RenderItem2D::FONT: + case RenderItem2D::TYPE::FONT: if (y.font != nullptr) { y.font->Draw(cmd); @@ -331,7 +331,7 @@ namespace wi if (!x.name.compare(layer)) { x.items.push_back(RenderItem2D()); - x.items.back().type = RenderItem2D::SPRITE; + x.items.back().type = RenderItem2D::TYPE::SPRITE; x.items.back().sprite = sprite; } } @@ -343,7 +343,7 @@ namespace wi { for (auto& y : x.items) { - if (y.type == RenderItem2D::SPRITE && y.sprite == sprite) + if (y.type == RenderItem2D::TYPE::SPRITE && y.sprite == sprite) { y.sprite = nullptr; } @@ -357,7 +357,7 @@ namespace wi { for (auto& y : x.items) { - if (y.type == RenderItem2D::SPRITE) + if (y.type == RenderItem2D::TYPE::SPRITE) { y.sprite = nullptr; } @@ -387,7 +387,7 @@ namespace wi if (!x.name.compare(layer)) { x.items.push_back(RenderItem2D()); - x.items.back().type = RenderItem2D::FONT; + x.items.back().type = RenderItem2D::TYPE::FONT; x.items.back().font = font; } } @@ -399,7 +399,7 @@ namespace wi { for (auto& y : x.items) { - if (y.type == RenderItem2D::FONT && y.font == font) + if (y.type == RenderItem2D::TYPE::FONT && y.font == font) { y.font = nullptr; } @@ -413,7 +413,7 @@ namespace wi { for (auto& y : x.items) { - if (y.type == RenderItem2D::FONT) + if (y.type == RenderItem2D::TYPE::FONT) { y.font = nullptr; } @@ -468,7 +468,7 @@ namespace wi { for (auto& y : x.items) { - if (y.type == RenderItem2D::SPRITE && y.sprite == sprite) + if (y.type == RenderItem2D::TYPE::SPRITE && y.sprite == sprite) { y.order = order; } @@ -482,7 +482,7 @@ namespace wi { for (auto& y : x.items) { - if (y.type == RenderItem2D::FONT && y.font == font) + if (y.type == RenderItem2D::TYPE::FONT && y.font == font) { y.order = order; } diff --git a/WickedEngine/wiRenderPath2D.h b/WickedEngine/wiRenderPath2D.h index 13378c127..2541546de 100644 --- a/WickedEngine/wiRenderPath2D.h +++ b/WickedEngine/wiRenderPath2D.h @@ -10,27 +10,6 @@ namespace wi class Sprite; class SpriteFont; - struct RenderItem2D - { - enum TYPE - { - SPRITE, - FONT, - } type = SPRITE; - union - { - wi::Sprite* sprite = nullptr; - wi::SpriteFont* font; - }; - int order = 0; - }; - struct RenderLayer2D - { - wi::vector items; - std::string name; - int order = 0; - }; - class RenderPath2D : public RenderPath { @@ -79,6 +58,26 @@ namespace wi void ClearFonts(); int GetFontOrder(wi::SpriteFont* font); + struct RenderItem2D + { + enum class TYPE + { + SPRITE, + FONT, + } type = TYPE::SPRITE; + union + { + wi::Sprite* sprite = nullptr; + wi::SpriteFont* font; + }; + int order = 0; + }; + struct RenderLayer2D + { + wi::vector items; + std::string name; + int order = 0; + }; wi::vector layers{ 1 }; void AddLayer(const std::string& name); void SetLayerOrder(const std::string& name, int order);