QtCraft API C++ classes QML types Handbook

QcSkyState Struct

Look of the sky at a moment of the day, as a pure function of the world time: colours of the dome, where sun and moon stand, the moon's phase and how visible the stars are; how far the clouds have drifted follows the world's animation clock instead (QcSky::withCloudDrift, decision E-968). More...

Header: #include <clientcore/light/QcSky.h>

Public Functions

QVector3D fogColor() const

Public Variables

QVector3D cloudColor
double cloudOffsetX
double cloudOffsetZ
double daylight
double flashLight
double fogScale
QVector3D glow
QVector3D horizon
QVector3D moonDirection
double moonPhase
double overcast
double stars
QVector3D sunDirection
QVector3D zenith

Detailed Description

The renderer draws the dome from it; fog takes the horizon colour so the far terrain fades into the sky.

Member Function Documentation

QVector3D QcSkyState::fogColor() const

Returns the fog colour: the horizon, so terrain at the fog's end has the colour of the sky behind it.

Member Variable Documentation

double QcSkyState::daylight

Sky light factor of the block shaders (QcDayCycle::daylight, less in rain, more in a flash).

double QcSkyState::flashLight

Light an explosion's flash adds to the shaders' floor for a moment, also where no sky light reaches (0 most of the time, decision E-879).

double QcSkyState::fogScale

Factor on the fog's distances: 1 clear, smaller in rain (the fog comes closer).

QVector3D QcSkyState::glow

Warm glow around the sun near the horizon (sunrise, sunset), already scaled by its strength.

double QcSkyState::moonPhase

0 new moon, 0.5 full moon; one lunar month lasts QcSky::lunarDays days.

double QcSkyState::overcast

How much of the sky the clouds cover beyond the fair-weather clouds: 0 clear, 1 overcast.

double QcSkyState::stars

0 by day, 1 in the darkest night.