Added LLFace::canRenderAsMask()
Added LLVOVolume::isVisible() Avatar VBO now uses stream type under all scenarios. Todo: Perf test. Added other misc render-related tweaks that looked safe.
This commit is contained in:
@@ -693,6 +693,8 @@ void LLDrawable::updateDistance(LLCamera& camera, bool force_update)
|
||||
pos += volume->getRegion()->getOriginAgent();
|
||||
}
|
||||
|
||||
if (isState(LLDrawable::HAS_ALPHA))
|
||||
{
|
||||
for (S32 i = 0; i < getNumFaces(); i++)
|
||||
{
|
||||
LLFace* facep = getFace(i);
|
||||
@@ -708,6 +710,7 @@ void LLDrawable::updateDistance(LLCamera& camera, bool force_update)
|
||||
facep->mDistance = v * camera.getAtAxis();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -1239,7 +1242,9 @@ void LLSpatialBridge::setVisible(LLCamera& camera_in, std::vector<LLDrawable*>*
|
||||
(camera_in.AABBInFrustumNoFarClip(center, size) &&
|
||||
AABBSphereIntersect(mExtents[0], mExtents[1], camera_in.getOrigin(), camera_in.mFrustumCornerDist)))
|
||||
{
|
||||
if (!LLPipeline::sImpostorRender && LLPipeline::calcPixelArea(center, size, camera_in) < FORCE_INVISIBLE_AREA)
|
||||
if (!LLPipeline::sImpostorRender &&
|
||||
!LLPipeline::sShadowRender &&
|
||||
LLPipeline::calcPixelArea(center, size, camera_in) < FORCE_INVISIBLE_AREA)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user