Skip to content

Moonray macOS: update build compatibility for Houdini 21.0.680#228

Open
rolledhand wants to merge 5 commits intoOpenMoonRay:mainfrom
rolledhand:Moonray-Houdini21-macOS
Open

Moonray macOS: update build compatibility for Houdini 21.0.680#228
rolledhand wants to merge 5 commits intoOpenMoonRay:mainfrom
rolledhand:Moonray-Houdini21-macOS

Conversation

@rolledhand
Copy link
Copy Markdown

Compatibility:

build (Houdini 21.0.680, macOS Tahoe, Xcode 26.0.1)

Issues/Tickets:

Release notes comment:

Adds macOS compatibility updates required to build OpenMoonRay against Houdini 21.0.680 using Houdini-provided USD/PXR and Python 3.11, including Boost 1.82 alignment and Houdini USD library naming compatibility updates.

Comments for the reviewer:

Look or scene setup change:

No intended look change; this PR is compatibility, pathing, and build integration focused.

Special notes for production:

  • Tested target in this branch: Houdini 21.0.680 on macOS Tahoe with Xcode 26.0.1.
  • Production Houdini 21.0.679 has not been validated in this branch.
  • SideFX Xcode compilation note was used only as sanity context; direct relevance to OpenMoonRay-specific build/runtime behavior remains uncertain.
  • SideFX sanity reference:
  • Separate Houdini shader/HDA UX issues are not addressed by this PR.

Attention/Reviewers:

dreamworksanimation/openmoonray-maintainers

Checklist:

  • Documentation has been updated.
  • Includes new unit tests.
  • Includes new RATS tests.

@rolledhand
Copy link
Copy Markdown
Author

Tested on production build of Houdini 21.0.671, works there as well.

@randypacker
Copy link
Copy Markdown
Contributor

Thanks for the update and PR contribution! We'll take a look at it soon. In the meantime, could you please send over a CLA to moonray@dreamworks.com, so that's cleared?

Adds remaining parent-repo build/setup compatibility changes for Houdini 21 macOS.

Aligns Houdini mode preset/build config with Python 3.11 and Boost Python 3.11.

Includes dependency/build reproducibility updates where staged.

Includes Houdini USD/PXR compatibility mapping if staged.

Does not claim native DWA material workflow is fixed.
@rolledhand
Copy link
Copy Markdown
Author

Hi @randypacker - just sent the CLA. Also tried to update to the latest release. I'd like to help even more and get things working, but this is as far as I'm currently capable of taking it. Hope that some of it helps at least slightly, even as an initial kick-off.

As a quick summary of what works and what doesn't. It builds and renders, lights work but when it comes to the native DWA materials they still don't take any effect at all, although the mtlx standard surface seems to be working for some material traits.

Dome light doesn't work when I tried to add one myself (worked on one of the "Solaris" demos), same case for motion blur from one of the demos, tweaking light parameters e.g. spread doesn't automatically update the IPR - normalize has an unpleasing effect, render settings started working with the latest release. I'm attaching my testing images.

H21 seems to require libpxr_usdRiPxrImaging.dylib instead of libpxr_usdRiImaging.dylib. Docs:
https://www.sidefx.com/docs/hdk/pxr_2usd_imaging_2usd_ri_pxr_imaging_2tokens_8h.html

There have been some issues with https://github.com/log4cplus/log4cplus when I was trying to install/build, hence the change there.

Additionally what I was attempting as a bit of a workaround was getting "DWA materials linked to mtlx native ones" as a bit of a workaround on the older release. Managed to get basic mtlx image working without tiling, but it goes way too deep for me at my current stage. I've got that one in another fork which was "forcing it" through Materials.cc in hydraMoonray.

Screenshot 2026-04-29 at 2 14 41 Screenshot 2026-04-29 at 2 12 16 Screenshot 2026-04-29 at 1 59 52 Screenshot 2026-04-29 at 1 50 29 Screenshot 2026-04-29 at 2 24 56 Screenshot 2026-04-29 at 1 59 52 Screenshot 2026-04-29 at 18 07 00 Screenshot 2026-04-29 at 18 07 04 Screenshot 2026-04-29 at 2 24 56 Screenshot 2026-04-29 at 1 49 01 Screenshot 2026-04-29 at 1 49 59 Screenshot 2026-04-29 at 18 22 35

@rolledhand
Copy link
Copy Markdown
Author

Sorry for the duplicate images of cornell box and the "motion blur/noise sampler" demos.

@kubo-von
Copy link
Copy Markdown

kubo-von commented Apr 29, 2026

The DomeLight not working will be probably caused by the fact that since some USD version, dome lights have DomeLight_1 as a type.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants