@@ -18,7 +18,7 @@ namespace Core {
1818/*
1919DEFERRED RENDERING GEOMETRY PASS
2020*/
21- class GeometryPass : public GraphicPass
21+ class GeometryPass : public BaseGraphicPass < 3 , 6 >
2222{
2323 /* Setup*/
2424 ColorFormatType m_colorFormat;
@@ -34,29 +34,44 @@ class GeometryPass : public GraphicPass
3434 void setup_material_descriptor (IMaterial* mat);
3535
3636 public:
37- GeometryPass (Graphics::Device* ctx,
38- Extent2D extent,
39- ColorFormatType colorFormat,
40- ColorFormatType depthFormat,
41- bool isDefault = false )
42- : GraphicPass(ctx, extent, 1 , 1 , isDefault, " GEOMETRY" )
37+ /*
38+ Input Attachments:
39+ -
40+ - Enviroment
41+ - Diffuse Enviroment Irradiance
42+ - Sky
43+
44+ Output Attachments:
45+ -
46+ - Position buffer
47+ - Normal buffer
48+ - Albedo buffer
49+ - Material buffer
50+ - Emmissive buffer
51+ - Depth buffer
52+ */
53+ GeometryPass (Graphics::Device* device,
54+ const PassConfig<3 , 6 >& config,
55+ Extent2D extent,
56+ ColorFormatType colorFormat,
57+ ColorFormatType depthFormat)
58+ : BaseGraphicPass(device, config, extent, 1 , 1 , " GEOMETRY" )
4359 , m_colorFormat(colorFormat)
4460 , m_depthFormat(depthFormat) {
4561 }
4662
47- void setup_attachments (std::vector<Graphics::AttachmentInfo>& attachments,
48- std::vector<Graphics::SubPassDependency>& dependencies);
63+ void setup_out_attachments (std::vector<Graphics::AttachmentConfig>& attachments,
64+ std::vector<Graphics::SubPassDependency>& dependencies);
4965
5066 void setup_uniforms (std::vector<Graphics::Frame>& frames);
5167
5268 void setup_shader_passes ();
5369
54- void render (Graphics::Frame& currentFrame, Scene* const scene, uint32_t presentImageIndex = 0 );
70+ void execute (Graphics::Frame& currentFrame, Scene* const scene, uint32_t presentImageIndex = 0 );
5571
56- void link_previous_images (std::vector<Graphics::Image> images );
72+ void link_input_attachments ( );
5773
5874 void update_uniforms (uint32_t frameIndex, Scene* const scene);
59-
6075};
6176} // namespace Core
6277VULKAN_ENGINE_NAMESPACE_END
0 commit comments