Download

I want to slowly transform a creature from juvenile to adult over the course of my game, but I don’t know where to start in UE4/5

As in the title, I’m working on a game that involves playing as a juvenile animal that, as you progress and play, grows up and eventually reaches maturity.

I come from a TV/Film background, so this is kind of my first foray into games, but I have a good idea how this kind of thing would be done in the vfx world (blend shapes, keyed textures, etc). For integrating into Unreal though (UE5 if that’s relevant), I’m a bit in the dark and was wondering if anyone knew where to start with this.

I assume I would need at least two models (juvenile and mature) with the same vert order that we can transition between. Can you add a blend shape into the rig that slowly progresses throughout the game? Are there any hiccups here you can imagine I should take into consideration?

Any advice would be amazing!

Fl1ntst0n3

Don’t think you can blend two animated skeletal meshes in-game (not in UE4 anyway, but someone might know better). You would probably want to use a combination of techniques and it would also depend on the quality of the model (from a low poly cartoon character to high quality model with simulated hair). It would also depend on whether there are any cut-scenes or whether you want the character to visibly morph. Two options off the top of my head would be using a dynamic material and scaling. You could grow the character slowly over time by increasing the scale of the mesh in the character blueprint mesh component. Although as mammals grow their dimensions also change, their legs get longer in proportion to their body, their snouts get longer and they become sleeker and loose puppy fat, although if transitioning from juvenile to adult this won’t be as noticeable so you might not have to do this. If you wanted to you could possibly scale the bones of the characters skeleton, but I’m not sure if you can do this in UE4. What you could definitely do is morph their material so its coat changes from being shorter shinier and brighter to more shaggy muted and grey or maybe their nose from brighter pink to muted grey. For this you can use a dynamic material. So create a parameterised material for your character (just a normal material and then generate a material instance from it) also define a parameter collection that includes a variable such as age and use it in your material to blend between two textures one for young coat and one for old you can also use it to add any other effects. Then in game from another blueprint (eg character blueprint) you can change the parameter collection value slowly from 0 to 1 over time to cause the transition in the material…
There’s probably other things you can do for example change animations you use but reckon this would be a good start

Thanks for your reply Mach!

I’m afraid I don’t think it would work to sort this in material, and I would have to transition between models for this part of the gameplay to work. It would be very gradual, consistently over the whole or at least early part of gameplay.

Another option would be to have stepped milestones where the animal grows up, but the goal for this project is to have it be so subtle that the player may not notice it happening immediately.

The material ideas are really interesting though, and I may see to incorporating some of them at the same time.

Any other ideas you have, I’d love to hear!

Fl1nt

Morph Targets.