Refactor Mesh serialization and model system.

This commit is contained in:
antopilo
2022-06-28 19:56:16 -04:00
parent 6b827e9db7
commit 407ff89df7
21 changed files with 612 additions and 287 deletions
+8 -4
View File
@@ -144,7 +144,7 @@ namespace Nuake {
for (auto e : meshView)
{
auto [transform, mesh] = meshView.get<TransformComponent, MeshComponent>(e);
for (auto& m : mesh.meshes)
for (auto& m : mesh.ModelResource->GetMeshes())
Renderer::SubmitMesh(m, transform.GetGlobalTransform());
}
@@ -183,11 +183,16 @@ namespace Nuake {
for (auto e : view)
{
auto [transform, mesh, parent] = view.get<TransformComponent, MeshComponent, ParentComponent>(e);
for (auto& m : mesh.meshes)
Renderer::SubmitMesh(m, transform.GetGlobalTransform());
if (mesh.ModelResource)
{
for (auto& m : mesh.ModelResource->GetMeshes())
Renderer::SubmitMesh(m, transform.GetGlobalTransform());
}
}
glCullFace(GL_BACK);
RenderCommand::Disable(RendererEnum::FACE_CULL);
Renderer::Flush(gBufferShader, false);
auto quakeView = scene.m_Registry.view<TransformComponent, BSPBrushComponent, ParentComponent>();
@@ -201,7 +206,6 @@ namespace Nuake {
for (auto& b : model.Meshes)
Renderer::SubmitMesh(b, transform.GetGlobalTransform());
}
glCullFace(GL_FRONT);
Renderer::Flush(gBufferShader, false);
}
mGBuffer->Unbind();