Fix [#27748] undeterministic behaviour of volumetric renderer
* Made clearer in the UI that the approximate multiple scattering always enables light cache * Fixed a potential problem in anisotropic scattering
This commit is contained in:
parent
a03707d408
commit
826ed5ed1d
@ -883,7 +883,7 @@ class MATERIAL_PT_volume_lighting(VolumeButtonsPanel, bpy.types.Panel):
|
|||||||
sub = col.column()
|
sub = col.column()
|
||||||
sub.enabled = True
|
sub.enabled = True
|
||||||
sub.active = False
|
sub.active = False
|
||||||
sub.prop(vol, "use_light_cache")
|
sub.label("Light Cache Enabled")
|
||||||
col.prop(vol, "cache_resolution")
|
col.prop(vol, "cache_resolution")
|
||||||
|
|
||||||
sub = col.column(align=True)
|
sub = col.column(align=True)
|
||||||
|
@ -523,7 +523,6 @@ static void *vol_precache_part(void *data)
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* this view coordinate is very wrong! */
|
|
||||||
copy_v3_v3(shi->view, cco);
|
copy_v3_v3(shi->view, cco);
|
||||||
normalize_v3(shi->view);
|
normalize_v3(shi->view);
|
||||||
vol_get_scattering(shi, scatter_col, cco);
|
vol_get_scattering(shi, scatter_col, cco);
|
||||||
|
@ -534,6 +534,7 @@ static void vol_shade_one_lamp(struct ShadeInput *shi, float *co, LampRen *lar,
|
|||||||
|
|
||||||
if (luminance(lacol) < 0.001f) return;
|
if (luminance(lacol) < 0.001f) return;
|
||||||
|
|
||||||
|
normalize_v3(lv);
|
||||||
p = vol_get_phasefunc(shi, shi->mat->vol.asymmetry, shi->view, lv);
|
p = vol_get_phasefunc(shi, shi->mat->vol.asymmetry, shi->view, lv);
|
||||||
|
|
||||||
/* physically based scattering with non-physically based RGB gain */
|
/* physically based scattering with non-physically based RGB gain */
|
||||||
|
Loading…
Reference in New Issue
Block a user