diff options
Diffstat (limited to 'model.cpp')
-rw-r--r-- | model.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -165,6 +165,7 @@ void Model::render( cbuffers[i].view_projection = view_projection; cbuffers[i].model = transform * meshes[i].world; } + bool depth_only = !pass.colour_count; dev->unmap_buffer(mvp); for (i = 0; i < c; i++) { Mesh& mesh = meshes[i]; @@ -187,7 +188,10 @@ void Model::render( draw.first_vertex = mesh.offset; draw.vertex_offset = mesh.vbo_offset; pb.begin(); - pb.depth(true, true, Depth_Mode::less); + if (depth_only) + pb.depth(true, true, Depth_Mode::less); + else + pb.depth(true, false, Depth_Mode::equal); pb.shader(mesh.shader); pb.cbuffer( mesh.mvp_binding, |