[Community Project] WIP Weather & Water Shader

So I have to update my UE4 version at point, which means I’ve run into the following errors again:

Error error C3861: ‘P2UVector’: identifier not found OceanProject-4.8\Plugins\OceanPlugin\Source\OceanPlugin\Private\BuoyantDestructible.cpp 82
Error error C3861: ‘P2UVector’: identifier not found OceanProject-4.8\Plugins\OceanPlugin\Source\OceanPlugin\Private\BuoyantDestructible.cpp 103
Error error C2228: left of ‘.Z’ must have class/struct/union OceanProject-4.8\Plugins\OceanPlugin\Source\OceanPlugin\Private\BuoyantDestructible.cpp 108
Error error C3861: ‘P2UVector’: identifier not found OceanProject-4.8\Plugins\OceanPlugin\Source\OceanPlugin\Private\BuoyantDestructible.cpp 108
Error error C2228: left of ‘.GetSafeNormal’ must have class/struct/union OceanProject-4.8\Plugins\OceanPlugin\Source\OceanPlugin\Private\BuoyantDestructible.cpp 135
Error error C3861: ‘P2UVector’: identifier not found OceanProject-4.8\Plugins\OceanPlugin\Source\OceanPlugin\Private\BuoyantDestructible.cpp 135

Looking into PhysXIncludes, I can’t find any definitions for P2UVector, so instead I included “PhysXPublic.h” that did have one. Once I did that, I got the following two linker errors:
Error error LNK2019: unresolved external symbol “public: virtual void __cdecl ADestructibleActor::PostEditChangeProperty(struct FPropertyChangedEvent &)” (?PostEditChangeProperty@ADestructibleActor@@UEAAXAEAUFPropertyChangedEvent@@@Z) referenced in function “public: virtual void __cdecl ABuoyantDestructible::PostEditChangeProperty(struct FPropertyChangedEvent &)” (?PostEditChangeProperty@ABuoyantDestructible@@UEAAXAEAUFPropertyChangedEvent@@@Z) OceanProject-4.8\Intermediate\ProjectFiles\BuoyantDestructible.cpp.obj
Error error LNK2019: unresolved external symbol “public: virtual void __cdecl ADestructibleActor::PostLoad(void)” (?PostLoad@ADestructibleActor@@UEAAXXZ) referenced in function “protected: virtual void __cdecl ABuoyantDestructible::PostLoad(void)” (?PostLoad@ABuoyantDestructible@@MEAAXXZ) OceanProject-4.8\Intermediate\ProjectFiles\BuoyantDestructible.cpp.obj

I can easily fix these two if I just comment out the calls to both of these functions in BuoyantDestructible, but that results in the Engine crashing on startup. What am I doing wrong here?

I’m using the Promoted branch and I’ve made sure that both APEX and PHYSX have been compiled and included by UE4 as far as I know. And yes, ‘PhysX’ and ‘APEX’ are strings in the PublicDependencyModule.