Hi,
I made some cutscenes using timeline and dialogue system. I modify the speed of playable director to 100 for skip cutscene, like a play movie very fast-forward.
During the test, I found out play sequence clip which duration is less than 2 frames is not played. For example, there is a sequence clip with a 200 frame duration which contains "MoveTo(CheckPoint1, GrayCube, 3);".
The clip is running normally when playing timeline speed at 1 to 99. At speed 100+, 'GrayCube' doesn't move. Similarly, if I reduce clip duration as 2 frames and play timeline asset as speed 1, the cube doesn't move, too.
So, the question is this: Is there a required minimum duration of playing sequence clip(at least 2 frames)? It means if I keep trying skip function using fast-forward method, all sequence clips must be longer than 400 frames at speed 200. Or any other good way to skip timeline cutscene? I need help.
Question about timeline sequence clip
Re: Question about timeline sequence clip
Hi,
There isn't a minimum, but it's possible that the sequence will be skipped if the dialogue entry is continued too fast.
First, verify that Timeline is starting the dialogue entry. To do this, set the Dialogue Manager's Other Settings > Debug Level to Info. Then play the scene and the timeline. Make sure the Console log shows that the dialogue entry is being played -- something like:
Dialogue System: Actor says 'Some dialogue text.'
Then, if the dialogue entry is being played, put the special keyword 'required' in front of sequencer commands that must play even if the dialogue entry is continued early. Example:
Notice that I added a second sequence command above. This is because, when a dialogue entry is continued before the sequence is done, it only has one frame to complete its work. Usually the first command will jump to the end if the entry is continued, but there are some edge cases where it may be stopped before it jumps to the end.
There isn't a minimum, but it's possible that the sequence will be skipped if the dialogue entry is continued too fast.
First, verify that Timeline is starting the dialogue entry. To do this, set the Dialogue Manager's Other Settings > Debug Level to Info. Then play the scene and the timeline. Make sure the Console log shows that the dialogue entry is being played -- something like:
Dialogue System: Actor says 'Some dialogue text.'
Then, if the dialogue entry is being played, put the special keyword 'required' in front of sequencer commands that must play even if the dialogue entry is continued early. Example:
Code: Select all
MoveTo(CheckPoint1, GrayCube, 3);
required MoveTo(CheckPoint1, GrayCube)@3
Re: Question about timeline sequence clip
Hi,
I tried both but fail... Logs show that 'Sequencer.Play' is even not running at all. It looks like if timeline is played very fast, time doesn't start some custom clips. I'll have to try another method for the skip function.
Thank you for your help.
I tried both but fail... Logs show that 'Sequencer.Play' is even not running at all. It looks like if timeline is played very fast, time doesn't start some custom clips. I'll have to try another method for the skip function.
Thank you for your help.
Re: Question about timeline sequence clip
Hi,
That's correct. Custom clips ask the timeline for the "weight" of the clip at the current time. When the weight is non-zero, it plays the clip. If the timeline is going too fast, the timeline will report zero for the weight. If you make the clip wider (longer in duration), the timeline may report the correct weight.
That's correct. Custom clips ask the timeline for the "weight" of the clip at the current time. When the weight is non-zero, it plays the clip. If the timeline is going too fast, the timeline will report zero for the weight. If you make the clip wider (longer in duration), the timeline may report the correct weight.