CHAMELEON is a GHPython component that converts a photograph into real, physical relief texture on a 3D surface — not a rendered texture map, actual displaced mesh geometry you can 3D print, mill, or laser-cut.
Feed it a surface and a photo. It samples brightness across the surface, displaces the mesh along the surface normal based on that brightness, and outputs a sealed, printable shell with a controllable wall thickness. Built it for lampshades, wall panels, pen holders, and one-off art pieces — tested on real prints, not just viewport previews.
Requires Rhino 8, GHPython (IronPython 2 script component). Two inputs are required — Srf (the surface) and ImgPath (your photo). Everything else has a working default. Full setup guide (PDF) is included in the download.
Free to use and modify, MIT license — just credit the author.
Hi Cumberland — yes, it’s a plain GhPython component written in IronPython 2, no Rhino 8–specific API calls, so it should run natively in Rhino 7’s Grasshopper without needing a separate build — GhPython script components aren’t version-compiled like a .gha, they interpret at runtime.
That said, I want to be upfront: I’ve confirmed it working on Rhino 8, but I haven’t gotten a clean confirmed pass on Rhino 7 yet — an earlier test on a friend’s machine didn’t run, and I haven’t isolated why (could be environment-specific, not necessarily the IronPython version itself). I’ll test on Rhino 7 properly and report back here rather than guess.
If you’re on Rhino 7 and want to try it once the Food4Rhino listing is live, I’d genuinely appreciate the feedback either way.