From cbc04ba83b6cb617d3cdbc26c046d110fdcf3c2a Mon Sep 17 00:00:00 2001 From: elexis Date: Thu, 12 Sep 2019 19:30:43 +0000 Subject: [PATCH] Use all three color channels when loading heightmaps following 204b04f2d4, refs #5018. Removes wrong debug leftover line from 204b04f2d4 and unneeded clamp from c9abf6f68c. Differential Revision: https://code.wildfiregames.com/D1816 Patch By: Angen Comments By: Vladislav This was SVN commit r22892. --- source/graphics/MapIO.cpp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/source/graphics/MapIO.cpp b/source/graphics/MapIO.cpp index 32c58c02d9..26bff06db0 100644 --- a/source/graphics/MapIO.cpp +++ b/source/graphics/MapIO.cpp @@ -1,4 +1,4 @@ -/* Copyright (C) 2018 Wildfire Games. +/* Copyright (C) 2019 Wildfire Games. * This file is part of 0 A.D. * * 0 A.D. is free software: you can redistribute it and/or modify @@ -85,11 +85,10 @@ Status ParseHeightmapImage(const shared_ptr& fileData, size_t fileSize, std: // Repeat the last pixel of the image for the last vertex of the heightmap int offset = std::min(y, tileSize - 1) * mapLineSkip + std::min(x, tileSize - 1) * bytesPP; - // Pick color channel with highest value - u16 value = std::max({mapdata[offset], mapdata[offset + bytesPP], mapdata[offset + bytesPP * 2]}); - value = mapdata[offset]; - - heightmap[(tileSize - y) * (tileSize + 1) + x] = clamp(value * 256, 0, 65535); + heightmap[(tileSize - y) * (tileSize + 1) + x] = static_cast(256) * std::max({ + mapdata[offset], + mapdata[offset + bytesPP], + mapdata[offset + bytesPP * 2]}); } return INFO::OK;