[Bf-blender-cvs] [ea9de15] soc-2013-dingto: Cycles Volume: rename isotropic to scatter volume, g to anisotropy, scattering to volume bounces.
Brecht Van Lommel
noreply at git.blender.org
Sun Dec 8 13:03:12 CET 2013
Commit: ea9de15d0faa790844af476b187d8c1b8bd0a993
Author: Brecht Van Lommel
Date: Mon Dec 2 17:35:26 2013 +0100
http://developer.blender.org/rBea9de15d0faa790844af476b187d8c1b8bd0a993
Cycles Volume: rename isotropic to scatter volume, g to anisotropy, scattering to volume bounces.
===================================================================
M intern/cycles/app/cycles_xml.cpp
M intern/cycles/blender/addon/presets.py
M intern/cycles/blender/addon/properties.py
M intern/cycles/blender/addon/ui.py
M intern/cycles/blender/blender_shader.cpp
M intern/cycles/blender/blender_sync.cpp
M intern/cycles/kernel/kernel_path.h
M intern/cycles/kernel/kernel_path_state.h
M intern/cycles/kernel/kernel_types.h
M intern/cycles/kernel/kernel_volume.h
M intern/cycles/kernel/shaders/CMakeLists.txt
D intern/cycles/kernel/shaders/node_henyey_greenstein_volume.osl
A intern/cycles/kernel/shaders/node_scatter_volume.osl
M intern/cycles/render/integrator.cpp
M intern/cycles/render/integrator.h
M intern/cycles/render/nodes.cpp
M intern/cycles/render/nodes.h
M intern/cycles/render/shader.cpp
M release/scripts/addons
M release/scripts/addons_contrib
M release/scripts/presets/cycles/integrator/direct_light.py
M release/scripts/presets/cycles/integrator/full_global_illumination.py
M release/scripts/presets/cycles/integrator/limited_global_illumination.py
M release/scripts/startup/nodeitems_builtins.py
M source/blender/blenkernel/BKE_node.h
M source/blender/blenkernel/intern/node.c
M source/blender/nodes/CMakeLists.txt
M source/blender/nodes/NOD_shader.h
M source/blender/nodes/NOD_static_types.h
D source/blender/nodes/shader/nodes/node_shader_volume_isotropic.c
A source/blender/nodes/shader/nodes/node_shader_volume_scatter.c
===================================================================
diff --git a/intern/cycles/app/cycles_xml.cpp b/intern/cycles/app/cycles_xml.cpp
index df187f0..43b004d 100644
--- a/intern/cycles/app/cycles_xml.cpp
+++ b/intern/cycles/app/cycles_xml.cpp
@@ -455,8 +455,8 @@ static void xml_read_shader_graph(const XMLReadState& state, Shader *shader, pug
else if(string_iequals(node.name(), "transparent_volume")) {
snode = new TransparentVolumeNode();
}
- else if(string_iequals(node.name(), "isotropic_volume")) {
- snode = new IsotropicVolumeNode();
+ else if(string_iequals(node.name(), "scatter_volume")) {
+ snode = new ScatterVolumeNode();
}
else if(string_iequals(node.name(), "geometry")) {
snode = new GeometryNode();
diff --git a/intern/cycles/blender/addon/presets.py b/intern/cycles/blender/addon/presets.py
index 18873d2..a9bd0a9 100644
--- a/intern/cycles/blender/addon/presets.py
+++ b/intern/cycles/blender/addon/presets.py
@@ -38,7 +38,7 @@ class AddPresetIntegrator(AddPresetBase, Operator):
"cycles.diffuse_bounces",
"cycles.glossy_bounces",
"cycles.transmission_bounces",
- "cycles.scattering_bounces",
+ "cycles.volume_bounces",
"cycles.transparent_min_bounces",
"cycles.transparent_max_bounces"
]
diff --git a/intern/cycles/blender/addon/properties.py b/intern/cycles/blender/addon/properties.py
index eba492c..2d4da6b 100644
--- a/intern/cycles/blender/addon/properties.py
+++ b/intern/cycles/blender/addon/properties.py
@@ -292,8 +292,8 @@ class CyclesRenderSettings(bpy.types.PropertyGroup):
min=0, max=1024,
default=12,
)
- cls.scattering_bounces = IntProperty(
- name="Scattering Bounces",
+ cls.volume_bounces = IntProperty(
+ name="Volume Bounces",
description="Maximum number of volumetric scattering events",
min=0, max=1024,
default=128,
diff --git a/intern/cycles/blender/addon/ui.py b/intern/cycles/blender/addon/ui.py
index b2764ee..4b29942 100644
--- a/intern/cycles/blender/addon/ui.py
+++ b/intern/cycles/blender/addon/ui.py
@@ -193,7 +193,7 @@ class CyclesRender_PT_light_paths(CyclesButtonsPanel, Panel):
sub.prop(cscene, "diffuse_bounces", text="Diffuse")
sub.prop(cscene, "glossy_bounces", text="Glossy")
sub.prop(cscene, "transmission_bounces", text="Transmission")
- sub.prop(cscene, "scattering_bounces", text="Scattering")
+ sub.prop(cscene, "volume_bounces", text="Volume")
class CyclesRender_PT_volumetrics(CyclesButtonsPanel, Panel):
bl_label = "Volumetrics"
diff --git a/intern/cycles/blender/blender_shader.cpp b/intern/cycles/blender/blender_shader.cpp
index 161fc26..8c4e83b 100644
--- a/intern/cycles/blender/blender_shader.cpp
+++ b/intern/cycles/blender/blender_shader.cpp
@@ -422,8 +422,8 @@ static ShaderNode *add_node(Scene *scene, BL::BlendData b_data, BL::Scene b_scen
else if (b_node.is_a(&RNA_ShaderNodeAmbientOcclusion)) {
node = new AmbientOcclusionNode();
}
- else if (b_node.is_a(&RNA_ShaderNodeVolumeIsotropic)) {
- node = new IsotropicVolumeNode();
+ else if (b_node.is_a(&RNA_ShaderNodeVolumeScatter)) {
+ node = new ScatterVolumeNode();
}
else if (b_node.is_a(&RNA_ShaderNodeVolumeTransparent)) {
node = new TransparentVolumeNode();
diff --git a/intern/cycles/blender/blender_sync.cpp b/intern/cycles/blender/blender_sync.cpp
index 84c5873..80bf4a5 100644
--- a/intern/cycles/blender/blender_sync.cpp
+++ b/intern/cycles/blender/blender_sync.cpp
@@ -166,7 +166,7 @@ void BlenderSync::sync_integrator()
integrator->max_diffuse_bounce = get_int(cscene, "diffuse_bounces");
integrator->max_glossy_bounce = get_int(cscene, "glossy_bounces");
integrator->max_transmission_bounce = get_int(cscene, "transmission_bounces");
- integrator->max_scattering_bounce = get_int(cscene, "scattering_bounces");
+ integrator->max_volume_bounce = get_int(cscene, "volume_bounces");
integrator->transparent_max_bounce = get_int(cscene, "transparent_max_bounces");
integrator->transparent_min_bounce = get_int(cscene, "transparent_min_bounces");
diff --git a/intern/cycles/kernel/kernel_path.h b/intern/cycles/kernel/kernel_path.h
index 6d0956a..af960f3 100644
--- a/intern/cycles/kernel/kernel_path.h
+++ b/intern/cycles/kernel/kernel_path.h
@@ -540,12 +540,12 @@ ccl_device float4 kernel_path_integrate(KernelGlobals *kg, RNG *rng, int sample,
#endif
#ifdef __VOLUME__
- if(state.scattering_bounce < kernel_data.integrator.max_scattering_bounce) {
+ if(state.volume_bounce < kernel_data.integrator.max_volume_bounce) {
int vol_result = kernel_path_trace_volume(kg, rng, rng_offset, &rng_congruential, sample, &ray, &isect, isect.t,
&state, media_volume_shader, &throughput, &L, buffer, &ray_pdf, &volume_eval, &volume_pdf, &omega_cache);
if (vol_result == VOLUME_PATH_CONTINUE) {
- state.scattering_bounce++;
+ state.volume_bounce++;
continue;
}
else if (vol_result == VOLUME_PATH_TERMINATED)
diff --git a/intern/cycles/kernel/kernel_path_state.h b/intern/cycles/kernel/kernel_path_state.h
index 4cbe5b5..dc39752 100644
--- a/intern/cycles/kernel/kernel_path_state.h
+++ b/intern/cycles/kernel/kernel_path_state.h
@@ -24,7 +24,7 @@ typedef struct PathState {
int glossy_bounce;
int transmission_bounce;
int transparent_bounce;
- int scattering_bounce;
+ int volume_bounce;
} PathState;
ccl_device_inline void path_state_init(PathState *state)
@@ -35,7 +35,7 @@ ccl_device_inline void path_state_init(PathState *state)
state->glossy_bounce = 0;
state->transmission_bounce = 0;
state->transparent_bounce = 0;
- state->scattering_bounce = 0;
+ state->volume_bounce = 0;
}
ccl_device_inline void path_state_next(KernelGlobals *kg, PathState *state, int label)
@@ -119,7 +119,7 @@ ccl_device_inline float path_state_terminate_probability(KernelGlobals *kg, Path
(state->diffuse_bounce >= kernel_data.integrator.max_diffuse_bounce) ||
(state->glossy_bounce >= kernel_data.integrator.max_glossy_bounce) ||
(state->transmission_bounce >= kernel_data.integrator.max_transmission_bounce) ||
- (state->scattering_bounce >= kernel_data.integrator.max_scattering_bounce))
+ (state->volume_bounce >= kernel_data.integrator.max_volume_bounce))
{
return 0.0f;
}
diff --git a/intern/cycles/kernel/kernel_types.h b/intern/cycles/kernel/kernel_types.h
index d62fd3e..b8e4efe 100644
--- a/intern/cycles/kernel/kernel_types.h
+++ b/intern/cycles/kernel/kernel_types.h
@@ -749,7 +749,7 @@ typedef struct KernelIntegrator {
int max_diffuse_bounce;
int max_glossy_bounce;
int max_transmission_bounce;
- int max_scattering_bounce;
+ int max_volume_bounce;
/* transparent */
int transparent_min_bounce;
diff --git a/intern/cycles/kernel/kernel_volume.h b/intern/cycles/kernel/kernel_volume.h
index ff292db..1b131ff 100644
--- a/intern/cycles/kernel/kernel_volume.h
+++ b/intern/cycles/kernel/kernel_volume.h
@@ -454,7 +454,7 @@ ccl_device int kernel_volumetric_homogeneous_sampler(KernelGlobals *kg, float ra
}
#if 1
- if (*omega_cache != NULL) {
+ if (omega_cache) {
if(*omega_cache == 0.0f) {
*omega_cache = get_sigma_sample(kg, sd, randp, path_flag, ray.P);
}
@@ -528,7 +528,7 @@ ccl_device int kernel_volumetric_equiangular_sampler(KernelGlobals *kg, RNG *rng
if(ls.pdf == 0.0f)
return 0;
- if (*omega_cache != NULL) {
+ if (omega_cache) {
if(*omega_cache == 0.0f) {
*omega_cache = get_sigma_sample(kg, sd, randp, path_flag, ray.P);
}
diff --git a/intern/cycles/kernel/shaders/CMakeLists.txt b/intern/cycles/kernel/shaders/CMakeLists.txt
index d78a862..1cc2eb8 100644
--- a/intern/cycles/kernel/shaders/CMakeLists.txt
+++ b/intern/cycles/kernel/shaders/CMakeLists.txt
@@ -29,7 +29,7 @@ set(SRC_OSL
node_glossy_bsdf.osl
node_gradient_texture.osl
node_hair_info.osl
- node_henyey_greenstein_volume.osl
+ node_scatter_volume.osl
node_holdout.osl
node_hsv.osl
node_image_texture.osl
diff --git a/intern/cycles/kernel/shaders/node_henyey_greenstein_volume.osl b/intern/cycles/kernel/shaders/node_scatter_volume.osl
similarity index 86%
rename from intern/cycles/kernel/shaders/node_henyey_greenstein_volume.osl
rename to intern/cycles/kernel/shaders/node_scatter_volume.osl
index 3f367e9..12f2cb2 100644
--- a/intern/cycles/kernel/shaders/node_henyey_greenstein_volume.osl
+++ b/intern/cycles/kernel/shaders/node_scatter_volume.osl
@@ -16,12 +16,12 @@
#include "stdosl.h"
-shader node_henyey_greenstein_volume(
+shader node_scatter_volume(
color Color = color(0.8, 0.8, 0.8),
float Density = 1.0,
- float g = 0.0,
+ float Anisotropy = 0.0,
normal Normal = N,
output closure color Volume = 0)
{
- Volume = Color * henyey_greenstein(Normal, Density, g);
+ Volume = Color * henyey_greenstein(Normal, Density, Anisotropy);
}
diff --git a/intern/cycles/render/integrator.cpp b/intern/cycles/render/integrator.cpp
index 42e8a9e..efeb4d4 100644
--- a/intern/cycles/render/integrator.cpp
+++ b/intern/cycles/render/integrator.cpp
@@ -33,7 +33,7 @@ Integrator::Integrator()
max_diffuse_bounce = max_bounce;
max_glossy_bounce = max_bounce;
max_transmission_bounce = max_bounce;
- max_scattering_bounce = max_bounce;
+ max_volume_bounce = max_bounce;
probalistic_termination = true;
transparent_min_bounce = min_bounce;
@@ -94,7 +94,7 @@ void Integrator::device_update(Device *device, DeviceScene *dscene, Scene *scene
kintegrator->max_diffuse_bounce = max_diffuse_bounce + 1;
kintegrator->max_glossy_bounce = max_glossy_bounce + 1;
kintegrator->max_transmission_bounce = max_transmission_bounce + 1;
- kintegrator->max_scattering_bounce = max_scattering_bounce + 1;
+ kintegrator->max_volume_bounce = max_volume_bounce + 1;
kintegrator->transparent_max_bounce = transparent_max_bounce + 1;
if(transparent_probalistic)
@@ -172,7 +172,7 @@ bool Integrator::modified(const Integrator& integrator)
max_diffuse_bounce == integrator.max_diffuse_bounce &&
max_glossy_bounce == integrator.max_glossy_bounce &&
max_transmission_bounce == integrator.max_transmission_bounce &&
- max_scattering_bounce == integrator.max_scattering_bounce &&
+ max_volume_bounce == integrat
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list