Log into your account to keep track of your progress. You can work through the lessons without logging in but your progress will be lost when you refresh the page.

Learn how to use Houdini, SideFX Labs tools, and Unreal Engine to create a complex and detailed lightning strike attack FX. The series features step by step breakdowns for the many different elements of this effect, including Unreal Niagara particle system, Blueprints, Houdini lightning generator, RBD sims, Vellum grains, pyro smoke sims, flipbooks, and terrain-adaptive vertex animations.

These lessons use the SideFX Labs tools. Make sure the latest release (non production build) is installed when doing this lesson.



  • wlhendr_wttr 2 years, 2 months ago  | 

    Are there source UE files available for download?

    • sICFX 2 years, 2 months ago  | 

      Hopped from YouTube looking for the same. It's not a beginner tutorial, so you or me are not eligible to continue this tutorial. [facepalm]

  • sdugaro 2 years, 2 months ago  | 

    Great tutorial, Ben. Nice to see something so multilayered, complex, and complete.

  • kinoko 2 years, 2 months ago  | 

    Does anybody happen to know the missing material functions inside the MF_evaluateMDC Node, mine seems to have a bunch https://gyazo.com/15d60f7250054a4a1ce28d7db105b4de

  • Igor Che 2 years ago  | 

    The same problem

    • Benc71 2 years ago  | 

      Make sure you have the newest SideFX labs plugin installed in your unreal project and it will have all the material functions.

  • Igor Che 2 years ago  | 

    5.0EA is the version I use for unreal(5.0.2), can't find the latest. I did some reconections in blueprint and material functions and the material started working for me, but I'm not sure that I did everything correctly (connections between nodes and right nodes)can you make some printscreens showing the correct nodes location to check and put the correct ?

  • Benc71 2 years ago  | 



    Here is what it looks like. Let me know if you have any more problems.

    • Igor Che 2 years ago  | 

      Many thanks ! Ok

  • yusukej 1 year, 10 months ago  | 

    Hello Benc71,

    Thank you very much for this tutorial !

    I don't know if you can help me but I have a little problem when I'm trying to use "Flipbook Textures" node of SideFXLabs.

    I have these errors :

    - When I click on "Export All Textures" :

    Traceback (most recent call last):
    File "labs::Driver/flipbook_textures::1.0/export_all", line 1, in <module>
    File "C:/PROGRA~1/SIDEEF~1/HOUDIN~1.383/houdini/python3.7libs\hou.py", line 49346, in __getattr__
    return _hou.HDAModule___getattr__(self, name)
    AttributeError: 'module' object has no attribute 'exportAll'

    - When I click on "Flipbook Textures" node to create it :

    Traceback (most recent call last):
    File "labs::Driver/flipbook_textures::1.0, PythonModule", line 4, in <module>
    ImportError: cannot import name 'manage_ocio' from 'labutils' (C:/Program Files/Side Effects Software/sidefx_packages/SideFXLabs19.0/scripts/python\labutils.py)

    - When I open Houdini :

    opalias: The alias 'labs::retime' has the same name as an existing operator.

    Thanks a lot again !

    • yusukej 1 year, 10 months ago  | 

      Now I have a new error when I click on "Export All Textures" :

      Traceback (most recent call last):
      File "labs::Driver/flipbook_textures::1.0/export_all", line 1, in <module>
      File "labs::Driver/flipbook_textures::1.0, PythonModule", line 1320, in exportAll
      File "labs::Driver/flipbook_textures::1.0, PythonModule", line 1311, in exportAll
      File "labs::Driver/flipbook_textures::1.0, PythonModule", line 1301, in exportTexture
      File "labs::Driver/flipbook_textures::1.0, PythonModule", line 1294, in exportTexture
      File "C:/PROGRA~1/SIDEEF~1/HOUDIN~1.383/houdini/python3.7libs\houpythonportion\ui.py", line 1081, in decorator
      return func(*args, **kwargs)
      File "C:/PROGRA~1/SIDEEF~1/HOUDIN~1.383/houdini/python3.7libs\hou.py", line 71976, in render
      return _hou.RopNode_render(self, *args, **kwargs)
      hou.OperationFailed: The attempted operation failed.
      Error: Cook error in input: OUT_TEX1.

      • CBassRedz 8 months, 3 weeks ago  | 

        yusukej What was the beginner mistake that cause that error,

        Or someone can help me. I don't get it.

    • kinky 1 year, 10 months ago  | 

      Hello yusukej,

      Do you mind sharing how to fix them? Kinda stuck here with this, flipbook textures node is not usable at this moment, got all the errors you had.

      thanks in advance,

  • yusukej 1 year, 10 months ago  | 


    It's ok thanks I solved this problem, it was a beginner mistake..

    But I have another problem with the last video "Terrain-Adaptive VAT".

    It does not work at all.

    I have the same textures as you but my material preview (the sphere preview) in UE5 does not look like yours..

    And my little pieces of ground don't collide with the cube..

    Can you help me please ?

    Thank you in advance !

  • yusukej 1 year, 10 months ago  | 


    Sorry it's ok, it was my "Render_Target" Texture that would not refresh, so I deleted and created a new one and now it's ok!

    Thanks all!

  • 3d.artist.neumann 1 year, 9 months ago  | 

    Hey Benjamin, I just found your awesome tutorial and i wanted to recreate it.
    When it comes to the Destro_Mat, my material looks very blured and has some holes in it. When i apply the material to the FBX, the destruction works but it looks very blured. I have the newest version of Unreal 5 and SideFX Plugin installed and restarting Unreal does not work for me.

    Do you know this problem?

    Thank you in advance.

  • 02d939785b774302 1 year, 8 months ago  | 


  • lcywoshizhu 1 year, 7 months ago  | 

    how can i get the branch of lightning

  • steffxart 1 year, 5 months ago  | 

    Great tutorial. Really appreciate you are sharing such valuable knowledge. I was just wondering if there is any way to add the VAT mesh to an Animation Montage or directly to a niagara emitter?

  • Noukono 1 year, 1 month ago  | 

    It's a good tutorial but you don't show how you did the character blueprint, and it prevents me from doing my VAT destruction. Can you show it?

  • Drasko Ivezic 1 year ago  | 

    This thing is not working for me. I simply can't make this texture moving (talking about the first video, on the sixth minute). I change speed and contrast and nothing changes. Can anyone help?

  • CBassRedz 8 months, 2 weeks ago  | 

    Someone have the Ground Destruction Texture that he use in the 6th video? Or known how to do it?

    • CBassRedz 8 months, 2 weeks ago  | 

      If someone need it, I do a Ground Destruction Texture.

      And find the flare texture that Ben is using in the 7th video.

      • CBassRedz 8 months, 1 week ago  | 

        If someone need it, this is the code for the 9th video:

        int startframe = point (1, "startframe", @ptnum);

        if (distance(@P, v@pivot) > 0.1 && length(@v) > 0.3 && startframe == 121){
        i@startframe = (int)@Frame - 1;

        } else {
        i@startframe = startframe;

        int stopframe = point (1, "stopframe", @ptnum);
        vector stop_P = point (1, "stop_P", @ptnum);

        if (@P.y < 1 && length(@v) < 1 && stopframe == -1 && startframe != 121){
        i@stopframe = (int)@Frame;
        v@stop_P = @P;

        } else {
        i@stopframe = stopframe;
        v@stop_P = stop_P;

  • CBassRedz 8 months ago  | 

    I tried but I don't get why in the last video my attack don't work like it had to, It just make the attack like before but if a put an object, the attack just go through it.

    I think that the problem was something that don¿t explain in the video.

Please log in to leave a comment.