Hi,
I'm having issues partitioning a tiled terrain with other smaller terrains used like stamps when using Partition by Bounds in a top net.
As you can see, I have a simple heightfield split into 4 tiles, and some smaller terrains used as stamps to modify the input HF.
When using Partition By Bounds, it looks like intersections between the Bounding input and the Source input don't work as expected.
If I convert stamps HF to polygons, then the partitioning works as it should, but I need my HF stamps as is down the top net, and not the mesh versions.
I guess it has to do on how HF bounds are computed when intersecting the terrain tile and the stamps, but I'm stuck.
Does anyone have an idea on how to solve this issue?
Thanks!
Alex
Found 23 posts.
Search results Show results as topic list.
PDG/TOPs » Partition by Bounds using Heightfields as Source Inputs
- chekboom
- 28 posts
- Offline
PDG/TOPs » Is this the correct case to use PDG?
- chekboom
- 28 posts
- Offline
Houdini Engine for Unity » How to process the terrain splatmap?
- chekboom
- 28 posts
- Offline
Hi,
You can use the Volume Resample node to set the size of a specific Heightfield layer without affecting the height layer.
So you can have height at 1025 and splatmap at 1024 or 512 for example.
Hope it helps,
Alex
You can use the Volume Resample node to set the size of a specific Heightfield layer without affecting the height layer.
So you can have height at 1025 and splatmap at 1024 or 512 for example.
Hope it helps,
Alex
PDG/TOPs » Filtering by tag
- chekboom
- 28 posts
- Offline
Thanks for the clarification!
I guess the documentation would need a small update then
http://www.sidefx.com/docs/houdini/expressions/pdginput.html [www.sidefx.com]
I guess the documentation would need a small update then
http://www.sidefx.com/docs/houdini/expressions/pdginput.html [www.sidefx.com]
PDG/TOPs » Filtering by tag
- chekboom
- 28 posts
- Offline
Thanks Brandon, it works!
The only thing I don't get is: My work item's index is 1, so I wroteWhy is it only working with the work item's index set to 0?
The only thing I don't get is: My work item's index is 1, so I wrote
strcmp(pdginput(1, "file/geo/terrain", 0), "")
PDG/TOPs » Filtering by tag
- chekboom
- 28 posts
- Offline
Hi,
I have 2 work items, each with a different tag:
I've tried using the “Filter By Expression” top node with no success:
I've used the HScript expressionwith various string functions, but I couldn't get what I wanted.
Does anyone would have a solution?
Thanks!
Alex
I have 2 work items, each with a different tag:
- “file/geo/terrain”
- “file/image”
I've tried using the “Filter By Expression” top node with no success:
I've used the HScript expression
pdginput(1, "file/image", 0)
Does anyone would have a solution?
Thanks!
Alex
PDG/TOPs » Is this the correct case to use PDG?
- chekboom
- 28 posts
- Offline
Hi,
I followed those steps and it works great to output some Heightfield masks.
The thing I want to do now is to get those output masks as work items to process with Image Magick
So, how to get those generated images as work items?
I unchecked “Write Geometry” in the Asset Output section of the HDA Processor because I didn't need any geo output, but I don't know how to get those images the HF Output node has rendered.
I've used a “File Pattern” TOP node to get those generated images, but I'm worried it might get more work items than necessary because when I “Dirty and Cook” my mask generator, it will create new images in the same folder. So for instance, if it generated 4 images, I will have 8 images on a 2nd cook.
Thanks!
Alex
I followed those steps and it works great to output some Heightfield masks.
The thing I want to do now is to get those output masks as work items to process with Image Magick
So, how to get those generated images as work items?
I unchecked “Write Geometry” in the Asset Output section of the HDA Processor because I didn't need any geo output, but I don't know how to get those images the HF Output node has rendered.
I've used a “File Pattern” TOP node to get those generated images, but I'm worried it might get more work items than necessary because when I “Dirty and Cook” my mask generator, it will create new images in the same folder. So for instance, if it generated 4 images, I will have 8 images on a 2nd cook.
Thanks!
Alex
Houdini Engine for Unity » Error Outputting Splatmaps
- chekboom
- 28 posts
- Offline
Hi,
It looks like a splatmap resolution issue. In Unity, Splatmaps max resolution is 2048, so if your heightfield and all layers coming with it are 4097, then Unity will complain.
You need to make sure to resize your splatmaps in a (16, 2048) range, so in your case you can add a Volume Resample and set the resolution to 2048 for example on all layers except the height layer.
I hope it helps!
Alex
It looks like a splatmap resolution issue. In Unity, Splatmaps max resolution is 2048, so if your heightfield and all layers coming with it are 4097, then Unity will complain.
You need to make sure to resize your splatmaps in a (16, 2048) range, so in your case you can add a Volume Resample and set the resolution to 2048 for example on all layers except the height layer.
I hope it helps!
Alex
Houdini Engine for Unity » nested hda is missing
- chekboom
- 28 posts
- Offline
Hi,
You need to add a file called unity_houdini.env in the /Assets folder of your Unity project (see here [www.sidefx.com])
Then in that file, add this variable
Hope it helps!
Alex
You need to add a file called unity_houdini.env in the /Assets folder of your Unity project (see here [www.sidefx.com])
Then in that file, add this variable
HOUDINI_OTLSCAN_PATH=Path/To/HDAs
with the path to your nested HDA (preferably in a shared location with your colleagues)Hope it helps!
Alex
Houdini Engine for Unity » How to assign unity prefabs to scattered objects? (17.5.308)
- chekboom
- 28 posts
- Offline
Yes, this is annoying, you actually have to “re-implement” the weighting after the scatter node.
I basically copied the 4 nodes highlighted in red from inside the HF Scatter node to assign the right point attributes.
And at the beginning of graph, I create as many points as I have prefabs that I want to scatter, add the proper attributes in the for-each loop.
Then I modified slightly the vex code in the “generate_rand_id” node with the following:
From:
To:
Since tags are preserved, I was able to use them to differentiate trees and rocks for example.
I hope it makes sense!
Thanks,
Alex
I basically copied the 4 nodes highlighted in red from inside the HF Scatter node to assign the right point attributes.
And at the beginning of graph, I create as many points as I have prefabs that I want to scatter, add the proper attributes in the for-each loop.
Then I modified slightly the vex code in the “generate_rand_id” node with the following:
From:
for (int i = 0; i < nprimitives(1); ++i) { if (generated_rand < primattrib(1, "_normalized_weight", i, 0)) { i@variant = i; break; } }
for (int i = 0; i < npoints(1); ++i) { if (s@tag == "rocks") { if (generated_rand < pointattrib(1, "_normalized_weight", i, 0)) { s@unity_instance = pointattrib(1, "path", i, 0); break; } } }
I hope it makes sense!
Thanks,
Alex
Houdini Engine for Unity » cooking triggers downstream cooks not working
- chekboom
- 28 posts
- Offline
Yes, I have the same issue and already logged a bug for this. I hope it gets fixed soon!
Houdini Engine for Unity » Houdini Engine Tools - Documentation and Customization
- chekboom
- 28 posts
- Offline
Hi,
I've been looking around the documentation and the plugin files but couldn't find a way to add custom tools in this handy tools window.
I saw some doc for the Unreal plugin though and I guess it should be quite similar, but could you update the Unity plugin documentation so it's easier to implement our own custom tools?
Thanks!
I've been looking around the documentation and the plugin files but couldn't find a way to add custom tools in this handy tools window.
I saw some doc for the Unreal plugin though and I guess it should be quite similar, but could you update the Unity plugin documentation so it's easier to implement our own custom tools?
Thanks!
Houdini Engine for Unity » Curves UX Improvement Suggestion - Both for Unity + Houdini Engine + Houdini
- chekboom
- 28 posts
- Offline
Hi qoobit,
I totally agree with you. As curves are a key components for a lot of procedural tools, they indeed need much love in Houdini and Unity.
For the Unity plugin, I already entered a bunch of RFEs to improve CVs selection, display and other crucial stuff like supporting rotation and scale per CV so we can get those attributes back to Houdini to modify our HDAs (like river width, road size and banking, fences twist, etc.)
Most of these features are supported in the Unreal plugin.
I hope those RFEs can be tackled as soon as possible, as they would definitely improve an already very solid integration in Unity.
I totally agree with you. As curves are a key components for a lot of procedural tools, they indeed need much love in Houdini and Unity.
For the Unity plugin, I already entered a bunch of RFEs to improve CVs selection, display and other crucial stuff like supporting rotation and scale per CV so we can get those attributes back to Houdini to modify our HDAs (like river width, road size and banking, fences twist, etc.)
Most of these features are supported in the Unreal plugin.
I hope those RFEs can be tackled as soon as possible, as they would definitely improve an already very solid integration in Unity.
Houdini Engine for Unity » Scattering Trees and Details on Unity Terrain
- chekboom
- 28 posts
- Offline
Hi,
I've been using Houdini (using regular hdas and PDG) to scatter prefabs with the unity_instance attribute on Unity terrain, but as you would expect, scattering 100 000+ prefabs in a Unity scene brings it to its knees because it create so many game objects in its scene hierarchy.
I was wondering if it would be possible to output data from Houdini Engine right into the Unity Terrain TerrainData [docs.unity3d.com], so that the points we output get picked up by Unity's native terrain.
This way, we would more efficiently scatter trees and details on terrain, and we could even use the regular painting tools to add/remove some scattered objects.
I know some plugins on the asset store like Map Magic [assetstore.unity.com] are able to spawn trees and grass, so I hope we can do the same kind of things with all the Houdini power behind it
Thanks,
Alex
I've been using Houdini (using regular hdas and PDG) to scatter prefabs with the unity_instance attribute on Unity terrain, but as you would expect, scattering 100 000+ prefabs in a Unity scene brings it to its knees because it create so many game objects in its scene hierarchy.
I was wondering if it would be possible to output data from Houdini Engine right into the Unity Terrain TerrainData [docs.unity3d.com], so that the points we output get picked up by Unity's native terrain.
This way, we would more efficiently scatter trees and details on terrain, and we could even use the regular painting tools to add/remove some scattered objects.
I know some plugins on the asset store like Map Magic [assetstore.unity.com] are able to spawn trees and grass, so I hope we can do the same kind of things with all the Houdini power behind it
Thanks,
Alex
Houdini Engine for Unity » Vertex colors from Houdini to Unity
- chekboom
- 28 posts
- Offline
Houdini Engine for Unity » Houdini Engine Plugin Settings
- chekboom
- 28 posts
- Offline
Houdini Engine for Unity » Houdini Engine Plugin Settings
- chekboom
- 28 posts
- Offline
Hi,
Is there a way to share the Houdini Engine Plugin Settings to other people on the same project?
We're using Perforce integration in Unity, and I'd like to make sure all artists that use Houdini engine have the same settings.
Are those settings stored to a file that can be versioned?
Thanks for your help!
Alex
Is there a way to share the Houdini Engine Plugin Settings to other people on the same project?
We're using Perforce integration in Unity, and I'd like to make sure all artists that use Houdini engine have the same settings.
Are those settings stored to a file that can be versioned?
Thanks for your help!
Alex
Houdini Engine for Unity » PDG integration in Unity
- chekboom
- 28 posts
- Offline
Hi seelan!
Thanks for your detailed answer, it clears many things up on how to setup PDG in Unity and how Unity works.
All of this is pretty new to me and I just want to make sure I set up everything properly for my team/project.
I'm already using the unity_houdini.env to setup a custom directory for PDG to work in, as instructed in the tutorial. It's just that because of a bug in the HDA Processors (already reported as bug #96263) I had to set the HDA path to $JOB to be able to update the HDA parameters and then forgot (several times ) to set the path back to $PDG_DIR!
As you suggested, I will definitely try to expose the Scheduler's node Working Directory in my TOP HDA. Does it mean that I can get rid of the custom environment variable altogether (both in Houdini and Unity)?
I agree with you on the clean and simple aspect of UI for the PDG Asset Link, however I don't think any artist would be playing a lot with the PDG Asset Link itself. As a tech artist, I would setup everything in the Asset Link, set it to Autocook and leave artists only tweak the TOP HDA parameters and the auxiliary HDA tools.
So a minimum of info on what's going on, and a maximum of info when something goes wrong seems fair to me.
Thanks,
Alex
Thanks for your detailed answer, it clears many things up on how to setup PDG in Unity and how Unity works.
All of this is pretty new to me and I just want to make sure I set up everything properly for my team/project.
I'm already using the unity_houdini.env to setup a custom directory for PDG to work in, as instructed in the tutorial. It's just that because of a bug in the HDA Processors (already reported as bug #96263) I had to set the HDA path to $JOB to be able to update the HDA parameters and then forgot (several times ) to set the path back to $PDG_DIR!
As you suggested, I will definitely try to expose the Scheduler's node Working Directory in my TOP HDA. Does it mean that I can get rid of the custom environment variable altogether (both in Houdini and Unity)?
I agree with you on the clean and simple aspect of UI for the PDG Asset Link, however I don't think any artist would be playing a lot with the PDG Asset Link itself. As a tech artist, I would setup everything in the Asset Link, set it to Autocook and leave artists only tweak the TOP HDA parameters and the auxiliary HDA tools.
So a minimum of info on what's going on, and a maximum of info when something goes wrong seems fair to me.
Thanks,
Alex
Houdini Engine for Unity » PDG integration in Unity
- chekboom
- 28 posts
- Offline
Hi,
I completed the awesome “PDG for Indie Gamedev” tutorial series [www.sidefx.com] from Kenny Lammers and I'd like to share my comments and questions and maybe hear from other people having used PDG in Unity.
Thanks a lot!
Alex
I completed the awesome “PDG for Indie Gamedev” tutorial series [www.sidefx.com] from Kenny Lammers and I'd like to share my comments and questions and maybe hear from other people having used PDG in Unity.
- It's very hard to debug PDG in Unity when everything works fine in Houdini, but a work item fails in Unity.
I often had issues with paths being wrong for Unity: In HDA Processor, the HDA path is supposed to be $PDG_DIR/hda/myhda.hda, but defaulted to $JOB/hda/myhda.hda. I forgot to change it several times and since there are no error messages, except the “FAILED” in the PDG Asset Link, it took a while each time to pinpoint which node was failing.
It's especially difficult when using the “HEngine Data” tag that hides nodes.
It would be very useful to have the name of the failed items (in the Unity console or as a tooltip in the work item status table), and as much info as we have in Houdini when middle clicking on a failed work item. - Also related, it would be useful to have more details of what's cooking in the PDG Asset Link. At least the names of the TOP nodes being processed in a tooltip or something. We're kind of blind compared to the amount of cool feedback we have in Houdini
- When building and testing the TOP network, Houdini and Unity share the same $PDG_DIR path to write and read data (mostly bgeo files) Can it create conflicts and issues? Is it better to always clean up this data when switching from Houdini to Unity and vice versa?
- Last question: In the tutorial, to make terrain textures show up correctly, their path have to start from a “Assets/Resources” folder and not have file extensions. Is it a Unity Engine constraint? I could not find any documentation on this.
Thanks a lot!
Alex
Houdini Engine for Unity » Plugin updates for Unity 2018.3, multiple HDA inputs, custom pipelines/shaders
- chekboom
- 28 posts
- Offline
Hi,
It's cool to be able to define custom default shaders, but is there a way to define a custom default shader for Terrains to use in LWRP or HDRP?
And talking about terrains, when do you plan to support the new Unity terrain (Terrain instanced rendering checkbox)?
Thanks a lot!
Alex
It's cool to be able to define custom default shaders, but is there a way to define a custom default shader for Terrains to use in LWRP or HDRP?
And talking about terrains, when do you plan to support the new Unity terrain (Terrain instanced rendering checkbox)?
Thanks a lot!
Alex
-
- Quick Links