diff --git a/saco/game/rwstuff.cpp b/saco/game/rwstuff.cpp index 24d769c..fd8163f 100644 --- a/saco/game/rwstuff.cpp +++ b/saco/game/rwstuff.cpp @@ -152,6 +152,16 @@ void RwCameraBeginUpdate(RwCamera *camera) _asm pop edx } +void RwCameraEndUpdate(RwCamera *camera) +{ + DWORD dwFunc = (iGtaVersion != GTASA_VERSION_USA10) ? 0x7EE1C0 : 0x7EE180; + + _asm push camera + _asm mov edx, dwFunc + _asm call edx + _asm pop edx +} + void RwObjectHasFrameSetFrame(RwCamera *camera, RwFrame *frame) { DWORD dwFunc = (iGtaVersion != GTASA_VERSION_USA10) ? 0x804F30 : 0x804EF0l; diff --git a/saco/game/rwstuff.h b/saco/game/rwstuff.h index de852b3..06cec4c 100644 --- a/saco/game/rwstuff.h +++ b/saco/game/rwstuff.h @@ -22,6 +22,7 @@ void CShadowCamera_Create(int iRasterSize); void RpWorldAddCamera(RwCamera *camera); void RwCameraClear(RwCamera *camera, RwRGBA *color, int clearMode); void RwCameraBeginUpdate(RwCamera *camera); +void RwCameraEndUpdate(RwCamera *camera); void RwObjectHasFrameSetFrame(RwCamera *camera, RwFrame *frame); void SetCameraFrameAndZBuffer(RwCamera *camera, RwRaster *frameBuffer, RwRaster *zBuffer); void RwCameraSetClipPlane(RwCamera *camera, float farClip, float nearClip);