Unravel Engine C++ Reference
|
#include <pipeline.h>
Public Types | |
enum | pipeline_steps : uint32_t { geometry_pass = 1 << 1 , shadow_pass = 1 << 2 , reflection_probe = 1 << 3 , lighting = 1 << 4 , atmospheric = 1 << 5 , full = geometry_pass | shadow_pass | reflection_probe | lighting | atmospheric , probe = lighting | atmospheric } |
using | pipeline_flags = uint32_t |
![]() | |
enum | visibility_query : uint32_t { not_specified = 1 << 0 , is_dirty = 1 << 1 , is_static = 1 << 2 , is_shadow_caster = 1 << 3 , is_reflection_caster = 1 << 4 } |
Flags for visibility queries. More... | |
using | uptr = std::unique_ptr<pipeline> |
using | sptr = std::shared_ptr<pipeline> |
using | wptr = std::weak_ptr<pipeline> |
using | visibility_flags = uint32_t |
Type alias for visibility flags. | |
Additional Inherited Members | |
![]() | |
prefilter_pass | prefilter_pass_ {} |
blit_pass | blit_pass_ {} |
atmospheric_pass | atmospheric_pass_ {} |
atmospheric_pass_perez | atmospheric_pass_perez_ {} |
atmospheric_pass_skybox | atmospheric_pass_skybox_ {} |
assao_pass | assao_pass_ {} |
fxaa_pass | fxaa_pass_ {} |
tonemapping_pass | tonemapping_pass_ {} |
ssr_pass | ssr_pass_ {} |
hiz_pass | hiz_pass_ {} |
Hi-Z buffer generation pass. | |
Definition at line 22 of file pipeline.h.
using unravel::rendering::deferred::pipeline_flags = uint32_t |
Definition at line 55 of file pipeline.h.
enum unravel::rendering::deferred::pipeline_steps : uint32_t |
Enumerator | |
---|---|
geometry_pass | |
shadow_pass | |
reflection_probe | |
lighting | |
atmospheric | |
full | |
probe |
Definition at line 43 of file pipeline.h.
unravel::rendering::deferred::deferred | ( | ) |
Definition at line 1227 of file pipeline.cpp.
unravel::rendering::deferred::~deferred | ( | ) |
Definition at line 1232 of file pipeline.cpp.
void unravel::rendering::deferred::build_reflections | ( | scene & | scn, |
const camera & | camera, | ||
delta_t | dt ) |
Definition at line 335 of file pipeline.cpp.
void unravel::rendering::deferred::build_shadows | ( | scene & | scn, |
const camera & | camera, | ||
visibility_flags | query = visibility_query::not_specified, | ||
layer_mask | render_mask = layer_mask{layer_reserved::everything_layer} ) |
Definition at line 421 of file pipeline.cpp.
auto unravel::rendering::deferred::deinit | ( | rtti::context & | ctx | ) | -> bool |
Definition at line 1333 of file pipeline.cpp.
|
overridevirtual |
Reimplemented from unravel::rendering::pipeline.
Definition at line 1237 of file pipeline.cpp.
void unravel::rendering::deferred::run_assao_pass | ( | const visibility_set_models_t & | visibility_set, |
const camera & | camera, | ||
gfx::render_view & | rview, | ||
delta_t | dt, | ||
const run_params & | rparams ) |
Definition at line 727 of file pipeline.cpp.
auto unravel::rendering::deferred::run_atmospherics_pass | ( | gfx::frame_buffer::ptr | input, |
scene & | scn, | ||
const camera & | camera, | ||
gfx::render_view & | rview, | ||
delta_t | dt ) -> gfx::frame_buffer::ptr |
Definition at line 1005 of file pipeline.cpp.
void unravel::rendering::deferred::run_debug_visualization_pass | ( | const camera & | camera, |
gfx::render_view & | rview, | ||
const gfx::frame_buffer::ptr & | output ) |
Definition at line 1167 of file pipeline.cpp.
auto unravel::rendering::deferred::run_fxaa_pass | ( | gfx::render_view & | rview, |
const gfx::frame_buffer::ptr & | input, | ||
const gfx::frame_buffer::ptr & | output, | ||
const run_params & | rparams ) -> gfx::frame_buffer::ptr |
Definition at line 1122 of file pipeline.cpp.
void unravel::rendering::deferred::run_g_buffer_pass | ( | const visibility_set_models_t & | visibility_set, |
const camera & | camera, | ||
gfx::render_view & | rview, | ||
delta_t | dt ) |
Definition at line 597 of file pipeline.cpp.
auto unravel::rendering::deferred::run_hiz_pass | ( | const camera & | camera, |
gfx::render_view & | rview, | ||
delta_t | dt ) -> gfx::texture::ptr |
Definition at line 1208 of file pipeline.cpp.
auto unravel::rendering::deferred::run_lighting_pass | ( | scene & | scn, |
const camera & | camera, | ||
gfx::render_view & | rview, | ||
bool | apply_shadows, | ||
delta_t | dt ) -> gfx::frame_buffer::ptr |
Definition at line 755 of file pipeline.cpp.
|
overridevirtual |
Renders the entire scene from the camera's perspective to the specified output.
output | The output frame buffer. |
scn | The scene to render. |
camera | The camera to render from. |
storage | The camera storage. |
render_view | The render view. |
dt | The delta time. |
query | The visibility query flags. |
Implements unravel::rendering::pipeline.
Definition at line 509 of file pipeline.cpp.
|
overridevirtual |
Renders the entire scene from the camera's perspective.
scn | The scene to render. |
camera | The camera to render from. |
storage | The camera storage. |
render_view | The render view. |
dt | The delta time. |
query | The visibility query flags. |
Implements unravel::rendering::pipeline.
Definition at line 494 of file pipeline.cpp.
void unravel::rendering::deferred::run_pipeline_impl | ( | const gfx::frame_buffer::ptr & | output, |
scene & | scn, | ||
const camera & | camera, | ||
gfx::render_view & | rview, | ||
delta_t | dt, | ||
const run_params & | params, | ||
pipeline_flags | pflags, | ||
layer_mask | render_mask = layer_mask{layer_reserved::everything_layer} ) |
Definition at line 530 of file pipeline.cpp.
void unravel::rendering::deferred::run_reflection_probe_pass | ( | scene & | scn, |
const camera & | camera, | ||
gfx::render_view & | rview, | ||
delta_t | dt ) |
Definition at line 875 of file pipeline.cpp.
auto unravel::rendering::deferred::run_ssr_pass | ( | const camera & | camera, |
gfx::render_view & | rview, | ||
const gfx::frame_buffer::ptr & | output, | ||
const run_params & | rparams ) -> gfx::frame_buffer::ptr |
Definition at line 1085 of file pipeline.cpp.
auto unravel::rendering::deferred::run_tonemapping_pass | ( | gfx::render_view & | rview, |
const gfx::frame_buffer::ptr & | input, | ||
const gfx::frame_buffer::ptr & | output, | ||
const run_params & | rparams ) -> gfx::frame_buffer::ptr |
Definition at line 1143 of file pipeline.cpp.
|
overridevirtual |
Implements unravel::rendering::pipeline.
Definition at line 525 of file pipeline.cpp.