luna engine
software engine
Loading...
Searching...
No Matches
luna::renderer::renderer Class Reference

#include <renderer.h>

Collaboration diagram for luna::renderer::renderer:

Static Public Member Functions

static void init (const ref< vulkan::window > &window)
 the main renderer class. More...
 
static void shutdown ()
 
static void createFrame ()
 create a frame in the render pipline based on the given input. More...
 
static void newFrame ()
 renders a new frame. More...
 
static void beginScene ()
 starts recording a new scene. More...
 
static void Submit (const ref< vertexArray > &vertexArray, const uint64_t &indexCount=0)
 submits a vertexArray to be rendered containing vertexBuffers and 1 indexBuffer. More...
 
static void Submit (const ref< vertexArray > &vertexArray, std::vector< uint64_t > textures, const uint64_t &indexCount=0)
 submits a vertexArray to be rendered containing vertexBuffers and 1 indexBuffer. More...
 
static void endScene ()
 
static glm::vec2 getSceneDimensions ()
 
static glm::vec2 getSceneMousePos ()
 

Static Private Attributes

static ref< devicerendererDevice
 
static ref< pipelinerendererPipeline
 
static renderer::pipelineLayout layout
 
static ref< gui::vulkanImguigui
 
static bool Selected
 

Member Function Documentation

◆ beginScene()

void luna::renderer::renderer::beginScene ( )
static

starts recording a new scene.

◆ createFrame()

void luna::renderer::renderer::createFrame ( )
static

create a frame in the render pipline based on the given input.

◆ endScene()

void luna::renderer::renderer::endScene ( )
static

brief ends the scene.

◆ getSceneDimensions()

static glm::vec2 luna::renderer::renderer::getSceneDimensions ( )
inlinestatic

◆ getSceneMousePos()

static glm::vec2 luna::renderer::renderer::getSceneMousePos ( )
inlinestatic

◆ init()

void luna::renderer::renderer::init ( const ref< vulkan::window > &  window)
static

the main renderer class.

Parameters
windowa ref to the main window

◆ newFrame()

void luna::renderer::renderer::newFrame ( )
static

renders a new frame.

◆ shutdown()

void luna::renderer::renderer::shutdown ( )
static

@biref shutsdown the base renderer.

◆ Submit() [1/2]

void luna::renderer::renderer::Submit ( const ref< vertexArray > &  vertexArray,
const uint64_t &  indexCount = 0 
)
static

submits a vertexArray to be rendered containing vertexBuffers and 1 indexBuffer.

Note
vertexArray generation is done by the 2D/3D renderer api's respectevly.
Parameters
vertexArray

◆ Submit() [2/2]

void luna::renderer::renderer::Submit ( const ref< vertexArray > &  vertexArray,
std::vector< uint64_t >  textures,
const uint64_t &  indexCount = 0 
)
static

submits a vertexArray to be rendered containing vertexBuffers and 1 indexBuffer.

Note
vertexArray generation is done by the 2D/3D renderer api's respectevly.
Parameters
vertexArray
textures(vector of textureHandles)

Member Data Documentation

◆ gui

ref<gui::vulkanImgui> luna::renderer::renderer::gui
inlinestaticprivate

◆ layout

renderer::pipelineLayout luna::renderer::renderer::layout
inlinestaticprivate

◆ rendererDevice

ref<device> luna::renderer::renderer::rendererDevice
inlinestaticprivate

◆ rendererPipeline

ref<pipeline> luna::renderer::renderer::rendererPipeline
inlinestaticprivate

◆ Selected

bool luna::renderer::renderer::Selected
inlinestaticprivate

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