I believe it is by design that an asset is not automatically rebuilt when loading a scene after it has been changed in Houdini. Enabling this behaviour might cause unnecessary updates to an HDA already in a scene. It makes sense to allow the user to manually rebuild if they want it.
As for your first issue where an asset was not retaining its rebuilt state after saving and loading, that is indeed a bug. Good catch. If you have Unity 5.3 or newer, I just put in a fix for it that should be available in tomorrow's daily build.
If you are unable to update to our daily builds, I can suggest a quick fix that you can apply locally. Which version of Unity are you using?
Found 541 posts.
Search results Show results as topic list.
Houdini Engine for Unity » Rebuild Problems
-
- seelan
- 571 posts
- Offline
Houdini Engine for Unity » Creating instances with Engine
-
- seelan
- 571 posts
- Offline
Try out the CurveDecorator in <Houdini Install Path>/engine/unity/Assets/OTLs/Samples/CurveDecorator. It takes in a curve and an instance object. When you bake it out (optionally don't have to bake), it produces individual meshes under the instancer child gameobject in the prefab.
Edited by seelan - July 11, 2017 11:51:20
Houdini Engine for Unity » Bake Animations How-To
-
- seelan
- 571 posts
- Offline
Since this comes up quite a bit, I thought a quick post about it might help those curious about this feature, or if having trouble getting it working.
The Bake Animation functionality can be found on the Inspector window of the root GameObject when an HDA is instantiated in the Unity scene (i.e. HoudiniAssetOTL component). What it produces is an Unity legacy animation clip containing keyframed data of the object's transform that has been animated in Houdini. Note that currently the object must reside in a subnet in the HDA. It will not work on objects outside a subnet at this time.
Here is a simple way to try it out:
1. In Houdini, create a SOP node, and animate it's transform. Make the SOP node as part of a subnet (there is a Create subnet from selected option in the network editor's top menu).
2. Save as digital asset.
3. Load HDA into Unity, and drag into scene.
4. Expand the Bake Animations section in the Inspector for the HoudiniAssetOTL component. Set the time and samples per second according to how you set up in Houdini. Hit Bake Animation.
5. Hit Play
Your child object will now have an Animation component, and will auto-play in play mode.
If you are animating vertices or changing topology, the Vertex Animation Texture tool will be the right one to use instead. See here: https://www.sidefx.com/tutorials/unity-shaders-for-vertex-animation-export-tools/ [www.sidefx.com]
The Bake Animation functionality can be found on the Inspector window of the root GameObject when an HDA is instantiated in the Unity scene (i.e. HoudiniAssetOTL component). What it produces is an Unity legacy animation clip containing keyframed data of the object's transform that has been animated in Houdini. Note that currently the object must reside in a subnet in the HDA. It will not work on objects outside a subnet at this time.
Here is a simple way to try it out:
1. In Houdini, create a SOP node, and animate it's transform. Make the SOP node as part of a subnet (there is a Create subnet from selected option in the network editor's top menu).
2. Save as digital asset.
3. Load HDA into Unity, and drag into scene.
4. Expand the Bake Animations section in the Inspector for the HoudiniAssetOTL component. Set the time and samples per second according to how you set up in Houdini. Hit Bake Animation.
5. Hit Play
Your child object will now have an Animation component, and will auto-play in play mode.
If you are animating vertices or changing topology, the Vertex Animation Texture tool will be the right one to use instead. See here: https://www.sidefx.com/tutorials/unity-shaders-for-vertex-animation-export-tools/ [www.sidefx.com]
Houdini Engine for Unity » Question about the mesh of the Unity particle system launching HDA bakea! (To solve, version issue, change to the latest version of the line!!)
-
- seelan
- 571 posts
- Offline
Your first issue is because in your baked prefab, the child gameobject that you are trying to use is not a mesh. The field in the Particle System requires an actual mesh object. When an HDA is baked out, the mesh is on the 2nd child (grandchild of parent), which you can only access after instantiating the prefab. This is due to Unity's limitation of displaying only 1 level of child objects in the UI.
The second issue seems to be a bug with how Unity converts vertex colour buffers. I've fixed this just now, and it should be available in the next daily build (probably 16.0.653 tomorrow). In the mean time as a temporary fix, you can just change the shader in the material to something that doesn't vertex colours if you aren't using them.
The second issue seems to be a bug with how Unity converts vertex colour buffers. I've fixed this just now, and it should be available in the next daily build (probably 16.0.653 tomorrow). In the mean time as a temporary fix, you can just change the shader in the material to something that doesn't vertex colours if you aren't using them.
Houdini Engine for Unity » Houdini Engine for Unity - Request for Feedback & Suggestions
-
- seelan
- 571 posts
- Offline
Documentation and feature matching with the Unreal plugin are definitely part of our near future plans. I also wholeheartedly agree on seeing more examples of how to use the plugin. Keep an eye out for these changes soon. Thank you for your suggestions.
Houdini Engine for Unity » Position coordinates different in Unity and Houdini.
-
- seelan
- 571 posts
- Offline
Yes there is. Houdini uses right-handed coordinate system whereas Unity uses left-handed. You'll need to convert. For position, just negate the X. For rotation, negate the Y and Z.
Take a look at HoudiniAssetUtility::applyTransform to see how we're doing it.
Take a look at HoudiniAssetUtility::applyTransform to see how we're doing it.
Houdini Engine for Unity » Is HeightField Paint SOP supported?
-
- seelan
- 571 posts
- Offline
I'll look into what we can do about the Edit functionality, whether that is disabling / locking it out, or perhaps making the drawing points faster.
I am putting together a list of working and unsupported features, and will post an update. In the mean time, and going forward, please let us know if you do come across features that aren't working as you'd expect.
I am putting together a list of working and unsupported features, and will post an update. In the mean time, and going forward, please let us know if you do come across features that aren't working as you'd expect.
Houdini Engine for Unity » Is HeightField Paint SOP supported?
-
- seelan
- 571 posts
- Offline
No, HeightField Painting SOPs are not supported in the Unity plugin. HeightField themselves are not directly supported. The workaround would be to convert the heightfield, then apply an Edit SOP, and expose that node in the Editable Nodes field. Should get similar functionality.
Houdini Engine for Unity » Bake animation doesn't work with vertex animation?
-
- seelan
- 571 posts
- Offline
rop_volume_texture_1 is not the one you want. With the manual method, you just need to try to install the rop_vertex_animation_textures.hda folder. Select that folder in the Select File dialog.
Houdini Engine for Unity » Bake animation doesn't work with vertex animation?
-
- seelan
- 571 posts
- Offline
For what you're trying to do, the topology is changing therefore the Bake Animation feature wasn't meant for something like that. Bake Animation is meant specifically for animation of transform data.
I did try out what you're trying to do with growing a line and applying a carve. Since topology is changing, you can try out the Vertex Animation Texture feature. There is a Unity tutorial here: https://www.sidefx.com/tutorials/unity-shaders-for-vertex-animation-export-tools/ [www.sidefx.com]
I've tried this method and it works well. Just make sure you're import settings in Unity for the mesh and textures are exactly as how its in the tutorial. Let me know if you have any issues with it.
I did try out what you're trying to do with growing a line and applying a carve. Since topology is changing, you can try out the Vertex Animation Texture feature. There is a Unity tutorial here: https://www.sidefx.com/tutorials/unity-shaders-for-vertex-animation-export-tools/ [www.sidefx.com]
I've tried this method and it works well. Just make sure you're import settings in Unity for the mesh and textures are exactly as how its in the tutorial. Let me know if you have any issues with it.
Houdini Engine for Unity » Bake animation doesn't work with vertex animation?
-
- seelan
- 571 posts
- Offline
Sorry for the delay. I looked at this briefly yesterday and came across the same error message, but didn't get the opportunity to dive into it further. Will get back to you today.
As for the latter point about a feature list, it is something we're working on.
As for the latter point about a feature list, it is something we're working on.
Houdini Engine for Unity » The Houdini heightfield asset is imported directly into Unity why not see it?
-
- seelan
- 571 posts
- Offline
Since you aren't able to upload the HDA, could you take a screenshot of your graph in Houdini? Just want to understand what you're trying to do.
Houdini Engine for Unity » Mac to Windows Incompatibility
-
- seelan
- 571 posts
- Offline
This was a double transform bug that has been fixed today. Should be good as of daily build Houdini 16.0.634.
Houdini Engine for Unity » Houdini Curve Tool in Unity
-
- seelan
- 571 posts
- Offline
This was a double transform bug that has been fixed today. Should be good as of daily build Houdini 16.0.634.
Houdini Engine for Unity » Bake animation doesn't work with vertex animation?
-
- seelan
- 571 posts
- Offline
Houdini Engine for Unity » Changing houdini parms in runtime using C# scripts
-
- seelan
- 571 posts
- Offline
Baking out an HDA to a prefab then instantiating it should not be any more expensive. It really depends on the resource though, and how many instances you've got going.
Back to your example:
“For exemple my player enter a new zone, I can have a script saying “if zone = thisZone, scale of trees is a random number between 2 and 4” and bake and instantiate them at runtime?”
Using this example, what you can do is expose the scale as an interface parameter in the HDA in Houdini. Bring it into Unity, then bake out a several trees of various scales. This gives you several prefabs, where each prefab can be for a particular zone. Then in each of your zone, place instances of a prefab. You could probably write a script that can populate a zone automatically at runtime by taking in a reference to the tree prefab, and a list of locations to instantiate them.
Before runtime though, you can even use something like the MeshDecorator to automatically instantiate those trees over terrain.
Eg.:
1. Create heightfield terrain and output as mesh HDA
2. Create Tree HDA
3. In Unity, bring in terrain and tree. Bake out terrain. Bake several versions of tree.
4. In Unity, use MeshDecorator and plug in terrain into Mesh Object, and tree as Instance_Object. Bake out your zone.
Back to your example:
“For exemple my player enter a new zone, I can have a script saying “if zone = thisZone, scale of trees is a random number between 2 and 4” and bake and instantiate them at runtime?”
Using this example, what you can do is expose the scale as an interface parameter in the HDA in Houdini. Bring it into Unity, then bake out a several trees of various scales. This gives you several prefabs, where each prefab can be for a particular zone. Then in each of your zone, place instances of a prefab. You could probably write a script that can populate a zone automatically at runtime by taking in a reference to the tree prefab, and a list of locations to instantiate them.
Before runtime though, you can even use something like the MeshDecorator to automatically instantiate those trees over terrain.
Eg.:
1. Create heightfield terrain and output as mesh HDA
2. Create Tree HDA
3. In Unity, bring in terrain and tree. Bake out terrain. Bake several versions of tree.
4. In Unity, use MeshDecorator and plug in terrain into Mesh Object, and tree as Instance_Object. Bake out your zone.
Edited by seelan - June 6, 2017 09:24:07
Houdini Engine for Unity » The Houdini heightfield asset is imported directly into Unity why not see it?
-
- seelan
- 571 posts
- Offline
Which tutorial are you following? Are you using the heightfield_output node?
If you can attach an example HDA I can try it out.
If you can attach an example HDA I can try it out.
Houdini Engine for Unity » Houdini Engine for Unity - Request for Feedback & Suggestions
-
- seelan
- 571 posts
- Offline
Hi everyone,
We'd like to hear your thoughts on how we can improve the Houdini Engine plugin for your Unity projects. Specifically, we're interested in 2 areas: improving workflow, and new features.
In terms of workflow, do you have some ideas and/or suggestions on making it easier to use the plugin? Our goal is to make using the plugin as seamless and painless as possible. It might also help if you can describe your current workflow. For example, once you bake out to a prefab from an HDA, then instantiate the prefab as instances in a level, how do you go about updating those instances again after making changes to the original HDA in Houdini?
What are the current features that you use but would like to see improvements?
For new features, what are the new functionality you like to see? Are there other plugins or tools that you use that you wish was built-into our plugin?
It would be great if you can also add some additional information such as development OS, target platforms, etc.
Our goal is to improve the plugin such that it is a highly effective tool for your projects and saves your team time.
Thanks.
We'd like to hear your thoughts on how we can improve the Houdini Engine plugin for your Unity projects. Specifically, we're interested in 2 areas: improving workflow, and new features.
In terms of workflow, do you have some ideas and/or suggestions on making it easier to use the plugin? Our goal is to make using the plugin as seamless and painless as possible. It might also help if you can describe your current workflow. For example, once you bake out to a prefab from an HDA, then instantiate the prefab as instances in a level, how do you go about updating those instances again after making changes to the original HDA in Houdini?
What are the current features that you use but would like to see improvements?
For new features, what are the new functionality you like to see? Are there other plugins or tools that you use that you wish was built-into our plugin?
It would be great if you can also add some additional information such as development OS, target platforms, etc.
Our goal is to improve the plugin such that it is a highly effective tool for your projects and saves your team time.
Thanks.
Edited by seelan - June 5, 2017 12:15:23
Houdini Engine for Unity » Houdini Engine and Android
-
- seelan
- 571 posts
- Offline
Hi,
Try build Houdini 16.0.628. There was another change made yesterday that fixed that particular error.
Try build Houdini 16.0.628. There was another change made yesterday that fixed that particular error.
Houdini Engine for Unity » Houdini Engine Not Work on Android Projects
-
- seelan
- 571 posts
- Offline
We just fixed this issue. So the latest daily build of Houdini Engine should now work in Unity Editor when targeting other platforms, including Android.
-
- Quick Links