From 53fcbc111b6bbf83e54c96f9eb95c81f0a265440 Mon Sep 17 00:00:00 2001 From: danij Date: Sat, 7 Sep 2013 17:42:23 +0100 Subject: [PATCH] Map Renderer|Client: Adjusted minimum mobj lumobj radius; cleanup --- doomsday/client/src/render/projector.cpp | 13 +++++-------- doomsday/client/src/render/rend_shadow.cpp | 7 +++---- doomsday/client/src/world/p_mobj.cpp | 3 +-- 3 files changed, 9 insertions(+), 14 deletions(-) diff --git a/doomsday/client/src/render/projector.cpp b/doomsday/client/src/render/projector.cpp index c903cb38f7..c85d73301f 100644 --- a/doomsday/client/src/render/projector.cpp +++ b/doomsday/client/src/render/projector.cpp @@ -261,8 +261,8 @@ struct project_params_t /** * Project the given lumobj onto the surface. * - * @param lum Lumobj representing the light being projected. - * @param parm project_params_t parameters. + * @param lum Lumobj representing the light being projected. + * @param parm project_params_t parameters. */ static void projectLumobj(Lumobj &lum, project_params_t &parm) { @@ -422,13 +422,10 @@ void Rend_ProjectPlaneGlows(BspLeaf *bspLeaf, Vector3d const &topLeft, } /** - * Project a mobj shadow onto the surface. If valid and the surface is - * contacted a new projection node will constructed and returned. - * - * @param mobj Mobj for which a shadow may be projected. - * @param parameters ProjectShadowToSurfaceIterator paramaters. + * Project a shadow for the given mobj onto the surface. * - * @return @c 0 = continue iteration. + * @param mobj Mobj to project a shadow for. + * @param parm project_params_t parameters. */ static void projectMobjShadow(mobj_t &mobj, project_params_t &parm) { diff --git a/doomsday/client/src/render/rend_shadow.cpp b/doomsday/client/src/render/rend_shadow.cpp index b034ee4141..d7a82ab385 100644 --- a/doomsday/client/src/render/rend_shadow.cpp +++ b/doomsday/client/src/render/rend_shadow.cpp @@ -294,10 +294,9 @@ static void drawShadow(TexProjection const &tp, rendershadowprojectionparams_t & R_FreeRendColors(rcolors); } -static int drawShadowWorker(TexProjection const *tp, void *parameters) +static int drawShadowWorker(TexProjection const *tp, void *context) { - rendershadowprojectionparams_t *p = (rendershadowprojectionparams_t *)parameters; - drawShadow(*tp, *p); + drawShadow(*tp, *static_cast(context)); return 0; // Continue iteration. } @@ -309,5 +308,5 @@ void Rend_RenderShadowProjections(uint listIdx, rendershadowprojectionparams_t & GL_CLAMP_TO_EDGE, GL_CLAMP_TO_EDGE); // Write shadows to the render lists. - Rend_IterateProjectionList(listIdx, drawShadowWorker, (void *)&p); + Rend_IterateProjectionList(listIdx, drawShadowWorker, &p); } diff --git a/doomsday/client/src/world/p_mobj.cpp b/doomsday/client/src/world/p_mobj.cpp index 6bb5c41507..2439707870 100644 --- a/doomsday/client/src/world/p_mobj.cpp +++ b/doomsday/client/src/world/p_mobj.cpp @@ -278,7 +278,6 @@ DENG_EXTERN_C void Mobj_OriginSmoothed(mobj_t *mo, coord_t origin[3]) static modeldef_t *currentModelDefForMobj(mobj_t *mo) { - // If models are being used, use the model's radius. if(useModels) { modeldef_t *mf = 0, *nextmf = 0; @@ -380,7 +379,7 @@ void Mobj_GenerateLumobjs(mobj_t *mo) { if(!de::fequal(def->size, 0)) { - lum->setRadius(de::max(def->size, 32.f)); + lum->setRadius(de::max(def->size, 32.f / (40 * lum->radiusFactor()))); } if(!de::fequal(def->offset[1], 0))