Photon Engine 2.0.0-beta
A physically based renderer.
|
#include <Geometry.h>
Public Member Functions | |
virtual void | storeCooked (CookedGeometry &out_geometry, const CookingContext &ctx) const =0 |
Store data suitable for rendering into out_geometry . | |
virtual void | genPrimitive (const PrimitiveBuildingMaterial &data, std::vector< std::unique_ptr< Primitive > > &out_primitives) const =0 |
virtual std::shared_ptr< Geometry > | genTransformed (const math::StaticAffineTransform &transform) const |
virtual std::shared_ptr< Geometry > | genTriangulated () const |
CookedGeometry * | createCooked (const CookingContext &ctx) const |
Create a CookedGeometry that contains data suitable for rendering. | |
PH_DEFINE_SDL_CLASS (TSdlOwnerClass< Geometry >) | |
Public Member Functions inherited from ph::TSdlResourceBase< ESdlTypeCategory::Ref_Geometry > | |
ESdlTypeCategory | getDynamicCategory () const override |
Public Member Functions inherited from ph::SdlResourceBase | |
SdlResourceId | getId () const override |
Get the unique ID of this resource. The returned ID is guaranteed to be unique in the current process. Newly created resource cannot have an ID that has been used by a previous resource, even if the previous resource has ended its life cycle. See SdlResourceId.h for some utilities. | |
Public Member Functions inherited from ph::ISdlResource | |
ISdlResource (const ISdlResource &other)=default | |
ISdlResource (ISdlResource &&other)=default | |
virtual | ~ISdlResource ()=default |
ISdlResource & | operator= (const ISdlResource &rhs)=default |
ISdlResource & | operator= (ISdlResource &&rhs)=default |
virtual const SdlClass * | getDynamicSdlClass () const |
Get runtime SDL class of the resource. | |
virtual bool | isInlinable () const |
Additional Inherited Members | |
Static Public Attributes inherited from ph::TSdlResourceBase< ESdlTypeCategory::Ref_Geometry > | |
static constexpr ESdlTypeCategory | CATEGORY |
Static category information of the resource. This static category information is required by ISdlResource. See its documentation for more details. | |
Protected Member Functions inherited from ph::TSdlResourceBase< ESdlTypeCategory::Ref_Geometry > | |
TSdlResourceBase ()=default | |
TSdlResourceBase (const TSdlResourceBase &other)=default | |
TSdlResourceBase (TSdlResourceBase &&other)=default | |
TSdlResourceBase & | operator= (const TSdlResourceBase &rhs)=default |
TSdlResourceBase & | operator= (TSdlResourceBase &&rhs)=default |
Protected Member Functions inherited from ph::SdlResourceBase | |
SdlResourceBase () | |
SdlResourceBase (const SdlResourceBase &other) | |
SdlResourceBase (SdlResourceBase &&other)=default | |
SdlResourceBase & | operator= (const SdlResourceBase &rhs) |
SdlResourceBase & | operator= (SdlResourceBase &&rhs)=default |
Protected Member Functions inherited from ph::ISdlResource | |
ISdlResource ()=default | |
CookedGeometry * ph::Geometry::createCooked | ( | const CookingContext & | ctx | ) | const |
Create a CookedGeometry
that contains data suitable for rendering.
|
pure virtual |
|
virtual |
Reimplemented in ph::GeometrySoup, ph::GPlyPolygonMesh, ph::GRectangle, ph::GSphere, ph::GTriangle, and ph::GTriangleMesh.
|
virtual |
Reimplemented in ph::GCuboid.
|
inline |
|
pure virtual |
Store data suitable for rendering into out_geometry
.
Implemented in ph::GCuboid, ph::GEmpty, ph::GeometrySoup, ph::GMengerSponge, ph::GPlyPolygonMesh, ph::GRectangle, ph::GSphere, ph::GTriangle, ph::GTriangleMesh, and ph::GWave.