Screen-space buffers for mid/post effects (AO, fog, stylize outline, …). 更多...
#include <GBuffer.h>
Public 成员函数 | |
| GBuffer ()=default | |
| ~GBuffer ()=default | |
| GBuffer (const GBuffer &)=delete | |
| GBuffer & | operator= (const GBuffer &)=delete |
| void | attach (Graphics *gfx) |
| Graphics * | getGraphics () const |
| bool | isValid () const |
| int | getWidth () const |
| int | getHeight () const |
| Texture * | getDepthTexture () const |
| Texture * | getHwDepthTexture () const |
| Texture * | getNormalTexture () const |
| Texture * | getAlbedoTexture () const |
| bool | hasBuffer (const std::string &name) const |
| "depth" | "hwDepth" | "normal" | "albedo" | |
| Texture * | getBuffer (const std::string &name) const |
| void | setTargets (int width, int height, Texture *depth, Texture *normal, Texture *albedo, Texture *hwDepth=nullptr) |
| Called by Graphics after a G-buffer pass (or clear). | |
| void | clear () |
详细描述
Screen-space buffers for mid/post effects (AO, fog, stylize outline, …).
Layout after a successful G-buffer pass: depth — RGBA8 linear copy (R = linear 0..1) for Canvas / volumetric hwDepth — D32 hardware depth (sample .r = Vulkan NDC z); 3D AO/GI use this normal — RGBA8, RGB = world normal * 0.5 + 0.5 albedo — optional RGBA8 (feature "gbufferAlbedo"); may be null
Shadow maps stay on the CSM path (Graphics shadow pass); query via hasBuffer("shadow") on RenderControl rather than a Texture* here.
Textures are owned by the Graphics backend for the active frame size.
构造及析构函数说明
◆ GBuffer() [1/2]
|
default |
◆ ~GBuffer()
|
default |
◆ GBuffer() [2/2]
|
delete |
成员函数说明
◆ attach()
|
inline |
◆ clear()
| void eve::graphics::GBuffer::clear | ( | ) |
在文件 GBuffer.cpp 第 35 行定义.
◆ getAlbedoTexture()
◆ getBuffer()
| Texture * eve::graphics::GBuffer::getBuffer | ( | const std::string & | name | ) | const |
在文件 GBuffer.cpp 第 17 行定义.
引用了 name.
◆ getDepthTexture()
◆ getGraphics()
◆ getHeight()
◆ getHwDepthTexture()
|
inline |
◆ getNormalTexture()
|
inline |
◆ getWidth()
◆ hasBuffer()
| bool eve::graphics::GBuffer::hasBuffer | ( | const std::string & | name | ) | const |
◆ isValid()
| bool eve::graphics::GBuffer::isValid | ( | ) | const |
在文件 GBuffer.cpp 第 5 行定义.
◆ operator=()
◆ setTargets()
该类的文档由以下文件生成:
- src/modules/graphics/GBuffer.h
- src/modules/graphics/GBuffer.cpp