-----------------------------------------------------------------------
| 1473 | } |
| 1474 | //----------------------------------------------------------------------- |
| 1475 | bool SceneManager::validateRenderableForRendering(const Pass* pass, const Renderable* rend) |
| 1476 | { |
| 1477 | // Skip this renderable if we're doing modulative texture shadows, it casts shadows |
| 1478 | // and we're doing the render receivers pass and we're not self-shadowing |
| 1479 | // also if pass number > 0 |
| 1480 | if (mCurrentViewport->getShadowsEnabled() && isShadowTechniqueTextureBased()) |
| 1481 | { |
| 1482 | if (mIlluminationStage == IRS_RENDER_RECEIVER_PASS && |
| 1483 | rend->getCastsShadows() && !mTextureShadowRenderer.mShadowTextureSelfShadow) |
| 1484 | { |
| 1485 | return false; |
| 1486 | } |
| 1487 | // Some duplication here with validatePassForRendering, for transparents |
| 1488 | if (((isShadowTechniqueModulative() && mIlluminationStage == IRS_RENDER_RECEIVER_PASS) || |
| 1489 | mIlluminationStage == IRS_RENDER_TO_TEXTURE) && |
| 1490 | pass->getIndex() > 0) |
| 1491 | { |
| 1492 | return false; |
| 1493 | } |
| 1494 | } |
| 1495 | |
| 1496 | return true; |
| 1497 | |
| 1498 | } |
| 1499 | //----------------------------------------------------------------------- |
| 1500 | void SceneManager::_renderQueueGroupObjects(RenderQueueGroup* pGroup, |
| 1501 | QueuedRenderableCollection::OrganisationMode om) |
no test coverage detected