Search Unity

Smooth Moves - 2D Skeletal Animation

Discussion in 'Assets and Asset Store' started by echo17, Feb 20, 2012.

  1. Game-Whiz

    Game-Whiz

    Joined:
    Nov 10, 2011
    Posts:
    122
    Took a closer look, and the problem is not the Awake in BoneAnimation (although those calculated data structures could also be saved, to avoid calculating them al runtime).

    The problem is the fact that you're serializing all the data, instead of the data needed to just play the animation (i.e. serialized data includes many things you only need in the editor, not at runtime). This makes the scene files very big and that takes time to load in lower end devices.

    Are there any short term plans to correct this?
     
  2. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    Sounds like you have extra stuff in your scene not related to SmoothMoves that might be causing the slow load time. My iPhone 4 loads 10 chefs in about 15 seconds, including loading the Unity framework. Here's a video of the results:

    [video=youtube_share;GMey5MTcvDM]http://youtu.be/GMey5MTcvDM

    Try removing anything else before your test to get a better benchmark of the load times. You might also want to try closing other apps on your device since that will take resources away from the test.
     
  3. Game-Whiz

    Game-Whiz

    Joined:
    Nov 10, 2011
    Posts:
    122
    Thanks for the quick reply.

    I'm sorry, I forgot to mention that I duplicated the Dying clip 40 more times, to replicate some real app scenarios. 10 characters with 50 complex clips is a pretty simple scene in a game like Fangz for instance, and I got it to load in a order of magnitude less time and memory at the time.

    What I did for Fangz was to strip down BoneAnimation to what was needed for the runtime and nothing else. It was quite some time ago, so please forgive me if I'm not recalling things correctly.

    In the current version of SmoothMoves, BoneAnimation seems to be similar to what it was in the past, and it contains a lot of superfluous data, only of use in the editor and not when running the game. This makes loading more complex scenes very time and memory consuming on slightly older hardware, which unfortunately still represents a great chunk of the market.

    SM's GUI is now much better and I'd like to use it, but as it is, I'll have to rewrite BoneAnimation again :(.

    Is there a chance that you can take a look at this in the short term? There's also the issue of several identical characters each using their own data structures (instead of sharing one) that could be tackled at the same time.

    A simple test with a chef with 50+ clips (replicate the most complex one), will show you the issue.


    EDIT: Looked at the code and remembered something else. I also removed any reference to BoneAnimationData in BoneAnimation, since if you have a reference, Unity will load the data anyway. This made the workflow clunkier, since I removed the reference after building the BoneAnimation and I had to put it there again if I wanted to recreate the BoneAnimation.


    EDIT2: The more I look at your code, the more I remember. You seem to have done what I did, and bone animation now doesn't rely on the data in BoneAnimationData at all. It seems really strange the disparity of loading times I'm getting between an iPhone 4 and an iPad 3, so I'm wondering if this is not a bug in Unity's serialization (the iPhone 4 may have a different code path for serialization).

    Please let me know if you're getting similar times. If so, I'll try to use a file to save and load boneAnimation instead of relying on serialization, to see if I can get better loading times. If that works, it's a Unity bug.


    EDIT3: Tested with Unity 4.6 (beta) and it's night and day. Apparently a lot of work was done in serialization in this build and I can load 21 chefs with 50 clips each in 12 seconds on an iPhone 4.

    All I need now to be able to move everything to SmoothMoves 2 is support for character instantiation, without duplication of data structures, to save memory. Is this something that's feasible soon?
     
    Last edited: May 22, 2014
  4. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    That's good news! I'm glad Unity has improved the serialization in the upcoming release. Thanks for the info

    I had experimented with this in versions prior to 2.0.1, but I was getting issues where changing a value on one animation would update other animations as well (because the data was shared). Breaking out the data into each individual BoneAnimation fixed this. It does cause a lot of duplication in the initial state of the animations, but since the individual animations will likely vary later on (due to texture swaps, color changes, etc), the extra overhead is worth the ability to have this variation. It is definitely a compromise and won't be optimized for all situations, but it works across the board for a large number of scenarios. Quick answer: no, there are no plans to incorporate a shared data source for animations in the short term.
     
  5. Game-Whiz

    Game-Whiz

    Joined:
    Nov 10, 2011
    Posts:
    122
    Fair enough.

    BTW you can already test with 4.5. Serialization is now much quicker.

     
  6. HKSpadez

    HKSpadez

    Joined:
    Apr 24, 2013
    Posts:
    87
    Hey echo. Is there a way to get the current frames and # of frames remaining for an animation?
     
  7. Bryan77

    Bryan77

    Joined:
    Jun 9, 2014
    Posts:
    24
    Hello. I'm trying to get Smoothmoves to work, but I'm running into an issue.

    I am trying to follow this tutorial



    Yet when I create the Atlas Data I get these two errors being repeated.

    NullReferenceException: Object reference not set to an instance of an object
    SmoothMoves.TextureAtlasInspector.OnInspectorGUI ()
    UnityEditor.InspectorWindow.DrawEditor (UnityEditor.Editor editor, Int32 editorIndex, Boolean forceDirty, System.Boolean& showImportedObjectBarNext, UnityEngine.Rect& importedObjectBarRect, Boolean eyeDropperDirty) (at C:/BuildAgent/work/aeedb04a1292f85a/Editor/Mono/Inspector/InspectorWindow.cs:1124)
    UnityEditor.DockArea:OnGUI()



    Unexpected top level layout group! Missing GUILayout.EndScrollView/EndVertical/EndHorizontal?
    UnityEditor.DockArea:OnGUI()



    Then of course when I drag my textures into the atlas editor, they don't actually get copied there. So right now I can't even do anything. I'm an artist, not a programmer, so when it comes to code, I don't know what to do.
     
  8. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    Sorry for the late reply. It seems Unity has stopped sending emails when someone posts here so I didn't see this come in.

    For the current frame, you could do something like this:

    Code (csharp):
    1.  
    2.  
    3.   public SmoothMoves.BoneAnimation boneAnimation;
    4.   public string animationName;
    5.  
    6.   void Update ()
    7.   {
    8.       Debug.Log(boneAnimation[animationName].frameInt % boneAnimation[animationName].totalFrames);
    9.   }
    10.  
    11.  
    This just takes the current frame and does a modulus with the total number of frames. The modulus is necessary in case of looping.

    For frames remaining you'd just subtract this value from the total frames, something like:

    Code (csharp):
    1.  
    2.  
    3.   public SmoothMoves.BoneAnimation boneAnimation;
    4.   public string animationName;
    5.  
    6.   void Update ()
    7.   {
    8.       Debug.Log(boneAnimation[animationName].totalFrames - (boneAnimation[animationName].frameInt % boneAnimation[animationName].totalFrames));
    9.   }
    10.  
    11.  
     
  9. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    I'm assuming you are using Unity 4.5? This is a bug in the new version of Unity that doesn't properly reimport dll's after you add them to a project, replacing what is currently there. Have a look at this FAQ for more information:

    http://www.echo17.com/forum/index.php?topic=247.msg2096#msg2096
     
  10. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
  11. atmuc

    atmuc

    Joined:
    Feb 28, 2011
    Posts:
    1,166
    does this asset support Windows Store Apps and Windows Phone 8?
     
  12. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    Yep, it supports WP8. I haven't tested on the Windows store, but I don't see any reason why it would not work there. Have a look at the product description on the Asset store for a listing of features and compatible platforms:

    https://www.assetstore.unity3d.com/en/#!/content/2844

    Also, take a look at this FAQ: http://www.echo17.com/forum/index.php?topic=247.msg378#msg378

    The only platform I know of that will not work is Flash, but Unity has discontinued that platform anyway.

    If you want to try it on other platforms, you can download the FREE minigame "Rise of the Dough" from the Unity Asset Store. This minigame uses SmoothMoves for all of its animations, so if it builds and runs on the platform you choose, then the plugin should work on that platform too.

    Rise of the Dough: https://www.assetstore.unity3d.com/en/#!/content/5162
     
  13. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    SmoothMoves 2.4.1c Approved and in the Asset Store

    Download here: https://www.assetstore.unity3d.com/#/content/2844

    Be sure to back up your work and download the update into a new project. You can copy the code over into your current projects using your OS's file system to ensure no import errors occur. See this FAQ for more information on upgrading:

    http://www.echo17.com/forum/index.php?topic=247.msg361#msg361

    Check out this link for a complete list of changes:

    http://www.echo17.com/forum/index.php?topic=2.0

    FYI, you can follow these updates on my Facebook, Google+, and Twitter feeds as well (links in my signature)
     
  14. dorukai

    dorukai

    Joined:
    Apr 16, 2014
    Posts:
    6
    Last edited: Jul 4, 2014
  15. Truce

    Truce

    Joined:
    Sep 13, 2013
    Posts:
    4
    Hey echo17,

    I'm working on Smooth Moves characters for a project and noticing that body parts consistently get stuck when Local Scale is set in a keyframe. For example, when we create a clip that reverses the character's head using a negative scale value, the scale will "stick" on the value it is at when the animation stops. This new scale value will persist until we play another clip that changes it explicitly.

    My expectation would be that frame 0 of each animation would key each and every property to avoid this, but it seems that Local Scale may be the exception. If this is the intended behavior, can you suggest a workaround to correct this?

    Thanks!
     
  16. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
  17. gfnfhhfdhfd

    gfnfhhfdhfd

    Joined:
    Mar 13, 2013
    Posts:
    12
    Hi,

    I just purchased Smooth Moves for Unity. I am going through the video tutorials now, but what I eventually need is a in-game system that can swap out different body parts. For instance, in the Chef example there's the head, arms, hands, feet, etc. etc. I just want to swap out one part (e.g., a different head). This needs to be done while the game is running. How can I do this?
     
  18. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    Check out the included minigame "Rise of the Dough". You'll see in the ROTD_Chef.cs script, PickUpWeapon function that I swap out the weapon bone with different textures: rolling pin, knife, cleaver.

    Also, check out this FAQ: http://www.echo17.com/forum/index.php?topic=247.msg373#msg373

    and this Video:
     
  19. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    Check out DiverDogs, a new game available on the iTunes, Google, and Amazon stores. Animations were made using SmoothMoves!

    DiverDogs

    Website | GamePlay | iTunes | Google | Amazon

     
    Last edited: Jul 24, 2014
  20. gfnfhhfdhfd

    gfnfhhfdhfd

    Joined:
    Mar 13, 2013
    Posts:
    12
    Hi echo17,

    I have an issue where the assets I am currently using are "head on" (characters are facing the camera rather than facing left or right). Kind of like this example I found on YouTube:


    How can I create a walk animation using this perspective in SmoothMoves? (e.g., walking towards the camera) Have you seen this done anywhere else?
     
  21. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    Haven't tried it myself, but here's one way that might work:

    You could move the leg bones upward and scale them down a little to simulate the legs moving away from the camera. Conversely, move them downward and scale them up to simulate moving toward the camera. You could also switch out the textures at some point in the cycle to show the leg bending at the knee, instead of straight when it touches the ground.

    Here are some links I found Googling that might help out:

    http://www.polykarbonbbs.com/showthread.php?t=15070

    https://www.google.com/search?q=2d walk cycle front view&client=firefox-a&hs=FyK&rls=org.mozilla:en-US:eek:fficial&channel=sb&tbm=isch&tbo=u&source=univ&sa=X&ei=6M3gU_qpGeKd8QHi44DYAw&ved=0CBwQsAQ&biw=1280&bih=901



     
  22. gfnfhhfdhfd

    gfnfhhfdhfd

    Joined:
    Mar 13, 2013
    Posts:
    12
    Hi echo17,

    Thanks for your help.

    This is possibly the last question I will have for you. How flexible is SmoothMoves with regards to programatically changing the BoneAnimation at runtime (if it can at all). If "Update Colors" on the BoneAnimation is set to fault, I assume I can change the coloring of the assets. But say I want to scale, rotate, or position the assets differently, is this at all possible? Any way to hack it so I can? (FYI: I am interested in making a character customization screen, say the user could move the eyes to be narrower or wider apart)
     
  23. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    Yep, you can do a little modification. You won't be able to change the animation curves, but you can overwrite the bone position, rotation, and scale to any value at runtime. You just need to be sure your modifications happen in the LateUpdate function of your monobehaviour script so that they happen after Unity's animation processes.

    Have a look at this FAQ for more information: http://www.echo17.com/forum/index.php?topic=247.msg347#msg347
     
  24. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
  25. Chaosgod_Esper

    Chaosgod_Esper

    Joined:
    Oct 25, 2012
    Posts:
    295
    Hi there..

    I've a small problem with changing the color of Bones at runtime..

    It seems like the original color blinks up for some frames, until SM updates it to the new one. That happens on every scene change or queue played animation..

    Update Color is checked.
     
  26. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    Hmmm... haven't seen that one. Not sure what might be causing that without seeing an example project. If you want, you can send me a project using the information in this FAQ: http://www.echo17.com/forum/index.php?topic=247.msg800#msg800

    You could also try debugging the runtime code which might give you a clue as to what is happening. In the BoneAnimation.cs script, you'll see a function called UpdateColors, which in turn calls SetBoneColor. Most of the color processing is done here, with some calls out to EvaluateAnimationBoneColor on the animation clip.
     
  27. anpShawn

    anpShawn

    Joined:
    Oct 1, 2012
    Posts:
    18
    Picked this up from the sale, hope to try some things out tomorrow.

    A quick question- will smooth moves be compatible moving forward into Unity 5? I've read that smooth moves uses the legacy animation system, and I'm not quite sure what will happen with that in Unity 5.
     
  28. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    I doubt that would go away because that would mean all 3d animations created in previous versions would be useless. Very unlikely they would get rid of that and alienate 90% of people's work. Keep in mind that SmoothMoves is actually 3d animation that just happens to look flat like 2d animation.
     
  29. anpShawn

    anpShawn

    Joined:
    Oct 1, 2012
    Posts:
    18
    Makes sense, thanks!

    So far I have the atlas set up, about to test some animating. Another question though- Are there any issues with modifying the bones/animations after creation? Say I make a bunch of animations for a character, but later down the road I decide I want that character to have a hat attached to them. Can I add a hat bone and then add the hat animations into my existing clips without conflict?
     
  30. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    Yep, you can add clips and bones in any order. When you create a new bone it adds it to all the existing clips for you. When you create a new clip it creates a set of current bones for the clip.
     
  31. gfnfhhfdhfd

    gfnfhhfdhfd

    Joined:
    Mar 13, 2013
    Posts:
    12
    Hi echo17,

    Is there any way to change the shader _TintColor of the BoneAnimation? I did this through boneAnimation.renderer.material.SetColor ("_TintColor",color), but the effect doesn't last. Setting the color through SetBoneColor(bone,color,1f) works, but it doesn't change the _TintColor like I want to.
     
  32. gfnfhhfdhfd

    gfnfhhfdhfd

    Joined:
    Mar 13, 2013
    Posts:
    12
    Nevermind, figured it out, have to use shared material.
     
  33. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    SmoothMoves 2.5.0 Approved and in the Asset Store

    Download here: https://www.assetstore.unity3d.com/#/content/2844

    Be sure to back up your work and download the update into a new project. You can copy the code over into your current projects using your OS's file system to ensure no import errors occur. See this FAQ for more information on upgrading:

    http://www.echo17.com/forum/index.php?topic=247.msg361#msg361

    Check out this link for a complete list of changes:

    http://www.echo17.com/forum/index.php?topic=2.0

    FYI, you can follow these updates on my Facebook, Google+, and Twitter feeds as well (links in my signature)
     
    Last edited: Sep 16, 2014
  34. Chaosgod_Esper

    Chaosgod_Esper

    Joined:
    Oct 25, 2012
    Posts:
    295
    Epic! But not really useful for me :)
    But it's great to see my favorite Asset being worked on!
     
  35. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    SmoothMoves 2.5.0b Approved and in the Asset Store

    Download here: https://www.assetstore.unity3d.com/#/content/2844

    Be sure to back up your work and download the update into a new project. You can copy the code over into your current projects using your OS's file system to ensure no import errors occur. See this FAQ for more information on upgrading:

    http://www.echo17.com/forum/index.php?topic=247.msg361#msg361

    Check out this link for a complete list of changes:

    http://www.echo17.com/forum/index.php?topic=2.0

    FYI, you can follow these updates on my Facebook, Google+, and Twitter feeds as well (links in my signature)
     
  36. Dunkelheit

    Dunkelheit

    Joined:
    Sep 3, 2013
    Posts:
    81
    Hi echo,

    Is it possible to force sorting layer and its order with Smooth Moves? Because even it renders sprites on different Z axis, it could drawn the final image wrong because the sorting layer if it is not configured.

    Thanks.
     
  37. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    Yep, you can place a simple script on your BoneAnimations that will allow you to override the sorting layer and order. Something like:

    Code (CSharp):
    1.  
    2. using UnityEngine;
    3. using System.Collections;
    4.  
    5. public class Sorting : MonoBehaviour
    6. {
    7.     private SkinnedMeshRenderer _renderer;
    8.  
    9.     public string sortingLayerName; // The name of the sorting layer
    10.     public int sortingOrder; // the order in the layer
    11.  
    12.     void Awake()
    13.      {
    14.         // cache the renderer for faster access later
    15.         _renderer = gameObject.GetComponent<SkinnedMeshRenderer>();
    16.      }
    17.  
    18.     void Start ()
    19.     {
    20.         // Set the sorting layer and order
    21.         _renderer.sortingLayerName = sortingLayerName;
    22.         _renderer.sortingOrder = sortingOrder;
    23.     }
    24. }
    25.  
     
    Dunkelheit likes this.
  38. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
  39. Metachs

    Metachs

    Joined:
    Oct 15, 2014
    Posts:
    1
    Is it possible to get diffuse shaders working properly with smooth moves animations?
    I haven't purchased it yet, but a friend of mine who has said he couldn't, and when I tooled around with his project I couldn't either.

    Using diffuse shaders always had the sort of "x-ray" effect where lighting effects show through overlapping sprites/bones that also occurs when stock unity sprites are on the same layer. I tried everything I could think of to get bones on different layers, but it always seemed to draw the actual sprites on the same layer, regardless of what sprite layers, orders or Z axis positions I tried to set. Vertex lit and cutout shaders did work, but look ugly (IMO).

    Smooth moves seems like a very nice tool, but if it won't let me use diffuse shaders, I have no use for it.
     
  40. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    SmoothMoves generates a skinned mesh that Unity uses to render. The rendering is totally on Unity's side of the fence, so if you can use a particular material / shader with a normal skinned mesh, you will be able to use it with SmoothMoves.

    FYI, if you want to experiment with the runtime, you can download the FREE minigame on the Asset Store, Rise of the Dough: https://www.assetstore.unity3d.com/en/#!/content/5162 You can modify the materials / shaders and see if what you are trying to accomplish can be done with SmoothMoves.
     
  41. gfnfhhfdhfd

    gfnfhhfdhfd

    Joined:
    Mar 13, 2013
    Posts:
    12
    I want to make it such that my BoneAnimation receives mouse click events on all the different bones, and mouse-click-drag events allow the user to move bones to different positions (translation only). How can I do this?
     
  42. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    First, you'd want to cast a ray into your scene and see if it hits any bone colliders. If so, you can store the bone transform. In the LateUpdate, you can then move the bone transform based on the mouse's position. Here's a really simple script to get you started:

    Code (CSharp):
    1. using UnityEngine;
    2. using System.Collections;
    3. using SmoothMoves;
    4.  
    5. public class MoveBones : MonoBehaviour
    6. {
    7.     private Transform _boneTransform = null;
    8.  
    9.     public Camera mainCamera;
    10.     public LayerMask touchLayerMask;
    11.  
    12.     public BoneAnimation boneAnimation;
    13.  
    14.     void Update ()
    15.     {
    16.         if (Input.GetMouseButtonDown(0) && _boneTransform == null)
    17.         {
    18.             CheckBoneHit(Input.mousePosition);
    19.         }
    20.         else if (Input.GetMouseButtonUp(0))
    21.         {
    22.             _boneTransform = null;
    23.         }
    24.     }
    25.  
    26.     void LateUpdate()
    27.     {
    28.         if (_boneTransform != null)
    29.         {
    30.             Vector3 screenWorldPoint = mainCamera.ScreenToWorldPoint(Input.mousePosition);
    31.             _boneTransform.position = new Vector3(screenWorldPoint.x, screenWorldPoint.y, boneAnimation.transform.position.z);
    32.         }
    33.     }
    34.  
    35.     private void CheckBoneHit(Vector2 screenPosition)
    36.     {
    37.         Ray ray = mainCamera.ScreenPointToRay(screenPosition);
    38.         RaycastHit hitInfo;
    39.  
    40.         if (Physics.Raycast(ray, out hitInfo, float.MaxValue, touchLayerMask))
    41.         {
    42.             _boneTransform = hitInfo.collider.transform;
    43.         }
    44.     }
    45. }
    In this example, once you release the mouse button, the bone will snap back and play normally since it is no longer being overridden in the Late Update function. You may need to modify that to suit your needs.

    Some more notes about this script:

    - The camera will need to be an orthographic projection to get the position in the late update
    - The bones you want to move need to have the layer set the same as the touchLayerMask in the script
    - The bones need to have a collider set for the duration of any animations where they will need to be selected

    Here are some links that might help:

    http://docs.unity3d.com/ScriptReference/Camera.ScreenToWorldPoint.html
    http://docs.unity3d.com/ScriptReference/Camera.ScreenPointToRay.html
    http://www.echo17.com/forum/index.php?topic=247.msg347#msg347
     
  43. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    13,358
    The solution to this is to move the actual Z axis a bit for every item (supported inside the editor). I have been doing it with all my 2D creatures i use inside my 3D game.
     
  44. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    Ah, that is a simple and elegant solution. Thanks for sharing!
     
  45. nasos_333

    nasos_333

    Joined:
    Feb 13, 2013
    Posts:
    13,358
    np :), i remember asking you about it a while back and i was surprised that it was already a feature in the asset :), now i use it in all my 2D creatures.

    It is a life saver for depth based rendering and also enables a lot more tricks and possibilities
     
  46. gumboots

    gumboots

    Joined:
    May 24, 2011
    Posts:
    298
    Hi there!

    I just had a browse through the F.A.Q., and couldn't find my question, but I apologise if it exists!

    Basically I'm wondering if it's possible to setup an animation, with different sprite variations on top of each other. (e.g. clothing sprites) and toggle them programatically at run time? I can't duplicate the bone animation, because there's heaps of possible combinations, so I need to be able to have any combination but use all the animations.

    Is this possible? I do apologise if you've had to answer this before!
     
  47. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
  48. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
  49. Kiori

    Kiori

    Joined:
    Jun 25, 2014
    Posts:
    161
    have you thought about creating a Spriter(brashmonkey) import system? they re looking for a way to integrate into unity, and smooth moves has the same set of features they have. if you simply made the bridge possible, then every spriter user would be a smooth moves user, on unity.
    They would use spriter to create the anims, and SM to finish/implement them.

    Now another question, i saw the playmaker integration, does it require simpleSQL to run? "Extract, then import into a project with Playmaker and SimpleSQL"

    Also have you tested the performance with thousands of simple units that perform only one animation, on screen?

    Thanks againn
     
  50. echo17

    echo17

    Joined:
    Nov 24, 2011
    Posts:
    1,252
    I have not looked at the Spriter program, but thanks for the tip!

    Sorry, that was a typo. SimpleSQL is not required to run SmoothMoves and Playmaker, only the SmoothMoves and Playmaker plugins.

    This would not perform well since each animation is a skinned mesh. If you are just doing simple sprite animation, I'd recommend Unity's animation tools for these. SmoothMoves is designed for your more complex animations.