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

Function iModelCullPlusShadow

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

Very nonmatching

Source from the content-addressed store, hash-verified

226}
227
228void iModelUnload(RpAtomic* userdata)
229{
230 RpClump* clump;
231 RwFrame* root;
232 RwFrame* frame;
233
234 clump = userdata->clump;
235 frame = (RwFrame*)(clump->object).parent;
236 if (frame != 0)
237 {
238 root = (RwFrame*)RwFrameGetRoot(frame);
239 if (root != 0)
240 {
241 frame = root;
242 }
243 RwFrameDestroyHierarchy(frame);
244 clump->object.parent = 0;
245 }
246 if (clump != 0)
247 {
248 RpClumpDestroy(clump);
249 }
250}
251
252static RpAtomic* NextAtomicCallback(RpAtomic* atomic, void* data)
253{
254 if (*(U32*)data == (U32)atomic)
255 {
256 *(U32*)data = 0;
257 }
258 else if (*(U32*)data == 0)
259 {
260 *(RpAtomic**)data = atomic;
261 }
262 return atomic;
263}
264
265RpAtomic* iModelFile_RWMultiAtomic(RpAtomic* model)
266{
267 RpClump* clump;
268 RpAtomic* nextModel;
269
270 if (model == 0)
271 {
272 return 0;
273 }
274 else
275 {
276 clump = model->clump;
277 nextModel = model;
278 RpClumpForAllAtomics(clump, NextAtomicCallback, &nextModel);
279 return nextModel;
280 }
281}
282
283U32 iModelNumBones(RpAtomic* model)
284{
285 RpHAnimHierarchy* obj = (RpHAnimHierarchy*)GetHierarchy(model);

Callers 4

loveyTikiRenderFunction · 0.50
zEntPickup_RenderOneFunction · 0.50
xEntBoulder_RenderFunction · 0.50
xEntRenderFunction · 0.50

Calls 1

xsqrtFunction · 0.85

Tested by

no test coverage detected