diff options
| author | Graham Madarasz <graham@lindenlab.com> | 2013-05-20 17:35:16 -0700 | 
|---|---|---|
| committer | Graham Madarasz <graham@lindenlab.com> | 2013-05-20 17:35:16 -0700 | 
| commit | 756c3d30eee4700c3edb1cb55c03bf5f51d648a7 (patch) | |
| tree | 92163c1c7c8e2d0273f4a25fd91964713dedfca0 /indra | |
| parent | c7a9a2fcc130117778fb2f10a91dcd1ab16d0804 (diff) | |
NORSPEC-191 make alpha masked rigged faces appear with deferred rendering on and off
Diffstat (limited to 'indra')
| -rwxr-xr-x | indra/newview/llvovolume.cpp | 9 | 
1 files changed, 8 insertions, 1 deletions
| diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp index 0a25a57f1b..caf4fe9383 100755 --- a/indra/newview/llvovolume.cpp +++ b/indra/newview/llvovolume.cpp @@ -4531,7 +4531,7 @@ void LLVolumeGeometryManager::rebuildGeom(LLSpatialGroup* group)  							pool->addRiggedFace(facep, LLDrawPoolAvatar::RIGGED_GLOW);  						} -						LLMaterial* mat = LLPipeline::sRenderDeferred ? te->getMaterialParams().get() : NULL; +						LLMaterial* mat = te->getMaterialParams().get();  						if (mat)  						{ @@ -4550,6 +4550,13 @@ void LLVolumeGeometryManager::rebuildGeom(LLSpatialGroup* group)  									pool->addRiggedFace(facep, LLDrawPoolAvatar::RIGGED_FULLBRIGHT);  								}  							} +							else if (mat->getDiffuseAlphaMode() == LLMaterial::DIFFUSE_ALPHA_MODE_MASK) +							{ +								// This feels unclean, but is the only way to get alpha masked rigged stuff to show up +								// with masking correctly in both deferred and non-deferred paths. NORSPEC-191 +								// +								pool->addRiggedFace(facep, LLPipeline::sRenderDeferred ? LLDrawPoolAvatar::RIGGED_MATERIAL_ALPHA_MASK : LLDrawPoolAvatar::RIGGED_ALPHA); +							}  							else  							{  								U32 mask = mat->getShaderMask(); | 
