mirror of
https://github.com/zhenyan121/Cubed.git
synced 2026-08-09 02:07:04 +08:00
25 lines
694 B
C++
25 lines
694 B
C++
#pragma once
|
|
|
|
#include "Cubed/render/model_node.hpp"
|
|
#include "Cubed/shader.hpp"
|
|
|
|
#include <glm/glm.hpp>
|
|
namespace Cubed {
|
|
class Renderer;
|
|
class Camera;
|
|
class ModelRender {
|
|
public:
|
|
ModelRender(Renderer& renderer);
|
|
void render_model(const std::string& name, const glm::vec3& pos,
|
|
Camera& camera);
|
|
|
|
void shadow_pass(const std::string& name, const glm::vec3& pos,
|
|
Camera& camera);
|
|
|
|
private:
|
|
Renderer& m_renderer;
|
|
void render_node(const ModelNode& node, const glm::mat4& parent,
|
|
const glm::mat4& view, const Shader& shader, bool shadow);
|
|
void render_mesh(const Mesh& mesh, bool shadow);
|
|
};
|
|
} // namespace Cubed
|