summaryrefslogtreecommitdiff
path: root/archive/src/render/pbr.h
diff options
context:
space:
mode:
authoromniscient <17525998+omnisci3nce@users.noreply.github.com>2024-10-26 21:55:23 +1100
committeromniscient <17525998+omnisci3nce@users.noreply.github.com>2024-10-26 21:55:23 +1100
commit43bee361397315c7105b7214316325b185135331 (patch)
treeb339f728b4cd6f37b37912b62c8d0af75dc9551d /archive/src/render/pbr.h
parent24573518c3320673eb87d6d659522d77e05cb75c (diff)
move archive into /src
Diffstat (limited to 'archive/src/render/pbr.h')
-rw-r--r--archive/src/render/pbr.h70
1 files changed, 0 insertions, 70 deletions
diff --git a/archive/src/render/pbr.h b/archive/src/render/pbr.h
deleted file mode 100644
index 5a21533..0000000
--- a/archive/src/render/pbr.h
+++ /dev/null
@@ -1,70 +0,0 @@
-/**
- * @file pbr.h
- * @brief PBR render pass and uniforms
- */
-
-#pragma once
-#include "backend_opengl.h"
-#include "camera.h"
-#include "defines.h"
-#include "maths_types.h"
-#include "ral_types.h"
-#include "render_types.h"
-
-// --- Public API
-
-/** @brief Holds data for the PBR pipeline */
-typedef struct PBR_Storage {
- GPU_Renderpass* pbr_pass;
- GPU_Pipeline* pbr_static_pipeline;
- GPU_Pipeline* pbr_skinned_pipeline;
-} PBR_Storage;
-
-typedef struct PBRMaterialUniforms {
- Material mat;
-} PBRMaterialUniforms;
-
-/** @brief */
-PUB void PBR_Init(PBR_Storage* storage);
-
-// NOTE: For simplicity's sake we will render this pass directly to the default framebuffer
-// internally this defers to `PBR_Execute()`
-PUB void PBR_Run(PBR_Storage* storage
- // light data
- // camera
- // geometry
- // materials
-);
-
-/** @brief Parameters that get passed as a uniform block to the PBR shader */
-typedef struct PBR_Params {
- Vec3 albedo;
- f32 metallic;
- f32 roughness;
- f32 ambient_occlusion;
-} PBR_Params;
-
-/** @brief Textures that will get passed into the PBR shader if they're not `INVALID_TEX_HANDLE` */
-typedef struct PBR_Textures {
- TextureHandle albedo_map;
- TextureHandle normal_map;
- bool metal_roughness_combined;
- TextureHandle metallic_map;
- TextureHandle roughness_map;
- TextureHandle ao_map;
-} PBR_Textures;
-
-/** @brief Returns a default white matte material */
-PUB Material PBRMaterialDefault();
-
-PUB ShaderDataLayout PBRMaterial_GetLayout(void* data);
-
-// --- Internal
-
-GPU_Renderpass* PBR_RPassCreate(); /** @brief Create the PBR Renderpass */
-
-void PBR_PipelinesCreate(PBR_Storage* storage,
- GPU_Renderpass* rpass); /** @brief Create PBR Pipelines */
-
-void PBR_Execute(PBR_Storage* storage, Camera camera, TextureHandle shadowmap_tex,
- RenderEnt* entities, size_t entity_count);