MCPcopy Create free account
hub / github.com/dhewm/dhewm3 / WriteToDemoFile

Method WriteToDemoFile

neo/renderer/Model.cpp:2202–2237  ·  view source on GitHub ↗

================ idRenderModelStatic::WriteToDemoFile ================ */

Source from the content-addressed store, hash-verified

2200================
2201*/
2202void idRenderModelStatic::WriteToDemoFile( class idDemoFile *f ) {
2203 int data[1];
2204
2205 // note that it has been updated
2206 lastArchivedFrame = tr.frameCount;
2207
2208 data[0] = DC_DEFINE_MODEL;
2209 f->WriteInt( data[0] );
2210 f->WriteHashString( this->Name() );
2211
2212 int i, j, iData = surfaces.Num();
2213 f->WriteInt( iData );
2214
2215 for ( i = 0 ; i < surfaces.Num() ; i++ ) {
2216 const modelSurface_t *surf = &surfaces[i];
2217
2218 f->WriteHashString( surf->shader->GetName() );
2219
2220 srfTriangles_t *tri = surf->geometry;
2221 f->WriteInt( tri->numIndexes );
2222 for ( j = 0; j < tri->numIndexes; ++j )
2223 f->WriteInt( (int&)tri->indexes[j] );
2224 f->WriteInt( tri->numVerts );
2225 for ( j = 0; j < tri->numVerts; ++j ) {
2226 f->WriteVec3( tri->verts[j].xyz );
2227 f->WriteVec2( tri->verts[j].st );
2228 f->WriteVec3( tri->verts[j].normal );
2229 f->WriteVec3( tri->verts[j].tangents[0] );
2230 f->WriteVec3( tri->verts[j].tangents[1] );
2231 f->WriteUnsignedChar( tri->verts[j].color[0] );
2232 f->WriteUnsignedChar( tri->verts[j].color[1] );
2233 f->WriteUnsignedChar( tri->verts[j].color[2] );
2234 f->WriteUnsignedChar( tri->verts[j].color[3] );
2235 }
2236 }
2237}
2238
2239/*
2240================

Callers 1

WriteRenderEntityMethod · 0.45

Calls 8

NameMethod · 0.95
WriteHashStringMethod · 0.80
WriteUnsignedCharMethod · 0.80
WriteIntMethod · 0.45
NumMethod · 0.45
GetNameMethod · 0.45
WriteVec3Method · 0.45
WriteVec2Method · 0.45

Tested by

no test coverage detected