Search the Community
Showing results for tags 'hda'.
-
Hello There! I'm trying to understand how to use viewer states with HDAs, and I've managed to successfully get my paintAttribute sop to switch states from inside my HDA, amazing! I did this with the default state parameter on the type_properties by entering sidefx_attribpaint in that field. Seems to work great! However I'm struggling to get the same approach to work with sculpt or edit SOPs, and when I check for the viewer state in the Viewer State Browser window it doesn't pick anything up... So what does this mean? Do those sops actually use viewer states? If so what are they called? If not, what do they use? Very confused here so any help is very much appreciated. Thanks in advance Matt
-
Hi, Say there were an existing hip with hdaAsset::1.0 used multiple times throughout various node graphs inside. hdaAsset is now in version ::2:0 and there's been a parameter name change, say from 'inputFloat' to 'inputF'. Would there be a way, upon hip load, to catch that? Maybe an event handler script with a condition in there for that hdaAsset::1.0 node type and parm? The goal is to read the connectors of all hdaAsset::1.0 instanced before the assets gets synced to ::2.0 upon scene load and then wire them into the newly named 'inputF' after sync. Manual rewiring of broken node graphs avoided. Everybody happy. Or, looked at differently, prevent hda sync to the latest version for that particular node type definition, just so the connectors would stay in place. Has anybody dealt with something like that before? Thanks, Hristo
-
I created a rather complex Digital Asset. It consticts of ~2000 nodes, and also there is ~60 instances of another asset inside this asset. I optimized it thought cleaning nodes throught performance monitor, and now It computes rather fast after loading, but LOADING takes nearly 10 seconds. It's became a real problem because in my hip file I need to use it rapidly many times. Is there any way to speed up loading of asset? And after creating every instance of this asset Houdini increases ram usage at ~500 mb, it's also a problem...
-
Hi guys, I have a problem with the compile block inside HDA. I is working fine unless I add a second asset right after the first one. Then things go crazy because this second asset claims that the Stroke Node that is not even in the first compile block is not Compile compatible and it cannot cook. Should I isolate the stroke from the compile block? Tom
-
- combile block
- hda
-
(and 1 more)
Tagged with:
-
Hi all! I recently made a free public post on my Patreon, a bit of a New Year's gift. In my destruction classes & SideFX conference presentations I've mentioned that I often use geometry grouping to define the clustered sections in my RBD sims. However, it takes a bit of work to create the feedback for-each loops to set that up, so I've finally wrapped it up into a helpful HDA. Demo HIP file included as well. (I also included the HDA in the November 2020 'quick tip' post, but this version fixes a bug in the size-based prioritization, so for patrons that have that version I highly recommend downloading this one instead!) https://www.patreon.com/posts/45769153 https://vimeo.com/496659441 Hope you find this useful, and that you enjoy the new year! :-) ~ Keith
-
- 1
-
-
- hda
- destruction
-
(and 5 more)
Tagged with:
-
Hi everyone, Short explanation: I want to be able to see parameters (of a Houdini Digital Asset) that I created in Houdini’s Python Module, in Unreal. Long explanation: I’m creating a Digital Asset in Houdini and want to use it in Unreal. When I create parameters in Houdini in the “Type Properties” window everything is fine and the asset works in Unreal and parameters are visible and can be adjusted. Now I added some a Python function in the Python Module of Houdini that creates some parameters. I also created a button that when pressed, triggers this function. This all works in Houdini but as soon as I export this to Unreal the button does nothing. If I use the Sync Session in Unreal (so I have my Houdini and Unreal open at the same time with the same asset) and press on the button (in Unreal), then the parameters do get created in Houdini, but still not in Unreal. The only solution I found so far is, place the tool in Unreal, go back to Houdini’s “Type Properties” window, save the tool again and press “Revert Layout” in the pop-up window. Only then the parameters created in Python get visible in Unreal. But as soon as I place another HDA in the level I have to do that all over again. I want the user to use this tool only in Unreal, without reverting the layout all the time in Houdini. Is there away to achieve this? Thanks in advance, you would really help me out here!
-
- houdini
- unreal engine
-
(and 5 more)
Tagged with:
-
Hello! I've modified the heightfield scatter that ships with Hou. It's saved as versioned HDA to my projects HDA folder and I'm now using it, nested inside and other HDA, in a PDG setup. This works fine on my workstation but not for my college. The reference to the modified heightfield scatter is lost when he opens the HIP and the HDA containing the trouble maker just fails. I have a hard time debugging this since it only fails on others workstation. The tools we're building are ending up in Unreal and so far we've managed to avoid using environment files, something we handle with a custom setup in Unreal instead. So I'm hoping to find a solution that doesn't require us to turn to a environment file.
-
FFX Align To Curve HDA FFX Align To Curve brings a faster system for customizing orientation of geometry along the length of a curve. Working with point data directly, a user is easlily able to develop in realtime their desired orientation data. A clear adjustable guide system shows exactly which direction your geometry will orient towards once copied onto the processed points. Scaleable arrows reveal the primary tangentu orientation and travel direction along the curve. Auxillary normal and bitangent markers reveal the other axis orientations. Features include: - Guide scaling, opacity, and color. - Offset parameter to slide points along curve. - Reversible orientation direction - Roll, Pitch, and Yaw controls that can be varied over the length of curve. - Pscale (scale) point attribute that can be randomized and varied over the length of curve. - Cd (color) point attribute that can be varied over the length of curve. - Separate head and tail point breakout to allow for unique geometry from the main curve. - Plus other adjustment, and output options. Video Tutorial: https://vimeo.com/478682335 For more information please visit https://fendrafx.com
-
- 1
-
-
- guidegeo
- orientation
- (and 24 more)
-
Hello, people of OD force, I am a noob at Houdini only a year of experience with the software but I am having fun and enjoy learning it. Now I am doing a short film for university and I made a few different effects. I have accomplished the effects I wanted but the problem is I cannot seem to be able to export them, I tried, alembic, FBX and HDA but none of them works. I was planning on rendering on unreal so that's where I want import them but I can't figure it out how to do this. More info The effects I have done are two volumes sop and an rbd fracture. I believe I am doing something wrong with the fracture but the cloud man and the volumetric fog might be because they don't have any geometry but I am not sure. My option or best bet is try to work out hdas or just rebuild all the effects in unreal or Maya or even do them in compositing. This is why I need you people of the internet to help another human being out, please. I'll be leaving the hip files so you can check it out and understand the situation better : fog_effect.hip test_smoke_3.hip fracture_judgement_export.hip and the files I am using in the scenes needed files.rar All your wisdom is appreciated Thank you Juanandonly
-
Hi, I'm doing a tool using the stroke node for breaking the corner of a geometry. User can isolate part of the geometry by selecting group. The problem appear when the user isolate a part and want to paint on the surface. It look like the stroke node don't refresh the geometry input and still use the inital geometry input as reference model for the stroke projection. Maybe I'm wrong but I'm pretty sure the problem is coming from the stroke node that not re-cooking when the user tick the isolate toggle and select a group. Does some one could give me a hint on how to fix that please, I'm pretty stuck right now.
- 4 replies
-
- hda
- stroke node
-
(and 2 more)
Tagged with:
-
Hey there ! I've got an issue where I have a group on my HDA (or multiple, doesn't matter) to do some stuff, but when I click the "select button" to start the selecting in the viewport, the display flag doesn't go on the group node. It stays where it was set when the HDA was saved. So in this example, the display flag is set on the Output node, and when selecting the prim or the point, we stay on the tube geo instead of going to the cube or the sphere I made sure to have all the nodes as "Editable" in the HDA, just in case. Here's a bare-bone setup showcasing the issue. The Group parameters on the HDA were created by drag-and-dropping each group nodes' parameter on the HDA, and I changed the Action Button Script a little bit to make it work. In this gif I tried with two version of the same HDA, one at the OBJ level, the other at the SOP level. Both have the same behavior. Looks like the display flag isn't able to be changed, since the HDA is locked. So when I unlock the HDA, then the selection stuff works correctly ! Until I lock it back up. I would assume that even when locked, the display flag would do that stuff with the render/display flags combo where upon clicking the "start selection" button, the render flag stays on the currently-displayed node, and the display flag moves (temporarily) onto the parent of the group node, until the selection is done. I swear that worked before.. I seem to remember that I had to specify the parent of the group node as an Editable Node in the HDA, and then the render/display flag combo worked... But I might be mistaken ..? Is there a workaround ? Did it really work before ? Thanks ! groupDisplayFlagHDA.hipnc test_groupSelect_obj.hdanc test_groupSelect_sop.hdanc
- 2 replies
-
- hda
- display flag
-
(and 1 more)
Tagged with:
-
I would like to input Maya geometry into the HDA, which then will do it's magic, like placing that 1 geo 100 times, and then instance it when baked.
- 1 reply
-
- instance
- instancing
-
(and 3 more)
Tagged with:
-
Hi guys, I'm creating an interactive cutting tool and I have trouble getting node parameters in the HDA parameters. I have imported toolutils and as long as I import only the build-in functionality of the node (draw curve node) it is working fine, but when I want to add parameters created by that node to the HDA parameters it is not working. Anyone can explain it to me how to properly import node proprieties to HDA or just give me a hint of where to look for that info?
-
I have an HDA with a series of preset curves that the user can switch between. This curve is taken and a revolve node is applied (this is in the top left of "model inputs," "bulb"). If I want the option to let the user draw a curve that they want, what do I do? If I simply include a blank curve, what allows the user to draw in in the HDA? And ideally, they should start drawing it at the origin like I did when making the three preset curves. lightbulbs.hdanc
-
Hello, I am strugling with project management. We are in homeoffice now, so we try to figure out how to manage our assets paths. For textures and bgeos we are fine, but issue comes with hdas. We try to define their path with global variables but the instant you close the window it gets converted back to standard path string. Currently we have a python hda install system as our server is linux based and breaks all the hda paths. The issue is easier to explain with an image. Does somebody know a solution for this? Thanks
-
Hey all. Just wondering if it's possible to create a custom HDA/OTL with the same network view container network box like the one you get when you create a Block Begin (foreach loop)? I'm creating a couple of OTLs where they “gatekeep” between any SOPs a user places inside them and the visual box around the SOPs is something I'd love to be able to recreate. Thanks, Marb
-
Hey guys, I'm copying this post from Reddit to get more exposure. Since you guys are pros, maybe you'll know the answer: I'm having an issue with my landscape material. I've got an HDA pulling in a landscape with six layers. I've setup each layer as a material function so I can blend each function in a material based on their layer name. The problem is the material only works with three layers at a time. I can't do more. This is what it looks like with three layers as expected: Three layers with blend mode set to Opaque The shader fails when I plug in more than three. It shades in a tiny square on the terrain (not shown here), the rest of the terrain is the standard checkerboard: Six layers fail with blend type set to Opaque The only way to view all layers is to set Blend Type to Alpha Composite, however I completely lose my directional lighting: Six layers with blend type set to Alpha Composite (no directional lighting) It must be something with my layering weights.. I just can't figure this out for the life of me. Here are my layer settings: Layer Blend settings Let me know if you've run into this issue; I'm sure it's an easy fix. Thanks guys, Colby
-
Hey Guys, Still quite new to Python, hoping someone can help point me in the right direction on this that I've been grappling with for a while now. I have a simple filecache .hda that I'd like to change color if it can/can't find the cache on disk. I've been able to use hou.ui.addEventLoopCallback() to continuously track and check the file parameter to see if the cache exists, and the color changing now works as expected. Where I'm having trouble is removing the event loop when the .hda is deleted from the node graph. An error pops up because Houdini is still trying to access the deleted node. I've been trying to look for a way to use the OnDeleted event handler, or hou.nodeEventType.BeingDeleted, but no luck yet and I feel out of my depth with my limited python experience. The .hda is attached, and there's a preview of the code below. Any help would be appreciated! custom_filecache.hda ####PythonModule#### import os import hou def nodeColor(kwargs): node = kwargs["node"] def colorCallback(): filepath = node.evalParm("file") if(os.path.exists(filepath)): node.setColor(hou.Color((0.0, 0.8, 0.0))) node.setComment(filepath) node.setGenericFlag(hou.nodeFlag.DisplayComment,True) else: node.setColor(hou.Color((0.8, 0.0, 0.0))) node.setComment("File not found") node.setGenericFlag(hou.nodeFlag.DisplayComment,True) startCallback(colorCallback) #adding this code below crashes Houdini when hda is deleted #node.addEventCallback([hou.nodeEventType.BeingDeleted], endCallback(colorCallback)) def startCallback(callback): hou.ui.addEventLoopCallback(callback) def endCallback(callback): hou.ui.removeEventLoopCallback(callback) ####OnCreated#### kwargs["node"].hdaModule().nodeColor(kwargs)
-
I'm developing some UI for pipeline tools. One of the tools is an HDAs and Setups manager, where I click on the desired HDA and it is imported into the current geo context. I spent some time reading the documentation and other created threads on how to get the current geo context path and all I've managed to do is a workaround where I have to select one or more nodes and only then can I import my HDA into the selected context. Any ideas on how to achieve this without having to select any nodes?
-
Hi Everyone, I followed this tutorial and everything works well but there are no constraints and it just falls apart. Does anyone know how to get glue constraints to work from houdin to UE4 through the HDA? here is my network. I have tried merge, attribute transfer Thanks in advance for any help
-
Hi, I have an HDA (sop) that contains a different HDA (rop). The problem I have is that I need both of them to run a OnCreated event, but it seems to run only when user creates the node, not when it gets created as a part of a different hda (both have the OnCreated working, when I just create them separatelly). Does anyone have a solution for this? Thanks Martin Running: Houdini 17.5, Linux
- 3 replies
-
- hda
- event handler
-
(and 3 more)
Tagged with:
-
so i create a subnet with a few options in the parameter interface. outside that - i created 3 options joined by a switch. so i have 2 questions. 1) how do i create an HDA that keeps my current menu from the subnet and include that with a menu for the switch? i hope i am asking that right. 2) rather than having a slider for the switch - is there a way to create a toggle button for each option?
-
Hey, I am currently building an HDA with python viewer states and I want to display an image/grid in the upper left corner of the viewport. This is what I currently use to move the grid to the current viewport postion. viewport = hou.ui.curDesktop().paneTabOfType(hou.paneTabType.SceneViewer).curViewport() cam = viewport.viewTransform() hou.parmTuple('/obj/geo1/transform1/t').set(cam.extractTranslates()) hou.parmTuple('/obj/geo1/transform1/r').set(cam.extractRotates()) I also transform the grid in the negative z direction afterwards. This results in the image beeing in the center of the viewport. But I'm not sure how I can move the image to the corner of the viewport and keep it in the correct postion when the viewport is beeing resized. Maybe with the viewport.viewportToNDCTransform() or viewport.mapToWorld() methods. But I couldnt figure out how. I found a promising vex based result here:https://youtu.be/7UuVhbTRcew?t=1890 string cam = chs("camera"); vector bb = relbbox(0,@P); vector4 crop = chp("crop"); bb.x = fit(bb.x, 0, 1, crop.x, crop.y); bb.y = fit(bb.y, 0, 1, crop.z, crop.w); bb.z = chf("zoffset"); @P = fromNDC(cam,bb); But this one requires a camera node and I'd rather have this logic in the python states if possible. Thanks
-
Hey guys! Once again, I have to seek out your precious help ^.^ I am currently creating my own asset browser and I am working on feeding assets from Houdini into the library. So far, everything was going pretty smoothly up until I got stuck with something that seems so simple: the frameSelected() function of the hou.GeometryViewport class. When I use the Python shell inside Houdini and do this, it is working correctly: import toolutils viewer = toolutils.sceneViewer() view = viewer.curViewport() node = hou.node('/obj/geo1/DZK_Asset_Export') node.setCurrent(True,True) view.frameSelected() My section in the HDA is not. Broken down to the essential part (with hard coded selection of node as above for the sake of the example): import toolutils viewer = toolutils.sceneViewer() view = viewer.curViewport() [...] cam = obj_level.createNode('cam', 'asset_cam') node = hou.node('/obj/geo1/DZK_Asset_Export') node.setCurrent(True,True) view.frameSelected() view.saveViewToCamera(cam) view.setCamera(cam) All the other functions work as expected (lockCameraToView, saveViewToCamera, setCamera all work fine). I only have trouble with frameSelected(), even when adding the code from the shell to my script, basically hard coding selecting the correct node. After running my export process which does not frame the view, I can go to the shell and call frameSelected() and from there it works again :/ I also have sections where I first set the camera, lock the view, then try framing but it is the same result: all working, except the framing. I wonder what I am doing wrong in my code and hope you can help me out. Any pointers, comments are greatly appreciated!