Skip to content

Instantly share code, notes, and snippets.

@howiemnet
howiemnet / Houdini-->Fusion animation exporter thingy.py
Last active Nov 10, 2021
Early version of Houdini to Fusion animation exporter
View Houdini-->Fusion animation exporter thingy.py
################################################################
#
# h's hacky Houdini --> Fusion camera animation exporter
#
# Last mod: 20/3/2020 / h@howiem.net
#
#
#
#
# Notes:
@howiemnet
howiemnet / houdini_to_blender.py
Created Aug 22, 2019
Houdini to Blender camera animation exporter
View houdini_to_blender.py
# Houdini to Blender camera exporter thingy
# h@howiem.net / 22 Aug 2019
#
# v1.0: hacky but seemingly working
#
# Pop this into a toolbar button's script window in Houdini
# Select a camera (or a camera switcher) and press the button
#
# A newly generated python script is now on the clipboard.
#
@howiemnet
howiemnet / DAWmidi.py
Created May 29, 2019
Houdini control from a Behringer X-Touch One using pygame
View DAWmidi.py
# h's super dodgy, super-hacky MIDI controller for Houdini code
#
# Designed to get a Behringer X-Touch One controller to control Houdini
# while feeding back current frame and status to the lights and readouts
# on the controller. Super cool.
#
# But this really, really, shouldn't be public. My Python-fu is a little raw.
# But it may give someone a useful starting point...
@howiemnet
howiemnet / Particle resizer.vex.cpp
Last active Jul 11, 2022
Houdini Particle distance resizer
View Particle resizer.vex.cpp
// NOTE: ignore the .cpp extension on the filename - this is VEX
// but I couldn't find a gist-friendly way to syntax-hilight it
// ¯\_(ツ)_/¯
//
// h's magic adaptive point resizer for optimal
// rendering of tiny points/particles/wires
//
// 1/2/2018 h@howiem.net
// CC-0 - use and abuse
@howiemnet
howiemnet / infinity_blur.js
Last active Jan 7, 2019
Blur objects at infinity depending on camera settings - After Effects expression
View infinity_blur.js
//
// This expression, applied to the blur radius of a Lens blur effect, will calc the right amount of blur
// to apply to objects at infinity (eg star fields) depending on the focus dist / aperture of the current active camera
//
// For safety it maxes out at 100 px (!)
//
try {
focLen = (thisComp.activeCamera.cameraOption.zoom * 102.05) / thisComp.width;
blurDiam = (focLen * thisComp.activeCamera.cameraOption.aperture) / (thisComp.activeCamera.cameraOption.focusDistance - focLen);
Math.min(100,Math.abs(blurDiam)/2)
@howiemnet
howiemnet / Houdini - copy camera animation data to clipboard.py
Created Nov 7, 2018
Houdini to AE camera animation clipboard exporter (now with Zoom! Woo!)
View Houdini - copy camera animation data to clipboard.py
# Houdini to After Effects camera animation exporter
# This version: 7/11/2018, by Howard Matthews - h@howiem.net
# Copyright: CC-0 - use and abuse. Please pass on the knowledge.
# Note: there's no error-checking in this script, but it alters nothing within the Houdini scene, so it'll just
# fail with an error if you try running it without a camera selected. No harm done.
import hou
theNodes = hou.selectedNodes()
@howiemnet
howiemnet / AE_to_Houdini.py
Last active Dec 4, 2021
First attempt at getting AE camera data into Houdini (hacky woo)
View AE_to_Houdini.py
# Ultra quick'n'hacky AE camera animation importer for Houdini.
# Create a new shelf, create a new tool, paste this into the script box.
#
# In AE, select the Orientation and/or Position keyframes, and Ctrl/Cmd-C them to the clipboard
# Open a new text file (Notepad or Textedit) and paste the clipboard contents in. There's your keyframes.
# Save the text file somewhere and amend the filename line below to suit
# In Houdini, create a camera (it's up to you to set the same zoom / aperture as the AE one).
# ... and run this script (well, press the shelf button you stuck this on)
@howiemnet
howiemnet / Hacky_Houdini_to_AfterEffects.py
Created Jul 27, 2017
Houdini to After Effects animation exporter thingy
View Hacky_Houdini_to_AfterEffects.py
# first hacky attempt at getting camera / object animations into AE from Houdini.
# Stick this on a tool button on a shelf. Note the hard-coding below (!)
# A file will be created in your home folder; open it, copy to the clipboard, then go to AE and paste onto the cam/null of your choice
import hou
h = hou.node("/obj/geo1")
filename = "testfile.txt"
startFrame = 0
View Send mo-co position from Blender to server.py
import sys
import bpy
from math import pi, sin, cos, sqrt, atan2, fabs
import socket
rad2deg = 180/3.14159265
UDP_IP = "127.0.0.1"
UDP_PORT = 4950
@howiemnet
howiemnet / Populate.py
Created Mar 7, 2017
Populate! a hacky, project-specific crowd animator
View Populate.py
#
# POPULATE!
#
import bpy
import math
from bpy_extras import object_utils
from random import randint
from math import radians