Cutscene and Animation Dialogue Problem

I wanna to use cutscene to show the dialogue between two character, and now here come a problem,I found that I cannot play animation directly in blueprint and I can only place hundreds of dialogue animations into anim graph,and I think it’s very ugly,so,If I want to make character speak to each ohter and play animation conveniently, what can I do? Thanks in advance

If you do not need blending and it can be level specific then you can use matinee to simply play animation on any actor with a skeletal mesh as its root component.

Otherwise you will need to set up some code to play animations/dialogue together. Simple system would be a function that takes in an animation and dialogue then calls a PlaySlotAnim on the mesh’s AnimInstance. Set up your AnimBP to have slots in appropriate places to control where your anims show up (Blend per bone to only play mouth anims on the face, etc).

Thank you for answering my question, I know I can make several animations blend in animation graph in animBP, but now I met two issues:

  1. I wanna to get animation sequence reference but I can’t, because I want to change a result pose in a facial anim state to blend in the animation graph and I have thousands of lip animation assets, obviously I cannot add them all to the animation graph so I want to change the result pose by script.

  2. I added a matinee event track but I cannot get it in level blueprint.

  3. I cannot PlaySlotAnim although I have used it, I have the target slot name “Default.001” and I have choosed the montage, but still happened nothing when I played.

  1. This is where the AnimSlots come in.
  2. Select the matinee actor in your level and in the level blueprint for that exact level (can’t be another sublevel, must be the level with the matinee actor in it) right click on empty space and at the top should be an option to get a Reference to MatineeActor.
  3. Verify that the animBP is properly assigned to your skeletal mesh. Make sure you are calling PlaySlotAnim on the animInstance of the proper mesh (print strings maybe help here). Make sure the AnimSlot node in the animBP is active (For testing, the easiest way is to put the animslot as the very last node and see if it fires). Lastly verify you have the exact slot name from the slot manager in your code.

Thank you very much, I have solved all the problem above, but now I wanna to use matinee anim BP track ,but I cannot change the parameter in the animBP, which has toggle on the “expose to matinee”, and I have choose the right anim class in animBP track.Can you help me?

There are two options for selecting the Matinee, one is “Get a Reference” and the other is “Get Controller”.

92117-capture.png

The Controller is for getting any events you add to your matinee.

The Reference is the actual reference to the matinee actor. You can call play, pause, etc this way.

Thank you very much and sorry to answer late, the matinee controller problem has been solved and I found that I need to right click the matinee control and “refresh node”, I don’t understand why this thing stuck me hours lol.

And I wanna to use matinee anim BP track ,but I cannot change the parameter in the animBP, which has toggle on the “expose to matinee”, and I have choose the right anim class in animBP track.Can you help me?
Here is what I have done:

92183-ue4shot1.png

92185-ue4shot3.png

Try also checking Editable, I thought in the past it wouldn’t even let you check Expose to Matinee unless editable was checked but it seems to have changed.

I’ve had a lot of trouble with references to an animBP in Matinee. My work around was to put the property on my pawn/actor (with the expose to matinee checked) and then in the animBP read the value of the owning Actors version of that property.

So do I, I think it’s probably a bug.
Thank you very much, I have solved them all with your help!