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

SpriteWorkshop 2D Sprite and Animation tool

Discussion in 'Assets and Asset Store' started by RSG, Nov 20, 2014.

  1. RSG

    RSG

    Joined:
    Feb 20, 2013
    Posts:
    93
    2.5

    SpriteWorkshop is a 2D solution that emphasizes in workflow and animation. The latest version of SpriteWorkshop has been completely rebuilt and redesigned from the ground up. Sprites are faster, easier to use, and animations are more flexible. You can control the content of a sprite with the sprite model system, skin the appearance of a sprite with the atlas system, and extend the behavior of an animation with the animation sequence API.


    Features

    Layer system
    Intuitive layering system allows you to display multiple images in a single sprite like a traditional 2D graphics application.​

    Sprite Modeling
    Modeling system allows you to create templates to predefine the layout of a sprite.​

    Sprite Skinning
    SpriteWorkshop makes it easy to change the look and feel of a sprite by using sprite atlases.​

    More color options
    You can control the color of a layer and how that color is inherited by other layers. Also, you can animate the RGB and HBS channels.​

    Onion skin tool
    The onion skin tool makes it easier to preview several frames at the same time when working with animations.​

    Combine animations
    The new animation system makes it easier to play and combine multiple animations.​

    Animation Editor
    The animation editor in SpriteWorkshop gives you more control over your animations.​

    Procedural Content
    Animations can be used to generate temporary content without the need of scripting or prefabs.​

    Scriptable Animations
    You can extend the behavior of an animation with the Animation Sequence API.

    And much more...

    To learn more visit the website at spriteworkshop.com



     
    Last edited: May 8, 2015
  2. RSG

    RSG

    Joined:
    Feb 20, 2013
    Posts:
    93
    Beta 2 is now available for download :D. Click here to see release notes.
     
  3. nuverian

    nuverian

    Joined:
    Oct 3, 2011
    Posts:
    2,084
    Well done. It looks great!
     
  4. RSG

    RSG

    Joined:
    Feb 20, 2013
    Posts:
    93
    Beta 3 is now available. This version focuses on usability; it adds a new locking feature and introduces a new tool that makes it easier to work with keyframes. See release notes for more details. :)
     
  5. sledgeman

    sledgeman

    Joined:
    Jun 23, 2014
    Posts:
    389
    Wauuu....this is what i was searching for ! Many thanks for this Gem ! The perfect Sprite-Animation Workshop for nice PixelArt and fancy VectorArt. Well done. I will keep an eye on this progress.
     
  6. RSG

    RSG

    Joined:
    Feb 20, 2013
    Posts:
    93
    I'm very excited to announce that Beta 4 of SpriteWorkshop is now available for download! This release includes the new onion skin tool. See release notes for more details. :D

     
  7. RSG

    RSG

    Joined:
    Feb 20, 2013
    Posts:
    93
    The latest version of SpriteWorkshop is now available! You can download the demo from the website. Also, I just updated the asset store package; so the new version should be available within the next few days.
     
  8. RSG

    RSG

    Joined:
    Feb 20, 2013
    Posts:
    93
    Version 2.5 of SpriteWorkshop is now available in the asset store. You can still download the demo version from the website.
     
  9. BambooX

    BambooX

    Joined:
    May 24, 2014
    Posts:
    6
    Great redesign !


    I have a few questions however. My main usage will be to display sprites sequences, not animating layers properties. Because my sprites come from filmed animations (like old school Mortal Kombat). So my concern is about what you say on multiple sprite sheets and Unity 5 :


    Each of my animations will have on average 15 frames, but I will have a lot of animations so a lot frames that cannot fit in one (even 4096) sprite sheet. If I create one sprite sheet per animation (and not one sheet for all animations) will the problem you describe occurs ?


    Also, my textures have differents sizes, when I “Insert sequence” it will be great to create the size keyframes accordingly. Otherwise the textures are stretched. Now I have to do it manually on each keyframe by clicking Resize at the layer level. Maybe I can script this.


    Because my textures have different sizes I also need to do some alignment but I see the OffsetX & Y only at the layer level. I cannot add an Offset sequence at the animator editor. But I can align using the Position sequence. Are Offset and Position interchangeable ?


    I found a bug that corrupts the animator instance : in the Animator add an element (Layer/size/group etc), select and delete it. I get this exception [EX1]. I restart Unity to fix the problem, the animation file does not seems corrupt.


    Good to know : the onion only works with the Sprites/Default shader. I get this exception when using Sprites/Diffuse shader [EX2].



     
  10. RSG

    RSG

    Joined:
    Feb 20, 2013
    Posts:
    93
    Hi BambooX, from what you described I think you should be ok. Unity changed how sub-meshes are rendered in Unity5, however, this is not an issue if you have a sprite with layers that don’t overlap, use one layer, or you use one material at a time.

    Since you are grouping your frames into separate sprite-sheets, even though you may have multiple materials in your atlas, your sprite will only use one material at a time when you play an animation.

    For the resize, there is an option that you can use to fix this. When you create an image sequence, select it and then at the bottom of the timeline you should see a resize option; if you select it, then the animation will resize the layer to match the size of the image in the frame. It should look something like this:



    You can also animate the offset, however I label it pivot, sorry for the confusion ><. You use the offset/pivot to define the origin of the layer, whereas position is the location for the layer relative to its parent



    Thanks for letting me know, I'll look into them. I think the first one was fixed in version 2.6.
     
  11. BambooX

    BambooX

    Joined:
    May 24, 2014
    Posts:
    6
    Thank you !

    I'm using the version 2.6 on Unity 5.0.1f1.
     
  12. sledgeman

    sledgeman

    Joined:
    Jun 23, 2014
    Posts:
    389
    Great Tool ! I am glad you got that out of Beta status. I will buy it definetly next week. It is also a really fair price for that masterpiece imho ! Thank you very much, for this Gem.
     
  13. RSG

    RSG

    Joined:
    Feb 20, 2013
    Posts:
    93
    Thanks! ^^
     
  14. BambooX

    BambooX

    Joined:
    May 24, 2014
    Posts:
    6
    Hi RSG,

    what design you recommend to do something like an animated hitbox ? I would like to attach a gameobject containing a BoxCollider to an animation. But right now I do not understand how to achieve this. I need to extend the animation system like in the LayerParentSequence / VibrationSequence scripts ?
     
  15. RSG

    RSG

    Joined:
    Feb 20, 2013
    Posts:
    93
    Hi BambooX,

    Sorry I haven’t done much documentation on how to create your own custom sequences. Essentially, you write a class that extends AnimationSequence; also, you need to add the SequenceInfo attribute to the class so that it can be recognized in the animation editor.

    In a sequence we use keyframes to record values and a behavior to define how those values are used. For example if I wanted to record changes to a boolean value I would add a BooleanKeyframes property with a SequenceMember attribute. You use the SequenceMember attribute so that the property can be used in the timeline. Also, if you add the property to a regular field/property, it will appear at the bottom of the timeline when you select the sequence.

    Then you have a behavior, this is a class that implements a SequenceBehavior and it is used to tell the animator what to do when the animation plays. the SequenceBehavior has an OnFrame function that is called on every frame of the animation, OnStart function that gets call at the start of the animation, and an OnStop animation that gets call when the animation stops playing.

    I hope this info helps; also, I attached an example of a custom sequence that shows you how to animate a Box collider that is attached to a sprite. With the script you should be able to animate the center, size, and even the physics material of a box collider .

    Also, on the next update ill include a feature that allows you to implement auto- keyframing for custom sequences. So for now when you use a custom sequence you have to use the timeline in order to create keyframes.
     

    Attached Files:

  16. RSG

    RSG

    Joined:
    Feb 20, 2013
    Posts:
    93
    Free edition now available!


    I'm happy to announce that the free edition of SpriteWorkshop is now available in the asset store. The only difference between the free and the standard version is that the animation editor is only available in the standard version, however, I'm planning on changing that on the next update. Other than that you get the full API :)

    Get it HERE!
     
    Last edited: May 8, 2015
  17. BambooX

    BambooX

    Joined:
    May 24, 2014
    Posts:
    6
    Thanks for BoxCollider2DSequence !
    Do you think it is possible to get rid of the Physics2DMaterial (less files is better !) ? By just setting a game object containing a BoxCollider2D. If you don't see limitation for this I'll will modify the code, otherwise it's not a big deal.
     
  18. sledgeman

    sledgeman

    Joined:
    Jun 23, 2014
    Posts:
    389
    I am playing around with the paid vers. Does anybody know, if there is any demo-content. Maybe something like in the videos. Would be great, because i am learning best by clicking & trying out and so on... ;-) (could imagine, that some example-scenes should be integrated into the *.unitypackage)
     
    Last edited: Jul 5, 2015
  19. RSG

    RSG

    Joined:
    Feb 20, 2013
    Posts:
    93
    ill add some basic examples on the next release :)
     
  20. sledgeman

    sledgeman

    Joined:
    Jun 23, 2014
    Posts:
    389
    Yeah. Thats great ! Thank you very much ! I think this would really help many beginners. Learning by doing...and so on :)
     
  21. jpatinop80

    jpatinop80

    Joined:
    Jul 29, 2012
    Posts:
    55
    Hello, looks great... I have a pre sale question... I want to work with AssetBundle, I saw on trial, that is dll based, so if I create an asset bundle with a gameObject this will work if I instiate? And maybe I could have some problem with apple store? I´m working with android and iOS platform. let me know. thank you
     
  22. RSG

    RSG

    Joined:
    Feb 20, 2013
    Posts:
    93
    You can use the plugin with asset files and asset bundles and it works with Android and iOS :)