41 Scene(tenno::shared_ptr<Camera> camera);
44 void set_skybox(tenno::shared_ptr<Skybox> skybox);
45 void set_skybox(
const tenno::vector<std::filesystem::path>& faces);
47 tenno::shared_ptr<Node> get_root()
const;
48 tenno::shared_ptr<Camera> get_camera()
const;
50 static void add_component(tenno::shared_ptr<Node> owner,
51 tenno::shared_ptr<NodeComponent> component);
52 static tenno::shared_ptr<Node> create_child(tenno::shared_ptr<Node> parent);
54 static void set_script(tenno::weak_ptr<Node> node,
const std::filesystem::path &path);
56 static void set_script(tenno::weak_ptr<Node> node,
const std::string &source);
58 void update(
float delta_time);
59 void draw(tenno::shared_ptr<RenderPipeline> pipeline,
60 int width,
int height);
64 tenno::shared_ptr<Node> root;
65 tenno::shared_ptr<Camera> active_camera;
66 std::optional<tenno::shared_ptr<Skybox>> skybox;