Fluid Sim in animation

I have just baked a fluid sim for a project and I am wondering how this data now works. I need to put this fluid sim into an animation with several things happening before and after it. Ideally I need to be able to edit the sim in the dope sheet and graph editor, and I definitely need to be able to keyframe it and use it in the timeline. 

But when I bake the simulation , and then hit play on the timeline, the sim plays as I want, but there is no animation data in there for it. How can I get this so that I can create my whole animation and have flexibility and editability with the frames of the sim?

Thanks in advance :) 

  • Matthew Fricker(frikkr) replied

    Sorry , bumping this because I could really do with help with this , I am running out of time with the project and just can't figure it out. 

    spikeyxxx , any chance you are about? You are usually my savior with these technical issues :) 

  • Jan-Willem van Dronkelaar(3dioot) replied

    Blender is acting up a bit on my side which means I cannot test it but I think what I would do is just export your fluid sim to alembic and import that in. If I remember correctly you can then place the alembic object wherever you want and offset its animation to the time you desire.

  • spikeyxxx replied

    frikkr sorry, I didn't amswer, because  I couldn't think of a way to do this. If you want to make a cookie, you can shape the dough, but once you bake it, the shape is set...

    The sim has special files for each frame, but they are not keyframes. More like data, where each voxel is, if that makes sense.

    I tried using the AnimAll Addon, but that doesn't work either.

    Just tested 3dioot 's suggestion, but couldn't get that to work either, although that could be just me; first time using Alembic..

    So, to recapitulate, as far as I know, it is not possible to edit the fluid sim in any way.

    Maybe somebody else knows a way to do this?


  • Matthew Fricker(frikkr) replied

    3dioot , spikeyxxx  , thanks guys , I really appreciate you trying to help. 

    Just to clear things up , I do not actually want to edit the actual sim animation , I just want it on the dopesheet / timeline so that I can move the sim to different places in time. 

    Basically , It is a brain melting, but there is animation before and after it. This animation is constantly changing as I am working on it , so at the moment , If I bake the sim to say frame 100-150 , but then I shorten some of the animation by 5 frames , then I need to be able to move the sim back 5 frames to start at 95 if you get me. 

    The sim takes around 8 to 10 hours to bake which is why I don't want to keep re-baking it every time I edit and tweak the animation. 

    I've just noticed this though which I might try : 

  • spikeyxxx replied

    frikkr did you try using the NLA Editor?

  • Jan-Willem van Dronkelaar(3dioot) replied

    Its funny frikkr did you even try to use Alembic or did you not bother with it just because spikey said he could not get it to work?

    I downloaded a simple fluid scene from the web so I could circumvent my current blender issue to see if Alembic works fine and of course it does. In this short movie (1:49) I show you how it works:

    https://www.youtube.com/watch?v=Ls2Sq9sttk4&feature=youtu.be 


  • spikeyxxx replied

    3dioot thank you! Now I understand how that works! I still think that in this case the NLA is easier, but it's always good to have alternatives;)

  • Jan-Willem van Dronkelaar(3dioot) replied

    spikeyxxx  

    " I still think that in this case the NLA is easier"

    Do you have a working example? I am really curious how your going to retime baked fluid data through the NLA without exporting it first. Show us please.

    Also there are some additional benefits to exporting to Alembic apart from the fact it allows you to offset. Its a safeguard against losing your precious simdata. If you press bake again by accident in blender and your bake took a few hours you just destroyed your cache.

    The other is performance. I mentioned it briefly in the vid but it really is fast especially when its compared to blender reading from its own cache format.

    But by all means, share your solution with us.

  • spikeyxxx replied

    3dioot you are absolutely right! You can't re-time the sim, but you can shift all the other actions. As for the other benefits you mention, I have no experience there and will take your word for it. Thanks for putting me straight!

  • Matthew Fricker(frikkr) replied

    3dioot , at the time I did not try it simply because I was just coming on to check replys and wanted to clear up what it was exactly that I needed to do so as not to waste either yours , or spikeyxxx 's time.  Until now , I had never used Alembic or even knew what it was , so it was not an option for me to try in the 10 minutes I had to spare yesterday when I wrote my reply.  I have a few hours free now so I will try what you both suggested.

    Thanks again to both of you for your help with this matter. Much appreciated. 

  • Matthew Fricker(frikkr) replied

    ok 3dioot and spikeyxxx , I have managed to find a workaround for my issue , so thanks to you both again for helping out. 

    I also bought the FLIP Fluids addon which is so much quicker and more intuitive than Blenders native fluid system. I highly recommend it. 

    Lastly , I downloaded Alembic to give it a shot as you suggested , but how do you actually get the program to run? I see no .exe file in the alembic folder , and the readme suggests that you need to be some sort of programming guru to "build" an executable  of alembic.....

    Have I downloaded the wrong file because surely it can't be that complicated? 

  • Jan-Willem van Dronkelaar(3dioot) replied

    I made a short youtube video for you in my previous post. Seems you missed it somehow frikkr  .

    https://www.youtube.com/watch?v=Ls2Sq9sttk4&feature=youtu.be 

    You don't need to download anything...

    • Select your fluid mesh.
    • Export > Alembic > Selected objects
    • Open your working blender file you need the fluid sim to be a part of
    • Import > Alembic > your alembic file
    • Select Alembic object and place it where you want
    • Go to modifiers and play with the offset value to change the time it starts
  • Matthew Fricker(frikkr) replied

    Ahh , that is great thanks , sorry I got confused because I thought you needed the alembic software. 

    Thanks again! I can get on with my project now :) 

  • Jan-Willem van Dronkelaar(3dioot) replied

    Glad to hear it helped. Looking forward to seeing your final work! :)