Rigs of Rods 2026.01
Soft-body Physics Simulation
Loading...
Searching...
No Matches
Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes
RoR::Terrain Class Reference

Description

Definition at line 41 of file Terrain.h.

+ Inheritance diagram for RoR::Terrain:

Public Member Functions

 Terrain (CacheEntryPtr entry, Terrn2DocumentPtr def)
 
virtual ~Terrain () override
 
bool initialize ()
 
void dispose ()
 
General
std::string getTerrainName () const
 
std::string getTerrainFileName ()
 
std::string getTerrainFileResourceGroup ()
 
std::string getGUID () const
 
int getVersion () const
 
CacheEntryPtr getCacheEntry ()
 
Gameplay
bool isFlat ()
 
float getHeightAt (float x, float z)
 
Ogre::Vector3 getSpawnPos ()
 
Ogre::Degree getSpawnRot ()
 
Subsystems
void addSurveyMapEntity (const std::string &type, const std::string &filename, const std::string &resource_group, const std::string &caption, const Ogre::Vector3 &pos, float angle, int id)
 
void delSurveyMapEntities (int id)
 
SurveyMapEntityVec & getSurveyMapEntities ()
 
ProceduralManagerPtr getProceduralManager ()
 
float getWaterHeight () const
 
TerrainGeometryManager * getGeometryManager ()
 
TerrainObjectManager * getObjectManager ()
 
HydraxWater * getHydraxManager ()
 
SkyManager * getSkyManager ()
 
SkyXManager * getSkyXManager ()
 
ShadowManager * getShadowManager ()
 
TerrainEditor * GetTerrainEditor ()
 
Collisions * GetCollisions ()
 
Wavefield * getWater ()
 
IGfxWater * getGfxWater ()
 
Visuals
Ogre::Light * getMainLight ()
 
int getFarClip () const
 
float getPagedDetailFactor () const
 
Simulation
void setGravity (float value)
 
float getGravity () const
 
Ogre::Vector3 GetNormalAt (float x, float y, float z)
 
Ogre::Vector3 getMaxTerrainSize ()
 
Ogre::AxisAlignedBox getTerrainCollisionAAB ()
 
Utility
Terrn2DocumentPtr GetDef ()
 
void LoadTelepoints ()
 
void LoadPredefinedActors ()
 
bool HasPredefinedActors ()
 
- Public Member Functions inherited from RefCountingObject< Terrain >
 RefCountingObject ()
 
virtual ~RefCountingObject ()
 
void AddRef ()
 
void Release ()
 

Static Public Attributes

static const int UNLIMITED_SIGHTRANGE = 4999
 

Private Member Functions

void initCamera ()
 
void initTerrainCollisions ()
 
void initFog ()
 
void initLight ()
 
void initObjects ()
 
void initScripting ()
 
void initAiPresets ()
 
void initShadows ()
 
void initSkySubSystem ()
 
void initVegetation ()
 
void initWater ()
 
void fixCompositorClearColor ()
 
void loadTerrainObjects ()
 

Private Attributes

TerrainObjectManager * m_object_manager = nullptr
 
TerrainGeometryManager * m_geometry_manager = nullptr
 
std::unique_ptr< IGfxWater > m_gfx_water
 
std::unique_ptr< Wavefield > m_wavefield
 
TerrainEditor m_terrain_editor
 
Collisions * m_collisions = nullptr
 
ShadowManager * m_shadow_manager = nullptr
 
SkyManager * m_sky_manager = nullptr
 
SkyXManager * SkyX_manager = nullptr
 
HydraxWater * m_hydrax_water = nullptr
 
CacheEntryPtr m_cache_entry
 
Terrn2DocumentPtr m_def
 
float m_paged_detail_factor = 0.f
 
int m_sight_range = 1000
 
Ogre::Light * m_main_light = nullptr
 
float m_cur_gravity = DEFAULT_GRAVITY
 
bool m_disposed = false
 

Additional Inherited Members

- Static Public Member Functions inherited from RefCountingObject< Terrain >
static void RegisterRefCountingObject (AS_NAMESPACE_QUALIFIER asIScriptEngine *engine, const char *name)
 
static void RegisterRefCountingObjectGeneric (AS_NAMESPACE_QUALIFIER asIScriptEngine *engine, const char *name)
 
static void AddRefGeneric (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
 
static void ReleaseGeneric (AS_NAMESPACE_QUALIFIER asIScriptGeneric *gen)
 
- Data Fields inherited from RefCountingObject< Terrain >
int m_refcount
 
std::mutex m_refcount_mtx
 

Constructor & Destructor Documentation

◆ Terrain()

RoR::Terrain::Terrain ( CacheEntryPtr  entry,
Terrn2DocumentPtr  def 
)

Definition at line 53 of file Terrain.cpp.

◆ ~Terrain()

RoR::Terrain::~Terrain ( )
overridevirtual

Definition at line 70 of file Terrain.cpp.

Member Function Documentation

◆ addSurveyMapEntity()

void RoR::Terrain::addSurveyMapEntity ( const std::string &  type,
const std::string &  filename,
const std::string &  resource_group,
const std::string &  caption,
const Ogre::Vector3 &  pos,
float  angle,
int  id 
)

Definition at line 568 of file Terrain.cpp.

◆ delSurveyMapEntities()

void RoR::Terrain::delSurveyMapEntities ( int  id)

Definition at line 573 of file Terrain.cpp.

◆ dispose()

void RoR::Terrain::dispose ( )

Definition at line 78 of file Terrain.cpp.

◆ fixCompositorClearColor()

void RoR::Terrain::fixCompositorClearColor ( )
private

Definition at line 362 of file Terrain.cpp.

◆ getCacheEntry()

CacheEntryPtr RoR::Terrain::getCacheEntry ( )

Definition at line 591 of file Terrain.cpp.

◆ GetCollisions()

Collisions * RoR::Terrain::GetCollisions ( )
inline

Definition at line 86 of file Terrain.h.

◆ GetDef()

Terrn2DocumentPtr RoR::Terrain::GetDef ( )

Definition at line 583 of file Terrain.cpp.

◆ getFarClip()

int RoR::Terrain::getFarClip ( ) const
inline

Definition at line 94 of file Terrain.h.

◆ getGeometryManager()

TerrainGeometryManager * RoR::Terrain::getGeometryManager ( )
inline

Definition at line 79 of file Terrain.h.

◆ getGfxWater()

IGfxWater * RoR::Terrain::getGfxWater ( )
inline

Definition at line 88 of file Terrain.h.

◆ getGravity()

float RoR::Terrain::getGravity ( ) const
inline

Definition at line 101 of file Terrain.h.

◆ getGUID()

std::string RoR::Terrain::getGUID ( ) const

Definition at line 587 of file Terrain.cpp.

◆ getHeightAt()

float RoR::Terrain::getHeightAt ( float  x,
float  z 
)

Definition at line 511 of file Terrain.cpp.

◆ getHydraxManager()

HydraxWater * RoR::Terrain::getHydraxManager ( )
inline

Definition at line 81 of file Terrain.h.

◆ getMainLight()

Ogre::Light * RoR::Terrain::getMainLight ( )
inline

Definition at line 93 of file Terrain.h.

◆ getMaxTerrainSize()

Ogre::Vector3 RoR::Terrain::getMaxTerrainSize ( )

Definition at line 504 of file Terrain.cpp.

◆ GetNormalAt()

Ogre::Vector3 RoR::Terrain::GetNormalAt ( float  x,
float  y,
float  z 
)

Definition at line 516 of file Terrain.cpp.

◆ getObjectManager()

TerrainObjectManager * RoR::Terrain::getObjectManager ( )
inline

Definition at line 80 of file Terrain.h.

◆ getPagedDetailFactor()

float RoR::Terrain::getPagedDetailFactor ( ) const
inline

Definition at line 95 of file Terrain.h.

◆ getProceduralManager()

ProceduralManagerPtr RoR::Terrain::getProceduralManager ( )

Definition at line 553 of file Terrain.cpp.

◆ getShadowManager()

ShadowManager * RoR::Terrain::getShadowManager ( )
inline

Definition at line 84 of file Terrain.h.

◆ getSkyManager()

SkyManager * RoR::Terrain::getSkyManager ( )

Definition at line 521 of file Terrain.cpp.

◆ getSkyXManager()

SkyXManager * RoR::Terrain::getSkyXManager ( )
inline

Definition at line 83 of file Terrain.h.

◆ getSpawnPos()

Ogre::Vector3 RoR::Terrain::getSpawnPos ( )

Definition at line 593 of file Terrain.cpp.

◆ getSpawnRot()

Ogre::Degree RoR::Terrain::getSpawnRot ( )

Definition at line 595 of file Terrain.cpp.

◆ getSurveyMapEntities()

SurveyMapEntityVec & RoR::Terrain::getSurveyMapEntities ( )

Definition at line 578 of file Terrain.cpp.

◆ getTerrainCollisionAAB()

Ogre::AxisAlignedBox RoR::Terrain::getTerrainCollisionAAB ( )

Definition at line 499 of file Terrain.cpp.

◆ GetTerrainEditor()

TerrainEditor * RoR::Terrain::GetTerrainEditor ( )
inline

Definition at line 85 of file Terrain.h.

◆ getTerrainFileName()

std::string RoR::Terrain::getTerrainFileName ( )

Definition at line 558 of file Terrain.cpp.

◆ getTerrainFileResourceGroup()

std::string RoR::Terrain::getTerrainFileResourceGroup ( )

Definition at line 563 of file Terrain.cpp.

◆ getTerrainName()

std::string RoR::Terrain::getTerrainName ( ) const

Definition at line 585 of file Terrain.cpp.

◆ getVersion()

int RoR::Terrain::getVersion ( ) const

Definition at line 589 of file Terrain.cpp.

◆ getWater()

Wavefield * RoR::Terrain::getWater ( )
inline

Definition at line 87 of file Terrain.h.

◆ getWaterHeight()

float RoR::Terrain::getWaterHeight ( ) const

Definition at line 597 of file Terrain.cpp.

◆ HasPredefinedActors()

bool RoR::Terrain::HasPredefinedActors ( )

Definition at line 546 of file Terrain.cpp.

◆ initAiPresets()

void RoR::Terrain::initAiPresets ( )
private

Definition at line 481 of file Terrain.cpp.

◆ initCamera()

void RoR::Terrain::initCamera ( )
private

Definition at line 231 of file Terrain.cpp.

◆ initFog()

void RoR::Terrain::initFog ( )
private

Definition at line 335 of file Terrain.cpp.

◆ initialize()

bool RoR::Terrain::initialize ( )

Definition at line 150 of file Terrain.cpp.

◆ initLight()

void RoR::Terrain::initLight ( )
private

Definition at line 305 of file Terrain.cpp.

◆ initObjects()

void RoR::Terrain::initObjects ( )
private

Definition at line 494 of file Terrain.cpp.

◆ initScripting()

void RoR::Terrain::initScripting ( )
private

Definition at line 457 of file Terrain.cpp.

◆ initShadows()

void RoR::Terrain::initShadows ( )
private

Definition at line 435 of file Terrain.cpp.

◆ initSkySubSystem()

void RoR::Terrain::initSkySubSystem ( )
private

Definition at line 259 of file Terrain.cpp.

◆ initTerrainCollisions()

void RoR::Terrain::initTerrainCollisions ( )
private

Definition at line 449 of file Terrain.cpp.

◆ initVegetation()

void RoR::Terrain::initVegetation ( )
private

Definition at line 343 of file Terrain.cpp.

◆ initWater()

void RoR::Terrain::initWater ( )
private

Definition at line 389 of file Terrain.cpp.

◆ isFlat()

bool RoR::Terrain::isFlat ( )

Definition at line 526 of file Terrain.cpp.

◆ LoadPredefinedActors()

void RoR::Terrain::LoadPredefinedActors ( )

Definition at line 540 of file Terrain.cpp.

◆ LoadTelepoints()

void RoR::Terrain::LoadTelepoints ( )

Definition at line 534 of file Terrain.cpp.

◆ loadTerrainObjects()

void RoR::Terrain::loadTerrainObjects ( )
private

Definition at line 441 of file Terrain.cpp.

◆ setGravity()

void RoR::Terrain::setGravity ( float  value)

Definition at line 489 of file Terrain.cpp.

Field Documentation

◆ m_cache_entry

CacheEntryPtr RoR::Terrain::m_cache_entry
private

Definition at line 148 of file Terrain.h.

◆ m_collisions

Collisions* RoR::Terrain::m_collisions = nullptr
private

Definition at line 140 of file Terrain.h.

◆ m_cur_gravity

float RoR::Terrain::m_cur_gravity = DEFAULT_GRAVITY
private

Definition at line 156 of file Terrain.h.

◆ m_def

Terrn2DocumentPtr RoR::Terrain::m_def
private

Definition at line 149 of file Terrain.h.

◆ m_disposed

bool RoR::Terrain::m_disposed = false
private

Definition at line 157 of file Terrain.h.

◆ m_geometry_manager

TerrainGeometryManager* RoR::Terrain::m_geometry_manager = nullptr
private

Definition at line 136 of file Terrain.h.

◆ m_gfx_water

std::unique_ptr<IGfxWater> RoR::Terrain::m_gfx_water
private

Definition at line 137 of file Terrain.h.

◆ m_hydrax_water

HydraxWater* RoR::Terrain::m_hydrax_water = nullptr
private

Definition at line 144 of file Terrain.h.

◆ m_main_light

Ogre::Light* RoR::Terrain::m_main_light = nullptr
private

Definition at line 155 of file Terrain.h.

◆ m_object_manager

TerrainObjectManager* RoR::Terrain::m_object_manager = nullptr
private

Definition at line 135 of file Terrain.h.

◆ m_paged_detail_factor

float RoR::Terrain::m_paged_detail_factor = 0.f
private

Definition at line 150 of file Terrain.h.

◆ m_shadow_manager

ShadowManager* RoR::Terrain::m_shadow_manager = nullptr
private

Definition at line 141 of file Terrain.h.

◆ m_sight_range

int RoR::Terrain::m_sight_range = 1000
private

Definition at line 151 of file Terrain.h.

◆ m_sky_manager

SkyManager* RoR::Terrain::m_sky_manager = nullptr
private

Definition at line 142 of file Terrain.h.

◆ m_terrain_editor

TerrainEditor RoR::Terrain::m_terrain_editor
private

Definition at line 139 of file Terrain.h.

◆ m_wavefield

std::unique_ptr<Wavefield> RoR::Terrain::m_wavefield
private

Definition at line 138 of file Terrain.h.

◆ SkyX_manager

SkyXManager* RoR::Terrain::SkyX_manager = nullptr
private

Definition at line 143 of file Terrain.h.

◆ UNLIMITED_SIGHTRANGE

const int RoR::Terrain::UNLIMITED_SIGHTRANGE = 4999
static

Definition at line 44 of file Terrain.h.


The documentation for this class was generated from the following files: