Unravel Engine C++ Reference
Loading...
Searching...
No Matches
render_pass.h
Go to the documentation of this file.
1
#pragma once
2
#include "
frame_buffer.h
"
3
#include <string>
4
#include <unordered_map>
5
#include <vector>
6
7
namespace
gfx
8
{
9
struct
render_pass
10
{
11
static
void
push_scope
(
const
char
*
name
);
12
static
void
pop_scope
();
13
14
struct
scope
15
{
16
scope
(
const
char
*
name
)
17
{
18
push_scope
(
name
);
19
}
20
~scope
()
21
{
22
pop_scope
();
23
}
24
};
25
26
//-----------------------------------------------------------------------------
27
// Name : render_pass ()
33
//-----------------------------------------------------------------------------
34
render_pass
(
const
char
*
name
);
35
render_pass
(
view_id
id
,
const
char
*
name
);
36
37
38
//-----------------------------------------------------------------------------
39
// Name : bind ()
45
//-----------------------------------------------------------------------------
46
void
bind
(
const
frame_buffer
* fb =
nullptr
)
const
;
47
void
touch
()
const
;
48
//-----------------------------------------------------------------------------
49
// Name : clear ()
55
//-----------------------------------------------------------------------------
56
void
clear
(uint16_t _flags, uint32_t _rgba = 0x000000ff,
float
_depth = 1.0f, uint8_t _stencil = 0)
const
;
57
58
//-----------------------------------------------------------------------------
59
// Name : clear ()
65
//-----------------------------------------------------------------------------
66
void
clear
()
const
;
67
68
//-----------------------------------------------------------------------------
69
// Name : set_view_proj ()
75
//-----------------------------------------------------------------------------
76
void
set_view_proj
(
const
float
*
v
,
const
float
* p);
77
78
//-----------------------------------------------------------------------------
79
// Name : set_view_scissor ()
85
//-----------------------------------------------------------------------------
86
void
set_view_scissor
(uint16_t _x, uint16_t _y, uint16_t _width, uint16_t _height);
87
void
set_view_rect
(uint16_t _x, uint16_t _y, uint16_t _width, uint16_t _height);
88
//-----------------------------------------------------------------------------
89
// Name : reset ()
95
//-----------------------------------------------------------------------------
96
static
void
reset
();
97
98
//-----------------------------------------------------------------------------
99
// Name : get_pass ()
105
//-----------------------------------------------------------------------------
106
static
auto
get_max_pass_id
() ->
gfx::view_id
;
107
108
static
auto
get_last_frame_max_pass_id
() ->
gfx::view_id
;
110
gfx::view_id
id
;
111
};
112
}
// namespace gfx
frame_buffer.h
name
std::string name
Definition
hub.cpp:33
gfx
Definition
debugdraw.cpp:7
gfx::view_id
bgfx::ViewId view_id
Definition
graphics.h:20
v
float v
Definition
particle_system_soa.cpp:340
gfx::frame_buffer
Definition
frame_buffer.h:23
gfx::render_pass::scope
Definition
render_pass.h:15
gfx::render_pass::scope::~scope
~scope()
Definition
render_pass.h:20
gfx::render_pass::scope::scope
scope(const char *name)
Definition
render_pass.h:16
gfx::render_pass
Definition
render_pass.h:10
gfx::render_pass::get_last_frame_max_pass_id
static auto get_last_frame_max_pass_id() -> gfx::view_id
Definition
render_pass.cpp:148
gfx::render_pass::set_view_rect
void set_view_rect(uint16_t _x, uint16_t _y, uint16_t _width, uint16_t _height)
Definition
render_pass.cpp:130
gfx::render_pass::reset
static void reset()
Definition
render_pass.cpp:135
gfx::render_pass::get_max_pass_id
static auto get_max_pass_id() -> gfx::view_id
Definition
render_pass.cpp:142
gfx::render_pass::pop_scope
static void pop_scope()
Definition
render_pass.cpp:48
gfx::render_pass::clear
void clear() const
Definition
render_pass.cpp:115
gfx::render_pass::set_view_proj
void set_view_proj(const float *v, const float *p)
Definition
render_pass.cpp:120
gfx::render_pass::set_view_scissor
void set_view_scissor(uint16_t _x, uint16_t _y, uint16_t _width, uint16_t _height)
Definition
render_pass.cpp:125
gfx::render_pass::id
gfx::view_id id
Definition
render_pass.h:110
gfx::render_pass::render_pass
render_pass(const char *name)
Definition
render_pass.cpp:53
gfx::render_pass::touch
void touch() const
Definition
render_pass.cpp:101
gfx::render_pass::push_scope
static void push_scope(const char *name)
Definition
render_pass.cpp:43
gfx::render_pass::bind
void bind(const frame_buffer *fb=nullptr) const
Definition
render_pass.cpp:81
engine
core
graphics
render_pass.h
Generated by
1.12.0