OGRE-Next  4.0.0unstable
Object-Oriented Graphics Rendering Engine
Ogre::AtmosphereNpr::Preset Struct Reference

#include <OgreAtmosphereNpr.h>

Public Member Functions

 Preset ()
 
void lerp (const Preset &a, const Preset &b, const float w)
 Sets this = lerp( a, b, w ); where: a = lerp( a, b, 0 ); b = lerp( a, b, 1 );. More...
 
bool operator() (const float a, const Preset &b) const
 
bool operator() (const Preset &a, const float b) const
 
bool operator() (const Preset &a, const Preset &b) const
 

Public Attributes

float densityCoeff
 
float densityDiffusion
 
float envmapScale
 Value to send to SceneManager::setAmbientLight. More...
 
float fogBreakFalloff
 How fast bright objects appear in fog. More...
 
float fogBreakMinBrightness
 Very bright objects (i.e. More...
 
float fogDensity
 Affects objects' fog (not sky) More...
 
float horizonLimit
 
float linkedLightPower
 Power scale for the linked light. More...
 
float linkedSceneAmbientLowerPower
 Power scale for the lower hemisphere ambient light. More...
 
float linkedSceneAmbientUpperPower
 Power scale for the upper hemisphere ambient light. More...
 
Ogre::Vector3 skyColour
 
float skyPower
 
float sunPower
 
float time
 Must be in range [-1; 1] where range [-1; 0] is night and [0; 1] is day. More...
 

Constructor & Destructor Documentation

◆ Preset()

Ogre::AtmosphereNpr::Preset::Preset ( )
inline

Member Function Documentation

◆ lerp()

void Ogre::AtmosphereNpr::Preset::lerp ( const Preset a,
const Preset b,
const float  w 
)

Sets this = lerp( a, b, w ); where: a = lerp( a, b, 0 ); b = lerp( a, b, 1 );.

'time' is interpolated in a special manner to wrap around in range [-1; 1]. Thus if a.time > b.time, then we wrap around so that: time = lerp( 0.8, -0.8, 0.25 ) = 0.9 time = lerp( 0.8, -0.8, 0.50 ) = Either 1.0 or -1.0 time = lerp( 0.8, -0.8, 0.75 ) = -0.9

◆ operator()() [1/3]

bool Ogre::AtmosphereNpr::Preset::operator() ( const float  a,
const Preset b 
) const
inline

References time.

◆ operator()() [2/3]

bool Ogre::AtmosphereNpr::Preset::operator() ( const Preset a,
const float  b 
) const
inline

References time.

◆ operator()() [3/3]

bool Ogre::AtmosphereNpr::Preset::operator() ( const Preset a,
const Preset b 
) const
inline

References time.

Member Data Documentation

◆ densityCoeff

float Ogre::AtmosphereNpr::Preset::densityCoeff

◆ densityDiffusion

float Ogre::AtmosphereNpr::Preset::densityDiffusion

◆ envmapScale

float Ogre::AtmosphereNpr::Preset::envmapScale

Value to send to SceneManager::setAmbientLight.

◆ fogBreakFalloff

float Ogre::AtmosphereNpr::Preset::fogBreakFalloff

How fast bright objects appear in fog.

Small values make objects appear very slowly after luminance > fogBreakMinBrightness Large values make objects appear very quickly

Range: (0; inf)

◆ fogBreakMinBrightness

float Ogre::AtmosphereNpr::Preset::fogBreakMinBrightness

Very bright objects (i.e.

reflect lots of light) manage to "breakthrough" the fog.

A value of fogBreakMinBrightness = 3 means that pixels that have a luminance of >= 3 (i.e. in HDR) will start becoming more visible

Range: [0; inf)

◆ fogDensity

float Ogre::AtmosphereNpr::Preset::fogDensity

Affects objects' fog (not sky)

◆ horizonLimit

float Ogre::AtmosphereNpr::Preset::horizonLimit

◆ linkedLightPower

float Ogre::AtmosphereNpr::Preset::linkedLightPower

Power scale for the linked light.

◆ linkedSceneAmbientLowerPower

float Ogre::AtmosphereNpr::Preset::linkedSceneAmbientLowerPower

Power scale for the lower hemisphere ambient light.

◆ linkedSceneAmbientUpperPower

float Ogre::AtmosphereNpr::Preset::linkedSceneAmbientUpperPower

Power scale for the upper hemisphere ambient light.

◆ skyColour

Ogre::Vector3 Ogre::AtmosphereNpr::Preset::skyColour

◆ skyPower

float Ogre::AtmosphereNpr::Preset::skyPower

◆ sunPower

float Ogre::AtmosphereNpr::Preset::sunPower

◆ time

float Ogre::AtmosphereNpr::Preset::time

Must be in range [-1; 1] where range [-1; 0] is night and [0; 1] is day.

Referenced by operator()().


The documentation for this struct was generated from the following file: