Request for Feedback & New Features: Houdini Unity plugin

   2942   6   0
User Avatar
Member
100 posts
Joined: Dec. 2020
Offline
I'm posting this to request for feedback regarding the Houdini Unity plugin. What is your workflow using the plugin? What part of the plugin do you like/dislike? What would you like to be changed? What new features would you like to see? Are there any important Unity-specific integrations that we don't have yet? How would you expect them to work?

For reference, the most recent larger features that we added are: Full HDRP/URP support, PBR materials, tilemap inputs, curve UX improvements, PDG output bake.

Examples of features in the Unreal plugin are: the official Unreal API, Niagara integration, LiveLink integration, Editable landscape layers, and upcoming KineFX / Chaos (GC) integrations.

Please post your comments, suggestions, or features below or as an RFE here https://www.sidefx.com/forum/topic/38188/ [www.sidefx.com] I'll make sure that your feedback and suggestions are heard. The more detail, the better
Edited by anthonyt2 - July 30, 2021 15:35:23
User Avatar
Member
15 posts
Joined: Nov. 2018
Online
Ive tested the new ux for the curve its mostly still not very usable ill try make a very nice video and post with all details the things ive found that work and could be easily upgraded for it to be used easily
User Avatar
Member
7 posts
Joined: Dec. 2020
Offline
When making HDAs for use in Unity, I've noticed that when merging in objects from Unity into Houdini Engine you often have to remove and re-add groups/objects in order to get changes and revisions to take effect when doing something like resetting a simulation.

This had led me to a few moments where I had slow downs due to not remembering if I had or hadn't yet removed and re-added a group. It's also a bit of a tiresome thing to tell an artist if I were to pass these kinds of HDAs on to a team at work or so.

Is there any way this could be handled automatically?
User Avatar
Member
1 posts
Joined: April 2021
Offline
Hi,

We are using Houdini Engine Unity for our project.
Thanks for your great job, it helped us hugely.

Our solution is to utilize Houdini Engine as much as possible, and code new features if we have to.
So far,we have majorly made 2 types of changes into HoudiniEngine which are fix bugs and add additional post cook processors.

Here are some feedbacks I would like to share.

1, There are 2 versions of codes to generate object geometries. One for Hda cook and the other for PDG cook. Is there plan to uniform them as one?

2, It would be nicer and faster if to generate object geometries through multi-threads. I see PDG Sync Bgeo is coded thread safe and using multi-threads already. but it only helps for syncing multiple bgeo files. But we are using tiled terrains(multiple volumes) in side one bgeo file. It would be better if it can use multi-threads to load one big bgeo file.

3,We have added addtional post cook functions after the original cooking HDA. It took us some energy to collect the key info as paramaters for our additional processors which needs both the input and output of Houdini Cook. It would be better if Houdini Engine can provide the API for user to register new processors. And make sure they will be called at the right time with the right paramters.
I belive Houdini Engine would also be benifited because delvelopers will be able contribute easily by sharing the customized processors as unity packages indepedently.

There are so many more thoughts in my mind. Let's just start with the above three ones.
Please let me know what you think.
Thanks for your great job again.
User Avatar
Member
100 posts
Joined: Dec. 2020
Offline
Zombiedance
When making HDAs for use in Unity, I've noticed that when merging in objects from Unity into Houdini Engine you often have to remove and re-add groups/objects in order to get changes and revisions to take effect when doing something like resetting a simulation.

This sounds like more like a bug. Does recooking also update the asset? If it doesn't, an example HDA would be nice.

OliverOliver
1, There are 2 versions of codes to generate object geometries. One for Hda cook and the other for PDG cook. Is there plan to uniform them as one?

The PDG Asset link and Houdini Asset component will remain two separate scripts. However, in Houdini 19, if we detect that your HDA is a PDG asset, the PDGAssetLink will automatically be created.

OliverOliver
2, It would be nicer and faster if to generate object geometries through multi-threads. I see PDG Sync Bgeo is coded thread safe and using multi-threads already. but it only helps for syncing multiple bgeo files. But we are using tiled terrains(multiple volumes) in side one bgeo file. It would be better if it can use multi-threads to load one big bgeo file.

We're always looking into optimizing code to run faster and more efficiently. If you have an example problematic HDA, then I would love if you could let us examine it.

OliverOliver
3,We have added addtional post cook functions after the original cooking HDA. It took us some energy to collect the key info as paramaters for our additional processors which needs both the input and output of Houdini Cook. It would be better if Houdini Engine can provide the API for user to register new processors. And make sure they will be called at the right time with the right paramters.
I belive Houdini Engine would also be benifited because delvelopers will be able contribute easily by sharing the customized processors as unity packages indepedently.

In Houdini 19, the exposed API was refactored and taken a look at. It should be easy to change parameters or add a post cook funtion for example. If there is something about the API that you believe should be exposed or made easier, do let us know.
User Avatar
Member
7 posts
Joined: Dec. 2020
Offline
The issue I described seems to have subsided on its own, so I'll take it that it was simply a bug. I'm unsure if the cause was a specific Unity version, conflicting script, or something else. If I encounter it again, I will return and try to layout replication steps and include an example HDA.
User Avatar
Member
2 posts
Joined: March 2019
Online
I tend to use HEngine to replace the need to code complex native tools for geometry manipulation. For example a basic spline generator, destruction, LOD generation etc.

More immediate feedback related features. I'd like to use HEngine to create tools for the editor that, from the viewpoint of the creator, feels no different than any other unity tool. Loss of session connection, having to rebuild/recook etc makes it feel a bit more janky than it could. It's not bad currently, but feels like it could be improved some. I understand that some of this may be unavoidable.

Improved curve editing. The new H19 curve editor feels nice, it would be nice to have those features directly available in unity.

Improved on boarding experience. The licensing, download, etc process feels more complicated than it could be. Being able to treat HEngine like a more standalone system would be an improvement for the artists using the HDAs.

Compile to native or similar. It would be fantastic to be able to take an HDA and compile it to a more self contained native tool. Something that is more streamlined and responsive or able to run without the need for a full Houdini installation.

Native material inputs. The drag and drop object inputs are great, it would be nice to have the same functionality for materials instead of the path reference.

Expanded painting tool features: Smoothing, erasing, modifier key support etc. Anything that can be done to improve the painting tools would be nice, they are a very intuitive way of interacting with the HDA.

Expanded gizmo/widget/gnomon support. The python extensions to tools in Houdini has been a major improvement. Anything that can provide more interactive tool support in Unity would be very handy.

Transfer of more Houdini UI features to HDA inspector. Houdini's UI tools are really fantastic and I spend a fair amount of time making use of them in the HDA to improve UX. It would be nice if more of that could be represented in the unity inspector. Features like: tooltips, conditional visibility/grey out, radio buttons, tab groups etc. I know some of it is already supported but it would be nice if more of it could be available.
Edited by NeilN - March 17, 2022 15:50:48
  • Quick Links