aboutsummaryrefslogtreecommitdiff
path: root/src/crepe/system
diff options
context:
space:
mode:
Diffstat (limited to 'src/crepe/system')
-rw-r--r--src/crepe/system/RenderSystem.cpp26
-rw-r--r--src/crepe/system/RenderSystem.h8
2 files changed, 7 insertions, 27 deletions
diff --git a/src/crepe/system/RenderSystem.cpp b/src/crepe/system/RenderSystem.cpp
index 2641435..42e4236 100644
--- a/src/crepe/system/RenderSystem.cpp
+++ b/src/crepe/system/RenderSystem.cpp
@@ -83,8 +83,11 @@ void RenderSystem::render_text() {
RefVector<Text> texts = mgr.get_components_by_type<Text>();
- for (const Text & text : texts) {
+ for (Text & text : texts) {
if (!text.active) continue;
+ if (!text.font.has_value()) text.font = ctx.get_font_from_name(text.font_family);
+ if (!text.font.has_value()) continue;
+
const Font & font = resource_manager.get<Font>(text.font.value());
const auto & transform
= mgr.get_components_by_id<Transform>(text.game_object_id).front().get();
@@ -149,11 +152,7 @@ void RenderSystem::render() {
ResourceManager & resource_manager = this->mediator.resource_manager;
RefVector<Sprite> sorted_sprites = this->sort(sprites);
RefVector<Text> text_components = mgr.get_components_by_type<Text>();
- for (Text & text : text_components) {
- const Transform & transform
- = mgr.get_components_by_id<Transform>(text.game_object_id).front().get();
- this->render_text(text, transform);
- }
+
for (const Sprite & sprite : sorted_sprites) {
if (!sprite.active) continue;
const Transform & transform
@@ -166,18 +165,3 @@ void RenderSystem::render() {
this->render_normal(sprite, transform);
}
}
-void RenderSystem::render_text(Text & text, const Transform & tm) {
- SDLContext & ctx = this->mediator.sdl_context;
-
- if (!text.font.has_value()) {
- text.font = ctx.get_font_from_name(text.font_family);
- }
-
- ResourceManager & resource_manager = this->mediator.resource_manager;
-
- if (!text.font.has_value()) {
- return;
- }
- const Asset & font_asset = text.font.value();
- const Font & res = resource_manager.get<Font>(font_asset);
-}
diff --git a/src/crepe/system/RenderSystem.h b/src/crepe/system/RenderSystem.h
index 3aa846e..5fe24d7 100644
--- a/src/crepe/system/RenderSystem.h
+++ b/src/crepe/system/RenderSystem.h
@@ -27,7 +27,6 @@ public:
void update() override;
private:
- void render_text();
//! Clears the screen in preparation for rendering.
void clear_screen();
@@ -39,7 +38,7 @@ private:
//! Renders the whole screen
void render();
-
+
/**
* \brief Renders all the particles on the screen from a given sprite.
*
@@ -53,11 +52,8 @@ private:
bool render_particle(const Sprite & sprite, const double & scale);
/**
* \brief Renders all Text components
- *
- * \param text The text component to be rendered.
- * \param tm the Transform component that holds the position,rotation and scale
*/
- void render_text(Text & text, const Transform & tm);
+ void render_text();
/**
* \brief renders a sprite with a Transform component on the screen
*