Skip to content

Commit ba40318

Browse files
committed
test
1 parent a78868b commit ba40318

1 file changed

Lines changed: 41 additions & 40 deletions

File tree

src/engine/renderer/tr_bsp.cpp

Lines changed: 41 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -878,60 +878,60 @@ static void ParseTriangleSurface( dsurface_t* ds, drawVert_t* verts, bspSurface_
878878
cv->surfaceType = surfaceType_t::SF_BAD; // Will be set later by ParseFace() or ParseTriSurf()
879879

880880
cv->numTriangles = LittleLong( ds->numIndexes ) / 3;
881-
cv->triangles = ( srfTriangle_t* ) ri.Hunk_Alloc( cv->numTriangles * sizeof( cv->triangles[0] ), ha_pref::h_low );
881+
cv->triangles = ( srfTriangle_t* ) ri.Hunk_Alloc( cv->numTriangles * sizeof( cv->triangles[ 0 ] ), ha_pref::h_low );
882882

883883
cv->numVerts = LittleLong( ds->numVerts );
884-
cv->verts = ( srfVert_t* ) ri.Hunk_Alloc( cv->numVerts * sizeof( cv->verts[0] ), ha_pref::h_low );
884+
cv->verts = ( srfVert_t* ) ri.Hunk_Alloc( cv->numVerts * sizeof( cv->verts[ 0 ] ), ha_pref::h_low );
885885

886886
surf->data = ( surfaceType_t* ) cv;
887887

888888
// Copy vertexes
889-
ClearBounds( cv->bounds[0], cv->bounds[1] );
889+
ClearBounds( cv->bounds[ 0 ], cv->bounds[ 1 ] );
890890
verts += LittleLong( ds->firstVert );
891891

892892
struct vertexComponent_t {
893-
vec2_t stBounds[2];
893+
vec2_t stBounds[ 2 ];
894894
int minVertex;
895895
};
896896
vertexComponent_t* components = ( vertexComponent_t* ) ri.Hunk_AllocateTempMemory( cv->numVerts * sizeof( vertexComponent_t ) );
897897

898898
for ( int i = 0; i < cv->numVerts; i++ ) {
899899
for ( int j = 0; j < 3; j++ ) {
900-
cv->verts[i].xyz[j] = LittleFloat( verts[i].xyz[j] );
901-
cv->verts[i].normal[j] = LittleFloat( verts[i].normal[j] );
900+
cv->verts[ i ].xyz[ j ] = LittleFloat( verts[ i ].xyz[ j ] );
901+
cv->verts[ i ].normal[ j ] = LittleFloat( verts[ i ].normal[ j ] );
902902
}
903903

904-
AddPointToBounds( cv->verts[i].xyz, cv->bounds[0], cv->bounds[1] );
904+
AddPointToBounds( cv->verts[ i ].xyz, cv->bounds[ 0 ], cv->bounds[ 1 ] );
905905

906-
components[i].minVertex = i;
906+
components[ i ].minVertex = i;
907907

908908
for ( int j = 0; j < 2; j++ ) {
909-
cv->verts[i].st[j] = LittleFloat( verts[i].st[j] );
910-
cv->verts[i].lightmap[j] = LittleFloat( verts[i].lightmap[j] );
909+
cv->verts[ i ].st[ j ] = LittleFloat( verts[ i ].st[ j ] );
910+
cv->verts[ i ].lightmap[ j ] = LittleFloat( verts[ i ].lightmap[ j ] );
911911

912-
components[i].stBounds[0][j] = cv->verts[i].st[j];
913-
components[i].stBounds[1][j] = cv->verts[i].st[j];
912+
components[i].stBounds[ 0 ][ j ] = cv->verts[i].st[ j ];
913+
components[i].stBounds[ 1 ][ j ] = cv->verts[i].st[ j ];
914914
}
915915

916-
cv->verts[i].lightmap[0] = LittleFloat( verts[i].lightmap[0] );
917-
cv->verts[i].lightmap[1] = LittleFloat( verts[i].lightmap[1] );
916+
cv->verts[ i ].lightmap[ 0 ] = LittleFloat( verts[ i ].lightmap[ 0 ] );
917+
cv->verts[ i ].lightmap[ 1 ] = LittleFloat( verts[ i ].lightmap[ 1 ] );
918918

919-
cv->verts[i].lightColor = Color::Adapt( verts[i].color );
919+
cv->verts[ i ].lightColor = Color::Adapt( verts[ i ].color );
920920

921921
if ( tr.overbrightBits < tr.mapOverBrightBits ) {
922-
R_ColorShiftLightingBytes( cv->verts[i].lightColor.ToArray() );
922+
R_ColorShiftLightingBytes( cv->verts[ i ].lightColor.ToArray() );
923923
}
924924
}
925925

926926
// Copy triangles
927927
indexes += LittleLong( ds->firstIndex );
928928

929929
for ( int i = 0; i < cv->numTriangles; i++ ) {
930-
srfTriangle_t* tri = &cv->triangles[i];
930+
srfTriangle_t* tri = &cv->triangles[ i ];
931931
for ( int j = 0; j < 3; j++ ) {
932-
tri->indexes[j] = LittleLong( indexes[i * 3 + j] );
932+
tri->indexes[ j ] = LittleLong( indexes[ i * 3 + j ] );
933933

934-
if ( tri->indexes[j] < 0 || tri->indexes[j] >= cv->numVerts ) {
934+
if ( tri->indexes[ j ] < 0 || tri->indexes[ j ] >= cv->numVerts ) {
935935
Sys::Drop( "Index out of range in surface: %i not in [0, %i] (index in BSP: %i, surface: indexes: %i-%i, shader: %s)",
936936
tri->indexes[j], cv->numVerts, i * 3 + j, ds->firstIndex, ds->firstIndex + ds->numIndexes, surf->shader->name );
937937
}
@@ -944,31 +944,31 @@ static void ParseTriangleSurface( dsurface_t* ds, drawVert_t* verts, bspSurface_
944944
updated = false;
945945

946946
for ( int i = 0; i < cv->numTriangles; i++ ) {
947-
srfTriangle_t* tri = &cv->triangles[i];
948-
int minVertex = std::min( std::min( components[tri->indexes[0]].minVertex,
949-
components[tri->indexes[1]].minVertex ),
950-
components[tri->indexes[2]].minVertex );
947+
srfTriangle_t* tri = &cv->triangles[ i ];
948+
int minVertex = std::min( std::min( components[ tri->indexes[ 0 ] ].minVertex,
949+
components[ tri->indexes[ 1 ] ].minVertex ),
950+
components[ tri->indexes[ 2 ] ].minVertex );
951951
for ( int j = 0; j < 3; j++ ) {
952-
int vertex = tri->indexes[j];
952+
int vertex = tri->indexes[ j ];
953953
if ( components[vertex].minVertex != minVertex ) {
954954
updated = true;
955-
components[vertex].minVertex = minVertex;
956-
components[minVertex].stBounds[0][0] = std::min( components[minVertex].stBounds[0][0],
957-
components[vertex].stBounds[0][0] );
958-
components[minVertex].stBounds[0][1] = std::min( components[minVertex].stBounds[0][1],
959-
components[vertex].stBounds[0][1] );
960-
components[minVertex].stBounds[1][0] = std::max( components[minVertex].stBounds[1][0],
961-
components[vertex].stBounds[1][0] );
962-
components[minVertex].stBounds[1][1] = std::max( components[minVertex].stBounds[1][1],
963-
components[vertex].stBounds[1][1] );
955+
components[ vertex ].minVertex = minVertex;
956+
components[ minVertex ].stBounds[ 0 ][ 0 ] = std::min( components[ minVertex ].stBounds[ 0 ][ 0 ],
957+
components[ vertex ].stBounds[ 0 ][ 0 ] );
958+
components[ minVertex ].stBounds[ 0 ][ 1 ] = std::min( components[ minVertex ].stBounds[ 0 ][ 1 ],
959+
components[ vertex ].stBounds[ 0 ][ 1 ] );
960+
components[ minVertex ].stBounds[ 1 ][ 0 ] = std::max( components[ minVertex ].stBounds[ 1 ][ 0 ],
961+
components[ vertex ].stBounds[ 1 ][ 0 ] );
962+
components[ minVertex ].stBounds[ 1 ][ 1 ] = std::max( components[ minVertex ].stBounds[ 1 ][ 1 ],
963+
components[ vertex ].stBounds[ 1 ][ 1 ] );
964964
}
965965
}
966966
}
967967
} while ( updated );
968968

969969
// Center texture coords
970970
for ( int i = 0; i < cv->numVerts; i++ ) {
971-
if ( components[i].minVertex == i ) {
971+
if ( components[ i ].minVertex == i ) {
972972
for ( int j = 0; j < 2; j++ ) {
973973
/* Some words about the “minus 0.5” trick:
974974
*
@@ -986,12 +986,13 @@ static void ParseTriangleSurface( dsurface_t* ds, drawVert_t* verts, bspSurface_
986986
* And rounding x - 0.5 actually generates fewer instructions. So it looks like the original version is pretty great.
987987
* -- @slipher https://github.com/DaemonEngine/Daemon/pull/208#discussion_r299864660
988988
*/
989-
components[i].stBounds[0][j] = rintf( 0.5f * ( components[i].stBounds[1][j] + components[i].stBounds[0][j] ) - 0.5f );
989+
components[ i ].stBounds[ 0 ][ j ] =
990+
rintf( 0.5f * ( components[ i ].stBounds[ 1 ][ j ] + components[ i ].stBounds[ 0 ][ j ] ) - 0.5f );
990991
}
991992
}
992993

993994
for ( int j = 0; j < 2; j++ ) {
994-
cv->verts[i].st[j] -= components[components[i].minVertex].stBounds[0][j];
995+
cv->verts[ i ].st[ j ] -= components[ components[ i ].minVertex ].stBounds[ 0 ][ j ];
995996
}
996997
}
997998

@@ -1000,10 +1001,10 @@ static void ParseTriangleSurface( dsurface_t* ds, drawVert_t* verts, bspSurface_
10001001
surf->data = ( surfaceType_t* ) cv;
10011002

10021003
for ( int i = 0; i < cv->numTriangles; i++ ) {
1003-
srfTriangle_t* tri = &cv->triangles[i];
1004-
srfVert_t* dv0 = &cv->verts[tri->indexes[0]];
1005-
srfVert_t* dv1 = &cv->verts[tri->indexes[1]];
1006-
srfVert_t* dv2 = &cv->verts[tri->indexes[2]];
1004+
srfTriangle_t* tri = &cv->triangles[ i ];
1005+
srfVert_t* dv0 = &cv->verts[ tri->indexes[ 0 ] ];
1006+
srfVert_t* dv1 = &cv->verts[ tri->indexes[ 1 ] ];
1007+
srfVert_t* dv2 = &cv->verts[ tri->indexes[ 2 ] ];
10071008

10081009
vec3_t tangent, binormal;
10091010
R_CalcTangents( tangent, binormal,

0 commit comments

Comments
 (0)