ColorRace/engine/src/renderer/MeshRenderSystem.cpp
2026-08-04 14:42:42 +02:00

28 lines
709 B
C++

//
// Created by sebastian on 29.07.26.
//
#include "MeshRenderSystem.h"
#include "ecs/standardComponents/MeshComponent.h"
#include "ecs/standardComponents/TransformComponent.h"
void engine::MeshRenderSystem::update(engine::EntityRegistry &registry, engine::RenderQueue &renderQueue) {
renderState.apply();
auto transforms = registry.getPool<engine::TransformComponent>();
auto meshes = registry.getPool<engine::MeshComponent>();
for (auto& [entity, mesh] : meshes)
{
if (!transforms.has(entity))
continue;
auto& transform = transforms.get(entity);
renderQueue.submit(engine::RenderCommand(mesh.model, transform.computeModelMatrix()));
}
}