Nebula
Loading...
Searching...
No Matches
view.h File Reference
#include "core/refcounted.h"
#include "ids/id.h"
#include "coregraphics/config.h"
#include "frame/framescript.h"
#include "timing/time.h"
#include "graphicsentity.h"
#include "gpulang/render/system_shaders/shared.h"

Go to the source code of this file.

Classes

struct  Graphics::ViewId
struct  Graphics::ViewCreateInfo

Namespaces

namespace  Graphics
 Implements the shader server used by Vulkan.

Typedefs

typedef uint16_t Graphics::StageMask
typedef Ids::IdAllocator< Shared::ViewConstants::STRUCT, Shared::ShadowViewConstants::STRUCT, CoreGraphics::TextureId, Math::rectangle< int >, Graphics::StageMask, bool(*)(const Math::rectangle< int > &viewport, IndexT frameIndex, IndexT bufferIndex), GraphicsEntityId, bool > Graphics::ViewAllocator

Enumerations

enum  {
  Graphics::View_ViewConstants , Graphics::View_ShadowConstants , Graphics::View_OutputTarget , Graphics::View_Viewport ,
  Graphics::View_StageMask , Graphics::View_FrameScriptFunc , Graphics::View_Camera , Graphics::View_Enabled
}

Functions

static constexpr StageMask Graphics::StageMaskFromIndex (const IndexT stageIndex)
ViewId Graphics::CreateView (const ViewCreateInfo &info)
 Create a new view.
void Graphics::DestroyView (const ViewId id)
 Destroy view.
void Graphics::ViewApply (const ViewId id)
 Apply view.
bool Graphics::ViewRender (const ViewId id, const IndexT frameIndex, const Timing::Time time, const IndexT bufferIndex)
 Render view.
void Graphics::ViewSetFrameScript (const ViewId id, bool(*func)(const Math::rectangle< int > &viewport, IndexT frameIndex, IndexT bufferIndex))
 Set view frame script.
void Graphics::ViewSetViewport (const ViewId id, const Math::rectangle< int > &rect)
 Set view viewport.
const Math::rectangle< int > & Graphics::ViewGetViewport (const ViewId id)
 Get view viewport.
void Graphics::ViewSetCamera (const ViewId id, const GraphicsEntityId &camera)
 Set view camera.
const GraphicsEntityIdGraphics::ViewGetCamera (const ViewId id)
 Get view camera.
Shared::ViewConstants::STRUCT & Graphics::ViewGetViewConstants (const ViewId id)
 Get view constants.
Shared::ShadowViewConstants::STRUCT & Graphics::ViewGetShadowConstants (const ViewId id)
 Get shadow view constants.
void Graphics::ViewSetStageMask (const ViewId id, const Graphics::StageMask stage)
 Set view stage.
const Graphics::StageMask Graphics::ViewGetStageMask (const ViewId id)
 Get view stage.
void Graphics::ViewEnable (const ViewId id)
 Enable view.
void Graphics::ViewDisable (const ViewId id)
 Disable view.
bool Graphics::ViewIsEnabled (const ViewId id)
 Check if view is enabled.

Variables

static constexpr StageMask Graphics::PRIMARY_STAGE_MASK = 0x1
static constexpr StageMask Graphics::SHADOW_STAGE_MASK = 0x2
static constexpr StageMask Graphics::DEFAULT_STAGE_MASK = PRIMARY_STAGE_MASK | SHADOW_STAGE_MASK
static constexpr StageMask Graphics::ALL_STAGE_MASK = 0xFFFF