mirror of
https://github.com/overte-org/overte.git
synced 2025-04-26 01:36:20 +02:00
Merge pull request #13775 from SamGondelman/shadows
Don't bind materials during shadow pass
This commit is contained in:
commit
da71572d2c
3 changed files with 19 additions and 10 deletions
|
@ -112,11 +112,14 @@ void MaterialEntityRenderer::doRender(RenderArgs* args) {
|
||||||
}
|
}
|
||||||
|
|
||||||
batch.setModelTransform(renderTransform);
|
batch.setModelTransform(renderTransform);
|
||||||
drawMaterial->setTextureTransforms(textureTransform);
|
|
||||||
|
|
||||||
// bind the material
|
if (args->_renderMode != render::Args::RenderMode::SHADOW_RENDER_MODE) {
|
||||||
RenderPipelines::bindMaterial(drawMaterial, batch, args->_enableTexturing);
|
drawMaterial->setTextureTransforms(textureTransform);
|
||||||
args->_details._materialSwitches++;
|
|
||||||
|
// bind the material
|
||||||
|
RenderPipelines::bindMaterial(drawMaterial, batch, args->_enableTexturing);
|
||||||
|
args->_details._materialSwitches++;
|
||||||
|
}
|
||||||
|
|
||||||
// Draw!
|
// Draw!
|
||||||
DependencyManager::get<GeometryCache>()->renderSphere(batch);
|
DependencyManager::get<GeometryCache>()->renderSphere(batch);
|
||||||
|
|
|
@ -268,8 +268,10 @@ void ShapeEntityRenderer::doRender(RenderArgs* args) {
|
||||||
geometryCache->renderSolidShapeInstance(args, batch, geometryShape, outColor, pipeline);
|
geometryCache->renderSolidShapeInstance(args, batch, geometryShape, outColor, pipeline);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
RenderPipelines::bindMaterial(mat, batch, args->_enableTexturing);
|
if (args->_renderMode != render::Args::RenderMode::SHADOW_RENDER_MODE) {
|
||||||
args->_details._materialSwitches++;
|
RenderPipelines::bindMaterial(mat, batch, args->_enableTexturing);
|
||||||
|
args->_details._materialSwitches++;
|
||||||
|
}
|
||||||
|
|
||||||
geometryCache->renderShape(batch, geometryShape);
|
geometryCache->renderShape(batch, geometryShape);
|
||||||
}
|
}
|
||||||
|
|
|
@ -157,8 +157,10 @@ void MeshPartPayload::render(RenderArgs* args) {
|
||||||
bindMesh(batch);
|
bindMesh(batch);
|
||||||
|
|
||||||
// apply material properties
|
// apply material properties
|
||||||
RenderPipelines::bindMaterial(!_drawMaterials.empty() ? _drawMaterials.top().material : DEFAULT_MATERIAL, batch, args->_enableTexturing);
|
if (args->_renderMode != render::Args::RenderMode::SHADOW_RENDER_MODE) {
|
||||||
args->_details._materialSwitches++;
|
RenderPipelines::bindMaterial(!_drawMaterials.empty() ? _drawMaterials.top().material : DEFAULT_MATERIAL, batch, args->_enableTexturing);
|
||||||
|
args->_details._materialSwitches++;
|
||||||
|
}
|
||||||
|
|
||||||
// Draw!
|
// Draw!
|
||||||
{
|
{
|
||||||
|
@ -417,8 +419,10 @@ void ModelMeshPartPayload::render(RenderArgs* args) {
|
||||||
bindMesh(batch);
|
bindMesh(batch);
|
||||||
|
|
||||||
// apply material properties
|
// apply material properties
|
||||||
RenderPipelines::bindMaterial(!_drawMaterials.empty() ? _drawMaterials.top().material : DEFAULT_MATERIAL, batch, args->_enableTexturing);
|
if (args->_renderMode != render::Args::RenderMode::SHADOW_RENDER_MODE) {
|
||||||
args->_details._materialSwitches++;
|
RenderPipelines::bindMaterial(!_drawMaterials.empty() ? _drawMaterials.top().material : DEFAULT_MATERIAL, batch, args->_enableTexturing);
|
||||||
|
args->_details._materialSwitches++;
|
||||||
|
}
|
||||||
|
|
||||||
// Draw!
|
// Draw!
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue