Upgrade scripts: multiple_environment_probes


photo

Recommended Posts

Hi,

I have a problem creeping in during a long upgrade from 2.5 to 2.11. One of the materials has now 

<state name="multiple_environment_probes">1</state>

added to it, while render_transparent_multiple_env_probes ended up as zero in the rendering settings. So, of course, objects with this material are no longer rendered.

Tracking back the changes in your scripts I can see:

		switch(transparent) {
				...
				case 2: // Deferred transparent
					material.addBlend();
					material.blend.setSrc("src_alpha");
					material.blend.setDest("one_minus_src_alpha");
					material.setOption("transparent","2");
					material.addState("multiple_environment_probes","1");
					
					break;
			}

in materials.h from 2.5.0.1 upgrade. So this adds multiple_environment_probes to deferred transparent objects. So first question: why ?

Then I can see:

<render_skip_transparent_multiple_env_probes>1</render_skip_transparent_multiple_env_probes>

as setting added to 2.8.0.0 render.xml, which, of course, for later versions was (correctly) transformed to:

<render_transparent_multiple_env_probes>0</render_transparent_multiple_env_probes>

when later that token name was changed (and its meaning switched from skip to render).

Question 2: is this an error in the upgrade scripts?

 

Also, unrelated question, why some of the rendering parameters introduced by render.xml don't have the default values. For example render.xml from 2.9.0.0, has bloom settings as:

    <render_bloom_passes>7</render_bloom_passes>
    <render_bloom_power>0.75</render_bloom_power>
    <render_bloom_resolution>1</render_bloom_resolution>
    <render_bloom_scale>0.349999994</render_bloom_scale>

While default values are: render_bloom_passes = 6, render_bloom_power = 0.7, render_bloom_scale 0.3 ?

 

Btw, another bonus bug report, it seems that render_bloom_resolution is not documented at all.

 

Kind Regards,

Adrian L.

VStep

Link to post

Hi Adrian,

Automated script migration sometimes can cause unexpected results (especially on big render changes). It designed that way to minimize the manual editing of materials and nodes after migration. It doesn't know the context of each material setting, so it simply changes one checkbox to another even if it can lead to the bad results. Your artists needs to manually tweak settings after migration for better visuals and performance.

Multiple environment probes makes transparent object to render differently in case if you really need to blend many probes on the same object. More likely this checkbox was enabled in order to get the better visuals on transparent objects with env probe reflections. I don't know why render_transparent_multiple_env_probes is set to 0, probably to save the performance by default. So you can simply enable it if needed.

I also don't have any specific information about bloom settings, more likely it's related to some artists tweaks for default empty world template.

 

Quote

Btw, another bonus bug report, it seems that render_bloom_resolution is not documented at all.

Yeah, it does look like a bug, thanks! Will be fixed ASAP.

Thanks!

How to submit a good bug report
---
FTP server for test scenes and user uploads:

Link to post