Maya Redshift GI Render Settings Issue

Hello!

I hope this is the right place to put this. Normally I make a comment on discord but I like the longer format for this particular topic. I posted my temporary solution below.

We are using OpenPYPE 3.18.7 and Redshift 3.5.17

While still in the testing phase of AYON at our studio, we came across an unexpected result when setting up the default Redshift settings in Maya. In particular it was the:

  • Primary GI Engine
  • Secondary GI Engine

The values themselves are technically fine and I imagine this is to continue supporting older versions of Redshift, however these don’t transfer well to Maya in versions higher than RS 3.5. Under the current key value pairs on the AYON Server you have for the drop down box, its currently:

  • 0 : None
  • 1 : Photon Map
  • 2 : Irradiance Cache
  • 3 : Brute Force

However Redshift in 3.5+ the Primary GI Engine value pairs are:

  • 3 : Irradiance Cache
  • 4 : Brute Force

and in the Secondary GI Engine, the value pairs are:

  • 2 : Irradiance Point Cloud
  • 4 : Brute Force

You probably already see the issue but just in case, currently the way it is setup in the Render Settings file (maya → api → lib_rendersettings.py) is this:

Going by just this code alone would make it so that if you wanted to have Brute Force as your default Primary GI Engine, it would actually choose ‘Irradiance Cache’ because that is what RS recognizes the value ‘3’ to be. If you wanted Brute Force to be your Secondary GI Engine it would actually choose ‘Irradiance Point Cloud’ because ‘3’ doesn’t mean anything to the secondary, so it sticks with the default of 2.

I went through and modified the code to be this instead:

With these changes/additions I was getting the results I was actually looking for. I also had to comment out the latter section because it would just override the if-else tree, which would kinda defeat the purpose. I’m sure this could be changed into a if-else statement as well but it works for now.

Hope it helps!

Side Notes: I don’t really use RS as an artist so I’m not terribly familiar with it, and I don’t know what the value pair for RS is when it comes to the Photon Map so I didn’t include it.