34 lines
864 B
C++
Executable File

#include "Deer/Scene.h"
#include "Deer/Components.h"
#include "Deer/Enviroment.h"
#include "Deer/VoxelWorld.h"
#include "DeerRender/Render/RenderCommand.h"
namespace Deer {
void Scene::render() {
uint32_t mainCamera = environment.tryGetMainCamera();
if (mainCamera == 0) return;
Entity& m_cameraEntity = environment.getEntity(mainCamera);
SceneCamera sceneCamera;
sceneCamera.camera = m_cameraEntity.getComponent<CameraComponent>();
sceneCamera.transform =
m_cameraEntity.getComponent<TransformComponent>();
Scene::render(sceneCamera);
}
void Scene::render(SceneCamera sceneCamera) {
RenderCommand::setDepthBuffer(true);
environment.render(sceneCamera);
if (VoxelWorld::isInitialized())
VoxelWorld::render(sceneCamera);
RenderCommand::setDepthBuffer(false);
gizmoRenderer.render(sceneCamera);
}
} // namespace Deer