mirror of
https://github.com/nillerusr/source-engine.git
synced 2024-12-22 14:16:50 +00:00
51 lines
1.2 KiB
C++
51 lines
1.2 KiB
C++
//========= Copyright Valve Corporation, All rights reserved. ============//
|
|
//
|
|
// Purpose:
|
|
//
|
|
// $NoKeywords: $
|
|
//
|
|
//=============================================================================//
|
|
#include "bsplib.h"
|
|
#include "vbsp.h"
|
|
|
|
|
|
void SaveVertexNormals( void )
|
|
{
|
|
int i, j;
|
|
dface_t *f;
|
|
texinfo_t *tex;
|
|
|
|
|
|
g_numvertnormalindices = 0;
|
|
g_numvertnormals = 0;
|
|
|
|
for( i = 0 ;i<numfaces ; i++ )
|
|
{
|
|
f = &dfaces[i];
|
|
tex = &texinfo[f->texinfo];
|
|
|
|
for( j = 0; j < f->numedges; j++ )
|
|
{
|
|
if( g_numvertnormalindices == MAX_MAP_VERTNORMALINDICES )
|
|
{
|
|
Error( "g_numvertnormalindices == MAX_MAP_VERTNORMALINDICES (%d)", MAX_MAP_VERTNORMALINDICES );
|
|
}
|
|
|
|
g_vertnormalindices[g_numvertnormalindices] = g_numvertnormals;
|
|
g_numvertnormalindices++;
|
|
}
|
|
|
|
// Add this face plane's normal.
|
|
// Note: this doesn't do an exhaustive vertex normal match because the vrad does it.
|
|
// The result is that a little extra memory is wasted coming out of vbsp, but it
|
|
// goes away after vrad.
|
|
if( g_numvertnormals == MAX_MAP_VERTNORMALS )
|
|
{
|
|
Error( "g_numvertnormals == MAX_MAP_VERTNORMALS (%d)", MAX_MAP_VERTNORMALS );
|
|
}
|
|
|
|
g_vertnormals[g_numvertnormals] = dplanes[f->planenum].normal;
|
|
g_numvertnormals++;
|
|
}
|
|
}
|