Loading [MathJax]/extensions/TeX/AMSmath.js
Radium Engine
1.5.29
Toggle main menu visibility
Main Page
Related Pages
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
f
g
i
l
m
n
o
p
q
r
s
t
u
v
z
Functions
a
c
d
f
g
i
l
m
n
o
p
q
r
s
t
u
v
Variables
Typedefs
Enumerations
Enumerator
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
~
Functions
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
~
Variables
b
d
f
i
m
s
v
w
Typedefs
a
b
c
f
g
i
k
n
o
r
s
t
u
v
Enumerations
Enumerator
Related Symbols
Files
File List
File Members
All
Macros
▼
Radium Engine
►
Radium Basics
►
Radium Concepts
►
Developer manual
►
Licenses
Todo List
Deprecated List
►
Namespaces
►
Classes
▼
Files
▼
File List
▼
src
►
Core
▼
Dataflow
►
Core
►
QtGui
▼
Rendering
▼
Nodes
RenderingNode.hpp
►
Renderer
pch.hpp
RaDataflow.hpp
►
Engine
►
Gui
►
Headless
►
IO
►
PluginBase
►
tests
►
File Members
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
Loading...
Searching...
No Matches
RenderingNode.hpp
1
#pragma once
2
#include <Dataflow/RaDataflow.hpp>
3
4
#include <Dataflow/Core/Node.hpp>
5
6
#include <Core/Utils/Color.hpp>
7
#include <Engine/Data/Texture.hpp>
8
#include <Engine/Data/ViewingParameters.hpp>
9
#include <Engine/Rendering/RenderObject.hpp>
10
#include <Engine/Scene/Light.hpp>
11
12
namespace
Ra::Engine::Data
{
13
class
ShaderProgramManager;
14
}
12
namespace
Ra::Engine::Data
{
…
}
15
16
namespace
Ra
{
17
namespace
Dataflow {
18
namespace
Rendering {
19
namespace
Nodes {
20
26
using
RenderObjectType
=
std::shared_ptr<Ra::Engine::Rendering::RenderObject>
;
27
using
LightType =
const
Ra::Engine::Scene::Light
*;
28
using
CameraType =
Ra::Engine::Data::ViewingParameters
;
29
using
ColorType =
Ra::Core::Utils::Color
;
30
using
TextureType =
Ra::Engine::Data::Texture
;
31
36
class
RA_DATAFLOW_API
RenderingNode
:
public
Dataflow::Core::Node
,
37
public
Ra::Core::Utils::IndexedObject
38
{
39
public
:
40
using
Dataflow::Core::Node::Node;
41
46
virtual
void
resize
( uint32_t width, uint32_t height ) = 0;
47
51
virtual
void
buildRenderTechnique
(
const
Ra::Engine::Rendering::RenderObject
*,
52
Ra::Engine::Rendering::RenderTechnique
& )
const
{};
51
virtual
void
buildRenderTechnique
(
const
Ra::Engine::Rendering::RenderObject
*, {
…
}
53
55
virtual
bool
hasRenderTechnique
() {
return
false
; }
56
58
void
setShaderProgramManager
(
Ra::Engine::Data::ShaderProgramManager
* shaderMngr ) {
59
m_shaderMngr = shaderMngr;
60
}
58
void
setShaderProgramManager
(
Ra::Engine::Data::ShaderProgramManager
* shaderMngr ) {
…
}
61
62
static
const
std::string
node_typename() {
return
"RenderingNode"
; }
63
64
protected
:
65
void
toJsonInternal
( nlohmann::json& )
const override
{}
66
void
fromJsonInternal
(
const
nlohmann::json& )
override
{}
67
69
Ra::Engine::Data::ShaderProgramManager
*
m_shaderMngr
;
70
};
36
class
RA_DATAFLOW_API
RenderingNode
:
public
Dataflow::Core::Node
, {
…
};
71
72
}
// namespace Nodes
73
}
// namespace Rendering
74
}
// namespace Dataflow
75
}
// namespace Ra
std::string
Ra::Core::Utils::ColorBase< Scalar >
Ra::Core::Utils::IndexedObject
Definition
IndexedObject.hpp:14
Ra::Dataflow::Core::Node
Base abstract class for all the nodes added and used by the node system.
Definition
Node.hpp:40
Ra::Dataflow::Rendering::Nodes::RenderingNode
Definition
RenderingNode.hpp:38
Ra::Dataflow::Rendering::Nodes::RenderingNode::buildRenderTechnique
virtual void buildRenderTechnique(const Ra::Engine::Rendering::RenderObject *, Ra::Engine::Rendering::RenderTechnique &) const
Definition
RenderingNode.hpp:51
Ra::Dataflow::Rendering::Nodes::RenderingNode::toJsonInternal
void toJsonInternal(nlohmann::json &) const override
Internal json representation of the Node.
Definition
RenderingNode.hpp:65
Ra::Dataflow::Rendering::Nodes::RenderingNode::fromJsonInternal
void fromJsonInternal(const nlohmann::json &) override
Internal json representation of the Node.
Definition
RenderingNode.hpp:66
Ra::Dataflow::Rendering::Nodes::RenderingNode::resize
virtual void resize(uint32_t width, uint32_t height)=0
Ra::Dataflow::Rendering::Nodes::RenderingNode::m_shaderMngr
Ra::Engine::Data::ShaderProgramManager * m_shaderMngr
The renderer's shader program manager.
Definition
RenderingNode.hpp:69
Ra::Dataflow::Rendering::Nodes::RenderingNode::setShaderProgramManager
void setShaderProgramManager(Ra::Engine::Data::ShaderProgramManager *shaderMngr)
Sets the shader program manager.
Definition
RenderingNode.hpp:58
Ra::Dataflow::Rendering::Nodes::RenderingNode::hasRenderTechnique
virtual bool hasRenderTechnique()
Indicate if the nod needs to setup a rendertechnique on RenderObjects.
Definition
RenderingNode.hpp:55
Ra::Engine::Data::ShaderProgramManager
Definition
ShaderProgramManager.hpp:37
Ra::Engine::Data::Texture
Represent a Texture of the engine.
Definition
Texture.hpp:120
Ra::Engine::Rendering::RenderObject
Definition
RenderObject.hpp:37
Ra::Engine::Rendering::RenderTechnique
Definition
RenderTechnique.hpp:64
Ra::Engine::Scene::Light
Definition
Light.hpp:24
Ra::Engine::Data
(GPU) Data representation, along with manager
Definition
RenderingNode.hpp:12
Ra::Engine::Rendering::RenderObjectType
RenderObjectType
Definition
RenderObjectTypes.hpp:9
Ra
hepler function to manage enum as underlying types in VariableSet
Definition
Cage.cpp:4
std::shared_ptr
Ra::Engine::Data::ViewingParameters
the set of viewing parameters extracted from the camera and given to the renderer
Definition
ViewingParameters.hpp:10
src
Dataflow
Rendering
Nodes
RenderingNode.hpp
Generated by
1.12.0