23 std::vector<std::unique_ptr<Primitive>>& out_primitives)
const override;
28 void add(
const std::shared_ptr<Geometry>& geometry);
31 const std::shared_ptr<Geometry>& geometry,
35 std::vector<std::shared_ptr<Geometry>> m_geometries;
40 ClassType clazz(
"geometry-soup");
41 clazz.docName(
"Geometry Soup");
42 clazz.description(
"A collection of random geometries.");
46 geometries.description(
"Array of references to the geometries in the soup.");
47 clazz.addField(geometries);
Definition CookedGeometry.h:13
Information about the world being cooked.
Definition CookingContext.h:24
Definition GeometrySoup.h:13
bool addTransformed(const std::shared_ptr< Geometry > &geometry, const math::StaticAffineTransform &transform)
Definition GeometrySoup.cpp:59
void genPrimitive(const PrimitiveBuildingMaterial &data, std::vector< std::unique_ptr< Primitive > > &out_primitives) const override
Definition GeometrySoup.cpp:24
PH_DEFINE_SDL_CLASS(TSdlOwnerClass< GeometrySoup >)
Definition GeometrySoup.h:38
std::shared_ptr< Geometry > genTransformed(const math::StaticAffineTransform &transform) const override
Definition GeometrySoup.cpp:34
void storeCooked(CookedGeometry &out_geometry, const CookingContext &ctx) const override
Store data suitable for rendering into out_geometry.
Definition GeometrySoup.cpp:14
void add(const std::shared_ptr< Geometry > &geometry)
Definition GeometrySoup.cpp:54
GeometrySoup()
Definition GeometrySoup.cpp:9
Definition PrimitiveBuildingMaterial.h:11
SDL binding type for a canonical SDL resource class.
Definition TSdlOwnerClass.h:23
A value that points to an array of SDL resources.
Definition TSdlReferenceArray.h:23
The root for all renderer implementations.
Definition EEngineProject.h:6