Search Unity

[Released] TFlow - Motion Vector Generator

Discussion in 'Assets and Asset Store' started by matt-tuatara, Oct 3, 2021.

  1. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31

    At Tuatara, we are super happy to announce the release of TFlow !

    Asset Store

    TFlow is a motion vector generator that helps increase the utility and quality of your flipbooks. With provided shader examples it adapts to many rendering pipelines.

    Suplementing SubUV textures with motion vectors to achieve smooth blending is nothing new but up until now this has been a laborious process that required a lot of iteration and guesswork to get decent results.
    Here's an old tutorial by Klemen Lozar explaining the whole process back in time : Frame Blending with Motion Vectors

    TFlow provides a true one-click solution that takes all the guesswork out of the equation and produces amazing results every time, leaving you to focus on your creative work.

    mainframe.jpg GIF 03-10-2021 13-24-47.gif

    Here's what you can find in the package :
    • The baking and previewing tool
    • Shader code library to use motion vectors in your shaders
    • Shader graph functions (VFX Graph, Shader Graph, Amplify Shader Editor)
    • Shaders, materials and scenes examples
    • Support for all render pipelines (URP, HDRP, Legacy)
    With this forum thread we want to gather users feedback and continue improving and extending the tool !
     
    Last edited: Oct 4, 2021
  2. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31
    Here's a quick example of the tool comparing a raw flipbook and the same flipbook running with optical flow and associated motion vectors.

     
    one_one and hippocoder like this.
  3. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    This is amazing! I love it and want to know more. What's the performance like, and is there a node for just flipbook animated textures? I might have a looping video on a TV screen in a game for example, anything really!

    How about tiling textures, do these still work? I have use-cases for such things!

    Don't be shy and let us know all the juicy details!
     
  4. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31
    Thanks @hippocoder !

    The purpose is to optimize performances. There are two main use case for optical flow :
    - Optimizing flipbook texture by lowering frame count while keeping a great motion
    - Having super smooth flipbook animation by blending frames using pixel motion data (motion vectors)

    The cost is not significant, you just have to use another texture but you can keep it low resolution and you have two additional texture samples. It's always a trade off depending on your use case and project constrains.

    You will find examples on how to use motion vector textures for any pipeline and with any shader.

    Optical flow is mostly used with vfx but as we provide shader nodes and shader code you can use it in any other situation, like your looping TV screen (there's an option for looping flipbook in the baking tool)
    We are quite curious about any other use case.

    That's a good question, right now I don't see why this wouldn't work. As long as you can tile your flipbook it should work out of the box.
     
    hippocoder likes this.
  5. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31
    Also, here an example with the particle system. It's super easy to setup.
     
    one_one and hippocoder like this.
  6. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Awesome! About other use-cases, I expect tiling textures to work fine, and also normal maps? granted there would be some distortion with normals, but is tiling messed up by the motion vectors or handled?
     
  7. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31
    Hey @hippocoder !
    Yeah normal maps will just work fine, we have a simple example in the package.
    I'm curious about tiling textures, do you have a specific use case ?
     
  8. AtomicIsland

    AtomicIsland

    Joined:
    Sep 20, 2018
    Posts:
    12
    Hi there, I am interested in purchasing your TFlow asset for Unity, but first I would like to know if your asset supports image sequences as well as flipbooks. I have a sequence of images that I rendered in another program, and the resolution is too large for the images to fit on a single flipbook image. Would it be possible for me to set up a shader in the Shader Graph using your asset, so that it will add the smoothing effect to the sequence consisting of multiple image files?
     
  9. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31
    Hi @rclrobertson
    Thanks for your interest for our tool. For the moment we only supports flipbooks but thanks to your suggestion, we added in our todo list the possibility to build motion vectors from an array of textures.

    Concerning shader, that won't change anything. The blending behavior would be the same, you would just have to change the way you provide data to your shader. We provide nodes for every step and every graph tool (amplify and unity shader graph) and also source code.
     
    AtomicIsland likes this.
  10. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31
    TFlow generated motion vectors also works with the VFX Graph out of the box !
    Also if you don't want to manually set the Motion Vector Scale value, we provide an example on how to get it from the texture with a few nodes.

     
  11. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31
    Good news everyone !​

    We now support images sequence in addition to flipbooks.
    Release 1.1.0 is pending.

    tflow.gif
     
    AtomicIsland and Deleted User like this.
  12. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31
    Here is another example of the power of the motion vectors.

    FC4u1K1VUAYhGn3.gif
     
    Last edited: Oct 29, 2021
    Deleted User likes this.
  13. kevin-masson

    kevin-masson

    Joined:
    Sep 24, 2018
    Posts:
    73
    Hey guys, we have a new feature coming for TFlow.

    On some platforms, you may not want to use more texture memory to achieve smooth blending, or maybe you just can't bake motion vector ahead because you are simulating in real-time. For this use case, we want to provide runtime optical flow.

    Motion vectors are computed at runtime in the fragment shader by calculating the difference between two frames.

    Before releasing that feature, we would like to hear from you guys, to know if it's something you need and what are your use cases.

     
  14. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31
    Hey everyone,​

    We just released a WebGL demo so you can experience TFlow and see how optical flow affects flipbooks motion.

     
  15. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31
  16. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31
    Hey everyone,​

    For Valentines Day we slowed down this super cool simulation from Daniël van der Kaaden and used only 14 frames.
    Thanks to TFlow and motion vectors, blending is super smooth ;)

    Get TFlowhttp://u3d.as/2F5t

    GIF 15-02-2022 09-36-18.gif
     
  17. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31
    Hey everyone, two good news in a row !​
    • We just released a new version of TFlow which allows you to bake motion blur from your flipbook.
    • TFlow is currently at 50% off !
    Here's an example of the process.

    TFlow_Promo_4.gif
     
    blueivy likes this.
  18. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31
    Here's another use case for TFlow !
    Doesn't need to only apply on pyrotechnics

    TFlow is still at 50% off !

    Get TFlow ❱ http://u3d.as/2F5t

    TFlow_Promo_5.gif
     
    one_one likes this.
  19. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31
    Here's another example with nice smoke plumes and how TFlow can increase motion quality even with a lower frame count.

    GIF 17-03-2022 08-30-04.gif

    Get TFlow ❱ http://u3d.as/2F5t
    Also don't forget to rate the package ;)
     
  20. michailhabun

    michailhabun

    Joined:
    Nov 26, 2015
    Posts:
    2
    Hello, this shaders will work on android or ios ?
     
  21. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31
  22. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31
    Yeah, those shaders use an additional texture called motion vectors to do the smooth blending. This results in only one more texture sample compared to the alpha blending technique.

    Also don't forget to check the Color Space property set in your Player Rendering settings.
    • If you are using Linear color space, every motion vector texture format should work.
    • If you are using Gamma color space, you can only use PNG or Targa formats.
     
  23. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31
    Here’s another example of TFlow in action, use it to add smooth interpolation to any texture in one click !
    Get TFlow http://u3d.as/2F5t

     
    Last edited: Mar 29, 2022
  24. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31
    Here's our latest promo video !
    You can find all the previous examples and see how simple the workflow is.

     
  25. matt-tuatara

    matt-tuatara

    Joined:
    Oct 3, 2021
    Posts:
    31
    TFlow is 50% off during New Year Sale on the Asset Store !

    Get ithttps://u3d.as/2F5t


     
  26. kevin-masson

    kevin-masson

    Joined:
    Sep 24, 2018
    Posts:
    73
    We wrote a new documentation for TFlow! We switched from Google Docs to Notion. It's so much easier to find your way in the docs. Tell us what you think :)

    docs.tuataragames.com

    Untitled-1.png
     

    Attached Files:

    matt-tuatara likes this.
  27. kevin-masson

    kevin-masson

    Joined:
    Sep 24, 2018
    Posts:
    73
    New update of TFlow v1.3.0 available!
    • Support for Android platform
    • Built-in dedicated scene and shader examples
    • Amplify URP, HDRP and built-in scene and shader examples
    • Brand new documentation

    Get ithttps://u3d.as/2F5t
     
    matt-tuatara likes this.
  28. Dobalina

    Dobalina

    Joined:
    Sep 6, 2013
    Posts:
    105
    The product looks very nice! Judging from the videos it supports both alpha and additive particles, how about clipped masked alpha? ie: a spinning bullet case.
     
  29. kevin-masson

    kevin-masson

    Joined:
    Sep 24, 2018
    Posts:
    73
    If you smooth a mask alpha value (0 or 1) you will end up with a smooth alpha value [0 to 1]. However you can always modify the shader to force the alpha value to be masked.

    Motion vectors work better with organic shape than simple shapes, but it can give good results in some scenarios. Here bellow is a disk rotating around the center. In that case TFlow is able to generate motion blur and a slow motion version of the animation.

    rotate.gif