27 lines
725 B
C++
27 lines
725 B
C++
#pragma once
|
|
|
|
#include <SFML/Graphics/RenderTexture.hpp>
|
|
|
|
#include "Camera.hpp"
|
|
#include "../Utils/MeshHelper.hpp"
|
|
#include "../World/WorldObject.hpp"
|
|
|
|
|
|
class Graphic3DRenderer final {
|
|
public:
|
|
Graphic3DRenderer();
|
|
~Graphic3DRenderer();
|
|
|
|
Graphic3DRenderer(Graphic3DRenderer&&) = default;
|
|
Graphic3DRenderer& operator= (Graphic3DRenderer&&) = default;
|
|
Graphic3DRenderer(Graphic3DRenderer const&) = delete;
|
|
Graphic3DRenderer& operator= (Graphic3DRenderer const&) = delete;
|
|
|
|
void Draw(sf::RenderTexture& context);
|
|
|
|
private:
|
|
std::unique_ptr<Camera> mMainCamera; // Default player view
|
|
|
|
std::vector<std::shared_ptr<WorldObject>> mRenderList; // List of elements to be rendered next frame
|
|
|
|
}; |