Forgot your password?   Click here   •   No account yet?   Please Register    •   Or login using  
EN Login
SideFX Homepage
  • Products
    • What's New in H20.5
      • Overview
      • VFX
      • Copernicus
      • Animation
      • Rigging
      • Lookdev
    • Houdini
      • Overview
      • FX Features
      • CORE Features
      • Solaris
      • PDG
    • Houdini Engine
      • Overview
      • Engine Plug-Ins
      • Batch
    • Karma Renderer
    • Compare
    • SideFX Labs
    • Partners
  • Industries
    • Film & TV
    • Game Development
    • Motion Graphics
    • Virtual Reality
    • Synthetic Data for AI/ML
  • Community
    • Forum
    • News Feed
      • Overview
      • Project Profiles
      • Houdini HIVE Events
      • Contests & Jams
    • Gallery
    • Event Calendar
    • User Groups
    • Artist Directory
  • Learn
    • Tutorials
      • Overview
      • My Learning
      • Learning Paths
      • Tutorial Library
    • Content Library
    • Tech Demos
    • Talks & Webinars
    • Education Programs
      • Overview
      • Students
      • Instructors
      • Administrators
      • List of Schools
      • Resources
  • Support
    • Customer Support
    • Help Desk | FAQ
    • System Requirements
    • Documentation
    • Changelog / Journal
    • Report a Bug/RFE
  • Try | Buy
    • Try
    • Buy
    • Download
    • Contact Info
 
Advanced Search
Forums Search
Found 12 posts.

Search results Show results as topic list.

Solaris and Karma » Layout node using absolute paths, migrating Asset database

User Avatar
kymwatts
24 posts
Offline
 April 15, 2025 14:06:20
once you use have picked something from the asset database, and placed it into a stagemanger or a layout lop, there is nolonger a connection , back to the database.

the asset database you may need to rebuild, its problaly the fastest with out learning python/sqllite to update the paths inside of the db. in tops there is a node called "USD add assets to gallery", that you can point to the new usd path locations and create a new db.

the layout lop next, inside the dive network for the layout lop, there will be a bunch of asset refernce lop's these will contain the paths to the assets used by the layout lop, you should be able to repath the assets here.

the stagemanager , is a little bit more tricky, depending on the amount of edits made , will depend on how many things you need to change.

pythonically, you could do something like this to find all the usd file paths and then replace them with the new location for those assets.

# get stagemanager node
smn = hou.node('/stage/path/to/stagemanager/node')
# get number of edits
num_edits = smn.parm('num_changes').eval()

# itterate over the edits to find which ones have usd paths
for i in range(1,num_edits + 1):
    
    usd_ref_path = smn.parm(f'reffilepath{i}').eval()
    
    print(f"usd_ref_path:: {usd_ref_path}")
    # look for a key word or partial file path 
    if 'project1' in usd_ref_path:
        # replace the filepath with a search and replace
        updated_usd_path = usd_ref_path.replace('project1','project2')
        # update the path:
        smn.parm(f'reffilepath{i}').set(updated_usd_path)

hope this helps.
See full post 

Solaris and Karma » USD Workflow, importing animation & materials Solaris issue

User Avatar
kymwatts
24 posts
Offline
 April 9, 2025 16:25:34
you shouldnt need a merge node, just plug the output of sublayer 1, in to the input 1 of sublayer2.
this should just change the opinions of the geometry from the first sublayer.

the other thing you should figure out , between sublayer1 and sublayer2 the /meshes decendant count changes, which could mean the hierarchy for the two sets of meshes is different. that will make it so there is an animation mismatch for sure.

i would check that the hierarchy and names match 100% between the the lookdev setup in sublayer1 and any work your doing in the sop level car rig.
See full post 

Solaris and Karma » collections and prim path patterns.

User Avatar
kymwatts
24 posts
Offline
 Nov. 28, 2023 16:13:01
Hello,

trying to understand how to i can use prim patterns to do deeper searches for collections with out resorting to python.

All of our assets have a collections node pathed at `{assetname}/collections` , all of our assets are component kind.

For example, we have a street light asset, the light globe, is in the collection called lights.


When in a shot context, is there way that i can get all the `%kind:component`, and the `lights` collection that some of the assets may have?


Cheers

Kym
See full post 

Technical Discussion » HDA Scripts: Reference Python File on Disk w/ Event Handler

User Avatar
kymwatts
24 posts
Offline
 Aug. 25, 2023 21:43:59
The simplest way is in the hda, in the onCreated.py like you have in your attachments above , is to simply import your script and run the method you want to run, you can pass kwargs to it if its setup to use it.

if you have a custom config folder setup in your `HOUDINI_PATH` you can setup an onCreated event for the node via:
https://www.sidefx.com/docs/houdini/hom/locations.html#startup [www.sidefx.com]

the example for : scripts/{category}/ nodename_eventtype.py

so if its a lop node called myNode, the path would be : scripts/lop/myNode_onCreated.py

however you cant have both, either the hda level or the having it in your `HOUDINI_PATH`, if you set it up as a script in the `HOUDINI_PATH` it will ignore the onCreated.py in the hda. I found that out recently

hope this helps.
kym
See full post 

Technical Discussion » Non selectable over lay text in node graph

User Avatar
kymwatts
24 posts
Offline
 Aug. 10, 2023 13:06:30
Heel,

Im not sure what the word is or functionality that best describes this, but over the years of watching presentations, it looks like some companies have added the shot or scene name into the nodegraph in the same way the context words like when in a Solaris node graph, or say running a houdini indie version. what are the words to describe these overlays and are there configurable settings to change them?

Image Not Found


Is there a python way to edit these?

Cheers
kym
See full post 

Solaris and Karma » Modify naming convention used by the layout lop.

User Avatar
kymwatts
24 posts
Offline
 May 8, 2023 16:36:55
In case anyone else find this post.
I found a workflow im happy with ...

If i unlock the hda, find the POINTS node that lives at: /sopnet1/POINTS .
I then can add a attribwrangle or python script above the POINTS node , the path point attrib is what controls this.

I can any amount of prims in this attrib and they will be added to the primpath in the SGT & usd stage saved from the scene.

Ideally then im going to save this as a studio HDA.


Hope this helps someone else.

Kym
See full post 

Solaris and Karma » Modify naming convention used by the layout lop.

User Avatar
kymwatts
24 posts
Offline
 May 2, 2023 10:16:04
Hello,

When using the layout lop, with the Instanced References mode.\
Is there a way i can change the naming convention used when the asset's prim path is set?

Right now when its added , they are 2_0 , 3_0 , if i wanted to change them to padd 4 to become _0002 , _0003, is this something i can edit in the Layout lop, or should i be editing all the names after the Layout lop?

Thanks
Kym
See full post 

PDG/TOPs » half complete on a single work item

User Avatar
kymwatts
24 posts
Offline
 Dec. 12, 2021 18:20:16
i figured this out.
a call i was doing in my python script was failing, after i had given the correct output/ dependency back to the graph.
See full post 

Technical Discussion » Version of Houdini supported with Redshift 2.6.41

User Avatar
kymwatts
24 posts
Offline
 May 18, 2021 11:14:56
If you have redshift 2.6.41 installed you can see what versions the version of redshift supports by navigating to:
{redshift folder}Plugins\Houdini\

As far as i can see from a local install of 2.6.56, the max version of that build is 18.0.499.
Since 18.5.563 is so new i suspect that only the latest 3.0.45 will support this.

hope this helps.
Kym
See full post 

Technical Discussion » python, cant programmatically filecache node network

User Avatar
kymwatts
24 posts
Offline
 Sept. 8, 2020 10:05:37
Hi there,

I have a python script that creates a node network, it starts with a python sop that is converting a json dataset to point cloud.
No to recook the python sop takes more time that im willing to spend, to reparse the same data out.
I have wired in a filecache node, just under the python sop, but for the life of me can seem to get it to cache out the data to a bgeo like i can if i did it in the interface.

the file cache
filecache = geo_folder.createNode('filecache', 'point_cache')
filecache.setFirstInput(python_points_sop)
filecache.parm('file').set("$HIP/geo/point_cache.bgeo.sc")
# set frame range to one file.
filecache.parm('trange').set(0)
# write out the point cache
# force the python sop to cook
arr_points_sop.cook(force=True)

# not sure why these do not work as i expect them to.
filecache.parm("execute").pressButton()
# bypass the python sop, now that its cached out
python_points_sop.bypass(1)

So in the above , i have wired the python sop to the file cache node.
I can force it to cook, and stop the script there and it will have cooked the node correctly. if i take the file cache node and cache out a frame, it works as i expect it to.

The moment i try to do the execution to cache out the data, i get an empty file .

What am i doing wrong….

Cheers
Kym
Edited by kymwatts - Sept. 8, 2020 10:06:12
See full post 

Technical Discussion » transforming static alembic geometry from matrix

User Avatar
kymwatts
24 posts
Offline
 Feb. 3, 2020 20:32:52
So i figured this out.
The geometry folder can take the worldspace transform.

Next question, On an efficiency side, if i have 1 alembic , that needs to be in 6 different locations.
in stead of making a geometry group per alembic, to transform it, do i gain better performance from converting the 6 ws locations to points and instancing the alembic file to it, Is there another way that i could attack the problem?

IS there an example or document that would point me the correct direction i would want to use in turns of set/ location dressing workflow?

Cheers
Kym
See full post 

Technical Discussion » transforming static alembic geometry from matrix

User Avatar
kymwatts
24 posts
Offline
 Jan. 31, 2020 10:42:06
Morning,

Im fairly new to houdini, so please forgive the narrow nomenclature used to explain the issue.

We have a set dressing workflow that im trying to get working in houdini, so we do not need to save out per shot alembic for static geometry.
The data set is saved into a json file, with each asset, its pipe meta data, more importantly, the path to the static alembic, and a maya (Y-up) worldspace translation matrix. We also store the bbox, if that is useful to know.

What im not sure about is the best way to convert this matrix across and what node/ network i need to setup to translate the transform via this data set.

If some one can point me in the right direction would be great.


Cheers
Kym
See full post 
  • Quick Links
Search links
Show recent posts
Show unanswered posts
PRODUCTS
  • Houdini
  • Houdini Engine
  • Houdini Indie
LEARN
  • Talks & Webinars
  • Education Programs
SUPPORT
  • Customer Support
  • Help Desk | FAQ
  • Documentation
  • Report a Bug/RFE
  • Sales Inquiry
LEGAL
  • Terms of Use
  • Privacy Policy
  • License Agreement
  • Accessibility
  • Responsible Disclosure Program
COMPANY
  • About SideFX
  • Careers
  • Press
  • T-Shirt Store
  • Internships
  • Contact Info
Copyright © SideFX 2025. All Rights Reserved.

Choose language