forked from Mirrorlandia_minetest/irrlicht
Avoid ambigious conversions when compiling with c++20
Yay, more ugly casts needed. git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6427 dfc29bdd-3216-0410-991c-e03cc46cb475
This commit is contained in:
parent
98df6eae77
commit
a7f9afd289
@ -25,7 +25,7 @@ enum E_VERTEX_TYPE
|
|||||||
EVT_2TCOORDS,
|
EVT_2TCOORDS,
|
||||||
|
|
||||||
//! Vertex with a tangent and binormal vector, video::S3DVertexTangents.
|
//! Vertex with a tangent and binormal vector, video::S3DVertexTangents.
|
||||||
/** Usually used for tangent space normal mapping.
|
/** Usually used for tangent space normal mapping.
|
||||||
Usually tangent and binormal get send to shaders as texture coordinate sets 1 and 2.
|
Usually tangent and binormal get send to shaders as texture coordinate sets 1 and 2.
|
||||||
*/
|
*/
|
||||||
EVT_TANGENTS
|
EVT_TANGENTS
|
||||||
@ -150,21 +150,21 @@ struct S3DVertex2TCoords : public S3DVertex
|
|||||||
//! Equality operator
|
//! Equality operator
|
||||||
bool operator==(const S3DVertex2TCoords& other) const
|
bool operator==(const S3DVertex2TCoords& other) const
|
||||||
{
|
{
|
||||||
return ((static_cast<S3DVertex>(*this)==other) &&
|
return ((static_cast<S3DVertex>(*this)==static_cast<const S3DVertex&>(other)) &&
|
||||||
(TCoords2 == other.TCoords2));
|
(TCoords2 == other.TCoords2));
|
||||||
}
|
}
|
||||||
|
|
||||||
//! Inequality operator
|
//! Inequality operator
|
||||||
bool operator!=(const S3DVertex2TCoords& other) const
|
bool operator!=(const S3DVertex2TCoords& other) const
|
||||||
{
|
{
|
||||||
return ((static_cast<S3DVertex>(*this)!=other) ||
|
return ((static_cast<S3DVertex>(*this)!=static_cast<const S3DVertex&>(other)) ||
|
||||||
(TCoords2 != other.TCoords2));
|
(TCoords2 != other.TCoords2));
|
||||||
}
|
}
|
||||||
|
|
||||||
bool operator<(const S3DVertex2TCoords& other) const
|
bool operator<(const S3DVertex2TCoords& other) const
|
||||||
{
|
{
|
||||||
return ((static_cast<S3DVertex>(*this) < other) ||
|
return ((static_cast<S3DVertex>(*this) < other) ||
|
||||||
((static_cast<S3DVertex>(*this) == other) && (TCoords2 < other.TCoords2)));
|
((static_cast<S3DVertex>(*this) == static_cast<const S3DVertex&>(other)) && (TCoords2 < other.TCoords2)));
|
||||||
}
|
}
|
||||||
|
|
||||||
static E_VERTEX_TYPE getType()
|
static E_VERTEX_TYPE getType()
|
||||||
@ -186,7 +186,7 @@ struct S3DVertex2TCoords : public S3DVertex
|
|||||||
|
|
||||||
|
|
||||||
//! Vertex with a tangent and binormal vector.
|
//! Vertex with a tangent and binormal vector.
|
||||||
/** Usually used for tangent space normal mapping.
|
/** Usually used for tangent space normal mapping.
|
||||||
Usually tangent and binormal get send to shaders as texture coordinate sets 1 and 2.
|
Usually tangent and binormal get send to shaders as texture coordinate sets 1 and 2.
|
||||||
*/
|
*/
|
||||||
struct S3DVertexTangents : public S3DVertex
|
struct S3DVertexTangents : public S3DVertex
|
||||||
@ -225,14 +225,14 @@ struct S3DVertexTangents : public S3DVertex
|
|||||||
|
|
||||||
bool operator==(const S3DVertexTangents& other) const
|
bool operator==(const S3DVertexTangents& other) const
|
||||||
{
|
{
|
||||||
return ((static_cast<S3DVertex>(*this)==other) &&
|
return ((static_cast<S3DVertex>(*this)==static_cast<const S3DVertex&>(other)) &&
|
||||||
(Tangent == other.Tangent) &&
|
(Tangent == other.Tangent) &&
|
||||||
(Binormal == other.Binormal));
|
(Binormal == other.Binormal));
|
||||||
}
|
}
|
||||||
|
|
||||||
bool operator!=(const S3DVertexTangents& other) const
|
bool operator!=(const S3DVertexTangents& other) const
|
||||||
{
|
{
|
||||||
return ((static_cast<S3DVertex>(*this)!=other) ||
|
return ((static_cast<S3DVertex>(*this)!=static_cast<const S3DVertex&>(other)) ||
|
||||||
(Tangent != other.Tangent) ||
|
(Tangent != other.Tangent) ||
|
||||||
(Binormal != other.Binormal));
|
(Binormal != other.Binormal));
|
||||||
}
|
}
|
||||||
@ -240,8 +240,8 @@ struct S3DVertexTangents : public S3DVertex
|
|||||||
bool operator<(const S3DVertexTangents& other) const
|
bool operator<(const S3DVertexTangents& other) const
|
||||||
{
|
{
|
||||||
return ((static_cast<S3DVertex>(*this) < other) ||
|
return ((static_cast<S3DVertex>(*this) < other) ||
|
||||||
((static_cast<S3DVertex>(*this) == other) && (Tangent < other.Tangent)) ||
|
((static_cast<S3DVertex>(*this) == static_cast<const S3DVertex&>(other)) && (Tangent < other.Tangent)) ||
|
||||||
((static_cast<S3DVertex>(*this) == other) && (Tangent == other.Tangent) && (Binormal < other.Binormal)));
|
((static_cast<S3DVertex>(*this) == static_cast<const S3DVertex&>(other)) && (Tangent == other.Tangent) && (Binormal < other.Binormal)));
|
||||||
}
|
}
|
||||||
|
|
||||||
static E_VERTEX_TYPE getType()
|
static E_VERTEX_TYPE getType()
|
||||||
|
Loading…
Reference in New Issue
Block a user