mirror of
https://github.com/bailwillharr/engine.git
synced 2024-09-21 04:51:18 +00:00
add comments
This commit is contained in:
parent
977da197e2
commit
010ecb1641
@ -33,7 +33,7 @@ class Renderer {
|
|||||||
void PreRender(bool window_is_resized, glm::mat4 camera_transform);
|
void PreRender(bool window_is_resized, glm::mat4 camera_transform);
|
||||||
|
|
||||||
// staticList can be nullptr to render nothing
|
// staticList can be nullptr to render nothing
|
||||||
void Render(const RenderList* static_list, const RenderList* dynamic_list);
|
void Render(const RenderList& static_list, const RenderList& dynamic_list);
|
||||||
|
|
||||||
// getters
|
// getters
|
||||||
|
|
||||||
|
@ -183,7 +183,7 @@ void Application::GameLoop() {
|
|||||||
auto mesh_render_system = scene->GetSystem<MeshRenderSystem>();
|
auto mesh_render_system = scene->GetSystem<MeshRenderSystem>();
|
||||||
const RenderList* static_list = mesh_render_system->GetStaticRenderList();
|
const RenderList* static_list = mesh_render_system->GetStaticRenderList();
|
||||||
const RenderList* dynamic_list = mesh_render_system->GetDynamicRenderList();
|
const RenderList* dynamic_list = mesh_render_system->GetDynamicRenderList();
|
||||||
renderer_->Render(static_list, dynamic_list);
|
renderer_->Render(*static_list, *dynamic_list);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* poll events */
|
/* poll events */
|
||||||
|
@ -90,20 +90,17 @@ void Renderer::PreRender(bool window_is_resized, glm::mat4 camera_transform) {
|
|||||||
&frame_uniform.uniform_buffer_data);
|
&frame_uniform.uniform_buffer_data);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Renderer::Render(const RenderList* static_list,
|
void Renderer::Render(const RenderList& static_list,
|
||||||
const RenderList* dynamic_list) {
|
const RenderList& dynamic_list) {
|
||||||
assert(static_list != nullptr);
|
|
||||||
assert(dynamic_list != nullptr);
|
|
||||||
|
|
||||||
last_bound_pipeline_ = nullptr;
|
last_bound_pipeline_ = nullptr;
|
||||||
|
|
||||||
gfx::DrawBuffer* draw_buffer = device_->BeginRender();
|
gfx::DrawBuffer* draw_buffer = device_->BeginRender();
|
||||||
|
|
||||||
if (!static_list->empty()) {
|
if (!static_list.empty()) {
|
||||||
DrawRenderList(draw_buffer, *static_list);
|
DrawRenderList(draw_buffer, static_list);
|
||||||
}
|
}
|
||||||
if (!dynamic_list->empty()) {
|
if (!dynamic_list.empty()) {
|
||||||
DrawRenderList(draw_buffer, *dynamic_list);
|
DrawRenderList(draw_buffer, dynamic_list);
|
||||||
}
|
}
|
||||||
|
|
||||||
device_->FinishRender(draw_buffer);
|
device_->FinishRender(draw_buffer);
|
||||||
|
@ -27,9 +27,11 @@ void MeshRenderSystem::OnComponentInsert(uint32_t entity) {
|
|||||||
void MeshRenderSystem::OnUpdate(float ts) {
|
void MeshRenderSystem::OnUpdate(float ts) {
|
||||||
// do stuff
|
// do stuff
|
||||||
(void)ts;
|
(void)ts;
|
||||||
|
// update the static render list only if it needs updating
|
||||||
if (list_needs_rebuild_) {
|
if (list_needs_rebuild_) {
|
||||||
RebuildStaticRenderList();
|
RebuildStaticRenderList();
|
||||||
}
|
}
|
||||||
|
// update the dynamic render list always
|
||||||
BuildRenderList(dynamic_render_list_, false);
|
BuildRenderList(dynamic_render_list_, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user