Skip to content

KDGpuExample::AdvancedExampleEngineLayer

Module: KDGpuExample API

AdvancedExampleEngineLayer ...

#include <KDGpuExample/advanced_example_engine_layer.h>

Inherits from KDGpuExample::ExampleEngineLayer, KDGpuExample::EngineLayer, KDFoundation::Object

Inherited by HelloTriangle

Public Functions

Name
AdvancedExampleEngineLayer() =default
~AdvancedExampleEngineLayer() override =default

Protected Functions

Name
virtual void onAttached() override
virtual void onDetached() override
virtual void update() override

Protected Attributes

Name
std::array< Fence, MAX_FRAMES_IN_FLIGHT > m_frameFences

Additional inherited members

Public Functions inherited from KDGpuExample::ExampleEngineLayer

Name
ExampleEngineLayer()
~ExampleEngineLayer() override
KDGpuKDGui::View * window()

Protected Functions inherited from KDGpuExample::ExampleEngineLayer

Name
virtual void initializeScene() =0
virtual void cleanupScene() =0
virtual void updateScene() =0
virtual void render() =0
virtual void resize() =0
virtual void drawImGuiOverlay(ImGuiContext * ctx)
virtual void renderImGuiOverlay(RenderPassCommandRecorder * recorder, uint32_t inFlightIndex =0, RenderPass * currentRenderPass =nullptr, int lastSubpassIndex =0)
void registerImGuiOverlayDrawFunction(const std::function< void(ImGuiContext *)> & func)
void clearImGuiOverlayDrawFunctions()
void recreateImGuiOverlay()
void event(KDFoundation::EventReceiver * target, KDFoundation::Event * ev) override
virtual void recreateSwapChain()
void recreateDepthTexture()
void recreateSampleDependentResources()
void uploadBufferData(const BufferUploadOptions & options)
void uploadTextureData(const TextureUploadOptions & options)
void releaseStagingBuffers()

Protected Attributes inherited from KDGpuExample::ExampleEngineLayer

Name
std::shared_ptr< spdlog::logger > m_logger
std::unique_ptr< GraphicsApi > m_api
std::unique_ptr< KDGpuKDGui::View > m_window
Extent2D m_swapchainExtent
KDBindings::Property< SampleCountFlagBits > m_samples
TextureUsageFlags m_swapchainUsageFlags
std::vector< SampleCountFlagBits > m_supportedSampleCounts
Instance m_instance
Surface m_surface
Device m_device
Queue m_queue
PresentMode m_presentMode
Swapchain m_swapchain
std::vector< TextureView > m_swapchainViews
Texture m_depthTexture
TextureView m_depthTextureView
std::unique_ptr< ImGuiItem > m_imguiOverlay
std::vector< std::function< void(ImGuiContext *)> > m_imGuiOverlayDrawFunctions
uint32_t m_currentSwapchainImageIndex
uint32_t m_inFlightIndex
std::array< GpuSemaphore, MAX_FRAMES_IN_FLIGHT > m_presentCompleteSemaphores
std::array< GpuSemaphore, MAX_FRAMES_IN_FLIGHT > m_renderCompleteSemaphores
TextureUsageFlags m_depthTextureUsageFlags
std::vector< UploadStagingBuffer > m_stagingBuffers
Format m_swapchainFormat
Format m_depthFormat
CompositeAlphaFlagBits m_compositeAlpha
bool m_showSurfaceCapabilities
std::string m_capabilitiesString

Public Functions inherited from KDGpuExample::EngineLayer

Name
~EngineLayer() override
const Engine * engine() const
Engine * engine()

Friends inherited from KDGpuExample::EngineLayer

Name
class Engine

Public Functions Documentation

function AdvancedExampleEngineLayer

1
AdvancedExampleEngineLayer() =default

function ~AdvancedExampleEngineLayer

1
~AdvancedExampleEngineLayer() override =default

Protected Functions Documentation

function onAttached

1
virtual void onAttached() override

Reimplements: KDGpuExample::EngineLayer::onAttached

function onDetached

1
virtual void onDetached() override

Reimplements: KDGpuExample::EngineLayer::onDetached

function update

1
virtual void update() override

Reimplements: KDGpuExample::EngineLayer::update

Protected Attributes Documentation

variable m_frameFences

1
std::array< Fence, MAX_FRAMES_IN_FLIGHT > m_frameFences;

Updated on 2024-07-23 at 00:07:38 +0000