kunz Difference between revisions of "Stream Scene Share"

Difference between revisions of "Stream Scene Share"

From kunz
Line 5: Line 5:
If you'd like to simplify this process, you can use a shelf tool<ref>''[https://www.sidefx.com/docs/houdini/shelf/customize.html#downloading-shelf-sets sidefx.com/docs/houdini/shelf/customize.html#downloading-shelf-sets]'', </ref> which calls a script when clicked on. In this case, I've written a script to fetch my most recently shared scene and merge it into your current Houdini scene.
If you'd like to simplify this process, you can use a shelf tool<ref>''[https://www.sidefx.com/docs/houdini/shelf/customize.html#downloading-shelf-sets sidefx.com/docs/houdini/shelf/customize.html#downloading-shelf-sets]'', </ref> which calls a script when clicked on. In this case, I've written a script to fetch my most recently shared scene and merge it into your current Houdini scene.


To get the shelf tool, you can download the .shelf here (right-click, Save Link As...) and place it in the toolbar directory of your Houdini preferences.
To get the shelf tool, you can [[:File:twitch.tv.johnkunz.shelf|download the .shelf here]] (right-click, Save Link As...) and place it in the toolbar directory of your Houdini preferences.


If you prefer a more hands on approach, the [[:File:twitch.tv.johnkunz.shelf|shelf tool]] can be added manually by right-clicking in any empty shelf area and clicking "New Tool...". This will raise a dialog window where the tool's name, label and icon can be defined.
If you prefer a more hands on approach, the shelf can be added manually by right-clicking in any empty shelf area and clicking "New Tool...". This will raise a dialog window where the tool's name, label and icon can be defined.


== Fetch Latest Shared Scene ==
== Fetch Latest Shared Scene ==

Revision as of 05:09, 1 October 2021

To make it easier to follow along or get caught up, checkpoints of my scene file are be periodically saved and uploaded to a publicly accessible web directory.

Whenever new checkpoint file is shared, a link to the .hip file is posted in my chat. You can click the link to download the file and open it with Houdini on your end.

If you'd like to simplify this process, you can use a shelf tool[1] which calls a script when clicked on. In this case, I've written a script to fetch my most recently shared scene and merge it into your current Houdini scene.

To get the shelf tool, you can download the .shelf here (right-click, Save Link As...) and place it in the toolbar directory of your Houdini preferences.

If you prefer a more hands on approach, the shelf can be added manually by right-clicking in any empty shelf area and clicking "New Tool...". This will raise a dialog window where the tool's name, label and icon can be defined.

Fetch Latest Shared Scene

import re
url = 'http://hip.johnkunz.com/ttv/'
try:
   import urllib
   html = urllib.request.urlopen(url).read().decode('utf-8')
except ImportError:
   import urllib2
   html = urllib2.urlopen(url).read().decode('utf-8')
hip = sorted( re.findall(r'href=[\'"]?([^\'" >]+)', html )[5:], reverse=True)[0]
hou.hipFile.merge(url+hip)

Pick from List of Shared Scenes

import re
# Get list of files
url = 'http://hip.johnkunz.com/ttv/'
try:
   import urllib
   html = urllib.request.urlopen(url).read()
except ImportError:
   import urllib2
   html = urllib2.urlopen(url).read()
hipfile = sorted( re.findall(r'href=[\'"]?([^\'" >]+)', html )[5:], reverse=True)
# Select file from list inside Houdini selection window
mySelection=hou.ui.selectFromList(hipfile, default_choices=(), exclusive=True, message="Twitch.tv/JohnKunz Stream Files", title="Select File", column_header="Choices", num_visible_rows=10, clear_on_cancel=False, width=0, height=0)
# Merge selected file
try: 
    myFile = int(mySelection[0])
    hou.hipFile.merge(url+hipfile[myFile])
    print("File loaded: " + url+hipfile[myFile])
except:
    print("Cancelled: No File Loaded")