parmtemplate = hou.parm(hou.pwd().path()+“/myParm”).parmTemplate()
parm_folder.addParmTemplate( parmtemplate)
You can do something like that^, I think. (Adjust the myParm part).
Found 452 posts.
Search results Show results as topic list.
Technical Discussion » How to edit parameter interface of a node to add existing parameters to a "FolderParmTemplate" using houdini python?
- DASD
- 453 posts
- Offline
Technical Discussion » Houdini style UI elements in Pyside2
- DASD
- 453 posts
- Offline
Hi, I am building a shelf tool with Python in Houdini and I chose Pyside2, because that seems the best way to make a complex UI for a tool.
Are there QtWidgets (etc) based on Houdini's native UI?
The only thing I could find was the hou.qt module but it does not seem to contain Houdini style:
integer parameter
float parameter
vector parameter
ramp paramater
color ramp parameter
- And those are the main ones I am looking for.
Is there anything I can use as QtWidgets for those purposes in Houdini?
Are there QtWidgets (etc) based on Houdini's native UI?
The only thing I could find was the hou.qt module but it does not seem to contain Houdini style:
integer parameter
float parameter
vector parameter
ramp paramater
color ramp parameter
- And those are the main ones I am looking for.
Is there anything I can use as QtWidgets for those purposes in Houdini?
Technical Discussion » Permanent pressbutton counter across HDA instances, sessions and different .hips file?
- DASD
- 453 posts
- Offline
With Python and
import os
you can check all files in a directory. Since that is your standard anyways, it seems to me that you could just analyze what is in the directory and set things up accordingly.
import os
you can check all files in a directory. Since that is your standard anyways, it seems to me that you could just analyze what is in the directory and set things up accordingly.
Technical Discussion » RFE Idea: add Piece attribute in a merge SOP
- DASD
- 453 posts
- Offline
Typically you could use group nodes etc. but I see where you are coming from.
I am thinking, we should be able to make HDAs with multi-inputs (so we can plug in infinite number of nodes XD ). That would allow us to make custom merge nodes and much more.
I am thinking, we should be able to make HDAs with multi-inputs (so we can plug in infinite number of nodes XD ). That would allow us to make custom merge nodes and much more.
Houdini Engine for Unreal » BUILDING SPLAT MAPS FROM WITHIN UE4 with houdini digital asset LANDSCAPE
- DASD
- 453 posts
- Offline
Have you checked the docs:
https://www.sidefx.com/docs/unreal/_outputs.html#OutputLandscape [www.sidefx.com]
?
https://www.sidefx.com/docs/unreal/_outputs.html#OutputLandscape [www.sidefx.com]
?
Technical Discussion » Select several points on a CURVE, how?
- DASD
- 453 posts
- Offline
Concerning this, you should send in support for:
Side Effects Support Ticket: RFE (ID# 96847)
I sent
“RFE: Please add ability to move, rotate, scale and delete multiple points in a curve SOP at once”
and
“RFE: Please add handles to the Bezier mode of the curve tool”
, but both of those were added to RFE (ID# 96847).
Side Effects Support Ticket: RFE (ID# 96847)
I sent
“RFE: Please add ability to move, rotate, scale and delete multiple points in a curve SOP at once”
and
“RFE: Please add handles to the Bezier mode of the curve tool”
, but both of those were added to RFE (ID# 96847).
Technical Discussion » Click arrow on the exposed Group pararmeter in a subnet/HDA gives error...
- DASD
- 453 posts
- Offline
In the action button tab, replace the script with, the following and replace “keepMe” with the name of the node
import soputils
path = kwargs.path()+“/keepMe”
#keepMe is the name/relative path of the node we want to actually use.
kwargs = (hou.geometryType.Primitives,) #fix this for selection type
kwargs = hou.node(path)
kwargs = 0
soputils.selectGroupParm(kwargs)
import soputils
path = kwargs.path()+“/keepMe”
#keepMe is the name/relative path of the node we want to actually use.
kwargs = (hou.geometryType.Primitives,) #fix this for selection type
kwargs = hou.node(path)
kwargs = 0
soputils.selectGroupParm(kwargs)
Technical Discussion » Is it possible to use HLSL in Houdini?
- DASD
- 453 posts
- Offline
Is it possible to use HLSL?
And more precisely, is possible to turn HLSL displacement code into geometry deformation in Houdini?
—-
My research so far:
GLSL is used for viewport rendering in Houdini and it is possible to write custom viewport shaders in GLSL. (https://www.sidefx.com/docs/houdini/shade/glsl.html)
The docs indicate, that GLSL can also be used for rendering. I suppose this would make it possible to bake the shader to geometry.
(https://www.sidefx.com/docs/houdini/shade/glsl.html)
There seems to be at least one HLSL to GLSL converter.
—-
But this looks like a really terrible idea for a pipeline. So is there something more direct?
And more precisely, is possible to turn HLSL displacement code into geometry deformation in Houdini?
—-
My research so far:
GLSL is used for viewport rendering in Houdini and it is possible to write custom viewport shaders in GLSL. (https://www.sidefx.com/docs/houdini/shade/glsl.html)
The docs indicate, that GLSL can also be used for rendering. I suppose this would make it possible to bake the shader to geometry.
(https://www.sidefx.com/docs/houdini/shade/glsl.html)
There seems to be at least one HLSL to GLSL converter.
—-
But this looks like a really terrible idea for a pipeline. So is there something more direct?
Technical Discussion » Generate help for custom vex functions
- DASD
- 453 posts
- Offline
Houdini Engine for Unreal » Digital Asset - LODs
- DASD
- 453 posts
- Offline
Gomo
I want to have ability to tweak LOD screenSizes or other parameters for all instances of given HDA class without using Houdini, just parameters in Unreal.
I think that is not currently possible. If you want a change across all instances of an HDA you have to do that in the HDA definition in Houdini.
However, in recent releases of Unreal you get a Python API, so I guess you might make a tool that will be able to select HDAs in your scene and change their parameters. But to my understanding this will be overkill and rather useless. I would suggest to figure such things out once and then lock them in in the HDA. Even in worst case scenario, the amount of times to tweak such things can probably be counted on one hand…
I am not sure whether it is part of your issue, but you can give every exposed parameter on your HDA a reasonable preset value that will be prefilled when you put down the HDA (in Unreal or anywhere).
You can also do things with additional parameters that are not exposed, so maybe all the instances of the HDA in Unreal would be able to keep their settings, but you have an offset in the Definition that you can tweak if necessary that changes the final value.
I do see potential for global controls, though. It's probably worth an RFE. Though there are much more pressing issues that should be fixed first (like the ability to set arbitrary Unreal attributes - which might help create workarounds for this issue.)
Houdini Engine for Unreal » Digital Asset - LODs
- DASD
- 453 posts
- Offline
Why do you care about the asset details? - I am obviously missing what you want to achieve.
- Just to make clear: To use the output of Houdini Engine in Unreal in your game, you will have to bake the assets to standard Unreal assets. I believe the HDA node in your scene (and it's children) will not be included in a release build, though it might just bake the output on compile - not sure.
- Just to make clear: To use the output of Houdini Engine in Unreal in your game, you will have to bake the assets to standard Unreal assets. I believe the HDA node in your scene (and it's children) will not be included in a release build, though it might just bake the output on compile - not sure.
Houdini Engine for Maya » Multiple mesh outputs
- DASD
- 453 posts
- Offline
I am currently looking at it from a tool generation perspective. For example you put in a static mesh and get fractured pieces out. In this scenario, there would be no animation, but it would be important that each piece would have its own pivot and transform (defined in Houdini) as well as other data that is different from piece to piece.
In general the most desirable solution would give similar results across Unreal/Maya/Unity etc. So when I pack my pieces and I put it in Unreal I bake to separate Static Mesh Objects and if I put the same HDA in Maya I expect to get separate Mesh Objects. In an ideal world I would have to make very few switches to have a compareable experience across platforms. I would only have to add/remove things that are 100% platform specific. This would allow me to easily use and reuse tools across different platforms.
In general the most desirable solution would give similar results across Unreal/Maya/Unity etc. So when I pack my pieces and I put it in Unreal I bake to separate Static Mesh Objects and if I put the same HDA in Maya I expect to get separate Mesh Objects. In an ideal world I would have to make very few switches to have a compareable experience across platforms. I would only have to add/remove things that are 100% platform specific. This would allow me to easily use and reuse tools across different platforms.
Houdini Engine for Unreal » Digital Asset - LODs
- DASD
- 453 posts
- Offline
Most Houdini parameter types are supported by Houdini Engine.
In Houdini:
- Make your HDA editable (rightclick -> Allow editing of contents). You will see red unlocked lock symbol next to it.
- Rightclick on HDA -> type properties.
- Dive into the HDA, rightclick on any parameter -> Export Paramater to Type properties . Now you can see a new entry in the Existing Paramaters list under the Parameters Tab in the Edit Operator Type Proeprties window. When you press Accept, the HDA definition will be updated to contain that parameter.
This parameter should be visible and usable in Houdini Engine in Unreal in the Detail Panel of the HDA. You can also make and link parameters in other ways.
Please read the docs/watch tuts on HDA creation:
https://www.sidefx.com/docs/houdini/assets/asset_ui.html [www.sidefx.com]
In Houdini:
- Make your HDA editable (rightclick -> Allow editing of contents). You will see red unlocked lock symbol next to it.
- Rightclick on HDA -> type properties.
- Dive into the HDA, rightclick on any parameter -> Export Paramater to Type properties . Now you can see a new entry in the Existing Paramaters list under the Parameters Tab in the Edit Operator Type Proeprties window. When you press Accept, the HDA definition will be updated to contain that parameter.
This parameter should be visible and usable in Houdini Engine in Unreal in the Detail Panel of the HDA. You can also make and link parameters in other ways.
Please read the docs/watch tuts on HDA creation:
https://www.sidefx.com/docs/houdini/assets/asset_ui.html [www.sidefx.com]
Houdini Engine for Unreal » Digital Asset - LODs
- DASD
- 453 posts
- Offline
I don't understand what you mean by global parameters. Sometimes it is best to give a brief user-story to describe what you need. Like, how do you imagine something would work.
Houdini Engine for Unreal » Unreal Engine4, Deploy your game on Play Store
- DASD
- 453 posts
- Offline
I think you are in the wrong forum. You seem to have an issue with Unreal. This forum concerns issues with Houdini Engine for Unreal.
The official forum for Unreal is at:
https://forums.unrealengine.com/dashboard [forums.unrealengine.com]
The official forum for Unreal is at:
https://forums.unrealengine.com/dashboard [forums.unrealengine.com]
Houdini Engine for Unreal » Digital Asset - LODs
- DASD
- 453 posts
- Offline
No need to be embarrassed. Stuff like that happens all the time.
“$OS will be automatically replaced with the node's name” -> Yes you can make that the default value of a node's parameter and that can be a convenience.
When you bake the HDA to a Static Mesh you should see the LOD options in the Static Mesh Viewer in Unreal (when you double-click on the baked out Static Mesh). Change stuff there until you like it. Then try to update your HDA to bake those settings via unreal_uproperty_ attribute. https://www.sidefx.com/docs/unreal/_attributes.html#AttributesGroups [www.sidefx.com]
If you upload your (fixed) file, I will give it a try.
“$OS will be automatically replaced with the node's name” -> Yes you can make that the default value of a node's parameter and that can be a convenience.
When you bake the HDA to a Static Mesh you should see the LOD options in the Static Mesh Viewer in Unreal (when you double-click on the baked out Static Mesh). Change stuff there until you like it. Then try to update your HDA to bake those settings via unreal_uproperty_ attribute. https://www.sidefx.com/docs/unreal/_attributes.html#AttributesGroups [www.sidefx.com]
If you upload your (fixed) file, I will give it a try.
Edited by DASD - May 21, 2019 15:22:47
Houdini Engine for Unreal » Prepare asset for Marketplace
- DASD
- 453 posts
- Offline
Either you would bake the results to standard assets (Static meshes etc) and sell those and or you would sell the HDA on the Orbolt Asset Store. - I do not believe that there is a good way to sell HDAs on the Epic storefront, yet. Though I might be mistaken.
Houdini Engine for Unreal » Changing Parameters on Instanced Blueprints
- DASD
- 453 posts
- Offline
As far as I know, this is not supported, yet.
You should send in RFEs for that, to bump the priority of this development.
The current recommended workaround is to make a bunch of Blueprints with a reasonable range of preset settings and spawn from those.
You should send in RFEs for that, to bump the priority of this development.
The current recommended workaround is to make a bunch of Blueprints with a reasonable range of preset settings and spawn from those.
Houdini Engine for Unreal » Houdini For UE4 mobile
- DASD
- 453 posts
- Offline
Houdini Assets (HDAs) need to be baked to Standard Unreal Assets (Static Meshes etc.) to be used in an Unreal game. Of course, Unreal Standard assets work on any platform that Unreal supports. So the short answer is: Yes.
Note: Currently Houdini in Unreal is not running at realtime, but only at editor time.
Note: Currently Houdini in Unreal is not running at realtime, but only at editor time.
Houdini Engine for Unreal » Procedural Spline generator from Houdini to Unreal
- DASD
- 453 posts
- Offline
You seem to have a good handle on things already.
My thoughts:
1. You probably already know this, but be aware that your tool will (for the foreseeable future) only ever be usable at editor time (not runtime) in Unreal.
2. In Unreal make a simple Blueprint with just an Unreal spline object component in it. (I will call this splineBP.) When you drag the splineBP into the Unreal editor you should be able to move and edit it (add remove points etc).
2. In Houdini, when you put down an object merge node and expose the Object* parameter to your HDA, you get that as an input on your HDA. You can plug splineBPs in there. You can have any number of inputs and any input may take any number of things. So you could make inputs that have different meanings and give you different controls. You could also plug in meshes and other things.
You can also set the input to generate its own special spline curve.
3. The unreal spline component gets re-sampled when it goes into the HDA. Plug a splineBP into the HDA and use the debug open Scene in Houdini menu option to see what you actually get. I recommend saving that for reference and working from there.
4. Resample, ends, refine, polyframe and many other SOPs as well as VEX/VOPs will be your friends. Personally I strongly recommend to work with VEX or VOPs if you are serious about learning Houdini, but VOPs is easier to start with if you don't find a good guide.
My thoughts:
1. You probably already know this, but be aware that your tool will (for the foreseeable future) only ever be usable at editor time (not runtime) in Unreal.
2. In Unreal make a simple Blueprint with just an Unreal spline object component in it. (I will call this splineBP.) When you drag the splineBP into the Unreal editor you should be able to move and edit it (add remove points etc).
2. In Houdini, when you put down an object merge node and expose the Object* parameter to your HDA, you get that as an input on your HDA. You can plug splineBPs in there. You can have any number of inputs and any input may take any number of things. So you could make inputs that have different meanings and give you different controls. You could also plug in meshes and other things.
You can also set the input to generate its own special spline curve.
3. The unreal spline component gets re-sampled when it goes into the HDA. Plug a splineBP into the HDA and use the debug open Scene in Houdini menu option to see what you actually get. I recommend saving that for reference and working from there.
4. Resample, ends, refine, polyframe and many other SOPs as well as VEX/VOPs will be your friends. Personally I strongly recommend to work with VEX or VOPs if you are serious about learning Houdini, but VOPs is easier to start with if you don't find a good guide.
-
- Quick Links