50 lines
1.2 KiB
C++
50 lines
1.2 KiB
C++
//
|
|
// Created by sfd on 25-11-23.
|
|
//
|
|
|
|
#ifndef TESTLAYER_H
|
|
#define TESTLAYER_H
|
|
#include "glm/vec4.hpp"
|
|
#include "Prism/Core/Layer.h"
|
|
#include "Prism/Renderer/Buffer.h"
|
|
#include "Prism/Renderer/Camera.h"
|
|
#include "Prism/Renderer/FrameBuffer.h"
|
|
#include "Prism/Renderer/Mesh.h"
|
|
#include "Prism/Renderer/Shader.h"
|
|
#include "Prism/Renderer/Texture.h"
|
|
|
|
|
|
class TestLayer : public Prism::Layer
|
|
{
|
|
public:
|
|
TestLayer();
|
|
void OnAttach() override;
|
|
void OnDetach() override;
|
|
void OnUpdate(Prism::TimeStep deltaTime) override;
|
|
void OnImGuiRender() override;
|
|
void OnEvent(Prism::Event& e) override;
|
|
|
|
private:
|
|
glm::vec4 m_clearColor = glm::vec4(0.1f, 0.1f, 0.1f, 1.0f);
|
|
glm::vec4 m_TriangleColor = glm::vec4(1.0f);
|
|
|
|
std::unique_ptr<Prism::FrameBuffer> m_FrameBuffer, m_FinalPresentBuffer;
|
|
std::unique_ptr<Prism::VertexBuffer> m_VertexBuffer;
|
|
std::unique_ptr<Prism::IndexBuffer> m_IndexBuffer;
|
|
|
|
|
|
std::unique_ptr<Prism::TextureCube> m_SkyBoxTextureCube;
|
|
|
|
std::unique_ptr<Prism::Shader> m_SkyboxShader;
|
|
std::unique_ptr<Prism::Shader> m_Shader;
|
|
std::unique_ptr<Prism::Shader> m_HDRShader;
|
|
std::unique_ptr<Prism::Mesh> m_Mesh;
|
|
|
|
Prism::Camera m_Camera;
|
|
|
|
float m_Exposure = 1.0f;
|
|
};
|
|
|
|
|
|
#endif //TESTLAYER_H
|