Pioneer
Classes | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
BaseSphere Class Referenceabstract

#include <BaseSphere.h>

Inheritance diagram for BaseSphere:
Inheritance graph
[legend]
Collaboration diagram for BaseSphere:
Collaboration graph
[legend]

Classes

struct  MaterialParameters
 

Public Member Functions

 BaseSphere (const SystemBody *body)
 
virtual ~BaseSphere ()
 
virtual void Update ()=0
 
virtual void Render (Graphics::Renderer *renderer, const matrix4x4d &modelView, vector3d campos, const float radius, const std::vector< Camera::Shadow > &shadows)=0
 
virtual double GetHeight (const vector3d &p) const
 
void DrawAtmosphereSurface (Graphics::Renderer *renderer, const matrix4x4d &modelView, const vector3d &campos, float rad, Graphics::RenderState *rs, RefCountedPtr< Graphics::Material > mat)
 
virtual double GetMaxFeatureHeight () const =0
 
virtual void Reset ()=0
 
const SystemBodyGetSystemBody () const
 
TerrainGetTerrain () const
 
Graphics::RenderStateGetSurfRenderState () const
 
RefCountedPtr< Graphics::MaterialGetSurfaceMaterial () const
 
MaterialParametersGetMaterialParameters ()
 

Static Public Member Functions

static void Init ()
 
static void Uninit ()
 
static void UpdateAllBaseSphereDerivatives ()
 
static void OnChangeDetailLevel ()
 

Protected Member Functions

virtual void SetUpMaterials ()=0
 

Protected Attributes

const SystemBodym_sbody
 
RefCountedPtr< Terrainm_terrain
 
Graphics::RenderStatem_surfRenderState
 
Graphics::RenderStatem_atmosRenderState
 
RefCountedPtr< Graphics::Materialm_surfaceMaterial
 
RefCountedPtr< Graphics::Materialm_atmosphereMaterial
 
std::unique_ptr< Graphics::Drawables::Sphere3Dm_atmos
 
MaterialParameters m_materialParameters
 

Constructor & Destructor Documentation

◆ BaseSphere()

BaseSphere::BaseSphere ( const SystemBody body)

◆ ~BaseSphere()

BaseSphere::~BaseSphere ( )
virtual

Member Function Documentation

◆ DrawAtmosphereSurface()

void BaseSphere::DrawAtmosphereSurface ( Graphics::Renderer renderer,
const matrix4x4d modelView,
const vector3d campos,
float  rad,
Graphics::RenderState rs,
RefCountedPtr< Graphics::Material mat 
)
Here is the call graph for this function:

◆ GetHeight()

virtual double BaseSphere::GetHeight ( const vector3d p) const
inlinevirtual

Reimplemented in GeoSphere, and GasGiant.

◆ GetMaterialParameters()

MaterialParameters& BaseSphere::GetMaterialParameters ( )
inline

◆ GetMaxFeatureHeight()

virtual double BaseSphere::GetMaxFeatureHeight ( ) const
pure virtual

Implemented in GeoSphere, and GasGiant.

◆ GetSurfaceMaterial()

RefCountedPtr<Graphics::Material> BaseSphere::GetSurfaceMaterial ( ) const
inline

◆ GetSurfRenderState()

Graphics::RenderState* BaseSphere::GetSurfRenderState ( ) const
inline

◆ GetSystemBody()

const SystemBody* BaseSphere::GetSystemBody ( ) const
inline

◆ GetTerrain()

Terrain* BaseSphere::GetTerrain ( ) const
inline
Here is the call graph for this function:

◆ Init()

void BaseSphere::Init ( )
static
Here is the call graph for this function:

◆ OnChangeDetailLevel()

void BaseSphere::OnChangeDetailLevel ( )
static
Here is the call graph for this function:

◆ Render()

virtual void BaseSphere::Render ( Graphics::Renderer renderer,
const matrix4x4d modelView,
vector3d  campos,
const float  radius,
const std::vector< Camera::Shadow > &  shadows 
)
pure virtual

Implemented in GeoSphere, and GasGiant.

◆ Reset()

virtual void BaseSphere::Reset ( )
pure virtual

Implemented in GeoSphere, and GasGiant.

◆ SetUpMaterials()

virtual void BaseSphere::SetUpMaterials ( )
protectedpure virtual

◆ Uninit()

void BaseSphere::Uninit ( )
static
Here is the call graph for this function:

◆ Update()

virtual void BaseSphere::Update ( )
pure virtual

Implemented in GeoSphere, and GasGiant.

◆ UpdateAllBaseSphereDerivatives()

void BaseSphere::UpdateAllBaseSphereDerivatives ( )
static
Here is the call graph for this function:

Member Data Documentation

◆ m_atmos

std::unique_ptr<Graphics::Drawables::Sphere3D> BaseSphere::m_atmos
protected

◆ m_atmosphereMaterial

RefCountedPtr<Graphics::Material> BaseSphere::m_atmosphereMaterial
protected

◆ m_atmosRenderState

Graphics::RenderState* BaseSphere::m_atmosRenderState
protected

◆ m_materialParameters

MaterialParameters BaseSphere::m_materialParameters
protected

◆ m_sbody

const SystemBody* BaseSphere::m_sbody
protected

◆ m_surfaceMaterial

RefCountedPtr<Graphics::Material> BaseSphere::m_surfaceMaterial
protected

◆ m_surfRenderState

Graphics::RenderState* BaseSphere::m_surfRenderState
protected

◆ m_terrain

RefCountedPtr<Terrain> BaseSphere::m_terrain
protected

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