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

Function iCameraDestroy

src/SB/Core/x/iCamera.cpp:45–94  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

43}
44
45void iCameraDestroy(RwCamera* camera)
46{
47 RpWorld* pWorld;
48 RwRaster* raster;
49 RwFrame* frame;
50
51 _rwFrameSyncDirty();
52
53 pWorld = RwCameraGetWorld(camera);
54
55 if (pWorld)
56 {
57 RpWorldRemoveCamera(pWorld, camera);
58 }
59
60 if (camera == sMainGameCamera)
61 {
62 iScrFxCameraDestroyed(camera);
63 sMainGameCamera = NULL;
64 }
65
66 if (camera)
67 {
68 frame = RwCameraGetFrame(camera);
69
70 if (frame)
71 {
72 RwCameraSetFrame(camera, NULL);
73 RwFrameDestroy(frame);
74 }
75
76 raster = RwCameraGetRaster(camera);
77
78 if (raster)
79 {
80 RwRasterDestroy(raster);
81 RwCameraSetRaster(camera, NULL);
82 }
83
84 raster = RwCameraGetZRaster(camera);
85
86 if (raster)
87 {
88 RwRasterDestroy(raster);
89 RwCameraSetZRaster(camera, NULL);
90 }
91
92 RwCameraDestroy(camera);
93 }
94}
95
96void iCameraBegin(RwCamera* cam, S32 clear)
97{

Callers 8

xModelBucket_InitFunction · 0.70
xCameraExitFunction · 0.70
zMainMemCardQueryPostFunction · 0.50
zMainMemCardRenderTextFunction · 0.50
zGameScreenTransitionEndFunction · 0.50
iEnvLoadFunction · 0.50
Show_frameFunction · 0.50

Calls 1

iScrFxCameraDestroyedFunction · 0.85

Tested by

no test coverage detected