1#ifndef DANDELION_SCENE_SCENE_H
2#define DANDELION_SCENE_SCENE_H
11#include <spdlog/spdlog.h>
52 Scene(
const Scene& other) =
delete;
63 bool load(
const std::string& file_path);
81 std::vector<std::unique_ptr<Group>>
groups;
bool during_animation
定义 scene.h:133
void reset_simulation()
定义 scene.cpp:224
bool check_during_simulation()
定义 scene.cpp:237
Scene(Scene &other)=delete
void render_lights(const Shader &shader)
在渲染模式下绘制光源。
定义 scene.cpp:151
void render(const Shader &shader, WorkingMode mode)
绘制整个场景。
定义 scene.cpp:242
std::vector< std::unique_ptr< Group > > groups
定义 scene.h:81
void render_camera(const Shader &shader)
在渲染模式 (Rendering mode) 下绘制代表相机视锥的线框。
定义 scene.cpp:104
static void render_ground(const Shader &shader)
绘制空间坐标轴和 平面上表示地面的网格线。
定义 scene.cpp:44
std::shared_ptr< spdlog::logger > logger
定义 scene.h:141
void stop_simulation()
定义 scene.cpp:219
GL::LineSet arrows
定义 scene.h:139
std::list< Light > lights
定义 scene.h:92
void start_simulation()
定义 scene.cpp:202
bool load(const std::string &file_path)
从指定路径加载模型文件到这个场景中。
定义 scene.cpp:186
std::unique_ptr< HalfedgeMesh > halfedge_mesh
定义 scene.h:94
std::chrono::time_point< std::chrono::steady_clock > last_update
定义 scene.h:135
std::vector< Object * > all_objects
定义 scene.h:137
Object * selected_object
当前被选中的物体。
定义 scene.h:88
Scene(Scene &&other)=delete
void simulation_update()
计算场景中所有物体下一帧要渲染的运动状态。
定义 scene.cpp:297
Camera camera
定义 scene.h:90
对 GLSL Shader 的简单封装。
定义 shader.hpp:24
这个文件定义了一些和渲染(离线渲染或场景预览)相关的常量、枚举等。
WorkingMode
定义 rendering.hpp:46
表示观察点的相机,既可以用于预览视角,也可以用于渲染视角。
定义 camera.h:22
在预览场景时绘制若干线条。
定义 gl.hpp:270