Setting up the unity shaders is relatively straight forward but there are a couple of things you need to change to the import settings of the mesh and textures for correct results.  Watch the video or follow along with the details below.


1. Setting up the shaders

- Download the latest version of the Game Dev tools from GitHub - https://github.com/sideeffects/GameDevelopmentToolset/tree/Development

- Drag and Drop the Unity shaders from the downloaded folder into your Unity project.


- Create a material and set the shader to the desired vertex animation shader.


2. Import the Mesh and Textures into your project and match the Import Settings below.

Texture Import Settings


Mesh Import Settings


3. Assign the textures to the material and match the values from Houdini.  

The BBOX Max and Min values are setup for ue4's unit scale so divide the value by 100 when setting the numbers in Unity.


Issues with the rbd rotation texture

The setup above works for most of the textures except for one little problem - the rbd rotation texture.  If you setup an rbd material and set the speed to 0, you will notice that in my simple example we can see the cracks between the chunks before the object has started moving.  This is not correct.

To fix this we have to make a change to the colour space setting of the project.  If you're already in the middle of a project and using the gamma color space this is a problem because it will change all of your textures as well as the look of the lighting.  If you know a better way of doing this please let me know.  Below are the changes you need to make to fix this for now.

Change Color Space

You can change the colour space by going to the menu Edit > Project Settings > Player.  Under "Other Settings" change color space from Gamma to Linear.

Change the Texture Import Settings for the rotation texture

You can read more about how Unity deals with linear textures here - https://docs.unity3d.com/Manual/LinearRendering-LinearTextures.html

Change the Texture Type to Editor GUI and make sure Wrap Mode is still set to Repeat

I don't think this is the best way to handle this so if you find a better way please let me know!

Mike

COMMENTS

  • JimInziello 7 months, 1 week ago  | 

    I'm desperately trying to find a detailed version of this same work flow for UE4. I need a step by step overview, especially in what node I'm exporting and just where I'm supposed to "paste" the code for the material in UE4. The main Luiz Webinar just briefly shows the material network, without a walk through of what is going on.

    I've got this fractured object that I want to put on my VR game, just sitting in Houdini Indie, waiting to get out.

    Always Learning

    -Jim

  • mikelyndon-sesi 7 months, 1 week ago  | 

    Hi Jim. Are we looking at the same webinar? Luiz goes into a lot of detail about the general setup for exporting vertex animation data to ue4. At 36:26 he starts talking specifically about rigid bodies and at 47:20 he shows a step-by-step of how the material in ue4 is setup. Anything that he hasn't covered there can be supplemented with his cloth example.
    https://vimeo.com/212982381
    What part of it isn't clear with regards to what is going on?

    Mike

  • reverse 7 months, 1 week ago  | 

    I took in fluid information made by Houdini into unity
    After that
    The topology got messed up
    In this case
    How do I set it on the unity side?

    Please create a fluid tutorial from Houdini to unity

  • eco_bach 4 months, 3 weeks ago  | 

    This is a fantastic workflow! Unfortunately in recent test doesn't work with Vuforia. On build-deploy only get static meshes without animation. If I find a solution will post here...any feedback appreciated!

  • eco_bach 4 months, 2 weeks ago  | 

    addendum...this seems to be a mobile deploy issue...at least for iOS can't get vertex animation working. On the desktop or in editor...no issues!

  • eco_bach 4 months, 2 weeks ago  | 

    suggestion to sesi- please allow editing of previous comments. Anyways, the issue was a texture size issue...8192 for some reason simply will not animate although it looks great..4096 is the largest that works for me.

  • stimulant 3 months ago  | 

    Hi Mike,

    This seems awesome, but I'm getting some issues when I apply the rotation map. It's best if you see it:
    https://streamable.com/mhlf1

    Applying the rotation map causes the pieces to scale up over time and generally not do the right thing. I have my number of frames and bounding box information set correctly from Houdini (dividing by 100 in Unity). I'm on the latest Develoment branch of GameDevelopmentToolset, Houdini 16.0.762 Indie, and Unity 2017.3.0b5. Same thing is happening in Unity 5.6.0f3.

    Any help is appreciated!

  • mikelyndon-sesi 2 months, 1 week ago  | 

    It doesn't look like you've set the texture type to "Editor GUI and Legacy GUI". And have you followed the last piece of the tutorial to change your colour space?

Please log in to leave a comment.