Fix texture mirroring on alpha blend/test shaders. See #2167
This commit is contained in:
parent
9d1b115e59
commit
8c0fe53ff2
@ -740,6 +740,26 @@ void Material::setMaterialProperties(video::SMaterial *m, scene::IMeshBuffer* m
|
|||||||
m->setTexture(7, colorization_mask_tex);
|
m->setTexture(7, colorization_mask_tex);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (race_manager->getReverseTrack() &&
|
||||||
|
m_mirror_axis_when_reverse != ' ')
|
||||||
|
{
|
||||||
|
if (m_mirrorred_mesh_buffers.find((void*)mb) == m_mirrorred_mesh_buffers.end())
|
||||||
|
{
|
||||||
|
m_mirrorred_mesh_buffers[(void*)mb] = true;
|
||||||
|
//irr::video::S3DVertex* mbVertices = (video::S3DVertex*)mb->getVertices();
|
||||||
|
for (unsigned int i = 0; i < mb->getVertexCount(); i++)
|
||||||
|
{
|
||||||
|
core::vector2df &tc = mb->getTCoords(i);
|
||||||
|
if (m_mirror_axis_when_reverse == 'V')
|
||||||
|
tc.Y = 1 - tc.Y;
|
||||||
|
else
|
||||||
|
tc.X = 1 - tc.X;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} // reverse track and texture needs mirroring
|
||||||
|
|
||||||
|
|
||||||
switch (m_shader_type)
|
switch (m_shader_type)
|
||||||
{
|
{
|
||||||
case SHADERTYPE_SOLID_UNLIT:
|
case SHADERTYPE_SOLID_UNLIT:
|
||||||
@ -986,25 +1006,6 @@ void Material::setMaterialProperties(video::SMaterial *m, scene::IMeshBuffer* m
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
if (race_manager->getReverseTrack() &&
|
|
||||||
m_mirror_axis_when_reverse != ' ')
|
|
||||||
{
|
|
||||||
if (m_mirrorred_mesh_buffers.find((void*)mb) == m_mirrorred_mesh_buffers.end())
|
|
||||||
{
|
|
||||||
m_mirrorred_mesh_buffers[(void*)mb] = true;
|
|
||||||
//irr::video::S3DVertex* mbVertices = (video::S3DVertex*)mb->getVertices();
|
|
||||||
for (unsigned int i = 0; i < mb->getVertexCount(); i++)
|
|
||||||
{
|
|
||||||
core::vector2df &tc = mb->getTCoords(i);
|
|
||||||
if (m_mirror_axis_when_reverse == 'V')
|
|
||||||
tc.Y = 1 - tc.Y;
|
|
||||||
else
|
|
||||||
tc.X = 1 - tc.X;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} // reverse track and texture needs mirroring
|
|
||||||
|
|
||||||
} // setMaterialProperties
|
} // setMaterialProperties
|
||||||
|
|
||||||
//-----------------------------------------------------------------------------
|
//-----------------------------------------------------------------------------
|
||||||
|
Loading…
x
Reference in New Issue
Block a user