Download

Physics properties not showing up

Hi,

I am having issues with mixing BP and C++. I have created a static mesh in C++ as follows:


    
    // static mesh component as root
    ShipMesh = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("Ship Mesh"));
    RootComponent = ShipMesh;


And I have my C++ pawn as the parent of the BP class. In my BP, I set the static mesh to use from my assets, and my static mesh does have a collider set up. But in the physics section almost all of the properties are missing:

a2836acac99c9df7844ae818dce780d0d1ed1aad.png

Where are the settings for simulate physics, linear damping, angular damping, enable gravity, etc…??

I am confused as to what the issue is here. I recreated a pure BP without a C++ parent and I assigned the same static mesh and I can access the complete physics settings. I tried setting the physics properties in code like this:



    // static mesh physics
    ShipMesh->SetSimulatePhysics(true);
    FBodyInstance* PhysicsBody = ShipMesh->GetBodyInstance();
    PhysicsBody->bSimulatePhysics = true;
    PhysicsBody->bOverrideMass = true;
    PhysicsBody->SetMassOverride(300.0f);
    PhysicsBody->bEnableGravity = false;
    PhysicsBody->AngularDamping = 0.8f;


This still doesn’t work since I am using thrusters and nothing works, so the physics are not being set, but it compiles just fine. I have recreated the exact same components and functionality using a pure BP with no C++ parent and it works perfectly.

Have a look here: A new, community-hosted Unreal Engine Wiki - Announcements and Releases - Unreal Engine Forums

https://answers.unrealengine.com/questions/534441/setup-angular-motors-in-c.html