Hello all

I'm trying to make a cutscene utilizing a Waypoint Path and an Auto Machine; as soon as the scene starts, the player is supposed to walk off in the distance (following the Waypoint). However the problem is that while the player moves, they don't animate. The character under normal circumstances (exploration, battle, etc) has no problem animating. Below are some screenshots and a video to illustrate.

image

She follows the waypoint, but she doesn't play her walking animation.

image

The normal configuration for the player's movement. Note that the 'Move Type' is the Animator Root Motion, which normally works in all circumstances.


image
image

The schematic for the above cutscene. While it's currently selecting the 'Character Controller', none of the others work either, even when I select 'Auto' and it cycles through them. Also, note the lack of Animator Root Motion as an option, unlike above. At first glance it seems like it's doing this because the option that my character uses to move in other circumstances isn't available here (but I'm not the expert, obv could be wrong)

image

Maybe this is irrelevant but bears mentioning; during the 'cutscene', the 'Button Controller' is unchecked. I don't think this is a bug, as this is what I expect is supposed to happen since I checked 'Block Player Control', as its a cutscene. Just thought I'd add this for context.

Also, just to be clear, the primary way for Ork to handle cutscenes and the like is Schematics and not the Playable Director/Timeline?

Thanks everyone!
  • The main issue is that your movement is handled by root motion. I.e. your current setup just forwards the speed the controller wants to move at to the animator controller, which plays the animation and moves the combatant.
    In your cutscene, you just move the game object around, without animations.

    The player control component being disabled is correct if the player controls should be blocked.

    There are 2 ways to solve this:

    1) Instead of moving the game object, set the animator controller's speed (e.g. via Play Mecanim Animation which plays the animation, moving the game object.

    2) Use a different animation setup in cutscenes, either using a different game object with that setup (e.g. conditional prefab on the combatant) or having those additional animations on the combatant's animation setup.


    ORK's built-in way for handling cutscenes is schematics, but you can naturally also use playables or any other kind of feature/product, or a combination of them :)
    Please consider rating/reviewing my products on the Asset Store (hopefully positively), as that helps tremendously with getting found.
    If you're enjoying my products, updates and support, please consider supporting me on patreon.com!
  • Thanks for your reply!

    So for your possible solutions;

    1. So you mentioned a Play Mecanim Animation. How exactly does the node setup like that work? Here is my setup, but it's not getting me the result I'm looking for. What ends up happening is that she takes a step forward for a second and then goes back to standing still. I could set it up so that she does the walk forward animation for x time, but what I want to happen is that she merely walks until she's done moving through the path.

    2. If using a different animation setup in cutscenes, can you explain more how I'd achieve this? You mentioned a conditional prefab?

    Lastly, could I do all this in Timeline/Playable Director? What I want to do is feature cutscenes with the player character, and possibly even seamless cutscenes to gameplay moments, which would be easy in Timeline if but the problem is since the player character's gameobject is spawned afterthe game starts, the Animator part of the Timeline has no object to grab on to. Timeine is definitely the easiest way I'm familiar with doing cutscenes, so being able to implenent the player character in them would be a big boon.

    Is this possible?
  • 1) Well, if this is the same parameter that's also set by other things, it'll most likely get changed immediately afterwards.
    E.g. set up a separate parameter, like autospeed, use that for additional transitions to the movement animations and set it in your schematic.
    Also, you don't need to use crossfade or play to play an actual animation, just set the parameter.

    2) Conditional prefabs automatically replace a combatant's prefab based on defined conditions. E.g. you use a global bool variable InCutScene being set to true to control that.


    As for playables - well, you can already have the game objects used for cutscenes in the scene and hide the 'real' player. AAA games usually have different models for gameplay and (in-game) cutscenes to use more detailed versions. Otherwise you'd just need a small script that sets the game object in the timeline/playable to ORK's player - you can get the player game object at all time like this:
    GameObject player = ORK.Game.GetPlayer();
    Please consider rating/reviewing my products on the Asset Store (hopefully positively), as that helps tremendously with getting found.
    If you're enjoying my products, updates and support, please consider supporting me on patreon.com!
  • edited January 19
    Hello,

    I've decided to try the last solution you mentioned.

    I want to sneakily have the player character do their cutscene thing with an identical 'dummy' cutscene model and seamlessly return control back to the player with the real, identical looking player model when the cutscene ends. However, Ork instantiates the player GameObject with Spawn Points when the Scene starts and not before.
    image

    ...As you can see, in normal circumstances the PlayerObject would go where you see 'None'. A thing that I think you are suggesting is to put an identical looking (to the player) model where that None is, do their cutscene thing, and transform that into the player when the cutscene ends, right?

    I actually got that working by messing around with the bindings in Timeline using 'GetGenericBinding', so I'm getting something that's sort of seamless. However the animations of the player character and the animations I set in the Timeline are clashing, making the model clip and shake.. Is there a way to disable the player's normal animation via Animator Controller in favor of the one in timeline?

    image

    image

    As you can see, it's a little jittery. Is this animation clash? An error in my setup?
    Post edited by FeldFour on
  • You could also hide the player's game object or disable it for the time being.
    The Object Visible node can be used to show/hide a game object (turning on/off the renderers and other visual stuff), the Activate Object node to enable/disable the game object (both in schematics).
    Please consider rating/reviewing my products on the Asset Store (hopefully positively), as that helps tremendously with getting found.
    If you're enjoying my products, updates and support, please consider supporting me on patreon.com!
  • edited January 20
    That's all well and good and all, but that's no longer the issue; I actually figured out how to get the player object in the Timeline's animation track after instantiating using Bindings; what you're seeing above isn't a 3D model that looks like the Ork player character, it is the Ork player character. So that's good!

    However as you can see, the walking forward animation in the Timeline is smooshing together with the character's Idle pose in the Animation Controller; if you look closely the animation is kinda jittery and jumpy. Is it possible to shush the Idle animation in favor of of what I put in the Timeline?
    Post edited by FeldFour on
  • I see - well, the animator controller just does it's thing in any case, probably either disable the Animator component or set a parameter in the animator controller that stops playing those animations.
    Please consider rating/reviewing my products on the Asset Store (hopefully positively), as that helps tremendously with getting found.
    If you're enjoying my products, updates and support, please consider supporting me on patreon.com!
Sign In or Register to comment.