VenomEngine
Cross-Platform Modern Graphics Engine
Loading...
Searching...
No Matches
venom::vulkan::VulkanApplication Class Reference
+ Inheritance diagram for venom::vulkan::VulkanApplication:

Public Member Functions

vc::Error __Init () override
 
vc::Error __PostInit () override
 
vc::Error __Loop () override
 
bool ShouldClose () override
 
const SwapChainGetSwapChain () const
 
const RenderPassGetRenderPass () const
 
const RenderPassGetGuiRenderPass () const
 
const DescriptorPoolGetDescriptorPool () const
 
const RenderPassGetHDRRenderPass () const
 
const CommandBufferGetCommandBuffer (const int index) const
 
const CommandBufferGetCurrentGraphicsCommandBuffer () const
 
- Public Member Functions inherited from venom::common::GraphicsApplication
Error Init ()
 
Error Loop ()
 
- Public Member Functions inherited from venom::common::GraphicsPluginObject
virtual void Destroy () override
 /!\ THIS FUNCTION MUST BE CALLED FOR DESTRUCTION, DO NOT USE delete
 
- Public Member Functions inherited from venom::common::PluginObject
 PluginObject (const PluginType type)
 
PluginType GetType () const override
 
template<class T >
T * DAs ()
 
template<class T >
const T * DAs () const
 
- Public Member Functions inherited from venom::common::IPluginObject
- Public Member Functions inherited from venom::common::GraphicsSettings
- Public Member Functions inherited from venom::vulkan::DebugApplication
vc::Error InitDebug ()
 
void DestroyDebug ()
 
template<>
void _SetCreateInfoValidationLayers (VkDeviceCreateInfo *createInfos)
 

Static Public Member Functions

static int IsBindlessSupported ()
 
- Static Public Member Functions inherited from venom::common::GraphicsApplication
static GraphicsApplicationGet ()
 
static GraphicsApplicationCreate ()
 
static int GetCurrentFrame ()
 
- Static Public Member Functions inherited from venom::common::GraphicsPluginObject
static bool HasCachedObject (const std::string &path)
 Checks if an object is in the cache.
 
static SPtr< GraphicsCachedResourceGetCachedObject (const std::string &path)
 Gets a cached object from the graphics cache.
 
static const std::unordered_map< std::string, std::shared_ptr< GraphicsCachedResource > > & GetCachedObjects ()
 Gets all cached objects.
 
- Static Public Member Functions inherited from venom::common::GraphicsSettings
static vc::Error ManageGfxSettingsLoadingQueue ()
 
static vc::Error SetMultiSampling (const MultiSamplingModeOption mode, const MultiSamplingCountOption samples)
 
static vc::Error SetHDR (bool enable)
 
static bool IsHDREnabled ()
 
static bool IsHDRSupported ()
 
static void StartGfxSettingsChange ()
 
static vc::Error EndGfxSettingsChange ()
 
static int GetSamplesMultisampling ()
 
static const vc::Vector< MultiSamplingCountOption > & GetAvailableMultisamplingOptions ()
 

Protected Member Functions

vc::Error _LoadGfxSettings () override
 
vc::Error _SetMultiSampling (const MultiSamplingModeOption mode, const MultiSamplingCountOption samples) override
 
vc::Vector< MultiSamplingCountOption > _GetAvailableMultisamplingOptions () override
 
vc::Error _SetHDR (bool enable) override
 
- Protected Member Functions inherited from venom::common::GraphicsApplication
- Protected Member Functions inherited from venom::common::GraphicsSettings
- Protected Member Functions inherited from venom::vulkan::DebugApplication
void _SetInstanceCreateInfoValidationLayers (VkInstanceCreateInfo *createInfos)
 
template<typename CreateInfo >
void _SetCreateInfoValidationLayers (CreateInfo *createInfos)
 
vc::Error _PostInstance_SetDebugParameters ()
 
PFN_vkDebugUtilsMessengerCallbackEXT _GetDebugCallback ()
 
double _GetTheoreticalFPS (double fps)
 
void _UpdateTheoreticalFPS (uint32_t microsecondsWaitedOnVSync)
 

Friends

class VulkanShaderResourceTable
 

Additional Inherited Members

- Public Types inherited from venom::common::GraphicsSettings
enum class  MultiSamplingModeOption { None = 1 , MSAA = 2 }
 
enum class  MultiSamplingCountOption {
  None = 1 , Samples2 = 2 , Samples4 = 4 , Samples8 = 8 ,
  Samples16 = 16 , Samples32 = 32
}
 
- Protected Types inherited from venom::common::GraphicsSettings
enum class  GfxSettingsChangeState { Ended , Started }
 
- Static Protected Member Functions inherited from venom::common::GraphicsPluginObject
static void _SetInCache (const std::string &path, const SPtr< GraphicsCachedResource > &object)
 Sets an object in the cache.
 
static void _SetCacheSize (size_t size)
 Adds cache size to avoid unnecessary additional allocations.
 
static void _AddCacheSize (size_t size)
 Adds cache size to avoid unnecessary additional allocations.
 
- Protected Attributes inherited from venom::common::GraphicsApplication
ShaderResourceTable_shaderResourceTable
 
GUI_gui
 
UPtr< vc::Texture_dummyTexture
 
- Protected Attributes inherited from venom::common::GraphicsSettings
GfxSettingsChangeState _gfxSettingsChangeState
 
MultiSamplingModeOption _samplingMode
 
int _samples
 
bool _multisamplingDirty
 
bool _isHdrSupported
 
- Static Protected Attributes inherited from venom::common::GraphicsApplication
static int _currentFrame = 0
 

Member Function Documentation

◆ __Init()

vc::Error venom::vulkan::VulkanApplication::__Init ( )
overridevirtual

◆ __Loop()

vc::Error venom::vulkan::VulkanApplication::__Loop ( )
overridevirtual

◆ __PostInit()

vc::Error venom::vulkan::VulkanApplication::__PostInit ( )
overridevirtual

◆ _GetAvailableMultisamplingOptions()

vc::Vector< vc::GraphicsSettings::MultiSamplingCountOption > venom::vulkan::VulkanApplication::_GetAvailableMultisamplingOptions ( )
overrideprotectedvirtual

◆ _LoadGfxSettings()

vc::Error venom::vulkan::VulkanApplication::_LoadGfxSettings ( )
overrideprotectedvirtual

◆ _SetHDR()

vc::Error venom::vulkan::VulkanApplication::_SetHDR ( bool enable)
overrideprotectedvirtual

◆ _SetMultiSampling()

vc::Error venom::vulkan::VulkanApplication::_SetMultiSampling ( const MultiSamplingModeOption mode,
const MultiSamplingCountOption samples )
overrideprotectedvirtual

◆ ShouldClose()

bool venom::vulkan::VulkanApplication::ShouldClose ( )
overridevirtual

The documentation for this class was generated from the following files: