aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/crepe/api/Sprite.cpp9
-rw-r--r--src/crepe/api/Sprite.h4
-rw-r--r--src/crepe/facade/SDLContext.cpp4
-rw-r--r--src/example/rendering_particle.cpp4
4 files changed, 10 insertions, 11 deletions
diff --git a/src/crepe/api/Sprite.cpp b/src/crepe/api/Sprite.cpp
index 58e0884..2c2ca65 100644
--- a/src/crepe/api/Sprite.cpp
+++ b/src/crepe/api/Sprite.cpp
@@ -1,5 +1,4 @@
#include <cmath>
-#include <memory>
#include "../util/Log.h"
@@ -10,17 +9,17 @@
using namespace std;
using namespace crepe;
-Sprite::Sprite(game_object_id_t id, const shared_ptr<Texture> image, const Color & color,
+Sprite::Sprite(game_object_id_t id, const Texture & image, const Color & color,
const FlipSettings & flip)
: Component(id),
color(color),
flip(flip),
sprite_image(image),
- aspect_ratio(static_cast<double>(sprite_image->get_width()) / sprite_image->get_height()) {
+ aspect_ratio(static_cast<double>(sprite_image.get_width()) / sprite_image.get_height()) {
dbg_trace();
- this->sprite_rect.w = sprite_image->get_width();
- this->sprite_rect.h = sprite_image->get_height();
+ this->sprite_rect.w = sprite_image.get_width();
+ this->sprite_rect.h = sprite_image.get_height();
}
Sprite::~Sprite() { dbg_trace(); }
diff --git a/src/crepe/api/Sprite.h b/src/crepe/api/Sprite.h
index 7d5f4c3..82dc4a7 100644
--- a/src/crepe/api/Sprite.h
+++ b/src/crepe/api/Sprite.h
@@ -44,7 +44,7 @@ public:
* \param color Color tint applied to the sprite.
* \param flip Flip settings for horizontal and vertical orientation.
*/
- Sprite(game_object_id_t id, const std::shared_ptr<Texture> image, const Color & color,
+ Sprite(game_object_id_t id, const Texture & image, const Color & color,
const FlipSettings & flip);
/**
@@ -53,7 +53,7 @@ public:
~Sprite();
//! Texture used for the sprite
- const std::shared_ptr<Texture> sprite_image;
+ const Texture & sprite_image;
//! Color tint of the sprite
Color color;
//! Flip settings for the sprite
diff --git a/src/crepe/facade/SDLContext.cpp b/src/crepe/facade/SDLContext.cpp
index abb3cb7..72542e8 100644
--- a/src/crepe/facade/SDLContext.cpp
+++ b/src/crepe/facade/SDLContext.cpp
@@ -136,7 +136,7 @@ void SDLContext::draw_particle(const Sprite & sprite, const vec2 & pos, const do
SDL_Rect srcrect = this->get_src_rect(sprite);
SDL_Rect dstrect = this->get_dst_rect(sprite, pos, cam , img_scale);
- SDL_RenderCopyEx(this->game_renderer.get(), sprite.sprite_image->texture.get(), &srcrect,
+ SDL_RenderCopyEx(this->game_renderer.get(), sprite.sprite_image.texture.get(), &srcrect,
&dstrect, angle, NULL, render_flip);
}
@@ -150,7 +150,7 @@ void SDLContext::draw(const Sprite & sprite, const Transform & transform, const
SDL_Rect dstrect
= this->get_dst_rect(sprite, transform.position, cam, transform.scale);
- SDL_RenderCopyEx(this->game_renderer.get(), sprite.sprite_image->texture.get(), &srcrect,
+ SDL_RenderCopyEx(this->game_renderer.get(), sprite.sprite_image.texture.get(), &srcrect,
&dstrect, transform.rotation, NULL, render_flip);
}
diff --git a/src/example/rendering_particle.cpp b/src/example/rendering_particle.cpp
index afa064d..3589cad 100644
--- a/src/example/rendering_particle.cpp
+++ b/src/example/rendering_particle.cpp
@@ -31,8 +31,8 @@ int main(int argc, char * argv[]) {
Color color(255, 255, 255, 255);
- Sprite & test_sprite = game_object.add_component<Sprite>(
- make_shared<Texture>("asset/texture/test_ap43.png"), color,
+ auto img = Texture("asset/texture/test_ap43.png");
+ Sprite & test_sprite = game_object.add_component<Sprite>(img, color,
FlipSettings{true, true});
test_sprite.order_in_layer = 5;
test_sprite.height = 195;