cancel
Showing results for 
Search instead for 
Did you mean: 

Maya Discussions

It works! Maya 2025, RPR with MaterialX browser on OSX

Hello,
I'm running the latest plug-in code version 3.5.24 with the latest SDK (Northstar 3.1.5) and MaterialX browser as submitted to the master branch github by ShinFujieda and DMotorygin  respectively.  
I wanted to report the successes and pitfalls for anyone who wants to join me on the bleeding edge.  
I first compiled it for 2024 and tested working it but seeing all the LookDevX and additional MaterialX support in 2025 I decided to make some custom changes to build for 2025.


While the last binary that was released for OSX was 3.5.4 with support only up to Maya 2023, the latest version of ProRender can be built for 2024+ (and works great) but there are a few things to be aware of before building on any mac system.
  Before I get started I just want to that I am very grateful for the work that the AMD teams has put into there many projects and I understand that they are hard at work developing new technologies.  I also understand that by choosing to be building and using product from development branches, especially on mac which is listed as experimental, it is going to require some work on my part.


 

So as of Maya 2024 forward, Autodesk has removed stereo camera functionality on MacOS.   ProRender looks to see if you are using a stereo camera when you open the render settings, this creates an error that prevents settings from loading so createFireRenderCommonGlobalsTab.mel needs to be modified to remove this check and just report that you are using a mono camera.  I'm happy to share my modified createFireRenderCommonGlobalsTab.mel as it works but I am not a programmer and it's a little hacky.

The MaterialX version has a browser with import function that can be launched from the prorender shelf and connects to the API of AMD's MaterialX library.  
You are able to choose the size and bit depth of your texture then download and import the .mtlx file with one click.  It also adds an RPR material node "RPRMaterialXMaterial" and the command "RPRMaterialXImport" to maya.

At this point I am still figuring out how RPR implements rendering MaterialX.  After import the texture is listed in 'available materials' and in hypershade but as stated in the .cpp code comments the RPRMaterialXMaterial node is a 2d texture node, and those only support image files not .mtlx files.  Assigning the material directly to a mesh will throw an error at render because of this.  I'm sure there is a way to render these currently since DMotorygin has submitted his materialX development branch to be merged with the RadeonProRenderMayaPlugin master branch.
  Aside from that I was able to use the downloaded .mtlx files build MaterialX graphs in LookDevX and use the maya's import materialX feature and assign those to meshes and render them out in arnold.  I will continue to work on how .mtlx files are to be rendered using RPR and report any updates here or maybe someone else will figure it out first.  From the github page DMotorygin describes this branch:
PURPOSE: Add AMD MaterialX material library browser
EFFECT FOR THE USER: User can use materials from AMD MaterialX Library via the plugin.


Creates a plugin MaterialX material node in the Hypershade.
NOTE: Currently DOES NOT support UV tiling settings.

 


Other notes for those who may wish to compile this themselves in Xcode:


1.  I couldn't figure out how how to avoid a cycling dependency error even when just one scheme was selected (ie release 2023,  2024) so I just removed the other targets I wasn't building for in the main Xcode window.  If anyone can tell me a better way please lmk.

2.  Under 'header search path' in xcode  you may need to add "../../../Vulkan-Headers/include"

3.  In hash.hpp you may need to change line 130 from (the full line of code has been omitted because the forum wouldn't let me post it)... change "unary" to"__unary".

4.  When building for the materialX dev branch you may need to add "HybridProContext.cpp", "FireRenderMaterialXMaterial.cpp", and "FireRenderImportMaterialX.cpp" to the 'compile sources' menu under 'Build Phases'.

5.  Be sure to read the applicable OSX readme's for building and take advantage of the shell script in MayaPkg directory to build an installer pkg that will place all the library and script files in the right place as well as install maya shelves for you.

6.  Building for 2025 however, takes more steps than I can list here, searching the code base and compile settings and incrementing them will take you most of the way though (ie changing references to 2022, 2023, 2024 to 2023, 2024, 2025)

7.  Maya 2025 now uses python module PySide6 instead of PySide2, if you want to build for 2025 you will need to edit FireRenderViewport.cpp and rpr_location_selector.py changing out PySide2 and shiboken2 import commands to PySide6 and shiboken6.

8. Also in FireRenderViewport.cpp, two instances of
QtWidgets.QActionGroup needs to be changed to: QtGui.QActionGroup
 (again the forum would not let me post the full line of code)



 I see that RPR maya plugin is licensed under Apache 2.0,  if there is interest I'd consider putting these changes into a github fork until we get official releases and maybe even working towards additional LookDevX/maya integration.  I don't think much more coding is required  since all the heavy lifting has already been done.  So if you are interested in Maya 2025 on OSX and better yet if you know python or C++, please reply to this thread.

Despite me not having the MaterialX usage fully flushed out yet, the plugin works great as it traditionally has and I am as happy as a clam to be using ProRender on MacOS in Maya 2025. 

RPRmatX2025.jpg

0 Likes
0 Replies