1
\$\begingroup\$

I'm making a game with a pretty large group of people that respond to things the user does. They all have the same animator attached, but the animations that play differ using a script with a randomizer.

Now all Mixamo stuff is free I'm making some new and different models to put in my game, these models differ in size and shape, just like humans do. My previous setup was pretty much two models with the textures changed, so the animations were acting the same on all models.

This is now no longer the case with the new models. Hands of the models are moving through their leg mesh (see attached image). I fear I'd have to make separate animations for each model but I'd first like to know if there's maybe another way. I tried adding colliders to the leg and hand of each model, but the animation totally ignores those.

Does anyone know of a way to make sure body parts of my models don't go trough eachother? Or do I have to face the facts and make seperate animations for each model?

Image of problem

\$\endgroup\$
  • 2
    \$\begingroup\$ From the title to each of the three paragraphs, I read your question a couple of times and couldn't have a clue about what you are talking. Could you re-word the question, give examples and details that would help us even understand what is going on? \$\endgroup\$ – MAnd Nov 16 '15 at 12:29
  • \$\begingroup\$ Thanks for reading it! Sorry, I'm pretty tired, hope my edit helps \$\endgroup\$ – HoloLady Nov 16 '15 at 12:39
  • \$\begingroup\$ Collisions doesn't affects on animations (Most likely when you punch a wall in a game. You see players hand goes through). I think you'll have to edit the animations. \$\endgroup\$ – Ahmet Zambak Nov 16 '15 at 13:02
  • \$\begingroup\$ Not that I am very suited to help on that specific subject, but to me the edit certainly looks much much better now. The title, for instance, was a huge improvement. I took the liberty of suggesting new additional tags (you may see them in a while). Also, I had voted the question for closure, but I am unvoting it. Thanks for editing it! \$\endgroup\$ – MAnd Nov 16 '15 at 13:05
4
\$\begingroup\$

Small clipping errors are almost impossible to avoid when developing games, as self collision with large amounts of animated characters are very costly to calculate.

If you need (almost) perfect animations for cutscenes, animate each character on its own. But when you are animating for realtime, you should not worry about minor errors, as these are barely visible most of the time, especially when you have a lot of characters on screen at once.

Even the best, most professional games contain this kind of clipping errors, for example weapons moving through the character's backpack when ducking. The best thing you can do is probably trying to make all characters similar in size.

\$\endgroup\$
  • \$\begingroup\$ I was afraid of that, I figured I'd check, just in case there was something I could do. Thanks for answering! \$\endgroup\$ – HoloLady Nov 16 '15 at 13:32
  • \$\begingroup\$ For select cases like the hands in thighs, you might be able to improve it somewhat, but it will take a fair bit of work - there's no "prevent interpenetration" checkbox. In Unity, you can nudge the bones in LateUpdate after the animation has moved them - eg. to enforce a minimum distance between the hand and thigh, with that distance configurable per-character. It won't look as good as per-character animation, but its artifacts might be less obvious or jarring than penetration. \$\endgroup\$ – DMGregory Nov 16 '15 at 14:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.