project-aster/samples/03_model_render/ibl_helpers.h

30 lines
706 B
C

// =============================================
// Aster: ibl_helpers.h
// Copyright (c) 2020-2024 Anish Bhobe
// =============================================
#pragma once
#include "global.h"
#include "gpu_resource_manager.h"
#include <EASTL/tuple.h>
struct Pipeline;
struct Texture;
struct TextureCube;
struct AssetLoader;
struct Environment
{
TextureHandle m_Skybox;
TextureHandle m_Diffuse;
TextureHandle m_Prefilter;
TextureHandle m_BrdfLut;
void Destroy(GpuResourceManager *resourceManager);
};
Environment
CreateCubeFromHdrEnv(AssetLoader *assetLoader, vk::Queue computeQueue, u32 cubeSide, TextureHandle hdrEnv,
cstr name = nullptr);