Search Unity

Unity Cutscene Creator / Camera Path - uSequencer [RELEASED]

Discussion in 'Assets and Asset Store' started by WellFiredDevelopment, Jun 19, 2012.

  1. BTStone

    BTStone

    Joined:
    Mar 10, 2012
    Posts:
    1,422
    And another thing:

    Could you explain a little bit how exactly does the Playmaker "Send Event"-Event work? I tried it out but can't manage to get it right. The Event doesn't affact my FSM at all.

    The "FSM Interface Name" is the name of the FSM? And the "Event Name" is the Name of the Global Event?
     
  2. zettam

    zettam

    Joined:
    Apr 8, 2013
    Posts:
    28
    Hello again ArtOfSettling;

    We've noticed that OnDisable call is invoked at every frame by usequencer (or so we guess).
    As far as I know the OnDisable should be called only once for each disable operation.

    You can have a look at the motionblur post effect (MotionBlur.cs) and try debugging the OnDisable call for instance.

    When we toggle the camera objects manually; we're not encountering this issue.
     
  3. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hey,

    You mean, you'd like a visualisation on the uSequencer window itself? The events should fire quite fine if you're scrubbing. Even custom events, provided you've implemented the correct methods :D

    Well Fired.
     
  4. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    I've actually had someone report this on our forum and we're looking into fixing this now :)

    Regards,
    Well Fired.
     
  5. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hey.

    For these simple tasks you could use the Event Timeline.

    The Transform -> Match Objects Orientation will allow you to interpolate one transform on top of another one. You can also specify the curve to make a 'nicer' transition.

    Camera Problems : uSequencer's Observer Timeline will disable all cameras apart from the camera that you tell it too. This is primarily because you shouldn't be able to render the game twice :)
    You have two solutions to this :
    1) The Object -> Toggle Object event will allow you to manually enable objects. You could use this to enable your new camera, without disabling your old camera.
    2) The observer timeline allows you to specify certain layers that will be ignored when toggling cameras. This is useful if you use NGUI for instance.

    Regards,
    Well Fired.
     
  6. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    One thing to note with this event is that it cannot be triggered at Edit time. This is sadly a restriction of PlayMaker and I can't change that ;(.

    In order to find The FSM Interface Name you need to select your PlayMaker FSM in the inspector. Underneath the Play Maker FSM (script) heading, you'll see a text field. It has the some text, this is your FSM Interface Name :)

    I hope this helps. If you can't get this to fire I'll put you together a small sample scene to look at.

    Regards,
    Well Fired.
     
  7. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    With regards to this error Brian, I think the only available option for you would be to create a script which you can attach to your object that is essential a field you animate. Internal to that script you could forward it to the intensity of the light. It's a bit of a weird work around, but should work.

    I've attached a script that will do just that for you. It also has an extra function so you'll still get the real time light intensity update when playing with the value in the uSequencer Property Pane.

    Just add this to your light object
    Code (csharp):
    1.  
    2. using UnityEngine;
    3. using System.Collections;
    4.  
    5. [ExecuteInEditMode]
    6. public class SetIntensityWithVisualisation : MonoBehaviour
    7. {
    8.     public float intensity = 1.0f;
    9.    
    10.     // Use this for initialization
    11.     private void OnRenderObject()
    12.     {
    13.         if(!Application.isEditor)
    14.             return;
    15.        
    16.         if(!this.light)
    17.             return;
    18.                
    19.         this.light.intensity = intensity;
    20.     }
    21.    
    22.     private void Update()
    23.     {
    24.         if(!this.light)
    25.             return;
    26.        
    27.         this.light.intensity = intensity;
    28.     }
    29. }
    30.  
    31.  
    View attachment $SetIntensityWithVisualisation.cs

    Regards,
    Well Fired
     
  8. BTStone

    BTStone

    Joined:
    Mar 10, 2012
    Posts:
    1,422
    Hey there. I managed the Camera-Transform-Stuff, got better results with the Property-Timeline, to be honest :D

    But the Playmaker-Stuff gives me still headaches. I made some pics:

    So here is my FSM, called ENEMYCS:


    And here is the "Send Event"-Event of the Sequence in the Inspector:


    When I play the game it doesn't trigger the Global CUTSCENEOVER-Event in the ENEMYCS-FSM.
    Are there some mistakes in this setup?
     
  9. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    I'll provide you with a very simple walkthrough that should get you started with using this event.

    1) Add an FSM to an object that will play a sequence.
    2) Add the Main Camera to this sequence and at 3 seconds add a USPlayMakerSendEvent set the Fsm Interface name to Test and the Event Name to testEvent.

    $Sequence.png

    $Inspector.png


    3) Add a Fsm to the Main Camera and call it test. Create a new state, called testEvent on this Fsm.
    4) Add a state that uses this transition (Global or otherwise).
    5) Add the Debug.Log Action to this state
    $FSM.png

    6) Hit Play and watch your events being fired ! :D
     
  10. BTStone

    BTStone

    Joined:
    Mar 10, 2012
    Posts:
    1,422
    Ah, now I get it. I sent the Event to different Game-Objects-FSM and not to the certain one which Timeline I worked on, in that case the MainCamera.
    That way it's working, but when I choose a different FSM Name and a different Eventname of another FSM (not the one which is attached to the Object which I am working on the Event-Timeline) the SendEvent is not fired. Is this behaviour intended?
     
  11. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hey,

    I'm glad you got it working ! :)

    That's correct. if you want to send an event to a Fsm you must add it to your sequence and then add the event to it's timeline.

    Regards,
    Well Fired
     
  12. BTStone

    BTStone

    Joined:
    Mar 10, 2012
    Posts:
    1,422
    Thank you for the clarification, and thanks for the great Support ;)
     
  13. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hello everyone!

    We just wanted to let you all know that uSequencer V 1.21 has been submitted to the Asset Store.
    As usual, you can try before you buy here : http://www.usequencer.com/purchase

    New Features in 1.21
    Added New Events
    Observer Timeline Improvements (Primarily fixes for the continuos disable / enable of cameras.)
    Updated HOTween support

    Bug Fixes:
    Fixed various bugs with the property timeline
    Fixes for some keyframes not updating as you drag them.

    Regards,
    Well Fired
     
  14. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hello Everyone!

    Just to let you all know, we've been busy writing up a set of tutorials, they'll be available for everyone to step through within the next couple of days, we'll be aiming to try and get two online every couple of days. We hope they're useful, so, if you have any requests for uSequencer Tutorials, just ask the question here and we'll be sure to add them.

    http://www.usequencer.com/tutorials

    We're also thinking about releasing a version of uSequencer with source, but before we do it, we thought we're guage people's interest. Would a source code version of uSequencer be wanted by you guys?

    Regards,
    Well Fired
     
  15. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Last edited: May 26, 2013
  16. zettam

    zettam

    Joined:
    Apr 8, 2013
    Posts:
    28
    Hello ArtOfSettling;
    I'm using usequencer to create a long (around 4 minutes) cutscene, whic is precisely synched with the music..
    I've set everything up precisely to the beats;
    However, sometimes things get de-synched over time (sometimes not)

    What is the reason for this? How can I keep things synched?

    For me, the most important feature of usequencer was (compared to other cutscene creators) - to be able to sync things with the music... However, when things get out of sync, this destroys the main aim of the tool for me.. :/
     
  17. zettam

    zettam

    Joined:
    Apr 8, 2013
    Posts:
    28
    I also have another issue - which is: If the game windows is dragged during a cutscene, the audio gets de-synched again (since the rest of the game freezes).. Maybe it could be good to find a way to sync it up
     
  18. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hello Zettam,

    I can understand why this would be a problem for you. I can also see a situation whereby you scrub a lot and the audio will be out of sync, but it should be that if you just hit play and listen to the sequence from start to finish that all the audio is perfectly in sync. Please let me know if this is an issue for you.

    I guess for keeping events in sync with music, you would probably need more accurate controls for moving events around and such ?

    You should have a guarantee that if an event is firing at 2 seconds, when played during the game, the event will fire at precisely 2 seconds. Unfortunately the audio in the sequence is played back synchronously, and as such, having a game with a variable framerate will affect the synching state of your audio.

    I have some ideas as to how you might fix this, but it might be better to move the conversation over to email, since it might go on for a while :) Send us over an email at support@wellfired.com outlining your use case as much as possible, so that I can get a better understanding of your situation.

    Regards,
    Well Fired.
     
  19. zettam

    zettam

    Joined:
    Apr 8, 2013
    Posts:
    28
    Just sent an email with an additional issue!
     
  20. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Version 1.21 is now in the store!

    Regards,
    Well Fired.
     
  21. lgz

    lgz

    Joined:
    Apr 19, 2013
    Posts:
    44
    Hi!.
    I used solution 1), but after updating to latest version there started to be some problems (i have some 9 cameras with extra effects on, and i was toggling on/off parents of cameras). i changed to Observer Timeline, but NGUI is lost :)
    So where can i find setting for ignoring layers? looked for it in preferences, and in timeline view, cannot find ;)

    ~regards
     
  22. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hello lga,

    If you look at the attached image, you can find the option to ignore camera layers with uSequencer.

    $Observer To Ignore.png

    If you expand your sequence (in the hierarchy), then the _Timelines for observer, then select the observer timeline, you can set the layers to ignore in the inspector.

    I hope this helps.
     
  23. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
  24. zettam

    zettam

    Joined:
    Apr 8, 2013
    Posts:
    28
    Hello ArtOfSettling

    I've deleted a few effects from multiple cameras in my project, and some of the values were animated in usequencer.
    I believe, because of that reason, I've started getting these errors in the console:

    Any quickfix for this (and similar cases where uSeq animated values/objects are removed)?
    Thanks!
     
  25. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hello Zettam,

    are you using Sequence's with prefabs? I can only reproduce this with prefabs, and I can submit a fix for this, soon.

    Regards,
    Well Fired.
     
  26. zettam

    zettam

    Joined:
    Apr 8, 2013
    Posts:
    28
    I've just deleted a few image effects with uSeq animated parameters (like bloom and depth of field) and that's it
     
  27. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hello Zettam,

    Are you using uSequencer with prefabs?

    Regards,
    Well Fired.
     
  28. zettam

    zettam

    Joined:
    Apr 8, 2013
    Posts:
    28
    I believe no :/

    I've never used the "create prefab" button in the uSeq window
     
  29. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Good news! OK, i've created a fix and I've submitted it to the Asset Store, if you send an email with your receipt to support@wellfired.com I'll send you over an early package, so that you can get on with your work :)

    Regards,
    Well Fired.
     
  30. zettam

    zettam

    Joined:
    Apr 8, 2013
    Posts:
    28
    Just sent it, thank you!
     
  31. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
  32. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hey guys!

    If you're in need for a powerful Timeline tool, there is only 7 hours left to get yourself a half price copy of uSequencer. Grab it before the offer expires!
    Only $20!

    https://www.assetstore.unity3d.com/#/content/3666

    Regards,
    Well Fired.
     
  33. WarbladerToo

    WarbladerToo

    Joined:
    Nov 2, 2009
    Posts:
    96
    I'm having problems with rotating a 2d toolkit sprite (around Z) I have tried both transform->rotation and transform->localrotation. The value goes up to about 20 (-20) and then starts decreasing by it self.

    I also have a lot of cameras in one scene and all got disabled when a sequence was played through. I found a solution for this : I disabled the Observer object in the hierarchy.

    Also is it possible to change the colour on a audio (maybe others too) event. its almost the same colour as the background and very hard to see.

    Thanks for a great plugin! Saved me a lot of time so far!
     
  34. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hello,

    I'm glad you're enjoying uSequencer so far!

    Does the object rotate at all, or is it completely static. If it doesn't rotate at all, it might be a good idea to try another axis. (I'm not sure how 2d toolkit orients it's GameObjects).

    Disabling the Cameras in your scene is something that the observer timeline does, however, it probably shouldn't do it if you've not added any keyframes. I'd say that would be a reasonable assumption. :)

    This is an interesting idea, you'd like to change the event's colour based on it's type. I can see this being very useful. We will add this feature in the next update.

    If you have suggestions, it's always a good idea to add them to our uservoice as well, I periodically go through and close many of those tickets. https://usequencer.uservoice.com
    Feel free to leave more feedback for us :)

    Regards,
    Well Fired
     
  35. Trithilon

    Trithilon

    Joined:
    Aug 2, 2012
    Posts:
    30
    And chance of getting tutorials on how to use HOTween along with this?
    I can't find any documentation on this.

    Thanks!
     
  36. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hello Trithilon,

    Since we're currently looking for suggestions with regards to tutorials, I will look into writing some nice tutorials for tweening (To and From with HOTween soon). I'm also currently looking into integrating HOTweens sequence's into uSequencer.

    I'll probably throw a bundle of PlayMaker tutorials up as well. For now, to get you started.

    if you look into the uSequencer directory, you'll see a Third Party Packages folder, inside here are all the third party packages, if you simply double click one and install it, you'll see that event timelines in uSequencer will allow you to add a whole bunch of extra events. :)
     
  37. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
  38. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hello everyone!

    We just wanted to let you all know that uSequencer V 1.22 has been submitted to the Asset Store.
    As usual, you can try before you buy here : http://www.usequencer.com/purchase

    New Features in 1.22
    You can now snap whilst dragging Property Keyframes, Observer Keyframes and events!
    Added some UI buttons to allow you to skip between keyframes.
    Added some tooltips to improve usability.
    Added some more HotKeys!

    Bug Fixes:
    Fixed various bugs with the property timeline
    Fixes for some keyframes not updating as you drag them.

    Regards,
    Well Fired
     
  39. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hello everyone,

    Version 1.22 is now live in the Asset Store for you.

    Regards,
    Well Fired.
     
  40. pixlweaver

    pixlweaver

    Joined:
    Dec 21, 2012
    Posts:
    92
    I can't seem to find a list of the hotkeys. Is there one? More specifically - is there a hotkey for adding and editing a keyframe? That would speed up my workflow considerably.
     
  41. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    You can currently use the , and . keys to move the scrub head. If you combine these with the alt key, you can move to the next and previous keyframe, we've added new tooltips to uSequencer, they'll tell you the hotkeys in brackets.

    Such a hotkey doesn't exist yet. Out of curiosity, how would you expect this to work? Pressing a key adds a keyframe to ALL property timelines in the current sequence?

    Regards,
    Well Fired
     
    Last edited: Jun 15, 2013
  42. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hello everyone,

    We've encountered a compile time issue with uSequencer and Unity 4.1.5, this has been fixed and submitted to the asset store. If you're having issues immediately and can't wait for a fix, send us over an invoice support@wellfired.com and we'll send you a 4.1.5 package.

    Regards,
    Terry
     
  43. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    We've updated the free version, so if you're planning on trying out uSequencer Free with Unity 4.1.5, all should be well.

    Regards,
    Terry
     
  44. Jyro-Blade

    Jyro-Blade

    Joined:
    Jun 17, 2013
    Posts:
    5
    Hey guys, I seem to be having a strange issue.

    Whenever I attempt to rotate an object using either the properties or HOTween, I don't seem to have control over which direction it rotates. This often leads to the camera rotating completely in the wrong direction to reach the resting point. (for example, if the point I want to rotate to is only slightly to the left, it will go around the full way to the right (>180degrees) to reach the destination.)

    Is there any way I can control the direction the rotation happens or at least ensure that the rotation travels in the direction that will take the least time?

    Thanks
     
  45. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hello Jyro Blade,

    It's interesting to see that both uSequencer and HOTween have the same problem. The answer to this problem is rather complicated, but is to do with how rotations are stored and processed in Unity.

    I don't know if it's helpful to you, but there are some events in uSequencer that will help you with certain types of rotation, such as interpolating to match the orientation of another object, or looking at a target object.

    Out of curiosity, if you're only rotating in one axis for the entire sequence, do you get the desired results?

    Regards,
    Well Fired.
     
  46. Jyro-Blade

    Jyro-Blade

    Joined:
    Jun 17, 2013
    Posts:
    5
    In our specific instance, we have a scene broken up into multiple "slides", each of which has a sequence attached to it and we are using an editor script to rewind and fast forward through them (progressing the sequences appropriately even if slides are skipped). The primary object that is being effected with strange rotation is the main camera of the scene.

    There are times in which the object is only rotated on a single axis, but is also moved via local position simultaneously. The behavior is still observed there. When using HOTween, the outcome was variable (certain sequences rotated logically, others did full spins before arriving), and when using the properties, it has seemed to rotate incorrectly every time.

    Any opinion on a better way to handle the rotation or what could be causing it to act strange other than just unity's processing?

    Thanks!
     
  47. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hello Jyro Blade,

    I've got a couple of questions for you.

    1) Would it be appropriate for you to use the Match Object Orientation Event, this allows you to smoothly interpolate an object, for instance the camera to match another objects orientation?
    2) Does your camera have a parent child relationship with another game object?
    3) Which of the following properties are you animating? : rotation, localRotation, something else?

    It's always possible to add more keyframes to dictate the direction in which the camera will rotate. You can set the tangent on these inner keyframes to be linear. For instance, a rotation from 0, 0, 0 -> 30, 0, 0 create three keyframes 0, 0, 0 - 15, 0, 0 - 30, 0, 0. It would also be a good idea to ensure you don't have any accidental keyframes close to existing keyframes, or any bizarre tangents that are shooting offscreen. (This can accidentally happen if keyframes are placed too close to each other).

    Regards,
    Well Fired.
     
  48. pixlweaver

    pixlweaver

    Joined:
    Dec 21, 2012
    Posts:
    92
    Thanks for the hotkeys - those should be pretty helpful.

    As for a hotkey to adding keyframes, I would expect the hotkey to add a keyframe to whatever property I currently have selected - and to add the keyframe at the scrub head's current location. If find it too tedious to use the mouse to add keyframes and annoying to have to select each keyframe to modify it's fire time.

    A few other features that would improve workflow by a great deal is a hotkey to select all keyframes at the scrub head's position, the ability to copy/paste frames, hotkey to delete all selected keyframes, and also be able to scale the timeline vertically.
     
  49. Jyro-Blade

    Jyro-Blade

    Joined:
    Jun 17, 2013
    Posts:
    5
    It would not be ideal to use Match Object Orientation since we are going to be panning the camera around to several different locations and orientations and it does not seem to hold the position of the rotated objects with the way our editor script is working between our "slides". The camera has no children and is not a child of any other objects itself. And we are using local position and local rotation to effect the camera.

    I also tried adding additional keyframes between the end points with no success and checked for any accidental keyframes that did not belong. Unfortunately still having the same reverse rotation effect across all sequences.
     
  50. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hey,

    These are all pretty great solutions. One of them are already supported. If you select multiple keyframes and press the backspace button, you will delete them. (Delete Key on Windows).

    I'll look forward to adding the rest, in the meantime, adding them, to http://usequencer.uservoice.com will definitely help, since the Community can upvote feature requests and I regularly go through and add features from there onto the uSequencer Backlog.

    Regards,
    Well Fired.