diff --git a/src/celengine/render.cpp b/src/celengine/render.cpp index f5cdcedd6b..01d161a05c 100644 --- a/src/celengine/render.cpp +++ b/src/celengine/render.cpp @@ -2968,12 +2968,15 @@ void Renderer::renderPlanet(Body& body, if (body.isVisibleAsPoint()) { - renderObjectAsPoint(pos, - body.getRadius(), - appMag, - discSizeInPixels, - body.getSurface().color, - false, false, m); + if (float maxCoeff = body.getSurface().color.toVector3().maxCoeff(); maxCoeff > 0.0f) // ignore [ 0 0 0 ]; used by old addons to make objects not get rendered as point + { + renderObjectAsPoint(pos, + body.getRadius(), + appMag, + discSizeInPixels, + body.getSurface().color * (1.0f / maxCoeff), // normalize point color; 'darkness' is handled by size of point determined by GeomAlbedo. + false, false, m); + } } }