Adding basic CBT Terrain implementation
This commit is contained in:
@@ -1,12 +1,14 @@
|
||||
#pragma once
|
||||
#include "RenderPass.h"
|
||||
#include "Graphics/Buffer.h"
|
||||
#include "Graphics/CBT/CBT.h"
|
||||
|
||||
namespace Seele {
|
||||
class TerrainRenderer {
|
||||
public:
|
||||
TerrainRenderer(Gfx::PGraphics graphics, PScene scene, Gfx::PDescriptorLayout viewParamsLayout);
|
||||
TerrainRenderer(Gfx::PGraphics graphics, PScene scene, Gfx::PDescriptorLayout viewParamsLayout, Gfx::PDescriptorSet viewParamsSet);
|
||||
~TerrainRenderer();
|
||||
void beginFrame();
|
||||
void beginFrame(Gfx::PDescriptorSet viewParamsSet);
|
||||
Gfx::ORenderCommand render(Gfx::PDescriptorSet viewParamsSet);
|
||||
void setViewport(Gfx::PViewport viewport, Gfx::PRenderPass renderPass);
|
||||
|
||||
@@ -18,13 +20,24 @@ class TerrainRenderer {
|
||||
Gfx::OPipelineLayout pipelineLayout;
|
||||
Gfx::OTaskShader task;
|
||||
Gfx::OMeshShader mesh;
|
||||
Gfx::OVertexInput inp;
|
||||
Gfx::OVertexShader vert;
|
||||
Gfx::OFragmentShader frag;
|
||||
Gfx::PGraphicsPipeline pipeline;
|
||||
Gfx::OComputeShader deformCS;
|
||||
Gfx::PComputePipeline deform;
|
||||
Gfx::PViewport viewport;
|
||||
Gfx::OShaderBuffer tilesBuffer;
|
||||
Gfx::PTexture2D displacementMap;
|
||||
Gfx::PTexture2D colorMap;
|
||||
Gfx::OSampler sampler;
|
||||
|
||||
Gfx::OUniformBuffer geometryBuffer;
|
||||
Gfx::OUniformBuffer updateBuffer;
|
||||
BaseMesh baseMesh;
|
||||
CBTMesh plainMesh;
|
||||
MeshUpdater meshUpdater;
|
||||
LebMatrixCache lebCache;
|
||||
};
|
||||
DEFINE_REF(TerrainRenderer);
|
||||
}
|
||||
} // namespace Seele
|
||||
Reference in New Issue
Block a user