Vyroda
Game engine made by hand, with modern C++ and Vulkan.
Loading...
Searching...
No Matches
Vyroda::Renderer Class Referenceexport

Public Member Functions

 Renderer ()=default
 ~Renderer ()=default
void addPipeline (std::string const &shaderName, VulkanPipeline &pipeline)
void clear ()
void destroy ()
void start ()
void startRender ()
void startShadowMap (SHADOW_TYPE const shadow_type)
void draw (Mesh const &mesh, RendererContext const &renderer_context)
void drawShadowMap (Mesh const &mesh, RendererContext const &renderer_context, SHADOW_TYPE const shadow_type)
void endRender ()
void endShadowMap (SHADOW_TYPE const shadow_type)
void endRendering (VkCommandBuffer cmd_buffer, VkImage image, VkImage depth_image, bool const is_attachment, bool const has_depth_attachment=true)
void submit ()
std::uint32_t getCurrentFrameIndex () const
VkSampler getCurrentSampler ()
VkImageView getCurrentImageView ()
VkImageView getDepthMapImageViews ()
VkSampler getDepthMapSamplers ()
VkImageView getDepthImageViews ()
VkImageView getDepthImageViews2 ()
VkSampler getDepthSamplers ()
VkSampler getDepthSamplers2 ()
VkImageView getVisibleDepthImageView ()
VkSampler getCSMSamplers ()
VkImageView getCSMImageViews ()
std::vector< VkDescriptorSetLayout > * getDescriptorSetLayouts ()
VkDevice getDevice ()
glm::mat4 getPerspective ()
VulkanPipelinegetPipeline (std::string const &shaderName)
void immediateSubmit (std::function< void(VkCommandBuffer cmd)> &&function, int queueIndex=0)
void init (GLFWwindow *const window)
void setDeltatime (float const delta_time)
void setRayPick (float const x, float const y, float const z, int const width, int const height)
VulkanAPIgetAPI () const
void clearScreen ()
void updateVertexBuffer (Data *data, std::size_t const image_index)
std::uint32_t getMaxFramesInFlight () const
void setShadowMapResolution (std::uint32_t const resolution)

Constructor & Destructor Documentation

◆ Renderer()

Vyroda::Renderer::Renderer ( )
default

◆ ~Renderer()

Vyroda::Renderer::~Renderer ( )
default

Member Function Documentation

◆ addPipeline()

void Vyroda::Renderer::addPipeline ( std::string const & shaderName,
VulkanPipeline & pipeline )

◆ clear()

void Vyroda::Renderer::clear ( )

◆ clearScreen()

void Vyroda::Renderer::clearScreen ( )

◆ destroy()

void Vyroda::Renderer::destroy ( )

◆ draw()

void Vyroda::Renderer::draw ( Mesh const & mesh,
RendererContext const & renderer_context )
Here is the call graph for this function:

◆ drawShadowMap()

void Vyroda::Renderer::drawShadowMap ( Mesh const & mesh,
RendererContext const & renderer_context,
SHADOW_TYPE const shadow_type )
Here is the call graph for this function:

◆ endRender()

void Vyroda::Renderer::endRender ( )
Here is the call graph for this function:

◆ endRendering()

void Vyroda::Renderer::endRendering ( VkCommandBuffer cmd_buffer,
VkImage image,
VkImage depth_image,
bool const is_attachment,
bool const has_depth_attachment = true )
Here is the caller graph for this function:

◆ endShadowMap()

void Vyroda::Renderer::endShadowMap ( SHADOW_TYPE const shadow_type)

◆ getAPI()

VulkanAPI & Vyroda::Renderer::getAPI ( ) const
inline
Here is the caller graph for this function:

◆ getCSMImageViews()

VkImageView Vyroda::Renderer::getCSMImageViews ( )
inline

◆ getCSMSamplers()

VkSampler Vyroda::Renderer::getCSMSamplers ( )
inline

◆ getCurrentFrameIndex()

std::uint32_t Vyroda::Renderer::getCurrentFrameIndex ( ) const
inline
Here is the caller graph for this function:

◆ getCurrentImageView()

VkImageView Vyroda::Renderer::getCurrentImageView ( )
inline

◆ getCurrentSampler()

VkSampler Vyroda::Renderer::getCurrentSampler ( )
inline

◆ getDepthImageViews()

VkImageView Vyroda::Renderer::getDepthImageViews ( )
inline

◆ getDepthImageViews2()

VkImageView Vyroda::Renderer::getDepthImageViews2 ( )
inline

◆ getDepthMapImageViews()

VkImageView Vyroda::Renderer::getDepthMapImageViews ( )
inline

◆ getDepthMapSamplers()

VkSampler Vyroda::Renderer::getDepthMapSamplers ( )
inline

◆ getDepthSamplers()

VkSampler Vyroda::Renderer::getDepthSamplers ( )
inline

◆ getDepthSamplers2()

VkSampler Vyroda::Renderer::getDepthSamplers2 ( )
inline

◆ getDescriptorSetLayouts()

std::vector< VkDescriptorSetLayout > * Vyroda::Renderer::getDescriptorSetLayouts ( )
inline

◆ getDevice()

VkDevice Vyroda::Renderer::getDevice ( )
inline
Here is the caller graph for this function:

◆ getMaxFramesInFlight()

std::uint32_t Vyroda::Renderer::getMaxFramesInFlight ( ) const
inline

◆ getPerspective()

glm::mat4 Vyroda::Renderer::getPerspective ( )
inline
Here is the caller graph for this function:

◆ getPipeline()

VulkanPipeline & Vyroda::Renderer::getPipeline ( std::string const & shaderName)
inline
Here is the caller graph for this function:

◆ getVisibleDepthImageView()

VkImageView Vyroda::Renderer::getVisibleDepthImageView ( )
inline

◆ immediateSubmit()

void Vyroda::Renderer::immediateSubmit ( std::function< void(VkCommandBuffer cmd)> && function,
int queueIndex = 0 )

◆ init()

void Vyroda::Renderer::init ( GLFWwindow *const window)
Here is the call graph for this function:

◆ setDeltatime()

void Vyroda::Renderer::setDeltatime ( float const delta_time)

◆ setRayPick()

void Vyroda::Renderer::setRayPick ( float const x,
float const y,
float const z,
int const width,
int const height )

◆ setShadowMapResolution()

void Vyroda::Renderer::setShadowMapResolution ( std::uint32_t const resolution)
inline

◆ start()

void Vyroda::Renderer::start ( )

◆ startRender()

void Vyroda::Renderer::startRender ( )

◆ startShadowMap()

void Vyroda::Renderer::startShadowMap ( SHADOW_TYPE const shadow_type)

◆ submit()

void Vyroda::Renderer::submit ( )

◆ updateVertexBuffer()

void Vyroda::Renderer::updateVertexBuffer ( Data * data,
std::size_t const image_index )
Here is the caller graph for this function:

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