Thanks a lot!
- Quick note to anybody else who might try this:
Use a pack SOP, turn on “Name Attribute”, enter a attribute name by which to separate geo, turn off “create packed fragments”. At least, that did it for me.
Found 452 posts.
Search results Show results as topic list.
Houdini Engine for Unreal » How to split geo on SOP-level into seperate baked meshes (in UE4 via hengine 3.0)
- DASD
- 453 posts
- Offline
Houdini Engine for Unreal » How to split geo on SOP-level into seperate baked meshes (in UE4 via hengine 3.0)
- DASD
- 453 posts
- Offline
So as far as I understand, what I want to happen is this:
http://www.sidefx.com/docs/hengine/struct_h_a_p_i___cook_options.html#a47a4b358bd92d4de96d8799dee102728 [sidefx.com]
HAPI_CookOptions::splitGeosByGroup
I want splitGeosByGroup (or something like it) to be active in the UE4 version of Houdini Engine.
That does not seem to be the case.
According to the docs:
http://www.sidefx.com/docs/unreal16.0/_meshes.html#MeshGeneration [sidefx.com]
SplitGeosByGroup seems to only happen for collision groups.
- Why is that?
Can I make it easily work for all types of primitive groups? (With “it”, I mean the splitGeosByGroup behaviour.)
Can I make it easily work for specific primitive groups?
Can I make it work with a special attribute?
Can I somehow change such settings from within an HDA? (The idea would be, that no matter where I run the HDA, it uses my custom settings for bakes.)
http://www.sidefx.com/docs/hengine/struct_h_a_p_i___cook_options.html#a47a4b358bd92d4de96d8799dee102728 [sidefx.com]
HAPI_CookOptions::splitGeosByGroup
I want splitGeosByGroup (or something like it) to be active in the UE4 version of Houdini Engine.
That does not seem to be the case.
According to the docs:
http://www.sidefx.com/docs/unreal16.0/_meshes.html#MeshGeneration [sidefx.com]
SplitGeosByGroup seems to only happen for collision groups.
- Why is that?
Can I make it easily work for all types of primitive groups? (With “it”, I mean the splitGeosByGroup behaviour.)
Can I make it easily work for specific primitive groups?
Can I make it work with a special attribute?
Can I somehow change such settings from within an HDA? (The idea would be, that no matter where I run the HDA, it uses my custom settings for bakes.)
Edited by DASD - March 12, 2017 14:13:43
Houdini Engine for Unreal » Attribute features overview
- DASD
- 453 posts
- Offline
With H16 we got official docs for that:
http://www.sidefx.com/docs/unreal/_attributes.html [sidefx.com]
http://www.sidefx.com/docs/unreal/_attributes.html [sidefx.com]
Technical Discussion » Procedural Edge Generation ?
- DASD
- 453 posts
- Offline
Have you tried a polyextrude sop?
Also I am not sure what the goal of this is and therefore I am not sure what is actually required. As far as I can tell from the screenshot, the “inbetweens” actually have thickness and are one connected chunk? I guess one way to achieve this would be schrinking each fractured piece, peak the outter faces out and then boolean those chunks with the original geo.
Or maybe instead shrink each chunk (while maintaining the outter face shape) and somehow creat the inbetweens from the inner faces…
Just some ideas.^^
Also I am not sure what the goal of this is and therefore I am not sure what is actually required. As far as I can tell from the screenshot, the “inbetweens” actually have thickness and are one connected chunk? I guess one way to achieve this would be schrinking each fractured piece, peak the outter faces out and then boolean those chunks with the original geo.
Or maybe instead shrink each chunk (while maintaining the outter face shape) and somehow creat the inbetweens from the inner faces…
Just some ideas.^^
Houdini Engine for Unreal » Houdini Engine and UE 4.13
- DASD
- 453 posts
- Offline
4.14.3 should be working with any recent daily build. The third update number is like a patch, but is not allowed to break binary compatibility. So Houdini Engine is the same for 4.14.0 as for 4.14.3 and if I'm not mistaken 4.14 is already supported for a while.
Houdini Engine API » Can Houdini engine recognize its current platform?
- DASD
- 453 posts
- Offline
Houdini Engine for Unreal » New feature: Mesh sockets
- DASD
- 453 posts
- Offline
Houdini Engine for Unreal » New feature: Mesh sockets
- DASD
- 453 posts
- Offline
Houdini Engine for Unreal » New feature: Mesh sockets
- DASD
- 453 posts
- Offline
Houdini Engine for Unreal » Instance size affecting spline resample length
- DASD
- 453 posts
- Offline
As far as I understand, you assign a new mesh (instead of the default box) to the HDA in Unreal. What this does is, it puts the new mesh onto the instance points, instead of the old mesh. Now here's the problem. You scale your box to make it fit along the spline segments, but you are not scaling the mesh you assign in Unreal. To do this, you need to analyze the size of the input mesh. You can get the input mesh from Unreal into the HDA with an object merge node with the “Object 1” parameter promoted to the UI of your HDA. You make a check in switchnode, to see if there is anything coming in from this merge node. If not, you just use your default box. Then you analyze the size of this thing and then calculate a scale factor. Basically: size of box along the axis that aligns with the curve edge times scale factor equals curve segment lenght.
Then you create a point vector attribute “scale” with each of the three value slots equal your scale factor. That needs to happen on your instance points, so basically you can do it in the same node where you create the instance attribute.
You will also want to put a polyframe node after that. Untick “Normal Name”, replace “tangentu” with “N” (no quotation marks) and set Entity to “First Edge”. That way you get normals along the spline. These normals and the scale attribute are both interpreted by the instance node to do specific things with the instanced mesh. The normals will rotate it and the scale will scale it.
In unreal this then gets translated into a Instance static mesh node in Blueprints (when you bake to blueprints) and that blueprint node does the exact same thing as Houdini's instance node. Note that in Unreal negative scale on instances will lead to undesirable results, so don't do it.
Then you create a point vector attribute “scale” with each of the three value slots equal your scale factor. That needs to happen on your instance points, so basically you can do it in the same node where you create the instance attribute.
You will also want to put a polyframe node after that. Untick “Normal Name”, replace “tangentu” with “N” (no quotation marks) and set Entity to “First Edge”. That way you get normals along the spline. These normals and the scale attribute are both interpreted by the instance node to do specific things with the instanced mesh. The normals will rotate it and the scale will scale it.
In unreal this then gets translated into a Instance static mesh node in Blueprints (when you bake to blueprints) and that blueprint node does the exact same thing as Houdini's instance node. Note that in Unreal negative scale on instances will lead to undesirable results, so don't do it.
Edited by DASD - Nov. 30, 2016 14:25:03
Houdini Engine for Unreal » Are Substances supported?
- DASD
- 453 posts
- Offline
Houdini Engine for Unreal » Are Substances supported?
- DASD
- 453 posts
- Offline
I made an HDA, added a Substance in the Extras and assigned it to the geometry inside the HDA. I also installed the Substance Plugin into Unreal 4.
Can I get Houdini Engine to bake meshes and the Substance to Unreal 4?
I am aware of the possibility to assign Substances in Unreal with the Unreal_Face_Material attribute, but I wonder whether I would be able to deliver one HDA (for example on the Orbolt asset store) that contains and bakes all required files.
Can I get Houdini Engine to bake meshes and the Substance to Unreal 4?
I am aware of the possibility to assign Substances in Unreal with the Unreal_Face_Material attribute, but I wonder whether I would be able to deliver one HDA (for example on the Orbolt asset store) that contains and bakes all required files.
Edited by DASD - Nov. 29, 2016 15:36:44
Houdini Lounge » Rendering in Houdini - A big call for discussion
- DASD
- 453 posts
- Offline
Hehe, I almost forgot about this thread.
Looking back:
We now have a Substance Designer Plug-in. So that's fantastic.
We now have an Ueber-shader. That's also fantastic. - Though I would still love presets and more example shaders. But that's a WIP, as far as I understand.
We now have a texture baking tool. - Last time I checked it still needed a bit of polish, though. ^^
And with Houdini 16 I think there will be some changes to node visualisation. - So I'm looking forward to that.^^
Rendering UI could probably still use a rework. XD
Way to go SideFX!
Looking back:
We now have a Substance Designer Plug-in. So that's fantastic.
We now have an Ueber-shader. That's also fantastic. - Though I would still love presets and more example shaders. But that's a WIP, as far as I understand.
We now have a texture baking tool. - Last time I checked it still needed a bit of polish, though. ^^
And with Houdini 16 I think there will be some changes to node visualisation. - So I'm looking forward to that.^^
Rendering UI could probably still use a rework. XD
Way to go SideFX!
Edited by DASD - Nov. 29, 2016 15:39:50
Houdini Engine for Unreal » Instance size affecting spline resample length
- DASD
- 453 posts
- Offline
Have you tried to force a recompute/another bake?
- If you could share your file (or a simplified version), it would be easier to debug.
- If you could share your file (or a simplified version), it would be easier to debug.
Edited by DASD - Nov. 29, 2016 09:57:47
Houdini Engine for Unreal » Instance size affecting spline resample length
- DASD
- 453 posts
- Offline
You can use http://www.sidefx.com/docs/houdini15.5/expressions/bbox [sidefx.com] to find out about the size of the thing you want to instance, and then it's a matter of dividing the length of the spline by th result to find out how many points you want on the spline. Also probably need to truncate that number (round off) and make sure the last point of the spline is removed, or something like that. Depends on what behaviour you actually want.
You will probably also want to look into the polyframe SOP to allign the normals of the points on the spline along the spline, so you can orient the instances along the spline…
You will probably also want to look into the polyframe SOP to allign the normals of the points on the spline along the spline, so you can orient the instances along the spline…
Edited by DASD - Nov. 28, 2016 14:03:53
Technical Discussion » How do I use an array attribute in houdini expression or python
- DASD
- 453 posts
- Offline
Thanks, but strangely that ( detail(“../fibonacciWrangle”,“fibb”,detail(“../metaEachStorey”,“iteration”,0)) ) doesn't seem to work. Well, I worked around it with a vops node.
I'm on build 15.5.651. Maybe somebody else can check if it works for them.
I'm on build 15.5.651. Maybe somebody else can check if it works for them.
Technical Discussion » How do I use an array attribute in houdini expression or python
- DASD
- 453 posts
- Offline
I have a detail integer array attribute on a VEX wrangle node and now I want to drive some SOP loops with that. (For each element in the array I want to do something the amount of times the value of the loop). I also made the lenght of the array a detail attribute, so I was able to drive a For loop with that.
How can I get the values of each array element?
(I am very familiar with the detail(“../node”,“iteraition”,0) and the meta node bit).
I expected it would be something like: detail(“../myVexNode”,“my_array”,detail(“../metaEachStorey”,“iteration”,0)).
But that doesnt seem to work.
Thanks in advance!
How can I get the values of each array element?
(I am very familiar with the detail(“../node”,“iteraition”,0) and the meta node bit).
I expected it would be something like: detail(“../myVexNode”,“my_array”,detail(“../metaEachStorey”,“iteration”,0)).
But that doesnt seem to work.
Thanks in advance!
Edited by DASD - Nov. 20, 2016 16:37:33
Technical Discussion » VEX: array implicit cast question
- DASD
- 453 posts
- Offline
Ah thanks, that did it!
I even knew that rint returns a float, but I was looking for the flaw in the array bit in the following line, because that's where the compiler put the mark.
I feel like such a noob.
- I also just noticed that the slicing notation I was using in the array bit does not seem to show in the forum. Well, to clarify, if the condition was true, I would slice the array. And of course, my condition was a bit more complicated than what was shown.
I even knew that rint returns a float, but I was looking for the flaw in the array bit in the following line, because that's where the compiler put the mark.
I feel like such a noob.
- I also just noticed that the slicing notation I was using in the array bit does not seem to show in the forum. Well, to clarify, if the condition was true, I would slice the array. And of course, my condition was a bit more complicated than what was shown.
Edited by DASD - Nov. 20, 2016 13:35:17
Houdini Engine for Maya » Houdini Normals to Maya
- DASD
- 453 posts
- Offline
I found an ok workaround for relatively static geo:
1. Convert your hard edge selection to a point point group selection (in Houdini).
2. In Maya: Select the geo and unlock normals
3. In Maya you should get a selection set with your group name.
Rightclick the selection set and click: Select Set Members
4. In the Maya main menu go to Select->Convert Selection->To Contained Edges
One limitation are cases where the conversion from points to contained edges leads to the selection of edges that were not originally hardened.
A possible work-around would be an algorithm that generates smoothing groups based on faces (like in 3DS Max) and a script in Maya that goes through the selection sets.
A better solution would be if edge-groups were supported in Houdini Engine for Maya by sideFX. Hence I'm gonna make an RFE for that and link that to my other RFE.
- I hope this is helpfull to somebody!
1. Convert your hard edge selection to a point point group selection (in Houdini).
2. In Maya: Select the geo and unlock normals
3. In Maya you should get a selection set with your group name.
Rightclick the selection set and click: Select Set Members
4. In the Maya main menu go to Select->Convert Selection->To Contained Edges
One limitation are cases where the conversion from points to contained edges leads to the selection of edges that were not originally hardened.
A possible work-around would be an algorithm that generates smoothing groups based on faces (like in 3DS Max) and a script in Maya that goes through the selection sets.
A better solution would be if edge-groups were supported in Houdini Engine for Maya by sideFX. Hence I'm gonna make an RFE for that and link that to my other RFE.
- I hope this is helpfull to somebody!
Edited by DASD - Nov. 20, 2016 12:52:38
Houdini Engine for Maya » Which attribute types are supported?
- DASD
- 453 posts
- Offline
-
- Quick Links