Starting advice/ direction for modifing Ue4 Rotation/ Scale matrix

One third of all my world assets require a 20 percent squash along an arbitrary axis. Non-orthogonal scaling. I’ve looked around for possible solutions to this and the only feedback I’ve received is that currently this is not possible and that no known workarounds exist. An example of this can be found here. I need to be able to rotate a mesh and then scale it, but not using its local axes. I need to be able to prescribe an axis and have the asset scale along this. My understanding is that in UE4 this can’t be done because it’ll use either its own local axis, or it’ll first scale on its orthogonal axis then rotate. For my project this is a big deal. So I’ve decided to try and modify the engine code to allow for this. I’m definitely over my head on this, but I’m up for the challenge. So I’m looking for possible advice/ direction on where I should start. Maybe you have some idea of what is prohibiting this in the engine code and you could direct me to there. Could be you think I need to read some maths first. All is welcome. Thanks!

Here’s another link that talks about what I want to achieve but I’ve been told this isn’t possible in UE4. Link

a few questions…

  1. Does this need to be done at runtime?
  2. do you need any collision data to scale along the arbitrary axis?
  3. are you trying to import static meshes with stretching or doing something else?