MCPcopy Create free account
hub / github.com/bfbbdecomp/bfbb / iModelRender

Function iModelRender

src/SB/Core/gc/iModel.cpp:392–424  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

390}
391
392void iModelRender(RpAtomic* model, RwMatrixTag* mat)
393{
394 RpHAnimHierarchy* hierarchy;
395 RpGeometry* geom;
396 RwMatrixTag* pAnimOldMatrix;
397 RwFrame* frame;
398
399 hierarchy = (RpHAnimHierarchy*)GetHierarchy(model);
400
401 static S32 draw_all = 1;
402
403 if (hierarchy != NULL)
404 {
405 pAnimOldMatrix = hierarchy->pMatrixArray;
406 hierarchy->pMatrixArray = mat + 1;
407 }
408 frame = (RwFrame*)model->object.object.parent;
409 frame->ltm = *mat;
410 RwMatrixUpdate(&frame->ltm);
411 if (iModelHack_DisablePrelight != 0)
412 {
413 model->geometry->flags &= 0xfffffff7;
414 }
415 iModelCacheAtomic(model)->renderCallBack(iModelCacheAtomic(model));
416 if ((iModelHack_DisablePrelight != 0) && (model->geometry->preLitLum != NULL))
417 {
418 model->geometry->flags |= 8;
419 }
420 if (hierarchy != NULL)
421 {
422 hierarchy->pMatrixArray = pAnimOldMatrix;
423 }
424}
425
426S32 iModelSphereCull(const xSphere* sphere)
427{

Callers 10

MorphCommonFunction · 0.70
render_ghostFunction · 0.50
updateMethod · 0.50
RenderGlobsMethod · 0.50
RenderFrozenPlayerMethod · 0.50
xMorphRenderFunction · 0.50
xSkyDome_RenderFunction · 0.50
xModelRenderSingleFunction · 0.50
xModelRender2DFunction · 0.50
CutsceneShadowRenderFunction · 0.50

Calls 2

GetHierarchyFunction · 0.85
iModelCacheAtomicFunction · 0.85

Tested by

no test coverage detected