From f77ae3aaf5edf92bc08134cf0db6495bf0b59c1c Mon Sep 17 00:00:00 2001 From: cutealien Date: Mon, 25 Apr 2022 14:24:43 +0000 Subject: [PATCH] S3DVertex initialize color always. It's derived classes now both accept const S3DVertex& constructor. color intitialization has some cost, but we initialized all other values already (vectors are always set to 0). Don't think it's a good idea to have one value around which is random. S3DVertex2TCoords(S3DVertex& o) to S3DVertex2TCoords(const S3DVertex& o) simply because it makes more sense S3DVertexTangents(const S3DVertex& o) added because I'll need it later (and no idea why only S3DVertex2TCoords got one of those before). git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@6359 dfc29bdd-3216-0410-991c-e03cc46cb475 --- include/S3DVertex.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/include/S3DVertex.h b/include/S3DVertex.h index 0b48ee96..ddb40f18 100644 --- a/include/S3DVertex.h +++ b/include/S3DVertex.h @@ -44,7 +44,7 @@ const char* const sBuiltInVertexTypeNames[] = struct S3DVertex { //! default constructor - S3DVertex() {} + S3DVertex() : Color(0xffffffff) {} //! constructor S3DVertex(f32 x, f32 y, f32 z, f32 nx, f32 ny, f32 nz, SColor c, f32 tu, f32 tv) @@ -142,7 +142,7 @@ struct S3DVertex2TCoords : public S3DVertex : S3DVertex(pos, normal, color, tcoords), TCoords2(tcoords) {} //! constructor from S3DVertex - S3DVertex2TCoords(S3DVertex& o) : S3DVertex(o) {} + S3DVertex2TCoords(const S3DVertex& o) : S3DVertex(o) {} //! Second set of texture coordinates core::vector2d TCoords2; @@ -214,6 +214,9 @@ struct S3DVertexTangents : public S3DVertex const core::vector3df& binormal=core::vector3df()) : S3DVertex(pos, normal, c, tcoords), Tangent(tangent), Binormal(binormal) { } + //! constructor from S3DVertex + S3DVertexTangents(const S3DVertex& o) : S3DVertex(o) {} + //! Tangent vector along the x-axis of the texture core::vector3df Tangent;