#include <Canvas.h>
Public 成员函数 | |
| OffscreenCanvas (Graphics *owner, int width, int height) | |
| ~OffscreenCanvas () override | |
| int | getWidth () const override |
| int | getHeight () const override |
| Texture * | getTexture () override |
| Sampleable color buffer; screen Canvas returns nullptr. | |
| void | clear (std::optional< Color > color, std::optional< int > stencil, std::optional< double > depth) override |
| Color | getPixel (int x, int y) override |
| image::ImageData * | newImageData () override |
| void | draw (eve::graphics::Graphics *, const glm::mat4 &) const override |
| Draws the object with the specified transformation matrix. | |
| void | draw (Canvas *, const glm::mat4 &) const override |
| vk::Framebuffer | framebuffer () const |
| vk::Framebuffer | framebuffer3D () const |
| vkb::ColorAttachmentImage & | colorImage () |
| vkb::DepthTarget & | depthImage () |
| Color | pendingClearColor () const |
| bool | takePendingClear () |
| void | ensure3D () |
| Ensure a D32 depth attachment + 3D (color+depth) framebuffer exist. | |
Public 成员函数 继承自 eve::graphics::Canvas | |
| Canvas () | |
| ~Canvas () override | |
Public 成员函数 继承自 eve::graphics::Drawable | |
| virtual | ~Drawable () |
| bool | getCastOcclusion () const |
| When false, skipped by Graphics::drawOcclusion / volumetric occluder passes. | |
| void | setCastOcclusion (bool cast) |
| 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()
| eve::graphics::vulkan::OffscreenCanvas::OffscreenCanvas | ( | Graphics * | owner, |
| int | width, | ||
| int | height | ||
| ) |
在文件 Canvas.cpp 第 12 行定义.
引用了 eve::graphics::vulkan::GpuTexture::descriptorSet, device, eve::graphics::vulkan::Graphics::getDescriptorPool(), eve::graphics::vulkan::Graphics::getDevice(), eve::graphics::vulkan::Graphics::getOffscreenRenderPass(), eve::graphics::vulkan::Graphics::getTexSetLayout(), eve::graphics::Texture::gpuHandle, height, eve::graphics::Texture::height, eve::graphics::vulkan::GpuTexture::height, eve::graphics::Texture::pixelHeight, eve::graphics::Texture::pixelWidth, eve::graphics::vulkan::GpuTexture::sampler, eve::graphics::vulkan::GpuTexture::viewOverride, eve::graphics::Texture::width, eve::graphics::vulkan::GpuTexture::width , 以及 width.
◆ ~OffscreenCanvas()
|
override |
成员函数说明
◆ clear()
|
overridevirtual |
在文件 Canvas.cpp 第 91 行定义.
◆ colorImage()
|
inline |
◆ depthImage()
|
inline |
◆ draw() [1/2]
|
inlineoverridevirtual |
◆ draw() [2/2]
|
inlineoverridevirtual |
Draws the object with the specified transformation matrix.
◆ ensure3D()
| void eve::graphics::vulkan::OffscreenCanvas::ensure3D | ( | ) |
Ensure a D32 depth attachment + 3D (color+depth) framebuffer exist.
在文件 Canvas.cpp 第 82 行定义.
引用了 device, eve::graphics::vulkan::Graphics::getDepthFormat(), eve::graphics::vulkan::Graphics::getDevice() , 以及 eve::graphics::vulkan::Graphics::getOffscreen3DRenderPass().
◆ framebuffer()
|
inline |
◆ framebuffer3D()
|
inline |
◆ getHeight()
|
inlineoverridevirtual |
◆ getPixel()
|
overridevirtual |
◆ getTexture()
|
inlineoverridevirtual |
Sampleable color buffer; screen Canvas returns nullptr.
◆ getWidth()
|
inlineoverridevirtual |
◆ newImageData()
|
overridevirtual |
Full RGBA8 copy; caller owns ImageData*.
在文件 Canvas.cpp 第 138 行定义.
◆ pendingClearColor()
|
inline |
◆ takePendingClear()
| bool eve::graphics::vulkan::OffscreenCanvas::takePendingClear | ( | ) |
在文件 Canvas.cpp 第 76 行定义.
引用了 v.
该类的文档由以下文件生成:
- src/modules/graphics/vulkan/Canvas.h
- src/modules/graphics/vulkan/Canvas.cpp
Public 成员函数 继承自