0
Planned

Instantly solve IK action

Einar 4 months ago in Game Creator updated 4 months ago 5

After I return control to the GC Player after a Mount action, feet IK, procedural landing and headtrack all kick in (relative to whatever position the characer had before the mount action). Also the momentum of the player directly before the mounting is applied. All these things combined makes exiting a vehicle/horse/etc very busy.


I would like an action that instantly solves all IK related logic, and sets the player to stationary and grounded, without any delay and without any smoothed transition.

If my issue does not make sense I can make an example or a video.

Unity version:
2018.4 LTS
Game Creator version:
1.1.8

Attached an example (requires Gamecreator 1.1.8 installed). Hit F to mount the character, and just wait for it to get dismounted again. I would like an option to avoid all the animated smoothness of the proc-landing, the feet IK and the headtrack reset. Without having to disable all these options.

Also, if you hit F while moving, you can see that the character has kept it's momentum when it gets dismounted.


Scenes.zip

+1
Planned

Thanks for the scene Einar! As always, super useful. I understand the problem. I'll open a ticket and have a look, although it's not of highest priorities at the moment.


Procedural landing maybe it's, between the three, the most noticeable, but also the easiest to fix.

+1

Thanks! It's no rush, I'm also looking forward to the traversal module =D

I'm updating the ticket. The procedural landing issue seems to come from the fact that when a character is set to "Mount" something, all the collisions of the character are deactivated (as expected). But deactivating the collisions makes the character not know wether it is grounded or not.

The procedural landing animation is a side effect of that. When bringing back the collisions, it detects that the ground was not present before, thus showing the landing in full scale.

I thought the issue would be easily fixed, but it's deeper than I anticipated. If it's not a problem, I'll post pone the fix for a later update. I wanted to release a new version for Game Creator and all modules to make sure they all run smooth on the newly announced Unity 2019.4 LTS (which is the new officially supported version).

It's not an urgent issue, so no worries.

I have experimented a bit, and replaced the following line in my version of the Mount action (based on some older forum posts I found):

//_character.enabled = false;
_character.characterLocomotion.SetIsControllable(false);

For my cases .SetIsControllable(false) does the job better (combined with the rest of the Mount action logic), and for playing gestures it is golden. But there are probably cases that it will not handle properly, like freezing time for instance.