Loading [MathJax]/extensions/tex2jax.js
Photon Engine
2.0.0-beta
A physically based renderer.
Toggle main menu visibility
Home
Components
Main Page
Related Pages
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
v
w
x
Variables
a
b
c
d
e
f
g
h
k
m
p
r
s
t
u
x
y
z
Typedefs
a
b
c
d
e
f
h
i
k
l
m
p
q
r
s
t
v
Enumerations
e
Enumerator
Concepts
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
a
b
c
d
e
f
g
i
k
l
m
n
o
p
r
s
t
u
v
w
x
y
Typedefs
a
b
c
d
e
f
i
k
m
n
o
p
r
s
t
v
w
Enumerations
Related Symbols
Files
File List
File Members
All
b
c
f
i
k
m
p
s
Functions
Typedefs
Macros
▼
Photon Engine
Home
Components
►
Engine
►
Engine Directories
Bibliography
►
Namespaces
►
Concepts
►
Classes
▼
Files
▼
File List
Documentation
►
Include
▼
Source
▼
Actor
►
Basic
►
Dome
►
Geometry
►
Image
▼
Light
AAreaLight.cpp
►
AAreaLight.h
►
AGeometricLight.cpp
►
AGeometricLight.h
AIesAttenuatedLight.cpp
►
AIesAttenuatedLight.h
ALight.cpp
►
ALight.h
AModelLight.cpp
►
AModelLight.h
APointLight.cpp
►
APointLight.h
ARectangleLight.cpp
►
ARectangleLight.h
ASphereLight.cpp
►
ASphereLight.h
►
Material
►
ModelParser
►
MotionSource
►
SDLExtension
►
Actor.cpp
►
Actor.h
►
ADome.cpp
►
ADome.h
AMaskedModel.cpp
►
AMaskedModel.h
►
AModel.cpp
►
AModel.h
APhantomModel.cpp
►
APhantomModel.h
►
ATransformedInstance.cpp
►
ATransformedInstance.h
ModelBuilder.cpp
ModelBuilder.h
ModelLoader.cpp
ModelLoader.h
PhysicalActor.cpp
►
PhysicalActor.h
StandaloneSdlResource.h
►
Api
►
Common
►
Core
►
DataIO
►
EngineEnv
►
Frame
►
Math
►
SDL
►
Utility
►
World
►
File Members
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
Concepts
Loading...
Searching...
No Matches
ASphereLight.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
Actor/Light/AAreaLight.h
"
4
#include "
SDL/sdl_interface.h
"
5
6
#include <Common/primitive_type.h>
7
8
namespace
ph
9
{
10
11
class
ASphereLight
:
public
AAreaLight
12
{
13
public
:
14
std::shared_ptr<Geometry>
getArea
(
const
CookingContext
& ctx)
const override
;
15
16
void
setRadius
(real radius);
17
18
private
:
19
real m_radius;
20
21
public
:
22
PH_DEFINE_SDL_CLASS
(
TSdlOwnerClass<ASphereLight>
)
23
{
24
ClassType clazz(
"sphere-light"
);
25
clazz.docName(
"Spherical Light Actor"
);
26
clazz.description(
27
"This type of light emits energy from a spherical shape."
);
28
clazz.baseOn<
AAreaLight
>();
29
30
TSdlReal<OwnerType>
radius(
"radius"
, &OwnerType::m_radius);
31
radius.description(
"The radius of the sphere."
);
32
radius.defaultTo(1);
33
radius.required();
34
clazz.addField(radius);
35
36
return
clazz;
37
}
22
PH_DEFINE_SDL_CLASS
(
TSdlOwnerClass<ASphereLight>
) {
…
}
38
};
11
class
ASphereLight
:
public
AAreaLight
{
…
};
39
40
}
// end namespace ph
AAreaLight.h
ph::AAreaLight
Definition
AAreaLight.h:14
ph::ASphereLight
Definition
ASphereLight.h:12
ph::ASphereLight::PH_DEFINE_SDL_CLASS
PH_DEFINE_SDL_CLASS(TSdlOwnerClass< ASphereLight >)
Definition
ASphereLight.h:22
ph::ASphereLight::getArea
std::shared_ptr< Geometry > getArea(const CookingContext &ctx) const override
Definition
ASphereLight.cpp:9
ph::ASphereLight::setRadius
void setRadius(real radius)
Definition
ASphereLight.cpp:16
ph::CookingContext
Information about the world being cooked.
Definition
CookingContext.h:24
ph::TSdlOwnerClass
SDL binding type for a canonical SDL resource class.
Definition
TSdlOwnerClass.h:23
ph::TSdlReal
A field class that binds a floating point member variable.
Definition
TSdlReal.h:21
ph
The root for all renderer implementations.
Definition
EEngineProject.h:6
sdl_interface.h
Source
Actor
Light
ASphereLight.h
Generated by
1.11.0