feat: added ui_draw

main
Sara 2025-01-27 00:42:32 +01:00
parent 4f6d68c503
commit b294a76cc9
2 changed files with 10 additions and 0 deletions

View File

@ -34,6 +34,10 @@ void Level::propagate_draw(SDL_Renderer *render) {
0.5f / this->view_transform.scale.x,
0.5f / this->view_transform.scale.y * ratio
}) * this->view_transform * screen_transform);
this->root->propagate_draw_ui(render, Transform().translated({
0.5f / this->view_transform.scale.x,
0.5f / this->view_transform.scale.y * ratio
}) * screen_transform);
}
Node *Level::get_root() {

View File

@ -2,6 +2,7 @@
#define CANVAS_LEVEL_HPP
#include "node.hpp"
#include <memory>
namespace ce {
class Level {
@ -19,6 +20,7 @@ public:
void deinstantiate();
void propagate_tick(double delta_time);
void propagate_draw(SDL_Renderer *render);
template<class TLevel, typename... TArgs> static std::unique_ptr<Level> make(TArgs... args);
Node *get_root();
bool is_instantiated() const;
@ -27,6 +29,10 @@ public:
protected:
Node::OwnedPtr &get_owned_root();
};
template<class TLevel, typename... TArgs> std::unique_ptr<Level> Level::make(TArgs... args) {
return std::unique_ptr<Level>(new TLevel(args...));
}
}
#endif // !CANVAS_LEVEL_HPP