4 #ifndef _CITYONPLANET_H
5 #define _CITYONPLANET_H
40 static constexpr
double RADIUS = 5000.0;
43 void AddStaticGeomsToCollisionSpace();
44 void RemoveStaticGeomsFromCollisionSpace();
56 std::vector<BuildingDef> m_buildings;
57 std::vector<BuildingDef> m_enabledBuildings;
58 std::vector<Uint32> m_buildingCounts;
65 static const unsigned int CITYFLAVOURS = 5;
67 struct citybuilding_t {
68 const char *modelname;
76 struct citybuildinglist_t {
77 const char *modelTagName;
78 double minRadius, maxRadius;
79 unsigned int numBuildings;
80 citybuilding_t *buildings;
83 struct cityflavourdef_t {
88 static bool s_cityBuildingsInitted;
90 static citybuildinglist_t s_buildingList;
91 static cityflavourdef_t cityflavour[CITYFLAVOURS];
93 static void EnumerateNewBuildings(std::set<std::string> &filenames);
94 static void LookupBuildingListModels(citybuildinglist_t *list);
Definition: CityOnPlanet.h:28
static void Init()
Definition: CityOnPlanet.cpp:141
Planet * GetPlanet() const
Definition: CityOnPlanet.h:34
static constexpr double RADIUS
Definition: CityOnPlanet.h:40
static void Uninit()
Definition: CityOnPlanet.cpp:148
virtual ~CityOnPlanet()
Definition: CityOnPlanet.cpp:192
static void SetCityModelPatterns(const SystemPath &path)
Definition: CityOnPlanet.cpp:165
void Render(Graphics::Renderer *r, const Graphics::Frustum &camera, const SpaceStation *station, const vector3d &viewCoords, const matrix4x4d &viewTransform)
Definition: CityOnPlanet.cpp:320
Definition: Renderer.h:39
Definition: Animation.h:19
Definition: SpaceStation.h:30
Definition: SystemPath.h:13
Definition: Background.h:13
Definition: CityOnPlanet.h:23