mirror of
https://github.com/lubosz/overte.git
synced 2025-04-25 01:03:59 +02:00
Refactoring.
This commit is contained in:
parent
e02876f1ea
commit
7d5a887f43
22 changed files with 146 additions and 63 deletions
|
@ -433,7 +433,7 @@ public:
|
|||
// Don't actually crash in debug builds, in case this apparent deadlock is simply from
|
||||
// the developer actively debugging code
|
||||
#ifdef NDEBUG
|
||||
////deadlockDetectionCrash();
|
||||
deadlockDetectionCrash();
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
|
|
@ -346,6 +346,7 @@ void ZoneEntityRenderer::updateHazeFromEntity(const TypedEntityPointer& entity)
|
|||
haze->setHazeColor(glm::vec3(hazeBlendInColor.red / 255.0, hazeBlendInColor.green / 255.0, hazeBlendInColor.blue / 255.0));
|
||||
xColor hazeBlendOutColor = _hazeProperties.getHazeBlendOutColor();
|
||||
haze->setDirectionalLightColor(glm::vec3(hazeBlendOutColor.red / 255.0, hazeBlendOutColor.green / 255.0, hazeBlendOutColor.blue / 255.0));
|
||||
haze->setHazeEnableLightBlend(_hazeProperties.getHazeEnableLightBlend());
|
||||
haze->setDirectionalLightBlend(model::convertDirectionalLightAngleToPower(_hazeProperties.getHazeLightBlendAngle()));
|
||||
|
||||
haze->setHazeAltitudeFactor(model::convertHazeAltitudeToHazeAltitudeFactor(_hazeProperties.getHazeAltitude()));
|
||||
|
@ -357,8 +358,7 @@ void ZoneEntityRenderer::updateHazeFromEntity(const TypedEntityPointer& entity)
|
|||
haze->setHazeKeyLightRangeFactor(model::convertHazeRangeToHazeRangeFactor(_hazeProperties.getHazeKeyLightRange()));
|
||||
haze->setHazeKeyLightAltitudeFactor(model::convertHazeAltitudeToHazeAltitudeFactor(_hazeProperties.getHazeKeyLightAltitude()));
|
||||
|
||||
haze->setZoneOrientation(_lastRotation);
|
||||
haze->setZonePosition(_lastPosition);
|
||||
haze->setZoneTransform(entity->getTransform().getMatrix());
|
||||
}
|
||||
|
||||
void ZoneEntityRenderer::updateKeyBackgroundFromEntity(const TypedEntityPointer& entity) {
|
||||
|
|
|
@ -1159,9 +1159,9 @@ void EntityItemProperties::entityPropertyFlagsFromScriptValue(const QScriptValue
|
|||
ADD_GROUP_PROPERTY_TO_MAP(PROP_HAZE_RANGE, Haze, haze, HazeRange, hazeRange);
|
||||
ADD_GROUP_PROPERTY_TO_MAP(PROP_HAZE_BLEND_IN_COLOR, Haze, haze, HazeBlendInColor, hazeBlendInColor);
|
||||
ADD_GROUP_PROPERTY_TO_MAP(PROP_HAZE_BLEND_OUT_COLOR, Haze, haze, HazeBlendOutColor, hazeBlendOutColor);
|
||||
ADD_GROUP_PROPERTY_TO_MAP(PROP_HAZE_ENABLE_LIGHT_BLEND, Haze, haze, HazeEnableLightBlend, hazeEnableLightBlend);
|
||||
ADD_GROUP_PROPERTY_TO_MAP(PROP_HAZE_LIGHT_BLEND_ANGLE, Haze, haze, HazeLightBlendAngle, hazeLightBlendAngle);
|
||||
|
||||
ADD_GROUP_PROPERTY_TO_MAP(PROP_HAZE_ATTENUATE_KEYLIGHT, Haze, haze, HazeAttenuateKeyLight, hazeAttenuateKeyLight);
|
||||
ADD_GROUP_PROPERTY_TO_MAP(PROP_HAZE_ALTITUDE, Haze, haze, HazeAltitude, hazeAltitude);
|
||||
ADD_GROUP_PROPERTY_TO_MAP(PROP_HAZE_BASE_REF, Haze, haze, HazeBaseRef, hazeBaseRef);
|
||||
|
||||
|
|
|
@ -237,16 +237,17 @@ enum EntityPropertyList {
|
|||
PROP_HAZE_RANGE = PROP_INTENSITY,
|
||||
PROP_HAZE_BLEND_IN_COLOR = PROP_CUTOFF,
|
||||
PROP_HAZE_BLEND_OUT_COLOR = PROP_EXPONENT,
|
||||
PROP_HAZE_LIGHT_BLEND_ANGLE = PROP_IS_SPOTLIGHT,
|
||||
PROP_HAZE_ENABLE_LIGHT_BLEND = PROP_IS_SPOTLIGHT,
|
||||
PROP_HAZE_LIGHT_BLEND_ANGLE = PROP_DIFFUSE_COLOR,
|
||||
|
||||
PROP_HAZE_ALTITUDE = PROP_DIFFUSE_COLOR,
|
||||
PROP_HAZE_BASE_REF = PROP_AMBIENT_COLOR_UNUSED,
|
||||
PROP_HAZE_ALTITUDE = PROP_AMBIENT_COLOR_UNUSED,
|
||||
PROP_HAZE_BASE_REF = PROP_SPECULAR_COLOR_UNUSED,
|
||||
|
||||
PROP_HAZE_BACKGROUND_BLEND = PROP_SPECULAR_COLOR_UNUSED,
|
||||
PROP_HAZE_BACKGROUND_BLEND = PROP_LINEAR_ATTENUATION_UNUSED,
|
||||
|
||||
PROP_HAZE_ATTENUATE_KEYLIGHT = PROP_LINEAR_ATTENUATION_UNUSED,
|
||||
PROP_HAZE_KEYLIGHT_RANGE = PROP_QUADRATIC_ATTENUATION_UNUSED,
|
||||
PROP_HAZE_KEYLIGHT_ALTITUDE = PROP_ANIMATION_FRAME_INDEX,
|
||||
PROP_HAZE_ATTENUATE_KEYLIGHT = PROP_QUADRATIC_ATTENUATION_UNUSED,
|
||||
PROP_HAZE_KEYLIGHT_RANGE = PROP_ANIMATION_FRAME_INDEX,
|
||||
PROP_HAZE_KEYLIGHT_ALTITUDE = PROP_MODEL_URL,
|
||||
|
||||
PROP_SKYBOX_COLOR = PROP_ANIMATION_URL,
|
||||
PROP_SKYBOX_URL = PROP_ANIMATION_FPS,
|
||||
|
|
|
@ -32,6 +32,7 @@ void HazePropertyGroup::copyToScriptValue(const EntityPropertyFlags& desiredProp
|
|||
COPY_GROUP_PROPERTY_TO_QSCRIPTVALUE(PROP_HAZE_RANGE, Haze, haze, HazeRange, hazeRange);
|
||||
COPY_GROUP_PROPERTY_TO_QSCRIPTVALUE(PROP_HAZE_BLEND_IN_COLOR, Haze, haze, HazeBlendInColor, hazeBlendInColor);
|
||||
COPY_GROUP_PROPERTY_TO_QSCRIPTVALUE(PROP_HAZE_BLEND_OUT_COLOR, Haze, haze, HazeBlendOutColor, hazeBlendOutColor);
|
||||
COPY_GROUP_PROPERTY_TO_QSCRIPTVALUE(PROP_HAZE_ENABLE_LIGHT_BLEND, Haze, haze, HazeEnableLightBlend, hazeEnableLightBlend);
|
||||
COPY_GROUP_PROPERTY_TO_QSCRIPTVALUE(PROP_HAZE_LIGHT_BLEND_ANGLE, Haze, haze, HazeLightBlendAngle, hazeLightBlendAngle);
|
||||
|
||||
COPY_GROUP_PROPERTY_TO_QSCRIPTVALUE(PROP_HAZE_ALTITUDE, Haze, haze, HazeAltitude, hazeAltitude);
|
||||
|
@ -48,6 +49,7 @@ void HazePropertyGroup::copyFromScriptValue(const QScriptValue& object, bool& _d
|
|||
COPY_GROUP_PROPERTY_FROM_QSCRIPTVALUE(haze, hazeRange, float, setHazeRange);
|
||||
COPY_GROUP_PROPERTY_FROM_QSCRIPTVALUE(haze, hazeBlendInColor, xColor, setHazeBlendInColor);
|
||||
COPY_GROUP_PROPERTY_FROM_QSCRIPTVALUE(haze, hazeBlendOutColor, xColor, setHazeBlendOutColor);
|
||||
COPY_GROUP_PROPERTY_FROM_QSCRIPTVALUE(haze, hazeEnableLightBlend, bool, setHazeEnableLightBlend);
|
||||
COPY_GROUP_PROPERTY_FROM_QSCRIPTVALUE(haze, hazeLightBlendAngle, float, setHazeLightBlendAngle);
|
||||
|
||||
COPY_GROUP_PROPERTY_FROM_QSCRIPTVALUE(haze, hazeAltitude, float, setHazeAltitude);
|
||||
|
@ -64,6 +66,7 @@ void HazePropertyGroup::merge(const HazePropertyGroup& other) {
|
|||
COPY_PROPERTY_IF_CHANGED(hazeRange);
|
||||
COPY_PROPERTY_IF_CHANGED(hazeBlendInColor);
|
||||
COPY_PROPERTY_IF_CHANGED(hazeBlendOutColor);
|
||||
COPY_PROPERTY_IF_CHANGED(hazeEnableLightBlend);
|
||||
COPY_PROPERTY_IF_CHANGED(hazeLightBlendAngle);
|
||||
|
||||
COPY_PROPERTY_IF_CHANGED(hazeAltitude);
|
||||
|
@ -82,6 +85,7 @@ void HazePropertyGroup::debugDump() const {
|
|||
qCDebug(entities) << " _hazeRange:" << _hazeRange;
|
||||
qCDebug(entities) << " _hazeBlendInColor:" << _hazeBlendInColor;
|
||||
qCDebug(entities) << " _hazeBlendOutColor:" << _hazeBlendOutColor;
|
||||
qCDebug(entities) << " _hazeEnableLightBlend:" << _hazeEnableLightBlend;
|
||||
qCDebug(entities) << " _hazeLightBlendAngle:" << _hazeLightBlendAngle;
|
||||
|
||||
qCDebug(entities) << " _hazeAltitude:" << _hazeAltitude;
|
||||
|
@ -104,6 +108,9 @@ void HazePropertyGroup::listChangedProperties(QList<QString>& out) {
|
|||
if (hazeBlendOutColorChanged()) {
|
||||
out << "haze-hazeBlendOutColor";
|
||||
}
|
||||
if (hazeEnableLightBlendChanged()) {
|
||||
out << "haze-hazeEnableLightBlend";
|
||||
}
|
||||
if (hazeLightBlendAngleChanged()) {
|
||||
out << "haze-hazeLightBlendAngle";
|
||||
}
|
||||
|
@ -142,6 +149,7 @@ bool HazePropertyGroup::appendToEditPacket(OctreePacketData* packetData,
|
|||
APPEND_ENTITY_PROPERTY(PROP_HAZE_RANGE, getHazeRange());
|
||||
APPEND_ENTITY_PROPERTY(PROP_HAZE_BLEND_IN_COLOR, getHazeBlendInColor());
|
||||
APPEND_ENTITY_PROPERTY(PROP_HAZE_BLEND_OUT_COLOR, getHazeBlendOutColor());
|
||||
APPEND_ENTITY_PROPERTY(PROP_HAZE_ENABLE_LIGHT_BLEND, getHazeEnableLightBlend());
|
||||
APPEND_ENTITY_PROPERTY(PROP_HAZE_LIGHT_BLEND_ANGLE, getHazeLightBlendAngle());
|
||||
|
||||
APPEND_ENTITY_PROPERTY(PROP_HAZE_ALTITUDE, getHazeAltitude());
|
||||
|
@ -165,6 +173,7 @@ bool HazePropertyGroup::decodeFromEditPacket(EntityPropertyFlags& propertyFlags,
|
|||
READ_ENTITY_PROPERTY(PROP_HAZE_RANGE, float, setHazeRange);
|
||||
READ_ENTITY_PROPERTY(PROP_HAZE_BLEND_IN_COLOR, xColor, setHazeBlendInColor);
|
||||
READ_ENTITY_PROPERTY(PROP_HAZE_BLEND_OUT_COLOR, xColor, setHazeBlendOutColor);
|
||||
READ_ENTITY_PROPERTY(PROP_HAZE_ENABLE_LIGHT_BLEND, bool, setHazeEnableLightBlend);
|
||||
READ_ENTITY_PROPERTY(PROP_HAZE_LIGHT_BLEND_ANGLE, float, setHazeLightBlendAngle);
|
||||
|
||||
READ_ENTITY_PROPERTY(PROP_HAZE_ALTITUDE, float, setHazeAltitude);
|
||||
|
@ -179,6 +188,7 @@ bool HazePropertyGroup::decodeFromEditPacket(EntityPropertyFlags& propertyFlags,
|
|||
DECODE_GROUP_PROPERTY_HAS_CHANGED(PROP_HAZE_RANGE, HazeRange);
|
||||
DECODE_GROUP_PROPERTY_HAS_CHANGED(PROP_HAZE_BLEND_IN_COLOR, HazeBlendInColor);
|
||||
DECODE_GROUP_PROPERTY_HAS_CHANGED(PROP_HAZE_BLEND_OUT_COLOR, HazeBlendOutColor);
|
||||
DECODE_GROUP_PROPERTY_HAS_CHANGED(PROP_HAZE_ENABLE_LIGHT_BLEND, HazeEnableLightBlend);
|
||||
DECODE_GROUP_PROPERTY_HAS_CHANGED(PROP_HAZE_LIGHT_BLEND_ANGLE, HazeLightBlendAngle);
|
||||
|
||||
DECODE_GROUP_PROPERTY_HAS_CHANGED(PROP_HAZE_ALTITUDE, HazeAltitude);
|
||||
|
@ -201,6 +211,7 @@ void HazePropertyGroup::markAllChanged() {
|
|||
_hazeRangeChanged = true;
|
||||
_hazeBlendInColorChanged = true;
|
||||
_hazeBlendOutColorChanged = true;
|
||||
_hazeEnableLightBlendChanged = true;
|
||||
_hazeLightBlendAngleChanged = true;
|
||||
|
||||
_hazeAltitudeChanged = true;
|
||||
|
@ -219,6 +230,7 @@ EntityPropertyFlags HazePropertyGroup::getChangedProperties() const {
|
|||
CHECK_PROPERTY_CHANGE(PROP_HAZE_RANGE, hazeRange);
|
||||
CHECK_PROPERTY_CHANGE(PROP_HAZE_BLEND_IN_COLOR, hazeBlendInColor);
|
||||
CHECK_PROPERTY_CHANGE(PROP_HAZE_BLEND_OUT_COLOR, hazeBlendOutColor);
|
||||
CHECK_PROPERTY_CHANGE(PROP_HAZE_ENABLE_LIGHT_BLEND, hazeEnableLightBlend);
|
||||
CHECK_PROPERTY_CHANGE(PROP_HAZE_LIGHT_BLEND_ANGLE, hazeLightBlendAngle);
|
||||
|
||||
CHECK_PROPERTY_CHANGE(PROP_HAZE_ALTITUDE, hazeAltitude);
|
||||
|
@ -237,6 +249,7 @@ void HazePropertyGroup::getProperties(EntityItemProperties& properties) const {
|
|||
COPY_ENTITY_GROUP_PROPERTY_TO_PROPERTIES(Haze, HazeRange, getHazeRange);
|
||||
COPY_ENTITY_GROUP_PROPERTY_TO_PROPERTIES(Haze, HazeBlendInColor, getHazeBlendInColor);
|
||||
COPY_ENTITY_GROUP_PROPERTY_TO_PROPERTIES(Haze, HazeBlendOutColor, getHazeBlendOutColor);
|
||||
COPY_ENTITY_GROUP_PROPERTY_TO_PROPERTIES(Haze, HazeEnableLightBlend, getHazeEnableLightBlend);
|
||||
COPY_ENTITY_GROUP_PROPERTY_TO_PROPERTIES(Haze, HazeLightBlendAngle, getHazeLightBlendAngle);
|
||||
|
||||
COPY_ENTITY_GROUP_PROPERTY_TO_PROPERTIES(Haze, HazeAltitude, getHazeAltitude);
|
||||
|
@ -255,6 +268,7 @@ bool HazePropertyGroup::setProperties(const EntityItemProperties& properties) {
|
|||
SET_ENTITY_GROUP_PROPERTY_FROM_PROPERTIES(Haze, HazeRange, hazeRange, setHazeRange);
|
||||
SET_ENTITY_GROUP_PROPERTY_FROM_PROPERTIES(Haze, HazeBlendInColor, hazeBlendInColor, setHazeBlendInColor);
|
||||
SET_ENTITY_GROUP_PROPERTY_FROM_PROPERTIES(Haze, HazeBlendOutColor, hazeBlendOutColor, setHazeBlendOutColor);
|
||||
SET_ENTITY_GROUP_PROPERTY_FROM_PROPERTIES(Haze, HazeEnableLightBlend, hazeEnableLightBlend, setHazeEnableLightBlend);
|
||||
SET_ENTITY_GROUP_PROPERTY_FROM_PROPERTIES(Haze, HazeLightBlendAngle, hazeLightBlendAngle, setHazeLightBlendAngle);
|
||||
|
||||
SET_ENTITY_GROUP_PROPERTY_FROM_PROPERTIES(Haze, HazeAltitude, hazeAltitude, setHazeAltitude);
|
||||
|
@ -275,6 +289,7 @@ EntityPropertyFlags HazePropertyGroup::getEntityProperties(EncodeBitstreamParams
|
|||
requestedProperties += PROP_HAZE_RANGE;
|
||||
requestedProperties += PROP_HAZE_BLEND_IN_COLOR;
|
||||
requestedProperties += PROP_HAZE_BLEND_OUT_COLOR;
|
||||
requestedProperties += PROP_HAZE_ENABLE_LIGHT_BLEND;
|
||||
requestedProperties += PROP_HAZE_LIGHT_BLEND_ANGLE;
|
||||
|
||||
requestedProperties += PROP_HAZE_ALTITUDE;
|
||||
|
@ -302,6 +317,7 @@ void HazePropertyGroup::appendSubclassData(OctreePacketData* packetData, EncodeB
|
|||
APPEND_ENTITY_PROPERTY(PROP_HAZE_RANGE, getHazeRange());
|
||||
APPEND_ENTITY_PROPERTY(PROP_HAZE_BLEND_IN_COLOR, getHazeBlendInColor());
|
||||
APPEND_ENTITY_PROPERTY(PROP_HAZE_BLEND_OUT_COLOR, getHazeBlendOutColor());
|
||||
APPEND_ENTITY_PROPERTY(PROP_HAZE_ENABLE_LIGHT_BLEND, getHazeEnableLightBlend());
|
||||
APPEND_ENTITY_PROPERTY(PROP_HAZE_LIGHT_BLEND_ANGLE, getHazeLightBlendAngle());
|
||||
|
||||
APPEND_ENTITY_PROPERTY(PROP_HAZE_ALTITUDE, getHazeAltitude());
|
||||
|
@ -325,6 +341,7 @@ int HazePropertyGroup::readEntitySubclassDataFromBuffer(const unsigned char* dat
|
|||
READ_ENTITY_PROPERTY(PROP_HAZE_RANGE, float, setHazeRange);
|
||||
READ_ENTITY_PROPERTY(PROP_HAZE_BLEND_IN_COLOR, xColor, setHazeBlendInColor);
|
||||
READ_ENTITY_PROPERTY(PROP_HAZE_BLEND_OUT_COLOR, xColor, setHazeBlendOutColor);
|
||||
READ_ENTITY_PROPERTY(PROP_HAZE_ENABLE_LIGHT_BLEND, bool, setHazeEnableLightBlend);
|
||||
READ_ENTITY_PROPERTY(PROP_HAZE_LIGHT_BLEND_ANGLE, float, setHazeLightBlendAngle);
|
||||
|
||||
READ_ENTITY_PROPERTY(PROP_HAZE_ALTITUDE, float, setHazeAltitude);
|
||||
|
|
|
@ -91,6 +91,7 @@ public:
|
|||
DEFINE_PROPERTY(PROP_HAZE_RANGE, HazeRange, hazeRange, float, DEFAULT_HAZE_RANGE);
|
||||
DEFINE_PROPERTY_REF(PROP_HAZE_BLEND_IN_COLOR, HazeBlendInColor, hazeBlendInColor, xColor, DEFAULT_HAZE_BLEND_IN_COLOR);
|
||||
DEFINE_PROPERTY_REF(PROP_HAZE_BLEND_OUT_COLOR, HazeBlendOutColor, hazeBlendOutColor, xColor, DEFAULT_HAZE_BLEND_OUT_COLOR);
|
||||
DEFINE_PROPERTY(PROP_HAZE_ENABLE_LIGHT_BLEND, HazeEnableLightBlend, hazeEnableLightBlend, bool, false);
|
||||
DEFINE_PROPERTY_REF(PROP_HAZE_LIGHT_BLEND_ANGLE, HazeLightBlendAngle, hazeLightBlendAngle, float, DEFAULT_HAZE_LIGHT_BLEND_ANGLE);
|
||||
|
||||
// Range & Altitude parameters
|
||||
|
|
|
@ -338,83 +338,93 @@ float ZoneEntityItem::getHazeRange() const {
|
|||
return _hazeRange;
|
||||
}
|
||||
|
||||
void ZoneEntityItem::setHazeBlendInColor(const xColor hazeBlendInColor){
|
||||
void ZoneEntityItem::setHazeBlendInColor(const xColor hazeBlendInColor) {
|
||||
_hazeBlendInColor = hazeBlendInColor;
|
||||
_hazePropertiesChanged = true;
|
||||
}
|
||||
|
||||
xColor ZoneEntityItem::getHazeBlendInColor()const{
|
||||
xColor ZoneEntityItem::getHazeBlendInColor() const {
|
||||
return _hazeBlendInColor;
|
||||
}
|
||||
|
||||
void ZoneEntityItem::setHazeBlendOutColor(const xColor hazeBlendOutColor){
|
||||
void ZoneEntityItem::setHazeBlendOutColor(const xColor hazeBlendOutColor) {
|
||||
_hazeBlendOutColor = hazeBlendOutColor;
|
||||
_hazePropertiesChanged = true;
|
||||
}
|
||||
|
||||
xColor ZoneEntityItem::getHazeBlendOutColor()const{
|
||||
xColor ZoneEntityItem::getHazeBlendOutColor()const {
|
||||
return _hazeBlendOutColor;
|
||||
}
|
||||
|
||||
void ZoneEntityItem::setHazeLightBlendAngle(const float hazeLightBlendAngle){
|
||||
void ZoneEntityItem::setHazeEnableLightBlend(const bool hazeEnableLightBlend) {
|
||||
_hazeEnableLightBlend = hazeEnableLightBlend;
|
||||
_hazePropertiesChanged = true;
|
||||
}
|
||||
|
||||
bool ZoneEntityItem::getHazeEnableLightBlend()const {
|
||||
return _hazeEnableLightBlend;
|
||||
}
|
||||
|
||||
void ZoneEntityItem::setHazeLightBlendAngle(const float hazeLightBlendAngle) {
|
||||
_hazeLightBlendAngle = hazeLightBlendAngle;
|
||||
_hazePropertiesChanged = true;
|
||||
}
|
||||
|
||||
float ZoneEntityItem::getHazeLightBlendAngle()const{
|
||||
float ZoneEntityItem::getHazeLightBlendAngle() const {
|
||||
return _hazeLightBlendAngle;
|
||||
}
|
||||
|
||||
void ZoneEntityItem::setHazeAltitude(const float hazeAltitude){
|
||||
void ZoneEntityItem::setHazeAltitude(const float hazeAltitude) {
|
||||
_hazeAltitude = hazeAltitude;
|
||||
_hazePropertiesChanged = true;
|
||||
}
|
||||
|
||||
float ZoneEntityItem::getHazeAltitude()const{
|
||||
float ZoneEntityItem::getHazeAltitude() const {
|
||||
return _hazeAltitude;
|
||||
}
|
||||
|
||||
void ZoneEntityItem::setHazeBaseRef(const float hazeBaseRef){
|
||||
void ZoneEntityItem::setHazeBaseRef(const float hazeBaseRef) {
|
||||
_hazeBaseRef = hazeBaseRef;
|
||||
_hazePropertiesChanged = true;
|
||||
}
|
||||
|
||||
float ZoneEntityItem::getHazeBaseRef()const{
|
||||
float ZoneEntityItem::getHazeBaseRef() const {
|
||||
return _hazeBaseRef;
|
||||
}
|
||||
|
||||
void ZoneEntityItem::setHazeBackgroundBlend(const float hazeBackgroundBlend){
|
||||
void ZoneEntityItem::setHazeBackgroundBlend(const float hazeBackgroundBlend) {
|
||||
_hazeBackgroundBlend = hazeBackgroundBlend;
|
||||
_hazePropertiesChanged = true;
|
||||
}
|
||||
|
||||
float ZoneEntityItem::getHazeBackgroundBlend()const{
|
||||
float ZoneEntityItem::getHazeBackgroundBlend() const {
|
||||
return _hazeBackgroundBlend;
|
||||
}
|
||||
|
||||
void ZoneEntityItem::setHazeAttenuateKeyLight(const bool hazeAttenuateKeyLight) {
|
||||
_hazeAttenuateKeyLight = hazeAttenuateKeyLight;
|
||||
_hazePropertiesChanged = true;
|
||||
}
|
||||
|
||||
bool ZoneEntityItem::getHazeAttenuateKeyLight()const {
|
||||
bool ZoneEntityItem::getHazeAttenuateKeyLight() const {
|
||||
return _hazeAttenuateKeyLight;
|
||||
}
|
||||
|
||||
void ZoneEntityItem::setHazeKeyLightRange(const float hazeKeyLightRange){
|
||||
void ZoneEntityItem::setHazeKeyLightRange(const float hazeKeyLightRange) {
|
||||
_hazeKeyLightRange = hazeKeyLightRange;
|
||||
_hazePropertiesChanged = true;
|
||||
}
|
||||
|
||||
float ZoneEntityItem::getHazeKeyLightRange()const {
|
||||
float ZoneEntityItem::getHazeKeyLightRange() const {
|
||||
return _hazeKeyLightRange;
|
||||
}
|
||||
|
||||
void ZoneEntityItem::setHazeKeyLightAltitude(const float hazeKeyLightAltitude){
|
||||
void ZoneEntityItem::setHazeKeyLightAltitude(const float hazeKeyLightAltitude) {
|
||||
_hazeKeyLightAltitude = hazeKeyLightAltitude;
|
||||
_hazePropertiesChanged = true;
|
||||
}
|
||||
|
||||
float ZoneEntityItem::getHazeKeyLightAltitude()const{
|
||||
float ZoneEntityItem::getHazeKeyLightAltitude() const {
|
||||
return _hazeKeyLightAltitude;
|
||||
}
|
||||
|
||||
|
|
|
@ -74,28 +74,30 @@ public:
|
|||
uint32_t getHazeMode() const;
|
||||
|
||||
void setHazeRange(const float hazeRange);
|
||||
float getHazeRange()const;
|
||||
float getHazeRange() const;
|
||||
void setHazeBlendInColor(const xColor hazeBlendInColor);
|
||||
xColor getHazeBlendInColor()const;
|
||||
xColor getHazeBlendInColor() const;
|
||||
void setHazeBlendOutColor(const xColor hazeBlendOutColor);
|
||||
xColor getHazeBlendOutColor()const;
|
||||
xColor getHazeBlendOutColor() const;
|
||||
void setHazeEnableLightBlend(const bool hazeEnableLightBlend);
|
||||
bool getHazeEnableLightBlend() const;
|
||||
void setHazeLightBlendAngle(const float hazeLightBlendAngle);
|
||||
float getHazeLightBlendAngle()const;
|
||||
float getHazeLightBlendAngle() const;
|
||||
|
||||
void setHazeAltitude(const float hazeAltitude);
|
||||
float getHazeAltitude()const;
|
||||
float getHazeAltitude() const;
|
||||
void setHazeBaseRef(const float hazeBaseRef);
|
||||
float getHazeBaseRef()const;
|
||||
float getHazeBaseRef() const;
|
||||
|
||||
void setHazeBackgroundBlend(const float hazeBackgroundBlend);
|
||||
float getHazeBackgroundBlend()const;
|
||||
float getHazeBackgroundBlend() const;
|
||||
|
||||
void setHazeAttenuateKeyLight(const bool hazeAttenuateKeyLight);
|
||||
bool getHazeAttenuateKeyLight()const;
|
||||
bool getHazeAttenuateKeyLight() const;
|
||||
void setHazeKeyLightRange(const float hazeKeyLightRange);
|
||||
float getHazeKeyLightRange()const;
|
||||
float getHazeKeyLightRange() const;
|
||||
void setHazeKeyLightAltitude(const float hazeKeyLightAltitude);
|
||||
float getHazeKeyLightAltitude()const;
|
||||
float getHazeKeyLightAltitude() const;
|
||||
|
||||
SkyboxPropertyGroup getSkyboxProperties() const { return resultWithReadLock<SkyboxPropertyGroup>([&] { return _skyboxProperties; }); }
|
||||
|
||||
|
@ -149,6 +151,7 @@ protected:
|
|||
float _hazeRange{ HazePropertyGroup::DEFAULT_HAZE_RANGE };
|
||||
xColor _hazeBlendInColor{ HazePropertyGroup::DEFAULT_HAZE_BLEND_IN_COLOR };
|
||||
xColor _hazeBlendOutColor{ HazePropertyGroup::DEFAULT_HAZE_BLEND_OUT_COLOR };
|
||||
bool _hazeEnableLightBlend{ false };
|
||||
float _hazeLightBlendAngle{ HazePropertyGroup::DEFAULT_HAZE_LIGHT_BLEND_ANGLE };
|
||||
|
||||
float _hazeAltitude{ HazePropertyGroup::DEFAULT_HAZE_ALTITUDE };
|
||||
|
@ -156,7 +159,7 @@ protected:
|
|||
|
||||
float _hazeBackgroundBlend{ HazePropertyGroup::DEFAULT_HAZE_BACKGROUND_BLEND };
|
||||
|
||||
float _hazeAttenuateKeyLight{ false };
|
||||
bool _hazeAttenuateKeyLight{ false };
|
||||
float _hazeKeyLightRange{ HazePropertyGroup::DEFAULT_HAZE_KEYLIGHT_RANGE };
|
||||
float _hazeKeyLightAltitude{ HazePropertyGroup::DEFAULT_HAZE_KEYLIGHT_ALTITUDE };
|
||||
|
||||
|
|
|
@ -24,7 +24,8 @@ enum HazeModes {
|
|||
HAZE_MODE_IS_ACTIVE = 1 << 0,
|
||||
HAZE_MODE_IS_ALTITUDE_BASED = 1 << 1,
|
||||
HAZE_MODE_IS_DIRECTIONAL_LIGHT_ATTENUATED = 1 << 2,
|
||||
HAZE_MODE_IS_MODULATE_COLOR = 1 << 3
|
||||
HAZE_MODE_IS_MODULATE_COLOR = 1 << 3,
|
||||
HAZE_MODE_IS_ENABLE_LIGHT_BLEND = 1 << 4
|
||||
};
|
||||
|
||||
// For color modulated mode, the colour values are used as range values, which are then converted to range factors
|
||||
|
@ -57,6 +58,17 @@ void Haze::setHazeColor(const glm::vec3 hazeColor) {
|
|||
}
|
||||
}
|
||||
|
||||
void Haze::setHazeEnableLightBlend(const bool isHazeEnableLightBlend) {
|
||||
auto& params = _hazeParametersBuffer.get<Parameters>();
|
||||
|
||||
if (((params.hazeMode & HAZE_MODE_IS_ENABLE_LIGHT_BLEND) == HAZE_MODE_IS_ENABLE_LIGHT_BLEND) && !isHazeEnableLightBlend) {
|
||||
_hazeParametersBuffer.edit<Parameters>().hazeMode &= ~HAZE_MODE_IS_ENABLE_LIGHT_BLEND;
|
||||
}
|
||||
else if (((params.hazeMode & HAZE_MODE_IS_ENABLE_LIGHT_BLEND) != HAZE_MODE_IS_ENABLE_LIGHT_BLEND) && isHazeEnableLightBlend) {
|
||||
_hazeParametersBuffer.edit<Parameters>().hazeMode |= HAZE_MODE_IS_ENABLE_LIGHT_BLEND;
|
||||
}
|
||||
}
|
||||
|
||||
void Haze::setDirectionalLightBlend(const float hazeDirectionalLightBlend) {
|
||||
auto& params = _hazeParametersBuffer.get<Parameters>();
|
||||
|
||||
|
@ -170,19 +182,11 @@ void Haze::setHazeBackgroundBlendValue(const float hazeBackgroundBlendValue) {
|
|||
}
|
||||
}
|
||||
|
||||
void Haze::setZoneOrientation(const glm::quat& zoneOrientation) {
|
||||
void Haze::setZoneTransform(const glm::mat4& zoneTransform) {
|
||||
auto& params = _hazeParametersBuffer.get<Parameters>();
|
||||
|
||||
glm::vec3 zoneDirection = zoneOrientation * glm::vec3(0.0f, 0.0f, -1.0f);
|
||||
if (params.zoneDirection == zoneDirection) {
|
||||
_hazeParametersBuffer.edit<Parameters>().zoneDirection = zoneDirection;
|
||||
if (params.zoneTransform == zoneTransform) {
|
||||
_hazeParametersBuffer.edit<Parameters>().zoneTransform = zoneTransform;
|
||||
}
|
||||
}
|
||||
|
||||
void Haze::setZonePosition(const glm::vec3& zonePosition) {
|
||||
auto& params = _hazeParametersBuffer.get<Parameters>();
|
||||
|
||||
if (params.zonePosition != zonePosition) {
|
||||
_hazeParametersBuffer.edit<Parameters>().zonePosition = zonePosition;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -75,6 +75,7 @@ namespace model {
|
|||
void setAltitudeBased(const bool isAltitudeBased);
|
||||
void setHazeAttenuateKeyLight(const bool isHazeAttenuateKeyLight);
|
||||
void setModulateColorActive(const bool isModulateColorActive);
|
||||
void setHazeEnableLightBlend(const bool isHazeEnableLightBlend);
|
||||
|
||||
void setHazeRangeFactor(const float hazeRange);
|
||||
void setHazeAltitudeFactor(const float hazeAltitude);
|
||||
|
@ -84,8 +85,7 @@ namespace model {
|
|||
|
||||
void setHazeBackgroundBlendValue(const float hazeBackgroundBlendValue);
|
||||
|
||||
void setZoneOrientation(const glm::quat& zoneOrientation);
|
||||
void setZonePosition(const glm::vec3& zonePosition);
|
||||
void setZoneTransform(const glm::mat4& zoneTransform);
|
||||
|
||||
UniformBufferView getHazeParametersBuffer() const { return _hazeParametersBuffer; }
|
||||
|
||||
|
@ -103,12 +103,12 @@ namespace model {
|
|||
int hazeMode{ 0 }; // bit 0 - set to activate haze attenuation of fragment color
|
||||
// bit 1 - set to add the effect of altitude to the haze attenuation
|
||||
// bit 2 - set to activate directional light attenuation mode
|
||||
// bit 3 - set to blend between blend-in and blend-out colours
|
||||
|
||||
glm::vec3 zoneDirection;
|
||||
glm::mat4 zoneTransform;
|
||||
|
||||
// Amount of background (skybox) to display, overriding the haze effect for the background
|
||||
float hazeBackgroundBlendValue{ initialHazeBackgroundBlendValue };
|
||||
glm::vec3 zonePosition;
|
||||
|
||||
// The haze attenuation exponents used by both fragment and directional light attenuation
|
||||
float hazeRangeFactor{ convertHazeRangeToHazeRangeFactor(initialHazeRange_m) };
|
||||
|
|
|
@ -192,6 +192,8 @@ public:
|
|||
xColor getHazeBlendInColor() { return _hazeBlendInColor; }
|
||||
void setHazeBlendOutColor(const xColor hazeBlendOutColor) { _hazeBlendOutColor = hazeBlendOutColor; }
|
||||
xColor getHazeBlendOutColor() const { return _hazeBlendOutColor; }
|
||||
void setHazeEnableLightBlend(bool hazeEnableLightBlend) { _hazeEnableLightBlend = hazeEnableLightBlend; }
|
||||
bool getHazeEnableLightBlend() const { return _hazeEnableLightBlend; }
|
||||
void setHazeLightBlendAngle(float hazeLightBlendAngle) { _hazeLightBlendAngle = hazeLightBlendAngle; }
|
||||
float getHazeLightBlendAngle() const { return _hazeLightBlendAngle; }
|
||||
|
||||
|
@ -218,6 +220,7 @@ protected:
|
|||
float _hazeRange;
|
||||
xColor _hazeBlendInColor;
|
||||
xColor _hazeBlendOutColor;
|
||||
bool _hazeEnableLightBlend;
|
||||
float _hazeLightBlendAngle;
|
||||
|
||||
float _hazeAltitude;
|
||||
|
|
|
@ -69,6 +69,10 @@ void HazeConfig::setModulateColorActive(const bool active) {
|
|||
isModulateColorActive = active;
|
||||
}
|
||||
|
||||
void HazeConfig::setHazeEnableLightBlend(const bool active) {
|
||||
isHazeEnableLightBlend = active;
|
||||
}
|
||||
|
||||
void HazeConfig::setHazeRange_m(const float value) {
|
||||
hazeRange_m = value;
|
||||
}
|
||||
|
@ -104,6 +108,7 @@ void MakeHaze::configure(const Config& config) {
|
|||
_haze->setAltitudeBased(config.isAltitudeBased);
|
||||
_haze->setHazeAttenuateKeyLight(config.isHazeAttenuateKeyLight);
|
||||
_haze->setModulateColorActive(config.isModulateColorActive);
|
||||
_haze->setHazeEnableLightBlend(config.isHazeEnableLightBlend);
|
||||
|
||||
_haze->setHazeRangeFactor(model::convertHazeRangeToHazeRangeFactor(config.hazeRange_m));
|
||||
_haze->setHazeAltitudeFactor(model::convertHazeAltitudeToHazeAltitudeFactor(config.hazeAltitude_m));
|
||||
|
|
|
@ -43,6 +43,7 @@ class MakeHazeConfig : public render::Job::Config {
|
|||
Q_PROPERTY(bool isAltitudeBased MEMBER isAltitudeBased WRITE setAltitudeBased NOTIFY dirty);
|
||||
Q_PROPERTY(bool isHazeAttenuateKeyLight MEMBER isHazeAttenuateKeyLight WRITE setHazeAttenuateKeyLight NOTIFY dirty);
|
||||
Q_PROPERTY(bool isModulateColorActive MEMBER isModulateColorActive WRITE setModulateColorActive NOTIFY dirty);
|
||||
Q_PROPERTY(bool isHazeEnableLightBlend MEMBER isHazeEnableLightBlend WRITE setHazeEnableLightBlend NOTIFY dirty);
|
||||
|
||||
Q_PROPERTY(float hazeRange_m MEMBER hazeRange_m WRITE setHazeRange_m NOTIFY dirty);
|
||||
Q_PROPERTY(float hazeAltitude_m MEMBER hazeAltitude_m WRITE setHazeAltitude_m NOTIFY dirty);
|
||||
|
@ -69,6 +70,7 @@ public:
|
|||
bool isAltitudeBased{ false };
|
||||
bool isHazeAttenuateKeyLight{ false };
|
||||
bool isModulateColorActive{ false };
|
||||
bool isHazeEnableLightBlend{ false };
|
||||
|
||||
float hazeRange_m{ model::initialHazeRange_m };
|
||||
float hazeAltitude_m{ model::initialHazeAltitude_m };
|
||||
|
@ -93,6 +95,7 @@ public slots:
|
|||
void setAltitudeBased(const bool active) { isAltitudeBased = active; emit dirty(); }
|
||||
void setHazeAttenuateKeyLight(const bool active) { isHazeAttenuateKeyLight = active; emit dirty(); }
|
||||
void setModulateColorActive(const bool active) { isModulateColorActive = active; emit dirty(); }
|
||||
void setHazeEnableLightBlend(const bool active) { isHazeEnableLightBlend = active; emit dirty(); }
|
||||
|
||||
void setHazeRange_m(const float value) { hazeRange_m = value; emit dirty(); }
|
||||
void setHazeAltitude_m(const float value) { hazeAltitude_m = value; emit dirty(); }
|
||||
|
@ -139,6 +142,7 @@ public:
|
|||
bool isAltitudeBased{ false };
|
||||
bool isHazeAttenuateKeyLight{ false };
|
||||
bool isModulateColorActive{ false };
|
||||
bool isHazeEnableLightBlend{ false };
|
||||
|
||||
float hazeRange_m{ model::initialHazeRange_m };
|
||||
float hazeAltitude_m{ model::initialHazeAltitude_m };
|
||||
|
@ -163,6 +167,7 @@ public:
|
|||
void setAltitudeBased(const bool active);
|
||||
void setHazeAttenuateKeyLight(const bool active);
|
||||
void setModulateColorActive(const bool active);
|
||||
void setHazeEnableLightBlend(const bool active);
|
||||
|
||||
void setHazeRange_m(const float value);
|
||||
void setHazeAltitude_m(const float value);
|
||||
|
|
|
@ -65,8 +65,14 @@ void main(void) {
|
|||
|
||||
vec4 directionalLightColor = vec4(hazeParams.directionalLightColor, 1.0);
|
||||
|
||||
vec4 blendedHazeColor =
|
||||
mix(hazeColor, directionalLightColor, power);
|
||||
// Use the haze colour for the belnd-out colour, if blend is not enabled
|
||||
vec4 blendedHazeColor;
|
||||
if ((hazeParams.hazeMode & HAZE_MODE_IS_ENABLE_LIGHT_BLEND) == HAZE_MODE_IS_ENABLE_LIGHT_BLEND) {
|
||||
blendedHazeColor = mix(hazeColor, directionalLightColor, power);
|
||||
}
|
||||
else {
|
||||
blendedHazeColor = hazeColor;
|
||||
}
|
||||
|
||||
vec4 potentialFragColor;
|
||||
|
||||
|
|
|
@ -14,6 +14,7 @@ const int HAZE_MODE_IS_ACTIVE = 1 << 0;
|
|||
const int HAZE_MODE_IS_ALTITUDE_BASED = 1 << 1;
|
||||
const int HAZE_MODE_IS_DIRECTIONAL_LIGHT_ATTENUATED = 1 << 2;
|
||||
const int HAZE_MODE_IS_MODULATE_COLOR = 1 << 3;
|
||||
const int HAZE_MODE_IS_ENABLE_LIGHT_BLEND = 1 << 4;
|
||||
|
||||
struct HazeParams {
|
||||
vec3 hazeColor;
|
||||
|
@ -25,11 +26,9 @@ struct HazeParams {
|
|||
vec3 colorModulationFactor;
|
||||
int hazeMode;
|
||||
|
||||
vec3 zoneDirection;
|
||||
mat4 zoneTransform;
|
||||
float backgroundBlendValue;
|
||||
|
||||
vec3 zonePosition;
|
||||
|
||||
float hazeRangeFactor;
|
||||
float hazeAltitudeFactor;
|
||||
|
||||
|
|
|
@ -30,6 +30,7 @@ void FetchHazeStage::configure(const Config& config) {
|
|||
_haze->setAltitudeBased(config.isAltitudeBased);
|
||||
_haze->setHazeAttenuateKeyLight(config.isHazeAttenuateKeyLight);
|
||||
_haze->setModulateColorActive(config.isModulateColorActive);
|
||||
_haze->setHazeEnableLightBlend(config.isHazeEnableLightBlend);
|
||||
|
||||
_haze->setHazeRangeFactor(model::convertHazeRangeToHazeRangeFactor(config.hazeRange_m));
|
||||
_haze->setHazeAltitudeFactor(model::convertHazeAltitudeToHazeAltitudeFactor(config.hazeAltitude_m));
|
||||
|
|
|
@ -97,6 +97,7 @@ class FetchHazeConfig : public render::Job::Config {
|
|||
Q_PROPERTY(bool isAltitudeBased MEMBER isAltitudeBased WRITE setAltitudeBased NOTIFY dirty);
|
||||
Q_PROPERTY(bool isHazeAttenuateKeyLight MEMBER isHazeAttenuateKeyLight WRITE setHazeAttenuateKeyLight NOTIFY dirty);
|
||||
Q_PROPERTY(bool isModulateColorActive MEMBER isModulateColorActive WRITE setModulateColorActive NOTIFY dirty);
|
||||
Q_PROPERTY(bool isHazeEnableLightBlend MEMBER isHazeEnableLightBlend WRITE setHazeEnableLightBlend NOTIFY dirty);
|
||||
|
||||
Q_PROPERTY(float hazeRange_m MEMBER hazeRange_m WRITE setHazeRange_m NOTIFY dirty);
|
||||
Q_PROPERTY(float hazeAltitude_m MEMBER hazeAltitude_m WRITE setHazeAltitude_m NOTIFY dirty);
|
||||
|
@ -123,6 +124,7 @@ public:
|
|||
bool isAltitudeBased{ false };
|
||||
bool isHazeAttenuateKeyLight{ false };
|
||||
bool isModulateColorActive{ false };
|
||||
bool isHazeEnableLightBlend{ false };
|
||||
|
||||
float hazeRange_m{ model::initialHazeRange_m };
|
||||
float hazeAltitude_m{ model::initialHazeAltitude_m };
|
||||
|
@ -147,6 +149,7 @@ public slots:
|
|||
void setAltitudeBased(const bool active) { isAltitudeBased = active; emit dirty(); }
|
||||
void setHazeAttenuateKeyLight(const bool active) { isHazeAttenuateKeyLight = active; emit dirty(); }
|
||||
void setModulateColorActive(const bool active) { isModulateColorActive = active; emit dirty(); }
|
||||
void setHazeEnableLightBlend(const bool active) { isHazeEnableLightBlend = active; emit dirty(); }
|
||||
|
||||
void setHazeRange_m(const float value) { hazeRange_m = value; emit dirty(); }
|
||||
void setHazeAltitude_m(const float value) { hazeAltitude_m = value; emit dirty(); }
|
||||
|
|
|
@ -148,7 +148,6 @@ void RenderDeferredTask::build(JobModel& task, const render::Varying& input, ren
|
|||
const auto lightClusters = task.addJob<LightClusteringPass>("LightClustering", lightClusteringPassInputs);
|
||||
|
||||
// Add haze model
|
||||
////const auto hazeModel = task.addJob<MakeHaze>("HazeModel");
|
||||
const auto hazeModel = task.addJob<FetchHazeStage>("HazeModel");
|
||||
|
||||
// DeferredBuffer is complete, now let's shade it into the LightingBuffer
|
||||
|
|
|
@ -167,6 +167,12 @@ void SceneScripting::Stage::setHazeBlendOutColor(const xColor hazeBlendOutColor)
|
|||
xColor SceneScripting::Stage::getHazeBlendOutColor() const {
|
||||
return _skyStage->getHazeBlendOutColor();
|
||||
}
|
||||
void SceneScripting::Stage::setHazeEnableLightBlend(const bool hazeEnableLightBlend) {
|
||||
_skyStage->setHazeEnableLightBlend(hazeEnableLightBlend);
|
||||
}
|
||||
bool SceneScripting::Stage::getHazeEnableLightBlend() const {
|
||||
return _skyStage->getHazeEnableLightBlend();
|
||||
}
|
||||
void SceneScripting::Stage::setHazeLightBlendAngle(const float hazeLightBlendAngle) {
|
||||
_skyStage->setHazeLightBlendAngle(hazeLightBlendAngle);
|
||||
}
|
||||
|
|
|
@ -128,12 +128,19 @@ namespace SceneScripting {
|
|||
Q_PROPERTY(float hazeRange READ getHazeRange WRITE setHazeRange)
|
||||
void setHazeRange(float value);
|
||||
float getHazeRange() const;
|
||||
|
||||
Q_PROPERTY(xColor hazeBlendInColor READ getHazeBlendInColor WRITE setHazeBlendInColor)
|
||||
void setHazeBlendInColor(xColor value);
|
||||
xColor getHazeBlendInColor() const;
|
||||
|
||||
Q_PROPERTY(xColor hazeBlendOutColor READ getHazeBlendOutColor WRITE setHazeBlendOutColor)
|
||||
void setHazeBlendOutColor(xColor value);
|
||||
xColor getHazeBlendOutColor() const;
|
||||
|
||||
Q_PROPERTY(bool hazeEnableLightBlend READ getHazeEnableLightBlend WRITE setHazeEnableLightBlend)
|
||||
void setHazeEnableLightBlend(bool value);
|
||||
bool getHazeEnableLightBlend() const;
|
||||
|
||||
Q_PROPERTY(float hazeLightBlendAngle READ getHazeLightBlendAngle WRITE setHazeLightBlendAngle)
|
||||
void setHazeLightBlendAngle(float value);
|
||||
float getHazeLightBlendAngle() const;
|
||||
|
@ -141,6 +148,7 @@ namespace SceneScripting {
|
|||
Q_PROPERTY(float hazeAltitude READ getHazeAltitude WRITE setHazeAltitude)
|
||||
void setHazeAltitude(float value);
|
||||
float getHazeAltitude() const;
|
||||
|
||||
Q_PROPERTY(float hazeBaseRef READ getHazeBaseRef WRITE setHazeBaseRef)
|
||||
void setHazeBaseRef(float value);
|
||||
float getHazeBaseRef() const;
|
||||
|
@ -149,12 +157,14 @@ namespace SceneScripting {
|
|||
void setHazeBackgroundBlend(float value);
|
||||
float getHazeBackgroundBlend() const;
|
||||
|
||||
Q_PROPERTY(float hazeAttenuateKeyLight READ getHazeAttenuateKeyLight WRITE setHazeAttenuateKeyLight)
|
||||
Q_PROPERTY(bool hazeAttenuateKeyLight READ getHazeAttenuateKeyLight WRITE setHazeAttenuateKeyLight)
|
||||
void setHazeAttenuateKeyLight(bool value);
|
||||
bool getHazeAttenuateKeyLight() const;
|
||||
|
||||
Q_PROPERTY(float hazeKeyLightRange READ getHazeKeyLightRange WRITE setHazeKeyLightRange)
|
||||
void setHazeKeyLightRange(float value);
|
||||
float getHazeKeyLightRange() const;
|
||||
|
||||
Q_PROPERTY(float hazeKeyLightAltitude READ getHazeKeyLightAltitude WRITE setHazeKeyLightAltitude)
|
||||
void setHazeKeyLightAltitude(float value);
|
||||
float getHazeKeyLightAltitude() const;
|
||||
|
|
|
@ -591,6 +591,10 @@
|
|||
</div>
|
||||
</fieldset>
|
||||
<fieldset class="zone-group zone-section haze-section property gen fstuple">
|
||||
<div class="zone-group zone-section haze-section property checkbox">
|
||||
<input type="checkbox" id="property-zone-haze-enable-light-blend">
|
||||
<label for="property-zone-haze-enable-keylight-blend">Enable Light Blend</label>
|
||||
</div>
|
||||
<div class="tuple">
|
||||
<div><label>Blend Angle<span class="unit">deg</span></label><input type="number" id="property-zone-haze-blend-angle" min="0" max="180" step="1"></div>
|
||||
</div>
|
||||
|
|
|
@ -668,11 +668,13 @@ function loaded() {
|
|||
var elZoneHazeBlendOutColorRed = document.getElementById("property-zone-haze-blend-out-color-red");
|
||||
var elZoneHazeBlendOutColorGreen = document.getElementById("property-zone-haze-blend-out-color-green");
|
||||
var elZoneHazeBlendOutColorBlue = document.getElementById("property-zone-haze-blend-out-color-blue");
|
||||
var elZoneHazeBackgroundBlend = document.getElementById("property-zone-haze-background-blend");
|
||||
var elZoneHazeEnableLightBlend = document.getElementById("property-zone-haze-enable-light-blend");
|
||||
var elZoneHazeLightBlendAngle = document.getElementById("property-zone-haze-blend-angle");
|
||||
|
||||
var elZoneHazeAltitude = document.getElementById("property-zone-haze-altitude");
|
||||
var elZoneHazeBaseRef = document.getElementById("property-zone-haze-altitude-base");
|
||||
|
||||
var elZoneHazeBackgroundBlend = document.getElementById("property-zone-haze-background-blend");
|
||||
|
||||
var elZoneHazeAttenuateKeyLight = document.getElementById("property-zone-haze-attenuate-keylight");
|
||||
var elZoneHazeKeyLightRange = document.getElementById("property-zone-haze-keylight-range");
|
||||
|
@ -1037,6 +1039,8 @@ function loaded() {
|
|||
elZoneHazeBlendOutColorRed.value = properties.haze.hazeBlendOutColor.red;
|
||||
elZoneHazeBlendOutColorGreen.value = properties.haze.hazeBlendOutColor.green;
|
||||
elZoneHazeBlendOutColorBlue.value = properties.haze.hazeBlendOutColor.blue;
|
||||
|
||||
elZoneHazeEnableLightBlend.checked = properties.haze.hazeEnableLightBlend;
|
||||
elZoneHazeLightBlendAngle.value = properties.haze.hazeLightBlendAngle.toFixed(0);
|
||||
|
||||
elZoneHazeAltitude.value = properties.haze.hazeAltitude.toFixed(0);
|
||||
|
@ -1495,6 +1499,8 @@ function loaded() {
|
|||
elZoneHazeBlendOutColorRed.addEventListener('change', zoneHazeBlendOutColorChangeFunction);
|
||||
elZoneHazeBlendOutColorGreen.addEventListener('change', zoneHazeBlendOutColorChangeFunction);
|
||||
elZoneHazeBlendOutColorBlue.addEventListener('change', zoneHazeBlendOutColorChangeFunction);
|
||||
|
||||
elZoneHazeEnableLightBlend.addEventListener('change', createEmitGroupCheckedPropertyUpdateFunction('haze', 'hazeEnableLightBlend'));
|
||||
elZoneHazeLightBlendAngle.addEventListener('change', createEmitGroupNumberPropertyUpdateFunction('haze', 'hazeLightBlendAngle'));
|
||||
|
||||
elZoneHazeAltitude.addEventListener('change', createEmitGroupNumberPropertyUpdateFunction('haze', 'hazeAltitude'));
|
||||
|
|
Loading…
Reference in a new issue