载入中...
搜索中...
未找到
eve::graphics::vulkan::OffscreenCanvas类 参考final

OffscreenCanvas public API. 更多...

#include <Canvas.h>

类 eve::graphics::vulkan::OffscreenCanvas 继承关系图:
eve::graphics::Canvas eve::graphics::Drawable

Public 成员函数

 OffscreenCanvas (Graphics *owner, int width, int height, bool hdr=false)
 Constructs a OffscreenCanvas.
 
 ~OffscreenCanvas () override
 Releases OffscreenCanvas resources.
 
int getWidth () const override
 Returns the width.
 
int getHeight () const override
 Returns the height.
 
Texture * getTexture () override
 Returns the texture.
 
void clear (std::optional< Color > color, std::optional< int > stencil, std::optional< double > depth) override
 Clears .
 
Color getPixel (int x, int y) override
 Returns the pixel.
 
image::ImageData * newImageData () override
 Creates a image data. @ownership Caller deletes unless documented otherwise.
 
image::ImageData * newHDRImageData () override
 Creates a hdr image data. @ownership Caller deletes unless documented otherwise.
 
void draw (eve::graphics::Graphics *, const glm::mat4 &) const override
 Draws .
 
void draw (Canvas *, const glm::mat4 &) const override
 Draws .
 
vk::Framebuffer framebuffer () const
 Framebuffer.
 
vk::Framebuffer framebuffer3D () const
 Framebuffer 3 d.
 
vkb::ColorAttachmentImage & colorImage ()
 Color image.
 
vkb::DepthTarget & depthImage ()
 Depth image.
 
Color pendingClearColor () const
 Pending clear color.
 
bool takePendingClear ()
 Take pending clear.
 
bool isHDR () const
 True when hdr.
 
void ensure3D ()
 Ensure a D32 depth attachment + 3D (color+depth) framebuffer exist.
 
- Public 成员函数 继承自 eve::graphics::Canvas
 Canvas ()
 Constructs a Canvas.
 
 ~Canvas () override
 Releases Canvas resources.
 
- Public 成员函数 继承自 eve::graphics::Drawable
virtual ~Drawable ()
 Releases Drawable resources.
 
bool getCastOcclusion () const
 When false, skipped by Graphics::drawOcclusion / volumetric occluder passes.
 
void setCastOcclusion (bool cast)
 Sets the cast occlusion.
 
virtual void drawOcclusion (Graphics *gfx, const glm::mat4 &matrix) const
 Draw as an opaque black silhouette for volumetric occlusion maps (screen-space god rays / light shafts). Default is a no-op; Texture / Mesh override with 2D black rects (alpha preserved for textures).
 

详细描述

OffscreenCanvas public API.

在文件 Canvas.h 第 15 行定义.

构造及析构函数说明

◆ OffscreenCanvas()

◆ ~OffscreenCanvas()

eve::graphics::vulkan::OffscreenCanvas::~OffscreenCanvas ( )
override

成员函数说明

◆ clear()

void eve::graphics::vulkan::OffscreenCanvas::clear ( std::optional< Color >  color,
std::optional< int >  stencil,
std::optional< double >  depth 
)
overridevirtual

Clears .

实现了 eve::graphics::Canvas.

在文件 Canvas.cpp 第 93 行定义.

◆ colorImage()

vkb::ColorAttachmentImage & eve::graphics::vulkan::OffscreenCanvas::colorImage ( )
inline

Color image.

在文件 Canvas.h 第 50 行定义.

被这些函数引用 eve::graphics::vulkan::Graphics::end3DFrameToCanvas().

◆ depthImage()

vkb::DepthTarget & eve::graphics::vulkan::OffscreenCanvas::depthImage ( )
inline

Depth image.

在文件 Canvas.h 第 52 行定义.

◆ draw() [1/2]

void eve::graphics::vulkan::OffscreenCanvas::draw ( Canvas *  ,
const glm::mat4 &   
) const
inlineoverridevirtual

Draws .

实现了 eve::graphics::Canvas.

在文件 Canvas.h 第 43 行定义.

◆ draw() [2/2]

void eve::graphics::vulkan::OffscreenCanvas::draw ( eve::graphics::Graphics *  ,
const glm::mat4 &   
) const
inlineoverridevirtual

Draws .

重载 eve::graphics::Canvas .

在文件 Canvas.h 第 41 行定义.

◆ ensure3D()

void eve::graphics::vulkan::OffscreenCanvas::ensure3D ( )

Ensure a D32 depth attachment + 3D (color+depth) framebuffer exist.

在文件 Canvas.cpp 第 84 行定义.

引用了 device, eve::graphics::vulkan::Graphics::getDepthFormat(), eve::graphics::vulkan::Graphics::getDevice() , 以及 eve::graphics::vulkan::Graphics::getOffscreen3DRenderPass().

◆ framebuffer()

vk::Framebuffer eve::graphics::vulkan::OffscreenCanvas::framebuffer ( ) const
inline

Framebuffer.

在文件 Canvas.h 第 46 行定义.

◆ framebuffer3D()

vk::Framebuffer eve::graphics::vulkan::OffscreenCanvas::framebuffer3D ( ) const
inline

Framebuffer 3 d.

在文件 Canvas.h 第 48 行定义.

◆ getHeight()

int eve::graphics::vulkan::OffscreenCanvas::getHeight ( ) const
inlineoverridevirtual

Returns the height.

实现了 eve::graphics::Canvas.

在文件 Canvas.h 第 25 行定义.

引用了 height.

被这些函数引用 eve::graphics::vulkan::Graphics::drawPrimitiveScene().

◆ getPixel()

Color eve::graphics::vulkan::OffscreenCanvas::getPixel ( int  x,
int  y 
)
overridevirtual

Returns the pixel.

实现了 eve::graphics::Canvas.

在文件 Canvas.cpp 第 156 行定义.

引用了 height, px, width, x , 以及 y.

◆ getTexture()

Texture * eve::graphics::vulkan::OffscreenCanvas::getTexture ( )
inlineoverridevirtual

Returns the texture.

实现了 eve::graphics::Canvas.

在文件 Canvas.h 第 27 行定义.

◆ getWidth()

int eve::graphics::vulkan::OffscreenCanvas::getWidth ( ) const
inlineoverridevirtual

Returns the width.

实现了 eve::graphics::Canvas.

在文件 Canvas.h 第 23 行定义.

引用了 width.

被这些函数引用 eve::graphics::vulkan::Graphics::drawPrimitiveScene().

◆ isHDR()

bool eve::graphics::vulkan::OffscreenCanvas::isHDR ( ) const
inline

True when hdr.

在文件 Canvas.h 第 58 行定义.

◆ newHDRImageData()

image::ImageData * eve::graphics::vulkan::OffscreenCanvas::newHDRImageData ( )
overridevirtual

Creates a hdr image data. @ownership Caller deletes unless documented otherwise.

@ownership The caller owns the returned HDR image data.

重载 eve::graphics::Canvas .

在文件 Canvas.cpp 第 177 行定义.

引用了 height, px , 以及 width.

◆ newImageData()

image::ImageData * eve::graphics::vulkan::OffscreenCanvas::newImageData ( )
overridevirtual

Creates a image data. @ownership Caller deletes unless documented otherwise.

实现了 eve::graphics::Canvas.

在文件 Canvas.cpp 第 169 行定义.

引用了 height, px , 以及 width.

◆ pendingClearColor()

Color eve::graphics::vulkan::OffscreenCanvas::pendingClearColor ( ) const
inline

Pending clear color.

在文件 Canvas.h 第 54 行定义.

◆ takePendingClear()

bool eve::graphics::vulkan::OffscreenCanvas::takePendingClear ( )

Take pending clear.

在文件 Canvas.cpp 第 78 行定义.

引用了 v.


该类的文档由以下文件生成: