Foundation
Loading...
Searching...
No Matches
App.hpp
Go to the documentation of this file.
1#pragma once
2#include <Async/Thread.hpp>
6
8#include "Scene/Scene.hpp"
9#include "imgui.h"
13namespace ModelViewer {
14 using namespace Foundation;
15 using namespace Foundation::Rendering;
19 class App : public RenderApplication {
20 void OnImGui();
21
22 void OnDeviceSetup() override;
23 void OnRendererSetup() override;
24 void OnApplicationTick() override;
25 void OnBeforeFrame() override;
26 void OnRendererPostSetup() override;
27
30 public:
31 const RHIExtent3D kTextureMaxExtent{ 4096, 4096, 1 };
32 RHIExtent3D mViewportSize{ 1280, 720, 1 };
33
36 };
37}
Template base class for rendering applications.
Definition Application.hpp:51
Model Viewer Application implementation.
Definition App.hpp:19
ResourceHandle mGBufferSRV
Definition App.hpp:28
void OnDeviceSetup() override
Actions to take after device specific resources has been set up.
Definition App.cpp:20
const RHIExtent3D kTextureMaxExtent
Definition App.hpp:31
ImTextureID mGBufferHandle
Definition App.hpp:29
void OnBeforeFrame() override
Action to take before each frame is executed.
Definition App.cpp:105
RHIExtent3D mViewportSize
Definition App.hpp:32
UniquePtr< GPUScene > mGPUScene
Definition App.hpp:35
void OnApplicationTick() override
Action to take on every application tick.
Definition App.cpp:44
void OnRendererSetup() override
Set up the renderer by creating passes, resources, and other configurations.
Definition Render.cpp:25
UniquePtr< Scene > mScene
Definition App.hpp:34
void OnRendererPostSetup() override
Action to take after the renderer has been set up.
Definition App.cpp:36
void OnImGui()
Definition App.cpp:61
std::unique_ptr< T, StlDeleter< T > > UniquePtr
std::unique_ptr with custom deleter that uses a Foundation::Core::Allocator to deallocate memory.
Definition Allocator.hpp:161
glm::vec< 3, uint32_t > RHIExtent3D
Definition Common.hpp:11
static constexpr Handle kInvalidHandle
Definition Details.hpp:10
size_t ResourceHandle
Definition RenderPass.hpp:12
Reference implementations of real-time rendering routines.
Definition Application.hpp:18
Definition Future.hpp:8
ModelViewer implementation.
Definition App.cpp:17