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
GCuboid.cpp
►
GCuboid.h
GEmpty.cpp
►
GEmpty.h
►
Geometry.cpp
►
Geometry.h
GeometrySoup.cpp
►
GeometrySoup.h
GIndexedTriangleMesh.cpp
►
GIndexedTriangleMesh.h
GMengerSponge.cpp
►
GMengerSponge.h
►
GPlyPolygonMesh.cpp
►
GPlyPolygonMesh.h
GRectangle.cpp
►
GRectangle.h
►
GSphere.cpp
►
GSphere.h
GTriangle.cpp
►
GTriangle.h
GTriangleMesh.cpp
►
GTriangleMesh.h
GWave.cpp
►
GWave.h
►
PrimitiveBuildingMaterial.h
►
Image
►
Light
►
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
GPlyPolygonMesh.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
Actor/Geometry/Geometry.h
"
4
#include "
DataIO/FileSystem/ResourceIdentifier.h
"
5
#include "
SDL/sdl_interface.h
"
6
#include "
Core/Intersection/data_structure_fwd.h
"
7
8
namespace
ph
9
{
10
13
class
GPlyPolygonMesh
:
public
Geometry
14
{
15
public
:
16
void
storeCooked
(
17
CookedGeometry
& out_geometry,
18
const
CookingContext
& ctx)
const override
;
19
20
void
genPrimitive
(
21
const
PrimitiveBuildingMaterial
& data,
22
std::vector<std::unique_ptr<Primitive>>& out_primitives)
const override
;
23
24
std::shared_ptr<Geometry>
genTransformed
(
25
const
math::StaticAffineTransform
& transform)
const override
;
26
27
private
:
28
ResourceIdentifier
m_plyFile;
29
30
IndexedTriangleBuffer
loadTriangleBuffer()
const
;
31
32
public
:
33
PH_DEFINE_SDL_CLASS
(
TSdlOwnerClass<GPlyPolygonMesh>
)
34
{
35
ClassType clazz(
"ply"
);
36
clazz.docName(
"PLY Polygon Mesh"
);
37
clazz.description(
"Polygon mesh stored as a .ply file."
);
38
clazz.baseOn<
Geometry
>();
39
40
TSdlResourceIdentifier<OwnerType>
plyFile(
"ply-file"
, &OwnerType::m_plyFile);
41
plyFile.description(
42
"The .ply file that stores the polygon mesh."
);
43
plyFile.required();
44
clazz.addField(plyFile);
45
46
return
clazz;
47
}
33
PH_DEFINE_SDL_CLASS
(
TSdlOwnerClass<GPlyPolygonMesh>
) {
…
}
48
};
13
class
GPlyPolygonMesh
:
public
Geometry
{
…
};
49
50
}
// end namespace ph
Geometry.h
ResourceIdentifier.h
ph::CookedGeometry
Definition
CookedGeometry.h:13
ph::CookingContext
Information about the world being cooked.
Definition
CookingContext.h:24
ph::GPlyPolygonMesh
Mesh stored as a .ply file.
Definition
GPlyPolygonMesh.h:14
ph::GPlyPolygonMesh::genTransformed
std::shared_ptr< Geometry > genTransformed(const math::StaticAffineTransform &transform) const override
Definition
GPlyPolygonMesh.cpp:73
ph::GPlyPolygonMesh::PH_DEFINE_SDL_CLASS
PH_DEFINE_SDL_CLASS(TSdlOwnerClass< GPlyPolygonMesh >)
Definition
GPlyPolygonMesh.h:33
ph::GPlyPolygonMesh::storeCooked
void storeCooked(CookedGeometry &out_geometry, const CookingContext &ctx) const override
Store data suitable for rendering into out_geometry.
Definition
GPlyPolygonMesh.cpp:21
ph::GPlyPolygonMesh::genPrimitive
void genPrimitive(const PrimitiveBuildingMaterial &data, std::vector< std::unique_ptr< Primitive > > &out_primitives) const override
Definition
GPlyPolygonMesh.cpp:66
ph::Geometry
Definition
Geometry.h:21
ph::PrimitiveBuildingMaterial
Definition
PrimitiveBuildingMaterial.h:11
ph::ResourceIdentifier
An general identifier that points to some resource. This is the most general form of a resource ident...
Definition
ResourceIdentifier.h:20
ph::TIndexedPolygonBuffer
Definition
TIndexedPolygonBuffer.h:23
ph::TSdlOwnerClass
SDL binding type for a canonical SDL resource class.
Definition
TSdlOwnerClass.h:23
ph::TSdlResourceIdentifier
A field class that binds a resource identifier member. Though the member type that is binded by defau...
Definition
TSdlResourceIdentifier.h:28
ph::math::StaticAffineTransform
Definition
StaticAffineTransform.h:14
data_structure_fwd.h
ph
The root for all renderer implementations.
Definition
EEngineProject.h:6
sdl_interface.h
Source
Actor
Geometry
GPlyPolygonMesh.h
Generated by
1.11.0