aboutsummaryrefslogtreecommitdiff
path: root/engines/bladerunner/set_effects.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/bladerunner/set_effects.cpp')
-rw-r--r--engines/bladerunner/set_effects.cpp40
1 files changed, 22 insertions, 18 deletions
diff --git a/engines/bladerunner/set_effects.cpp b/engines/bladerunner/set_effects.cpp
index c4038f6726..5c7b2487a8 100644
--- a/engines/bladerunner/set_effects.cpp
+++ b/engines/bladerunner/set_effects.cpp
@@ -37,7 +37,7 @@ SetEffects::SetEffects(BladeRunnerEngine *vm) {
_fadeColor.b = 0.0f;
_fadeDensity = 0.0f;
- _fogsCount = 0;
+ _fogCount = 0;
_fogs = nullptr;
}
@@ -45,15 +45,15 @@ SetEffects::~SetEffects() {
reset();
}
-void SetEffects::read(Common::ReadStream *stream, int framesCount) {
+void SetEffects::read(Common::ReadStream *stream, int frameCount) {
_distanceCoeficient = stream->readFloatLE();
_distanceColor.r = stream->readFloatLE();
_distanceColor.g = stream->readFloatLE();
_distanceColor.b = stream->readFloatLE();
- _fogsCount = stream->readUint32LE();
+ _fogCount = stream->readUint32LE();
int i;
- for (i = 0; i < _fogsCount; i++) {
+ for (i = 0; i < _fogCount; i++) {
int type = stream->readUint32LE();
Fog *fog = nullptr;
switch (type) {
@@ -70,7 +70,7 @@ void SetEffects::read(Common::ReadStream *stream, int framesCount) {
if (!fog) {
//TODO exception, unknown fog type
} else {
- fog->read(stream, framesCount);
+ fog->read(stream, frameCount);
fog->_next = _fogs;
_fogs = fog;
}
@@ -80,13 +80,14 @@ void SetEffects::read(Common::ReadStream *stream, int framesCount) {
void SetEffects::reset() {
Fog *nextFog;
- if (!_fogs)
+ if (!_fogs) {
return;
+ }
do {
nextFog = _fogs->_next;
- delete this->_fogs;
- this->_fogs = nextFog;
+ delete _fogs;
+ _fogs = nextFog;
} while (nextFog);
}
@@ -105,8 +106,9 @@ void SetEffects::setFadeDensity(float density) {
void SetEffects::setFogColor(const char *fogName, float r, float g, float b) {
Fog *fog = findFog(fogName);
- if (fog == nullptr)
+ if (fog == nullptr) {
return;
+ }
fog->_fogColor.r = r;
fog->_fogColor.g = g;
@@ -115,13 +117,14 @@ void SetEffects::setFogColor(const char *fogName, float r, float g, float b) {
void SetEffects::setFogDensity(const char *fogName, float density) {
Fog *fog = findFog(fogName);
- if (fog == nullptr)
+ if (fog == nullptr) {
return;
+ }
fog->_fogDensity = density;
}
-void SetEffects::calculateColor(Vector3 viewPosition, Vector3 position, float *outCoeficient, Color *outColor) {
+void SetEffects::calculateColor(Vector3 viewPosition, Vector3 position, float *outCoeficient, Color *outColor) const {
float distanceCoeficient = CLIP((position - viewPosition).length() * _distanceCoeficient, 0.0f, 1.0f);
*outCoeficient = 1.0f - distanceCoeficient;
@@ -129,7 +132,7 @@ void SetEffects::calculateColor(Vector3 viewPosition, Vector3 position, float *o
outColor->g = _distanceColor.g * distanceCoeficient;
outColor->b = _distanceColor.b * distanceCoeficient;
- for (Fog *fog = this->_fogs; fog != nullptr; fog = fog->_next) {
+ for (Fog *fog = _fogs; fog != nullptr; fog = fog->_next) {
float fogCoeficient = 0.0f;
fog->calculateCoeficient(position, viewPosition, &fogCoeficient);
if (fogCoeficient > 0.0f) {
@@ -142,15 +145,16 @@ void SetEffects::calculateColor(Vector3 viewPosition, Vector3 position, float *o
}
}
- *outCoeficient = *outCoeficient * (1.0f - this->_fadeDensity);
- outColor->r = outColor->r * (1.0f - this->_fadeDensity) + this->_fadeColor.r * this->_fadeDensity;
- outColor->g = outColor->g * (1.0f - this->_fadeDensity) + this->_fadeColor.g * this->_fadeDensity;
- outColor->b = outColor->b * (1.0f - this->_fadeDensity) + this->_fadeColor.b * this->_fadeDensity;
+ *outCoeficient = *outCoeficient * (1.0f - _fadeDensity);
+ outColor->r = outColor->r * (1.0f - _fadeDensity) + _fadeColor.r * _fadeDensity;
+ outColor->g = outColor->g * (1.0f - _fadeDensity) + _fadeColor.g * _fadeDensity;
+ outColor->b = outColor->b * (1.0f - _fadeDensity) + _fadeColor.b * _fadeDensity;
}
-Fog *SetEffects::findFog(const char *fogName) {
- if (!_fogs)
+Fog *SetEffects::findFog(const char *fogName) const {
+ if (!_fogs) {
return nullptr;
+ }
Fog *fog = _fogs;