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

NOW PLAYING - Mouse Path Animator - record and playback mouse movements

Discussion in 'Assets and Asset Store' started by imaginaryhuman, Feb 5, 2014.

  1. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
    Mouse Path Animator provides scene-view recording of mouse movements. Mouse recordings are effortlessly turned into beautiful animation paths for objects to follow and align-to in your game!

    $title.jpg
    1) Record 2D mouse movements in the scene view
    2) Edit the recording, tweak and perfect
    3) Play back with a GameObject or Unity Sprite

    Record an amazing mouse performance, apply various edits to make it beautiful, then play back the recording in your scene. Complete with a variety of editing tools, support for delta-timing/keyframes, plus automatic or manual playback.




      • Put life into your sprites, infuse them with personality, convey your intelligence and do away with boring straight/curve-based movement paths for a more organic feel!
      • Makes `drawing` movement paths very fast and easy. Convert an ugly path to a gorgeous smooth path in seconds. Say no to splines!
      • Adjustable playback speed, absolute or relative positioning (delta time only works with world-space positions but becomes relative when an object has a parent GameObject).
      • Realtime WYSIWYG visualization of the actual path in the scene view, not hidden behind separated animation curves. Animates during and after recording.
      • Works with Unity and Unity Pro 3.5+
      • Records in 2D X-Y plane only (side view)
      • Full color manual included + api functions
      • Full Unity-Script source code included and commented
    Fun mini shootemup demo-level game included!

     
    Last edited: Aug 29, 2016
  2. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
  3. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
  4. TechnicalArtist

    TechnicalArtist

    Joined:
    Jul 9, 2012
    Posts:
    736
    Usefull asset
     
  5. Brenden-Frank

    Brenden-Frank

    Joined:
    Aug 5, 2012
    Posts:
    110
    Very cool, will likely check this out
     
  6. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
    mmm I forgot to put the pdf manual online up-front... will be updating the asset shortly with a link to this, and will post the demo game as a webplayer.
     
  7. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
  8. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
    And the included mini shootemup demo scene is now available to play in a web player !

    $002Screenshot.png

    Let me know what score you get! ;)

    All object movements except the `ship` attached to the mouse and the spawning of shots are run by Mouse Path Animator. Particles are powered by Unity's basic particle system from 3.5, but they could've been done with recorded/repurposed mouse paths as well.

    Left mouse click to shoot.
     
    Last edited: Feb 6, 2014
  9. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
    This is what the user interface looks like (minus the scene view part)...

    $MousePathEditor.png
     
  10. EmeralLotus

    EmeralLotus

    Joined:
    Aug 10, 2012
    Posts:
    1,457
    Cool Asset,

    Can the mouse paths be recorded and manipulated in-game ?

    Cheers.
     
  11. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
    Recording is done in the scene view at development time. All of the user interface is Unity's inspector GUI and its interaction with the scene view. It's not possible for this to be running at runtime. It'd have to have an entirely separate GUI system and recording system which would be practically a complete rewrite.

    You can record stuff during development and play back with an object or sprite at runtime. You can access the recorded data at runtime if you want to do something custom with it, maybe manipulate it with your own script, but the provided editing tools are for development only.

    If you want to record mouse movements at runtime you can just store the mouse coordinates in an array over time. Getting it to look smooth or be corrected is another matter.

    The main idea with this tool is like if you're making a game with moving spaceships or other objects that don't need to have AI-driven movements, like in a shootemup like galaga or a side or vertical-scrolling game, then you can simply record and tweak the paths in the editor and then you're good to go. Maybe a tiny bit of extra scripting to coordinate things if you wish. So like you can record a complex path in a matter of seconds, smooth it, tweak it a bit, maybe chop the ends nicely, then you're done. 30 seconds and the whole path is ready, rather than spending like 10 minutes or longer twiddling with the animation window or spline handles.
     
  12. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
  13. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
    Since its release, nobody has purchased this asset, and I think it is because the price is too high. How much do you think it is worth?
     
  14. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
    Mouse Path Animator is now just $15! :D
     
  15. oddbody

    oddbody

    Joined:
    Apr 8, 2014
    Posts:
    5
    Hi,

    I like the extension and was just wondering if you can also record rotation with it.
    It's definitely a feature that would make me want to buy it and use it.
     
  16. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
    Hey, sorry I didn't get any notification that you'd responded to this thread...

    When you record movement you're recording the mouse's position basically, so this allows you to draw `freehand`... angles are then automatically calculated after recording, based on the difference between each sample. The angles can then be used to automatically align objects to the path, or optionally to ignore that alignment.

    You could also make a recording, record the mouse movements, let it generate the angles, then in a bit of custom script just use the angles and not the positions.. perhaps in combination with the positions from some other recording, allowing you to custom-rotate the object separately from the direction the path follows.

    In other news, Mouse Path Animator is going on sale 50% off on May 8th!! :)
     
  17. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
  18. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
  19. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
    Anyone considering a purchase or having just purchased can read the full pdf manual here - it will provide more insight into how the system works and what it is capable of.
     
  20. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
    Big thanks to the 100+ people who bought this asset in the daily deal sale! :)
     
  21. Kaemalux

    Kaemalux

    Joined:
    Aug 1, 2013
    Posts:
    45
    Hi Paul!
    You asset is wonderful, wait a needed for easy implementation of paths in my 2D game.
    I have just a couple of questions:
    - is it possible to record shape path (circle, triangle etc..) somehow, like using some script details or importing them?
    - with "InitializeMousePath();" i can start the path on the object by script, or should i add something else (i'd like to activate not immediately, ex. after trigger or a collision)
    Thanks, have a nice day!
     
  22. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
    Do you mean you want to record a really accurate shape, like a triangle with perfect sides and pointy corners, or a perfect circle?

    You would have to resort to some kind of script to generate the data... you'd need to fill in the arrays with the appropriate coordinate data and then have it calculate the angles etc.

    On option on a circle though, is to hand-record an approximate circle, make it fairly large... and then apply a LOT of smoothing, which will gradually make it start shrinking down and becoming more circular, especially if you change the `span` of the average operation so that it affects more samples. The more you apply it the closer it should get to being circular.

    You can set your object to pause right away and then just trigger it when you want to. You can also directly change the `current frame` from script.
     
  23. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
    I'm looking at updating this asset with some new features. Any requests?
     
  24. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
    This is now at the new price of $30 :) I'm planning out some updates and improvements.
     
  25. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
  26. ChaneDev

    ChaneDev

    Joined:
    Feb 12, 2013
    Posts:
    66
    Hello, thanks for the package. Unfortunately I have an error with my existing project that I am trying to track down to get your package working. I'm not sure what other package is in conflict, but here is the error:

    Assets/MousePathAnimator/Editor/MousePathEditor.js(3061,68): BCE0049: Expression 'temp' cannot be assigned to.

    Unity 4.5.5f1
    I don't get the compile error when opening your package in a clean project.

    Closing and reopening Unity fails to load my editor layout and I have to restore to factory layout so my best guess is that this has something to do with Editor UI.

    Any suggestions?

    Thanks!
    ~C - - -
     
    Last edited: Dec 28, 2014
  27. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
    Hi. Hmm... yes sounds like maybe some other part of your project is using a `temp` variable which may be conflicting. You could find/replace all references to `temp` with some other text, I guess?
     
  28. ChaneDev

    ChaneDev

    Joined:
    Feb 12, 2013
    Posts:
    66
    I could, but it's a bit of a bummer to import an asset into an existing project and have compile errors before I can even see if the asset is something that will work in that context. I'm more of a scripter/non coder so modifying things even like namespaces is something I try to avoid since getting future updates to the assets means I have to reapply the same changes each time.

    It seems like not using a generic named temp variable improves project compatibility, but I don't know if that is possible.

    I payed full price for your asset, and looking forward to playing with it in a new project down the road since I found another solution for what I wanted to use your asset for. Just thought I would give you feedback, especially since the idea is cool.
     
  29. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
    mm ok noted, I will look into renaming it.
     
  30. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
    Last edited: Dec 2, 2015
  31. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
    I'm using Mouse Path Animator in my new shootemup project, for a variety of reasons. Here's 10 good reasons and benefits:

    1) Recording mouse movements are very organic and are filled with subtle human nuances, which actually give a sense of intelligence and character. When you watch the recording back, objects don't just move in totally mathematically smooth curves following some basic path, they follow a more organic path, subtly slowing down and speeding up, deviating from the path etc.... which all goes to give the impression that the object has its own "intelligence" and that it's making decisions about where to go and at what speed and in what way etc. Your own intelligence and human-ness gets embedded into the recording and this comes across in the playback as "character" and "personality".

    2) Recording mouse movements means you can essentially "draw" various aspects of AI without having to do any programming. While it's possible to create curves and splines that are all nicely smooth and so on, if it comes down to things like suddenly slowing down, speeding up, changing direction suddenly, accelerating over time, moving in a not-quite-perfect arc, etc.. these are quite hard and time consuming to implement with spline-based editors. By recording with the mouse you can make it look like an object is stopping, making decisions, changing its mind, finding interest in something and suddenly rushing off, and all kinds of interesting natural-seeming responses.

    3) Recording mouse movements can make enemy movements much less predictable. You'd think that a recording would be just the same again and again, but with some creative use you can for example vary the position that enemies are on a longer recording and offset the position of it, so that it seems like all the enemies are following a similar style of movement but in their own unique way. You lose track of the sense of 'ive seen this before' and it starts to look like all the objects have their very own custom animation. Repetition in games is BORING, so this is a great benefit. Also you'll find with regular spline-based animation path tools that the curves are very smooth and the ships just follow the same basic motions over and over again, it becomes really monotonous, it's very basic to look at, it doesn't give much character or life to the objects etc. How many times have you seen the same enemy basically follow a straight line or a curve from one place to another? It's been done to death.

    4) Recorded mouse positions are relatively quite fast to play back versus having to calculate AI logic scripts to figure out where to go and how to get there. It's even faster than most tweening-based spline tools. All you're doing is pulling up pre-recorded positions from memory and maybe interpolating them (optional) and moving the object to that position.

    5) You can use multiple paths in combination with some kind of state machine so that you can go into certain 'states' or moves like seeking or hunting or hiding or idle or whatever, and have the object play back a recorded animation for each state just as you would with an animator.

    6) Try recording a complicated-looking animation where an object follows a path for like 30 seconds and the path winds and wiggles and has all kinds of unexpected qualities to it, with variations in speed and angle and little areas where the ship spins around and others where it seemingly drifts gently etc only to be followed by some unusual zig-zagging or whatever .... you just then try to CODE that in some kind of script that can generate that kind of behavior - good luck. You could probably mimic that kind of customization and precision with splines, or, even worse, with the animation editor where you have to hand-adjust every single aspect of X/Y movement by hand (separately, not in any WYSIWYG way), and maybe you can eventually come up with the same thing, after a lot more time and struggle and no real intutive way to see what's going on in the scene without hitting play or fiddling with the playback position.

    7) Drawing a complex path can be done really quickly - you can generate a minute's worth of mouse recording in 1 minute, and to reproduce that path in pretty much ANY other tool will take you at least several minutes, and most of those tools will let you set a path approximating the same positions but not the same adjustments to timing or movement speed. So with a mouse path you can record movement position and SPEED between moments all at once.

    8) You can actually put on a "performance" where you express yourself creatively as you record, to create an interesting and human-relatable motion with all kinds of intricate, interesting and quite unpredictable changes. Also let's remember that when a game is less predictable it has much longer replay value and is more of a challenge, so it's great for action games where you want to keep the player challenged and interested without them learning behaviors based on really basic movements. When movement becomes less predictable the player has to become even more SKILLED at precisely aiming at and chasing after the object.

    9) You can lengthen a recording by switching on interpolation which means you can easily turn a 10 second recording into a minute long and it will still look smooth. This can also save a lot of time. There are so many ways to edit the path after recording including smoothing (if you really want smooth instead of organic motion), including normalizing of time (consistent movement speed) instead of organic speed ups and slow downs. Did I mention organic enough times?

    10) It's kinda fun to record because you get to see an object following the path as you record it which means you literally are like 'flying the ship' or whatever it is LIVE and this performance will be played back just as you saw it. It's like a kid flying an airplane through the air and zooming it around, and being able to capture that, and then play it back. It's awesome. And most games don't do motion this way, so it gives you a unique edge! Also you can record 2 paths and then additively BLEND them, or even more paths, so like record a low-frequently coarse movement and then record several 'variations' of subtle wiggling or swaying or whatever and blend them together to create unique higher-frequently qualities. You can do this as many times as you like. Try doing that with any other spline path tool.

    I'm going to use this for all the enemy movements and behaviors in my game to help create a really unique feel and highly original animation. Plus, you know, saving heap-loads of time.
     
    Last edited: Aug 16, 2016
  32. imaginaryhuman

    imaginaryhuman

    Joined:
    Mar 21, 2010
    Posts:
    5,834
    Now a lower price, just $20!