feat: added ui_draw
parent
4f6d68c503
commit
b294a76cc9
|
@ -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() {
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue