Overriding default physics material?

Is there a way to override the default physics material without having to make custom variants of Unreal base objects, like Cube static mesh actors?

If no material is specified, it appears to fall back to DefaultPhysMaterial, which in turn is found dynamically from DefaultPhysMaterialName, which is specified as a global config var.

Being a global config var, to my knowledge it cannot be overridden in .ini files, and the ini it is defined in is inside the Engine folder. I was hoping to override it in my project so I can give every object a new default physics material, I’m a bit disappointed it can’t be done with an ini file. I wonder why it’s a global config?

So I’m wondering if there’s another way to do this. For arguments sake, let’s say I want every object by default to have a restitution value of 1, be it engine cubes, default static mesh actors with custom meshes; if no phys material override is specified, things should use this new phys material.

Hey there @merkaba48! So I’ve done a bit of research on this before, the default physics material isn’t able to be edited natively, unless you’re working from source. I’ve seen systems where users change all selected physical material overrides across the board. However you can also override them via normal materials, so if you had say a master material set for your project, you may be able to set the baseline there.

I mocked up a Blutility widget that would let you set all the overrides of objects you had selected, it’d need tweaks to be used on all objects though!

1 Like