Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. We have updated the language to the Editor Terms based on feedback from our employees and community. Learn more.
    Dismiss Notice
  3. Join us on November 16th, 2023, between 1 pm and 9 pm CET for Ask the Experts Online on Discord and on Unity Discussions.
    Dismiss Notice

Unity Cutscene Creator / Camera Path - uSequencer [RELEASED]

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

  1. Dan_Tsukasa

    Dan_Tsukasa

    Joined:
    Jan 26, 2013
    Posts:
    155
    Hi, recently began using uSequencer and so far I'm loving it, I've used it for simple camera switches, colour edits and other little bits so far, but I'm not about to try out something new and after a fair bit of experimenting I just can't work out quite how its possible to do it.

    What I'm trying to do:

    I want to have a camera Zoom in/Out between 2 points (triggers).

    What to use it for?

    I've a character who climbs a rope, I want the camera to slowly zoom out as he goes closer to the top, but to stop zooming when he isn't moving, there would be a trigger at the bottom and at the top signaling the end and start points of the zoom.

    The issue:

    Currently it appears asthough its only possible based on time alone, unless i were to setup say 5-10 triggers, each zooming a little bit further out, but this seems overly complicated for a seemingly simple task.

    Any advice would be much appreciated, loving everything in uSequencer so far.
     
  2. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hello,

    We're glad to hear you're enjoying uSequencer, what you're asking for isn't the usual use case for uSequencer, but it should be completely possible.

    What you'll want to do is create a 1 second long sequence, with a single property keyframe on your camera at 0 seconds and another at 1. Each of those will represent your min and max camera zoom.

    You now need to write a little script (sorry. :)), which you can do a calculation such as this on an update

    float deltaCharacterPosition = (charPos.y - minLadderPos) / (maxLadderPos - minLadderPos);

    Then you can set your sequence runningTime to this value, like this :

    sequence.RunningTime = deltaCharacterPosition;

    This will ensure as you move up and down the ladder the camera will zoom in and out appropriately. You should be able to make this look great.

    Regards,
    Well Fired.
     
  3. Dan_Tsukasa

    Dan_Tsukasa

    Joined:
    Jan 26, 2013
    Posts:
    155
    Thanks for the reply, it won't matter if I write the script in either UnityScript or c# will it, I don't imagine so.
    Now to think of how to actually WRITE that script, if you've possibly a working example of this code that'd be awesome, I'll give it a shot see what I can get going.

    So what I aim to do is set a Keyframe at 0 seconds and 1 seconds with the different zoom, write the script as you said, but then I'm unsure quite how to set my sequence runningTime and have the sequence actually understand that.

    Sorry for being a bit of a n00b, quite new to this

    UPDATE: Why does the camera always reset to the first frame when its completed the sequence instead of simply stopping at the final coordinates? Is this simply because I'm only using the main camera? Would it be wiser to use a second camera and just parent that to the main camera so the position is always correct, then switch camera and whilst the ZoomCamera is zooming out I set the other camera with a script (somehow I imagine I've made that more complex than needed).
     
    Last edited: Aug 30, 2013
  4. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hello,

    It doesn't really matter if you use C# or Javascript, the code should work for all, the code i gave you is C# mind you, since uSequencer is written in C#.
    The camera shouldn't reset to 0 once the cutscene is complete unless you're calling the Stop function through code.

    If you look in the example scenes, there is one that shows you how to set up a transition between an In-Game Camera and a Cutscene Camera, I would recommend doing your Ladder zoom with a completely seperate camera, that is only enabled when the cutscene starts and is disabled when the cutscene ends. You can use the Observer timeline to deal with that and the example scene should show you how to simply set this up.

    Good Luck!
    Well Fired.
     
  5. WellFiredDevelopment

    WellFiredDevelopment

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

    We just wanted to let you all know that uSequencer V 1.2.5.4 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.2.5.4
    Added the option to disable the visualisation of uSequencer when the editor is playing.
    Optimized our curve editor.
    Fixed a Null Ref exception that would sometimes occur when switching cutscenes.
    Support for WinRT and BB10 (Contact customer support for complete WinRT support).

    Bug Fixes:
    When Stopping a sequence in the Editor, events at Time 0 will no longer fire again.
    We've added an army of performance improvements, as we found the performance didn't scale well with larger cutscenes, uSequencer should be much more performant now.
    Fixes for some keyframes not updating as you drag them.

    Regards,
    Well Fired
     
  6. mikamikem

    mikamikem

    Joined:
    Mar 3, 2013
    Posts:
    10
    I'm working on a larger project and we have multiple people working on a scene at once so I need to have the sequences set up as prefabs so we don't all fight each other for the scene. I've encountered a number of problems related to saving and reloading those uSequencer prefabs and I don't know if I'm just not saving them correctly or if there's a legitimate bug. The process we currently use to save is to:

    Update prefab in uSequencer
    Click Apply in the prefab in the inspector until it stops changing (I'm not sure why the prefab doesn't have the full list of timelines, but it doesn't when we first do the update and after hitting apply once and sometimes twice it adds new timelines to the list).
    Save the whole scene.

    This usually works once or twice, but then we start seeing issues like the curve moving off the keyframes (the keyframes are still accurate, but the curve is not). Some of the keyframes are new, but not added by us and some are gone entirely. Random keyframes in the list (but specifically in this case and usually also the last one) cause Unity to crash.

    $USequencer_bugs.jpg

    I bought the full version in the hopes that it would have been resolved in a newer version, but it's not and so if it's not fixed soon or there isn't a usable workaround we may have to switch tools (we're on a very quick schedule and need a build with rough animations in the next few days). Please let me know what extra information you need so we can get this resolved as soon as possible and I don't have to remake all my custom events for another system.

    Also in the latest version (1.2.5.4) it looks like it no longer loads the curve data until you advance the position in the timeline editor, so it doesn't show the plus sign for any timelines until after you hit play or move the time indicator. This one's just terrifying at first, but it's still an annoyance that would be nice to have fixed.

    Thanks in advance for any help you can provide us!
    Michael

    Edit: Some extra information to help track down this issue. It appears that there are additional keys that are both not on the curve and possibly corrupted in the saved data. The time slider bar is over one of these keyframes in the screenshot above and if you try to move it there is a stream of errors logged to the console.

    The first is:

    NullReferenceException: Object reference not set to an instance of an object
    USInternalCurve.AddKeyframe (Single time, Single value)
    USPropertyInfo.AddKeyframe (.USInternalCurve curve, Keyframe keyframe, Boolean autoSmooth)
    USPropertyInfo.AddKeyframe (System.Collections.Generic.List`1 settingCurves, System.Object ourValue, Single time, Boolean autoSmooth)
    USTimelinePropertyEditor.AddKeyframe (System.Collections.Generic.List`1 settingCurves, .USTimelineProperty propertyTimeline, .USPropertyInfo usPropertyInfo)
    USTimelinePropertyEditor.CheckForPropertyDifferences (.USTimelineBase timeline)
    USTimelinePropertyEditor.PropertyChangeUpdate ()
    UnityEditor.EditorApplication.Internal_CallUpdateFunctions () (at C:/BuildAgent/work/cac08d8a5e25d4cb/Editor/MonoGenerated/Editor/EditorApplication.cs:227)

    And the second which happens only twice (while the above error keeps getting thrown indefinitely):

    NullReferenceException: Object reference not set to an instance of an object
    USInternalCurve.AddKeyframe (Single time, Single value)
    USPropertyInfo.AddKeyframe (.USInternalCurve curve, Keyframe keyframe, Boolean autoSmooth)
    USPropertyInfo.AddKeyframe (System.Collections.Generic.List`1 settingCurves, System.Object ourValue, Single time, Boolean autoSmooth)
    USTimelinePropertyEditor.AddKeyframe (System.Collections.Generic.List`1 settingCurves, .USTimelineProperty propertyTimeline, .USPropertyInfo usPropertyInfo)
    USTimelinePropertyEditor.CheckForPropertyDifferences (.USTimelineBase timeline)
    USTimelinePropertyEditor.PropertyChangeUpdate ()
    UnityEditor.EditorApplication.Internal_CallUpdateFunctions () (at C:/BuildAgent/work/cac08d8a5e25d4cb/Editor/MonoGenerated/Editor/EditorApplication.cs:227)
    NullReferenceException: Object reference not set to an instance of an object
    USInternalCurve.BuildAnimationCurveFromInternalCurve ()
    USInternalKeyframe.set_Time (Single value)
    USSelection.DragSelection (Vector2 delta)
    USControlTimelines.HandleEvent (.USSequencer sequence, EventType eventType, Int32 button, Vector2 mousePosition)
    USControl+<Render>c__AnonStorey3.<>m__6 ()
    CodeProfiler.WrapAction (System.Action action, System.String id)
    USControl.Render (Rect position, Rect passedArea, .USSequencer sequencer)
    USWindow+<UpdateSequencerTimelinePane>c__AnonStorey5.<>m__B ()
    CodeProfiler.WrapAction (System.Action action, System.String id)
    USWindow.UpdateSequencerTimelinePane (UnityEngine.Event evt, .USSequencer sequencer)
    USWindow.UpdateTimeline (UnityEngine.Event evt, .USSequencer sequencer)
    USWindow+<RenderContents>c__AnonStorey4.<>m__A ()
    CodeProfiler.WrapAction (System.Action action, System.String id)
    USWindow.RenderContents ()
    USWindow.<OnGUI>m__9 ()
    CodeProfiler.WrapAction (System.Action action, System.String id)
    USWindow.OnGUI ()
    System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Applications/buildAgent/work/c514da0c8183631c/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)


    If you click on the keyframe before this bad keyframe on the same curve the whole timeline view goes grey and stops drawing and the uSequence window cannot be moved or re-launched by any means. It also constantly logs out errors when it has focus. The two errors are:

    NullReferenceException: Object reference not set to an instance of an object
    USAnimationCurveEditor.DrawCurve (Rect pixelArea, .USInternalCurve curve, Color curveColour)
    USAnimationCurveEditor.OnGUI (Rect area, Rect myArea)
    USTimelinePropertyEditor.OnTimelineContents (Rect thisArea)
    USControlTimelines.RenderTimelines (.USTimelineContainer timelineContainer, Single areaWidth, Single areaHeight, Single floatingWidth, Single timelineWidth, Single xScroll, UnityEngine.Rect renderArea)
    USControlTimelines.DisplayContents (Single areaWidth, Single areaHeight, Single floatingWidth, Single xScroll, Single yScroll, Single minHeight, Single maxHeight, .USSequencer sequence)
    USControlTimelines.Display (Single areaWidth, Single areaHeight, Single floatingWidth, Single xScroll, Single yScroll, Single minHeight, Single maxHeight, .USSequencer sequence)
    USControl+<Render>c__AnonStorey2.<>m__4 ()
    CodeProfiler.WrapAction (System.Action action, System.String id)
    USControl.Render (Rect position, Rect passedArea, .USSequencer sequencer)
    USWindow+<UpdateSequencerTimelinePane>c__AnonStorey5.<>m__B ()
    CodeProfiler.WrapAction (System.Action action, System.String id)
    USWindow.UpdateSequencerTimelinePane (UnityEngine.Event evt, .USSequencer sequencer)
    USWindow.UpdateTimeline (UnityEngine.Event evt, .USSequencer sequencer)
    USWindow+<RenderContents>c__AnonStorey4.<>m__A ()
    CodeProfiler.WrapAction (System.Action action, System.String id)
    USWindow.RenderContents ()
    USWindow.<OnGUI>m__9 ()
    CodeProfiler.WrapAction (System.Action action, System.String id)
    USWindow.OnGUI ()
    System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Applications/buildAgent/work/c514da0c8183631c/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)

    And this:

    NullReferenceException: Object reference not set to an instance of an object
    USInternalCurve.ValidateKeyframeTimes ()
    USPropertyKeyframeInspector.OnInspectorGUI ()
    UnityEditor.InspectorWindow.DrawEditors (Boolean isRepaintEvent, UnityEditor.Editor[] editors, Boolean eyeDropperDirty) (at C:/BuildAgent/work/cac08d8a5e25d4cb/Editor/Mono/Inspector/InspectorWindow.cs:888)
    UnityEditor.DockArea:OnGUI()


    Also to clarify, the curve is what the camera or the actor actually follows and not the keyframes, so even though the keys look right, if the curve shows up as a straight line in stead of the appropriate curve, the actor follows the straight line.

    Let me know if you need more information.

    Thanks!
    Michael
     
    Last edited: Sep 4, 2013
  7. WellFiredDevelopment

    WellFiredDevelopment

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

    Besides these issues, we are hoping you're enjoying uSequencer.

    I must ask why you used the Prefab options in the inspector? Did the Update Prefab button in uSequencer not work correctly? It's very important that you only ever use the Update Prefab button in the uSequencer interface and not the Prefab buttons in the inspector. The use of the Update Prefab button does internal work so that you can share your sequences correctly.

    Using the prefab buttons in the inspector will likely cause you to get into an un-repairable state since you'll lose connections between your sequence in the project pane and any currently in-memory data. This is likely whats cause your Null Reference Exceptions.

    The use of the Update Prefab button is covered in the manual. If you could outline your issues with the Update Prefab button I might be able to help you pin point the cause of the errors so that you don't encounter them again.

    Regards,
    Terry
     
  8. mikamikem

    mikamikem

    Joined:
    Mar 3, 2013
    Posts:
    10
    Hi Terry,

    Thanks for the quick reply and sorry for taking so long to get back to you, I just wanted to make sure I had a good repro for this issue. If I just click the Update Prefab button in the uSequencer window do I need to then save the scene? The whole reason we were setting up prefabs for the sequences is so that our animator could work in the same scene that our environment artists and our designers are working in. Since we haven't had good luck with merging Unity scene files through version control, all of our scenes are exclusive checkout which means that if we have to save the scene we will also have to require the animator to check it out from version control exclusively and block all the other team members while he's updating a given cinematic.

    I tried just using the Update Prefab button and reloading the scene and that worked (I think by chance) the first time, but after the second added keyframe and Update Prefab process without saving the scene, the Timeline Container that I was editing completely disappeared and another Timeline Container appears to have been duplicated (I'm assuming this has to do with an ID being re-used internally because the state in the prefab was updated, but not saved out).

    If I should be able to just use the Update Prefab button and I shouldn't be required to save the scene afterwards then I'll send you more detailed steps to try to repro it and I'll see if I can get it to happen in the example scenes. If I can't update the prefab without saving the scene, I don't think uSequencer is going to work for us and I would like to request that feature, if possible.

    Let me know what the desired process is and if I'm doing anything wrong.

    Thanks!
    Michael
     
  9. WellFiredDevelopment

    WellFiredDevelopment

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

    You shouldn't have to save your scene, but you should definitely save the project. (File -> Save Project), this will save the state of the sequence prefab in the project. It's also not a good idea to have multiple people working on the same sequence prefab at once. The same scene is fine :)

    So, the workflow you might use would be as follows.

    Creating
    1) Create your Cutscene
    2) Press the Create Prefab Button
    3) Save your scene
    4) Check everything into source control

    Updating
    1) The content team make changes to the sequence
    2) Hit the Update Prefab Button
    3) Save Project.
    4) Close Unity and re-open to ensure everything is OK (This isn't specific to uSequencer, I just always do this with Unity, since i've noticed lots of errors can be fixed locally before committing).
    5) Push to source control.

    It could be that the version of the sequence in your scene is not kept up to date with the prefab in your project pane, though this shouldn't be the case, if it is, you can delete the sequence from your scene, drag it from the project pane and save your scene again.

    Let me know if you have any problems, and if so, very simple repro steps can help me pin point any problems and fix them for you!

    :D

    Regards,
    Well Fired
     
    Last edited: Sep 8, 2013
  10. WellFiredDevelopment

    WellFiredDevelopment

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

    We just wanted to let you all know that uSequencer V 1.2.5.5 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.2.5.5
    Fixed a bug whereby all events would get reverted if you hadn't pressed Play
    Preparation for our next big Update.

    Regards,
    Well Fired
     
  11. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    This version is now live on the Asset Store!

    Regards,
    Well Fired.
     
  12. God-at-play

    God-at-play

    Joined:
    Nov 3, 2006
    Posts:
    330
    I'm having a problem with a custom event that implements EndEvent. It seems like my sequences have to last just a bit longer than the end of an event on my timeline in order to fire EndEvent.

    For example, if I have an event on my timeline that lasts 3.5 seconds and I set my sequence duration to 3.5 seconds, EndEvent never gets fired for my custom event, even though the time goes to 3.5 and stops, because the sequence reached the end. However, if I set my duration to 3.53 seconds, then it gets fired.

    I'm confused because it seems like EndEvent should be fired at 3.5 seconds instead of just after. Am I just using this wrong? If so, how would you suggest I implement a custom event that gets called at the end of the event rather than after it?
     
  13. God-at-play

    God-at-play

    Joined:
    Nov 3, 2006
    Posts:
    330
    So I thought an alternative might be using ProcessEvent and then comparing the RunningTime and Duration, but that resulted in an interesting finding:
    Code (csharp):
    1.  
    2. RunningTime: 0, Duration: 3.5, deltaTime: 0.07947588
    3. RunningTime: 0.01713705, Duration: 3.5, deltaTime: 0.09661293
    4. ...
    5. RunningTime: 3.390898, Duration: 3.5, deltaTime: 3.470374
    6. RunningTime: 3.407405, Duration: 3.5, deltaTime: 3.486881
    7. RunningTime: 3.423601, Duration: 3.5, deltaTime: 3.5
    So maybe internally EndEvent is waiting for RunningTime to hit 3.5, so that's why it doesn't get called? If this is intended behavior, I must admit the API is misleading since it seems intuitive to me to use RunningTime for logic in various situations.

    At this point I feel like there's some fundamental aspect of how the timeline works that I don't understand very well. I would appreciate some guidance if possible.

    Addendum:
    Ah! I think this might be a bug with nesting sequences. My custom event extends USPlaySequenceEvent, and the times I output above were for that nested sequence, rather than the "parent" sequence. When I change the RunningTime to the parent, it matches up with deltaTime, but with the child it is off as above. EndEvent is still not getting called, but at least the RunningTime mystery is solved.
     
    Last edited: Sep 13, 2013
  14. redmotion_games

    redmotion_games

    Joined:
    May 6, 2013
    Posts:
    83
    Hi Well Fired, I'm really enjoying using uSequencer and I think it's pretty much a dead cert purchase for me now. But I have a couple of minor quibbles:
    1. on my MacBook (ancient white one) right click (CTRL+mouse button) doesn't work, I've worked around this by setting a two-finger tap as a right click and that seems to work. (Would prefer to use the CTRL way though).
    2. on my windows PC, the uSequencer occasionally goes blank and the only way to get it to show up again is to space bar over another window to maximise and then spacebar back to reshow the interface - which is a little bit frustrating. (This is caused by pressing play in Unity (not uSequencer) while the uSequencer window is showing - then stopping playback - maximise on play seems to avoid this issue!)
    3. When the Sequence has a quite a long list of objects the side-scroll bar seems to snap as you scroll down which means you have drag several times to get to the bottom. - fixed this by increasing mouse wheel scroll strength.
    4. I did send you a PM about Blackberry compatibility but thought I'd confirm that I've been able to use uSequencer with BB without any problems so far. (Although I've only scratched the suface with it so...).

    Apart from these little niggles I'd like to thank you for making such a stellar tool! Thanks!
    Jason.

    (PS:Apologies if any of these issues have be covered in previous posts but this thread is now 21 pages!)
     
  15. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hello,

    We've submitted a fix for this to Unity, it should be approved in the coming days, if you need a copy of uSequencer urgently, send us an email with your receipt to support@wellfired.com

    Regards,
    Terry
     
  16. WellFiredDevelopment

    WellFiredDevelopment

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

    We're glad you're enjoying uSequencer! :)

    1) Can you command click, or is it just not working at all?
    2) Is it possible to get a screenshot of this bug occuring? When Unity re-compiles, uSequencer will not be rendered for a little while. There is an option with uSequencer to not render when you're playing, could you ensure this isn't enabled. It's under the Edit -> uSequencer preferences menu item.
    3) We might be able to fix this so you don't need to play with the Scroll strength! We'll keep you posted.
    4) BB10 Compatibility is in and working, we also have WinRT compatibility, but you'll have to send us an email so we can provide you with a build supporting WinRT. We had to cut off support for Unity 3.x and we're not ready to do this as we still have the majority of our customers coming from 3.x

    Don't worry, we don't expect you to read all 21 pages checking for the answers you need. :)
    I hope this is helpful!

    Regards,
    Well Fired.
     
  17. God-at-play

    God-at-play

    Joined:
    Nov 3, 2006
    Posts:
    330
    I'm having problems using the custom prefab system. Specifically, Ive created my own event to toggle a mesh renderer, and there's a target reference for which mesh is being changed. But when I use Update Prefab and then File -> Save Project, and quit and then relaunch Unity later, about half of my references are not being preserved, and the rest are indexed improperly:


    Is there some other workflow I can use so that the references don't get all messed up like this?

    EDIT: I realized that in addition to references not being preserved, the ones still there were mixed up and in the wrong spot.
     
    Last edited: Sep 26, 2013
  18. God-at-play

    God-at-play

    Joined:
    Nov 3, 2006
    Posts:
    330
    So far my conclusion is that I have to save the scene to keep my references, which prevents our team from working on the same scene at the same time. It'd be great to figure out a solution, since that is a huge limitation for us.

    I had a couple feature requests that would be useful:
    • Remember previous zoom level and/or set default zoom level (I keep having to reset this manually after compile/reopening)
    • Reorder timelines (either through drag drop or naming)
    • Click drag left/right side to adjust event start/end time
     
  19. WellFiredDevelopment

    WellFiredDevelopment

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

    Your assumption as to what is going wrong is completely correct. We are currently re-working some of the prefab saving logic, since there are a number of small niggles, such as this one.

    As for the explanation :
    The problem comes down to the fact that we are trying to save references to an object in a scene on a prefab in the project. This isn't a two way channel. Scene objects can know about project objects, but any objects living in the project cannot know about anything in a scene. (This makes sense). The reason you have to save the scene (with some changes) is so that you can store those references into your instanced objects.

    The additional features are definitely good suggestion, we'll look into implementing them A.S.A.P.

    Regards,
    Well Fired.
     
  20. WellFiredDevelopment

    WellFiredDevelopment

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

    We've implemented the changes with regards to serialization of In-Scene objects to the prefab. There is some good news, and some bad news. The good news is that it works and the bad news is that it uses the objects hierarchy position to re-assign references, so you can't go about moving the objects your events point to in the hierarchy after making the prefab, without updating the Prefab. I hope this isn't too restricting, since it's unfortunately, the only way for us to achieve prefabing of sequences that use references to scene objects.

    It's fairly straightforward to implement in custom events. Here is an example :
    Code (csharp):
    1.    
    2.     public override Transform[] GetAdditionalObjects()
    3.     {
    4.         return new Transform[] { nonAffectedObject };
    5.     }
    6.    
    7.     public override void SetAdditionalObjects(Transform[] additionalObjects)
    8.     {
    9.          nonAffectedObject = additionalObjects[0];
    10.     }
    11.    
    12.     public override bool HasValidAdditionalObjects()
    13.     {
    14.         return nonAffectedObject != null;
    15.     }
    16.  
    You can serialized as many objects as you want, just create a larger array, it's up to you to deal with the reassignment that happens in SetAdditionalObjects.

    One advantage of making your custom events use the AffectedObject is that AffectedObjects have this behaviour by default, so you don't actually need to do anything. Looking at your sequence, it looks like your event (Mesh Renderer) is operating on an object that isn't the AffectedObject.

    Hopefully this update will be approved by Unity soon, if you want an early copy, feel free to send us an email at support@wellfired.com

    The issue with zoom level not being retained has been fixed also, so you should have a persistent zoom level between compiles.

    As an aside : I like the togglebox you have on the events, is it interactable?

    Regards,
    Well Fired
     
    Last edited: Sep 29, 2013
  21. WellFiredDevelopment

    WellFiredDevelopment

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

    We just wanted to let you all know that uSequencer V 1.2.5.7 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.2.5.7
    Added the ability for custom editors to serialize and deserialize their scene based (non AffectedObject) objects, when creating prefabs.
    Ensure our Zoom Info is retained between compiles.
    Ensure our Scroll Info is retained between compiles.
    Ensure our editor textures do not get bundled with any builds.

    Bug Fixes in 1.2.5.7
    Fix for memory leak on iOS

    Regards,
    Well Fired
     
  22. Lars-Steenhoff

    Lars-Steenhoff

    Joined:
    Aug 7, 2007
    Posts:
    3,458
    great so many amazing updates!
     
  23. TechnicalArtist

    TechnicalArtist

    Joined:
    Jul 9, 2012
    Posts:
    736
    +1
     
  24. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    For as long as you guys keep using uSequencer, we'll keep them coming ;)
     
  25. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    This update is now live on the asset store!

    Regards,
    Well Fired
     
  26. atmuc

    atmuc

    Joined:
    Feb 28, 2011
    Posts:
    1,125
    do you plan to support flash build? there are some reflection errors.
     
  27. WellFiredDevelopment

    WellFiredDevelopment

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

    We did have plans and were in the middle of implementing our Flash version, but unfortunately, it was then dropped by Unity so we abandoned our plans. Our professional license which has source code access still has our Flash Branch, so if you were interested, the professional license might be useful for you.

    We had support for Observer and Event Timelines, but not property timelines (So it's not incredibly useful to everyone).

    Regards,
    Well Fired
     
  28. WellFiredDevelopment

    WellFiredDevelopment

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

    We've got a very minor update coming to the asset store today, simply fixing a couple of very minor bugs users had noticed.

    New Features in 1.2.6
    Small fix for certain exceptions firing with various other plugins when we iterated over them.
    Fix for HOTween integration and Ping Pong support.

    Regards,
    Well Fired.
     
  29. NoBullIntentions_P

    NoBullIntentions_P

    Joined:
    Jul 2, 2012
    Posts:
    311
    Hi,

    I've managed to get myself into a bit of a mess with U-Sequencer, and I'm wondering if there's a way to fix it. I wanted to make two complex cutscenes which are very similar. So I created the first one and then duplicated it, so that I could save a lot of time recreating all of the actions and properties. This was a BIG mistake because both cutscenes are now referencing the same info. So making changes to one makes changes to the other as well.

    I thought I would be able to fix this by restoring an old version of the scene and keeping the new version as a separate scene. This has worked, to an extent. So now I have two scenes - each of which contains a working version of one of the two cutscenes. What I now need to do is move one of the cutscenes into the other scene, so that I have them both in the same scene. I've tried copy and paste, and I've tried making a prefab out of them, but data is obviously being lost. The USPropertyInfo fields of the Property Timeline object are blank. So I guess they're not copied with copy and paste or when creating prefabs.

    Any suggestions on how I might get both working cutscenes into the same Unity scene without completely recreating one or both from scratch?
     
  30. WellFiredDevelopment

    WellFiredDevelopment

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

    I guess this is a new addition to the uSequencer documentation, but when duplicating a sequence, the default behaviour is that it acts similarly to a prefab. If you want to duplicate a cutscene and make it a completely separate instance, what you need to do is duplicate the sequence as usual, then you can select the menu item : Window / Well Fired Development / uSequencer / Utility / Make Sequences Unique.

    This will make every single instance of every sequence in your current scene unique from one another.

    What I would suggest you to do is start the duplication process again. So, pick the sequence you want to branch from, duplicate it and then click this menu option to make your two instances unique. You're then free to diverge your two sequences as much as possible.

    I hope this is helpful, and I'm sorry about the mess you've found yourself in.

    Regards,
    Well Fired.
     
  31. shwa

    shwa

    Joined:
    Apr 9, 2012
    Posts:
    461
    Hi,
    Is it possible to use Usequencer with an animated human or animal, choose a beginning and end point for the character to move between, and have that character detect the terrain and move with it's elevation?

    Any faq's on this or tutorials?

    Right now, when i use Usequencer, and pick a start and end point for the character to move between, it simply passes thru the terrain if the elevation begins to rise. Or floats in the air, if the elevation drops.

    hope i'm being clear.

    shwa
     
  32. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hello,

    Just a quick note to say we've replied to your support email with a response to this question.

    Regards,
    Well Fired.
     
  33. joeconstable97

    joeconstable97

    Joined:
    Jul 30, 2013
    Posts:
    49
    Hey, I just installed this plugin but got this error:

    ReflectionTypeLoadException: The classes in the module cannot be loaded.
    System.Reflection.Assembly.GetTypes () (at /Applications/buildAgent/work/c514da0c8183631c/mcs/class/corlib/System.Reflection/Assembly.cs:371)
    USSequencerUtility.GetType (System.String aType)
    USTimelineObserver.get_ObjectUtilsType ()
    USTimelineObserver.get_IsObjectActive ()
    USTimelineObserver.AddDefaultCamerasToBaseState ()
    USTimelineObserver.StartTimeline ()
    USSequencer.Play ()
    AutoPlaySequence.Update () (at Assets/USequencer/Quick Start Prefabs/Scripts/AutoPlaySequence.cs:32)

    Please help!
     
  34. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hello,

    Did you install uSequencer via the Asset store? This problem should be resolved in the most recent update.

    Regards,
    Well Fired
     
  35. WellFiredDevelopment

    WellFiredDevelopment

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

    There is a known Error in uSequencer with Unity 4.3, if you're receiving this, please get in touch with us at support@wellfired.com we have a fix for this, it just isn't available in the Unity store yet. We can send you the fixed package directly.

    Regards,
    Well Fired.
     
  36. WellFiredDevelopment

    WellFiredDevelopment

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

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Only 7 hours remaining, don't miss out on todays Amazing Daily Deal, 75% off uSequencer.

    You don't have long left to take advantage of this amazing offer!!

    http://u3d.as/33d

    Regards,
    Well Fired
     
  38. halley

    halley

    Joined:
    Aug 26, 2013
    Posts:
    1,882
    Thanks for the sale, ArtOfSettling. Honestly, I hadn't even seen this in the store before today but it looks like a great tool to make things easier. I have played with iTween a bit, but it can be pretty complicated to get all the actions and interactions right, when you're trying to make a cut-scene or other coordinated set of animations. I'm hoping your uSequencer is as smooth as it looks. I picked it up and am going to be playing with it in the coming weeks.
     
  39. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Thanks for the kind words ;)

    Hopefully we can get uSequencer in front of more people, we really feel it's a great workflow improvement, even just for visualising tweens with frame by frame stepping. You can get some great results with little effort.

    We hope you enjoy uSequencer, if you've got any issues, questions or feedback be sure to drop us a line at support@wellfired.com

    Regards,
    Well Fired.
     
  40. kaz2057

    kaz2057

    Joined:
    Jan 18, 2011
    Posts:
    326
    Hi WellFired,

    I have a question about Recording.

    I see you use Upscale to multiply the resolution setting.

    But with upscale there is not any quality problem? It is a lossless recording?

    How upscale works? It double the resolution on recording or resize restirezed frames after rendering?

    Thanks
     
  41. WellFiredDevelopment

    WellFiredDevelopment

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

    We actually double the size on rendering, it's not upscaled after rendering. I hope this answers your question!

    :)

    Regards,
    Well Fired.
     
  42. DizzyTornado

    DizzyTornado

    Joined:
    Nov 17, 2013
    Posts:
    134
    does this work with unity free?
     
  43. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Indeed it does! :)

    Regards,
    Well Fired.
     
  44. chuwilliamson

    chuwilliamson

    Joined:
    Jan 18, 2013
    Posts:
    6
    My editor is very laggy when using the usequencer to set keyframes in the full version is this a hardware problem or a known issue?
     
  45. toto2003

    toto2003

    Joined:
    Sep 22, 2010
    Posts:
    528
    +1
    even on my quadcore it s not as smooth, that s something that could be improve in the future hopefully, after hours spending using it , it impact the workflow and i end up just calling few triggers instead of animating with it, each time i have to select the 3 xyz to move my keys around the timeline, if i dont do so i end up with lot of keys that is hard for me to read, a dopsheet with frame tick snap like in 3ds max would be awesome, there another asset wich have this call animator it s free but out of support.
    but usequencer is already awesome for what it gives in term of feature and support.
     
  46. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    You'll be happy to hear that the upcoming release fixes these performance and slight bugs. We've re-written our entire rendering system, with optimisations in mind, we should be pushing to the asset store soon!

    Let me know if you want the beta at support@wellfired.com email me your receipt and the version of Unity you are using.

    Regards,
    Terry
     
  47. EmeralLotus

    EmeralLotus

    Joined:
    Aug 10, 2012
    Posts:
    1,457
    This is a such an Awesome package.

    It would be a big step forward to have an updated rendering system. Very Cool. Looking forward to new version.

    Q: I've been using uSequencer in-editor for a while and it's been great. Although recently, I'm finding more and more use cases to create cut scenes in-game. Does uSequencer have a in-game API that can do basic cut scenes ?

    Cheers.
     
  48. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hello,

    You can use uSequencer in game, that would be no problem the public API is all you'd need. You simply wouldn't be able to create Prefabs (since that crosses the Project/Scene boundary). We have a task on our backlog, to export sequences to JSON, when we do this, you will also be able to save your cutscenes and re-create them with two function calls.

    Regards,
    Terry
     
  49. Apiweb

    Apiweb

    Joined:
    Nov 26, 2011
    Posts:
    57
    First, congratulations on this wonderful plugin, I can not create my games without him. Congratulations.

    I have a suggestion, I think it would be cool if we could control, recording the camera, using the keys to move (WASD or Arrows) and mouse (to point to where the camera is seeing), similar to Matinee Unreal / UDK.

    With that I would be a little easier to control the camera, sometimes I end up losing myself when I use the timeline.

    I know that a feature like this, would work to implement, and may not be feasible (it may be that the person has already mapped using the WASD), but I think it would be a great aggregate functionality.
     
  50. WellFiredDevelopment

    WellFiredDevelopment

    Joined:
    Jun 16, 2012
    Posts:
    661
    Hey!

    This is a great suggestion! We'll take it on board and definitely consider it for a future release, if you're interested in making more suggestions, we take them all under consideration and user input really helps push things to the top, that's why we've set up this handy user voice page, in which users can vote on issues they want fixing as a priority. Feel free to add more at http://usequencer.uservoice.com.

    Regards,
    Well Fired.