File tree Expand file tree Collapse file tree 1 file changed +17
-1
lines changed Expand file tree Collapse file tree 1 file changed +17
-1
lines changed Original file line number Diff line number Diff line change @@ -5862,7 +5862,23 @@ void LLVolumeGeometryManager::rebuildGeom(LLSpatialGroup* group)
5862
5862
{
5863
5863
if (gltf_mat != nullptr )
5864
5864
{
5865
- add_face (sPbrFaces , pbr_count, facep);
5865
+ // In theory, we should never actually get here with alpha blending.
5866
+ // How this is supposed to work is we check if the surface is alpha blended, and we assign it to the
5867
+ // alpha draw pool. For rigged meshes, this apparently may not happen consistently. For now, just
5868
+ // discard it here if the alpha is 0 (fully transparent) to achieve parity with blinn-phong materials in
5869
+ // function.
5870
+ bool should_render = true ;
5871
+ if (gltf_mat->mAlphaMode == LLGLTFMaterial::ALPHA_MODE_BLEND)
5872
+ {
5873
+ if (gltf_mat->mBaseColor .mV [3 ] == 0 .0f )
5874
+ {
5875
+ should_render = false ;
5876
+ }
5877
+ }
5878
+ if (should_render)
5879
+ {
5880
+ add_face (sPbrFaces , pbr_count, facep);
5881
+ }
5866
5882
}
5867
5883
else
5868
5884
{
You can’t perform that action at this time.
0 commit comments