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

26 lines
709 B
C

// =============================================
// Aster: ibl_helpers.h
// Copyright (c) 2020-2024 Anish Bhobe
// =============================================
#pragma once
#include "aster/aster.h"
#include "aster/systems/resource.h"
#include "aster/core/image.h"
struct Pipeline;
struct Texture;
struct TextureCube;
struct AssetLoader;
struct Environment
{
systems::ResId<Texture> m_Skybox;
systems::ResId<Texture> m_Diffuse;
systems::ResId<Texture> m_Prefilter;
systems::ResId<Texture> m_BrdfLut;
};
Environment CreateCubeFromHdrEnv(AssetLoader *assetLoader, vk::Queue computeQueue, u32 cubeSide, systems::ResId<Texture> hdrEnv,
cstr name = nullptr);