diff --git a/src/r_data/models/models_ue1.cpp b/src/r_data/models/models_ue1.cpp index d7394bd79a..7cf292d6be 100644 --- a/src/r_data/models/models_ue1.cpp +++ b/src/r_data/models/models_ue1.cpp @@ -98,9 +98,9 @@ void FUE1Model::LoadGeometry() { UE1Vertex Vert; // unpack position - Vert.Pos.X = unpackuvert(averts[j+i*numVerts],0); - Vert.Pos.Y = unpackuvert(averts[j+i*numVerts],1); - Vert.Pos.Z = unpackuvert(averts[j+i*numVerts],2); + Vert.Pos = FVector3(unpackuvert(averts[j+i*numVerts],0), + unpackuvert(averts[j+i*numVerts],1), + unpackuvert(averts[j+i*numVerts],2)); // push vertex (without normals, will be calculated later) verts.Push(Vert); } @@ -114,10 +114,7 @@ void FUE1Model::LoadGeometry() Poly.V[j] = dpolys[i].vertices[j]; // unpack coords for ( int j=0; j<3; j++ ) - { - Poly.C[j].S = dpolys[i].uv[j][0]/255.f; - Poly.C[j].T = dpolys[i].uv[j][1]/255.f; - } + Poly.C[j] = FVector2(dpolys[i].uv[j][0]/255.f,dpolys[i].uv[j][1]/255.f); Poly.texNum = dpolys[i].texnum; // push polys.Push(Poly); @@ -129,39 +126,22 @@ void FUE1Model::LoadGeometry() { for ( int j=0; j=0; l-- ) { UE1Vertex V = verts[polys[groups[j].P[k]].V[l]+i*numVerts]; - UE1Coord C = polys[groups[j].P[k]].C[l]; + FVector2 C = polys[groups[j].P[k]].C[l]; FModelVertex *vert = &vptr[vidx++]; - vert->Set(V.Pos.X,V.Pos.Y,V.Pos.Z,C.S,C.T); + vert->Set(V.Pos.X,V.Pos.Y,V.Pos.Z,C.X,C.Y); vert->SetNormal(V.Normal.X,V.Normal.Y,V.Normal.Z); } } diff --git a/src/r_data/models/models_ue1.h b/src/r_data/models/models_ue1.h index 91d5680470..dc6209fa29 100644 --- a/src/r_data/models/models_ue1.h +++ b/src/r_data/models/models_ue1.h @@ -56,22 +56,14 @@ private: uint32_t * averts; // converted data structures - struct UE1Coord - { - float S, T; - }; - struct UE1Vector - { - float X, Y, Z; - }; struct UE1Vertex { - UE1Vector Pos, Normal; + FVector3 Pos, Normal; }; struct UE1Poly { int V[3]; - UE1Coord C[3]; + FVector2 C[3]; int texNum; }; struct UE1Group