Actor-Specific Default Sequences
Posted: Fri Jun 06, 2025 11:52 pm
Is there a way to define default sequences on an actor-by-actor basis? Like how the Dialogue System Controller has a Default Sequence versus a Default Player Sequence.
I want to extend that idea to provide unique, default sequences depending on the actor of each new dialogue node (only one actor portrait is ever on display).
Maybe I'm approaching the issue wrong, but I have a parent 'Portrait Sizer' game object over the Portrait Image game object that separates animation-based sizing (zoom) as needed: full shot, close up, extreme close up, etc.
Different size level animations are called from Dialogue Node sequence fields (AnimatorPlay(Size_ActorA_CloseUp, Portrait Sizer)). I separated things mostly just to isolate things like portrait sizing and portrait shaking from the portrait art animations themselves, and since size requirements and placement vary per character per shot type (FullShot for ActorA requires different Rect Transform values than FullShot for ActorB).
Even with shortcuts ({{Size_ActorA _FullShot}} {{Size_ActorB_FullShot}}), I'm thinking it would be easier to tell every blank sequence of a dialogue node with any given actor to just use a specific default sequence for said actor (Example: default to {{Size_CharacterA_FullShot}}), so as to only need to define differing logic if needing a different sequence than that actor's unique default.
If each actor's default sequence requirements didn't vary from one another, I would just use (AnimatorPlay(FullShot, Portrait Sizer)...) in the Camera & Cutscene Settings -> Default Sequence field.
I tried defining custom sequencer commands, actor-specific fields, and adding [speaker] to Default Sequence commands, but have always run into various issues. Searched the forums and maybe missed something, but couldn't find this exact situation.
If it's not possible, then I'll just remember to copy/paste each actor's default sequence into each of their dialogue nodes that don't require differing sequence logic. I'm just worried it could become tedious over hundreds or thousands of nodes.
Wondering if you had any suggestions on better ways to approach this. Thanks for any advice, the asset is really great.
I want to extend that idea to provide unique, default sequences depending on the actor of each new dialogue node (only one actor portrait is ever on display).
Maybe I'm approaching the issue wrong, but I have a parent 'Portrait Sizer' game object over the Portrait Image game object that separates animation-based sizing (zoom) as needed: full shot, close up, extreme close up, etc.
Different size level animations are called from Dialogue Node sequence fields (AnimatorPlay(Size_ActorA_CloseUp, Portrait Sizer)). I separated things mostly just to isolate things like portrait sizing and portrait shaking from the portrait art animations themselves, and since size requirements and placement vary per character per shot type (FullShot for ActorA requires different Rect Transform values than FullShot for ActorB).
Even with shortcuts ({{Size_ActorA _FullShot}} {{Size_ActorB_FullShot}}), I'm thinking it would be easier to tell every blank sequence of a dialogue node with any given actor to just use a specific default sequence for said actor (Example: default to {{Size_CharacterA_FullShot}}), so as to only need to define differing logic if needing a different sequence than that actor's unique default.
If each actor's default sequence requirements didn't vary from one another, I would just use (AnimatorPlay(FullShot, Portrait Sizer)...) in the Camera & Cutscene Settings -> Default Sequence field.
I tried defining custom sequencer commands, actor-specific fields, and adding [speaker] to Default Sequence commands, but have always run into various issues. Searched the forums and maybe missed something, but couldn't find this exact situation.
If it's not possible, then I'll just remember to copy/paste each actor's default sequence into each of their dialogue nodes that don't require differing sequence logic. I'm just worried it could become tedious over hundreds or thousands of nodes.
Wondering if you had any suggestions on better ways to approach this. Thanks for any advice, the asset is really great.