Merge pull request #5391 from RandomShaper/parallax-layer-fix-tidy

Improve parallax mirroring algorithm
This commit is contained in:
Rémi Verschelde 2016-06-24 21:26:54 +02:00 committed by GitHub
commit 22c9a44174

View File

@ -92,23 +92,13 @@ void ParallaxLayer::set_base_offset_and_scale(const Point2& p_offset,float p_sca
Point2 new_ofs = ((orig_offset+p_offset)*motion_scale)*p_scale;
if (mirroring.x) {
while( new_ofs.x>=0) {
new_ofs.x -= mirroring.x*p_scale;
}
while(new_ofs.x < -mirroring.x*p_scale) {
new_ofs.x += mirroring.x*p_scale;
}
double den = mirroring.x*p_scale;
new_ofs.x = fmod(new_ofs.x,den) - (mirroring.x > 0 ? den : 0);
}
if (mirroring.y) {
while( new_ofs.y>=0) {
new_ofs.y -= mirroring.y*p_scale;
}
while(new_ofs.y < -mirroring.y*p_scale) {
new_ofs.y += mirroring.y*p_scale;
}
double den = mirroring.y*p_scale;
new_ofs.y = fmod(new_ofs.y,den) - (mirroring.y > 0 ? den : 0);
}