1. Import the source geometry.
  2. Append a Point Wrangle SOP and set the following snippet.
int vlist[] = pointvertices(0, @ptnum);
vector uv = vertex(0, "uv", vlist[0]);
@Cd = colormap("$HIP/TEXTURE_FILENAME.jpg", uv);
  1. Insert a Delete SOP. Change the pattern to "*". Enable "Keep Points".
View Hue2RGB.hlsl
half3 Hue2RGB(half h)
h = frac(saturate(h)) * 6 - 2;
half3 rgb = saturate(half3(abs(h - 1) - 1, 2 - abs(h), 2 - abs(h - 2)));
rgb = GammaToLinearSpace(rgb);
return rgb;
View Random.hlsl
// Hash function from H. Schechter & R. Bridson,
uint Hash(uint s)
s ^= 2747636419u;
s *= 2654435769u;
s ^= s >> 16;
s *= 2654435769u;
s ^= s >> 16;
s *= 2654435769u;
return s;
View EulerRotation.hlsl
float3x3 Euler3x3(float3 v)
float sx, cx;
float sy, cy;
float sz, cz;
sincos(v.x, sx, cx);
sincos(v.y, sy, cy);
sincos(v.z, sz, cz);

Creating a Houdini asset

  • Select a group of nodes or a subnet node.
  • "Assets" -> "New Digital Asset From Selection..."

A Houdini asset file (.hdalc) will be created in the asset library directory ($HOUDINI_PATH/otls). To maintain this file within the Git repository, it should be moved into the project asset directory ($HIP/otls).


Related Projects

LASP Loopback - A special build that supports analyzing audio output from Unity instead of external audio sources. This is useful to create audio reactive behaviors with internal audio sources.




I backed the [GPD Pocket] project on Indiegogo immediately after its launch announcement. I had to wait for a few extra months from their estimated release date (it seems they had some technical issues with Linux driver development) then finally got a device last week. The production quality is still not perfect but significantly improved from the previous product (GPD Win) -- I can admit that I'm almost satisfied with it.

View Template.shader
Shader "Custom/Template"
_MainTex ("Albedo (RGB)", 2D) = "white" {}
Tags { "RenderType"="Opaque" }
LOD 80


screenshot screenshot


MiniEngineAO is a SSAO image effect for Unity that was originally developed by Team Minigraph at Microsoft for their [MiniEngine] library.



KlakLASP is an extension for [Klak] to create audio reactive behaviors with using the Klak Wiring system.


KlakLASP integrates the [LASP] plugin to analyze audio signals. Thanks to the low-latency nature of LASP, it doesn't introduce noticeable delays between