[Bf-blender-cvs] [3c2eb85] cycles_kernel_split: Cycles kernel split: Remove unused and unwanted clos field from ShaderNode
Sergey Sharybin
noreply at git.blender.org
Wed May 6 14:37:55 CEST 2015
Commit: 3c2eb8557edc3965e5a3cdf22268f30c5d63fad8
Author: Sergey Sharybin
Date: Wed May 6 17:36:12 2015 +0500
Branches: cycles_kernel_split
https://developer.blender.org/rB3c2eb8557edc3965e5a3cdf22268f30c5d63fad8
Cycles kernel split: Remove unused and unwanted clos field from ShaderNode
Counting of closures was redone in previous commit so this code is no longer
needed.
===================================================================
M intern/cycles/render/graph.cpp
M intern/cycles/render/graph.h
M intern/cycles/render/nodes.cpp
M intern/cycles/render/session.cpp
===================================================================
diff --git a/intern/cycles/render/graph.cpp b/intern/cycles/render/graph.cpp
index 6a63833..ab89ee3 100644
--- a/intern/cycles/render/graph.cpp
+++ b/intern/cycles/render/graph.cpp
@@ -55,7 +55,6 @@ ShaderNode::ShaderNode(const char *name_)
id = -1;
bump = SHADER_BUMP_NONE;
special_type = SHADER_SPECIAL_TYPE_NONE;
- clos = (ClosureType)-1;
}
ShaderNode::~ShaderNode()
diff --git a/intern/cycles/render/graph.h b/intern/cycles/render/graph.h
index 59f5a3a..6744804 100644
--- a/intern/cycles/render/graph.h
+++ b/intern/cycles/render/graph.h
@@ -207,8 +207,6 @@ public:
ShaderBump bump; /* for bump mapping utility */
ShaderNodeSpecialType special_type; /* special node type */
-
- ClosureType clos; /* Closure type of ShaderNode */
};
diff --git a/intern/cycles/render/nodes.cpp b/intern/cycles/render/nodes.cpp
index 8f39fbe..7eaecc2 100644
--- a/intern/cycles/render/nodes.cpp
+++ b/intern/cycles/render/nodes.cpp
@@ -1534,9 +1534,6 @@ BsdfNode::BsdfNode(bool scattering_)
closure = CLOSURE_BSDF_DIFFUSE_ID;
add_output("BSDF", SHADER_SOCKET_CLOSURE);
}
-
- /* Used for split kernel */
- clos = closure;
}
void BsdfNode::compile(SVMCompiler& compiler, ShaderInput *param1, ShaderInput *param2, ShaderInput *param3, ShaderInput *param4)
@@ -1614,6 +1611,7 @@ ShaderEnum AnisotropicBsdfNode::distribution_enum = aniso_distribution_init();
AnisotropicBsdfNode::AnisotropicBsdfNode()
{
+ closure = CLOSURE_BSDF_MICROFACET_GGX_ANISO_ID;
distribution = ustring("GGX");
add_input("Tangent", SHADER_SOCKET_VECTOR, ShaderInput::TANGENT);
@@ -1621,9 +1619,6 @@ AnisotropicBsdfNode::AnisotropicBsdfNode()
add_input("Roughness", SHADER_SOCKET_FLOAT, 0.2f);
add_input("Anisotropy", SHADER_SOCKET_FLOAT, 0.5f);
add_input("Rotation", SHADER_SOCKET_FLOAT, 0.0f);
-
- /* Used for split kernel */
- clos = (ClosureType)distribution_enum[distribution];
}
void AnisotropicBsdfNode::attributes(Shader *shader, AttributeRequestSet *attributes)
@@ -1669,12 +1664,10 @@ ShaderEnum GlossyBsdfNode::distribution_enum = glossy_distribution_init();
GlossyBsdfNode::GlossyBsdfNode()
{
+ closure = CLOSURE_BSDF_MICROFACET_GGX_ID;
distribution = ustring("GGX");
add_input("Roughness", SHADER_SOCKET_FLOAT, 0.2f);
-
- /* Used for split kernel */
- clos = (ClosureType)distribution_enum[distribution];
}
void GlossyBsdfNode::compile(SVMCompiler& compiler)
@@ -1710,13 +1703,11 @@ ShaderEnum GlassBsdfNode::distribution_enum = glass_distribution_init();
GlassBsdfNode::GlassBsdfNode()
{
+ closure = CLOSURE_BSDF_SHARP_GLASS_ID;
distribution = ustring("Sharp");
add_input("Roughness", SHADER_SOCKET_FLOAT, 0.0f);
add_input("IOR", SHADER_SOCKET_FLOAT, 0.3f);
-
- /* Used for split kernel */
- clos = (ClosureType)distribution_enum[distribution];
}
void GlassBsdfNode::compile(SVMCompiler& compiler)
@@ -1752,13 +1743,11 @@ ShaderEnum RefractionBsdfNode::distribution_enum = refraction_distribution_init(
RefractionBsdfNode::RefractionBsdfNode()
{
+ closure = CLOSURE_BSDF_REFRACTION_ID;
distribution = ustring("Sharp");
add_input("Roughness", SHADER_SOCKET_FLOAT, 0.0f);
add_input("IOR", SHADER_SOCKET_FLOAT, 0.3f);
-
- /* Used for split kernel */
- clos = (ClosureType)distribution_enum[distribution];
}
void RefractionBsdfNode::compile(SVMCompiler& compiler)
@@ -1793,13 +1782,11 @@ ShaderEnum ToonBsdfNode::component_enum = toon_component_init();
ToonBsdfNode::ToonBsdfNode()
{
+ closure = CLOSURE_BSDF_DIFFUSE_TOON_ID;
component = ustring("Diffuse");
add_input("Size", SHADER_SOCKET_FLOAT, 0.5f);
add_input("Smooth", SHADER_SOCKET_FLOAT, 0.0f);
-
- /* Used for split kernel */
- clos = (ClosureType)component_enum[component];
}
void ToonBsdfNode::compile(SVMCompiler& compiler)
@@ -1822,9 +1809,6 @@ VelvetBsdfNode::VelvetBsdfNode()
closure = CLOSURE_BSDF_ASHIKHMIN_VELVET_ID;
add_input("Sigma", SHADER_SOCKET_FLOAT, 1.0f);
-
- /* Used for split kernel */
- clos = closure;
}
void VelvetBsdfNode::compile(SVMCompiler& compiler)
@@ -1843,9 +1827,6 @@ DiffuseBsdfNode::DiffuseBsdfNode()
{
closure = CLOSURE_BSDF_DIFFUSE_ID;
add_input("Roughness", SHADER_SOCKET_FLOAT, 0.0f);
-
- /* Used for split kernel */
- clos = closure;
}
void DiffuseBsdfNode::compile(SVMCompiler& compiler)
@@ -1863,9 +1844,6 @@ void DiffuseBsdfNode::compile(OSLCompiler& compiler)
TranslucentBsdfNode::TranslucentBsdfNode()
{
closure = CLOSURE_BSDF_TRANSLUCENT_ID;
-
- /* Used for split kernel */
- clos = closure;
}
void TranslucentBsdfNode::compile(SVMCompiler& compiler)
@@ -1884,9 +1862,6 @@ TransparentBsdfNode::TransparentBsdfNode()
{
name = "transparent";
closure = CLOSURE_BSDF_TRANSPARENT_ID;
-
- /* Used for split kernel */
- clos = closure;
}
void TransparentBsdfNode::compile(SVMCompiler& compiler)
@@ -1923,9 +1898,6 @@ SubsurfaceScatteringNode::SubsurfaceScatteringNode()
add_input("Radius", SHADER_SOCKET_VECTOR, make_float3(0.1f, 0.1f, 0.1f));
add_input("Sharpness", SHADER_SOCKET_FLOAT, 0.0f);
add_input("Texture Blur", SHADER_SOCKET_FLOAT, 1.0f);
-
- /* Used for split kernel */
- clos = closure;
}
void SubsurfaceScatteringNode::compile(SVMCompiler& compiler)
@@ -1956,9 +1928,6 @@ EmissionNode::EmissionNode()
add_input("SurfaceMixWeight", SHADER_SOCKET_FLOAT, 0.0f, ShaderInput::USE_SVM);
add_output("Emission", SHADER_SOCKET_CLOSURE);
-
- /* Used for split kernel */
- clos = CLOSURE_EMISSION_ID;
}
void EmissionNode::compile(SVMCompiler& compiler)
@@ -1994,9 +1963,6 @@ BackgroundNode::BackgroundNode()
add_input("SurfaceMixWeight", SHADER_SOCKET_FLOAT, 0.0f, ShaderInput::USE_SVM);
add_output("Background", SHADER_SOCKET_CLOSURE);
-
- /* Used for split kernel */
- clos = CLOSURE_BACKGROUND_ID;
}
void BackgroundNode::compile(SVMCompiler& compiler)
@@ -2029,9 +1995,6 @@ HoldoutNode::HoldoutNode()
add_input("VolumeMixWeight", SHADER_SOCKET_FLOAT, 0.0f, ShaderInput::USE_SVM);
add_output("Holdout", SHADER_SOCKET_CLOSURE);
-
- /* Used for split kernel */
- clos = CLOSURE_HOLDOUT_ID;
}
void HoldoutNode::compile(SVMCompiler& compiler)
@@ -2057,9 +2020,6 @@ AmbientOcclusionNode::AmbientOcclusionNode()
add_input("SurfaceMixWeight", SHADER_SOCKET_FLOAT, 0.0f, ShaderInput::USE_SVM);
add_output("AO", SHADER_SOCKET_CLOSURE);
-
- /* Used for split kernel */
- clos = CLOSURE_AMBIENT_OCCLUSION_ID;
}
void AmbientOcclusionNode::compile(SVMCompiler& compiler)
@@ -2093,9 +2053,6 @@ VolumeNode::VolumeNode()
add_input("VolumeMixWeight", SHADER_SOCKET_FLOAT, 0.0f, ShaderInput::USE_SVM);
add_output("Volume", SHADER_SOCKET_CLOSURE);
-
- /* Used for split kernel */
- clos = closure;
}
void VolumeNode::compile(SVMCompiler& compiler, ShaderInput *param1, ShaderInput *param2)
@@ -2138,9 +2095,6 @@ void VolumeNode::compile(OSLCompiler& /*compiler*/)
AbsorptionVolumeNode::AbsorptionVolumeNode()
{
closure = CLOSURE_VOLUME_ABSORPTION_ID;
-
- /* Used for split kernel */
- clos = closure;
}
void AbsorptionVolumeNode::compile(SVMCompiler& compiler)
@@ -2160,9 +2114,6 @@ ScatterVolumeNode::ScatterVolumeNode()
closure = CLOSURE_VOLUME_HENYEY_GREENSTEIN_ID;
add_input("Anisotropy", SHADER_SOCKET_FLOAT, 0.0f);
-
- /* Used for split kernel */
- clos = closure;
}
void ScatterVolumeNode::compile(SVMCompiler& compiler)
@@ -2191,14 +2142,12 @@ ShaderEnum HairBsdfNode::component_enum = hair_component_init();
HairBsdfNode::HairBsdfNode()
{
+ closure = CLOSURE_BSDF_HAIR_REFLECTION_ID;
component = ustring("Reflection");
add_input("Offset", SHADER_SOCKET_FLOAT);
add_input("RoughnessU", SHADER_SOCKET_FLOAT);
add_input("RoughnessV", SHADER_SOCKET_FLOAT);
-
- /* Used for split kernel */
- clos = (ClosureType)component_enum[component];
}
void HairBsdfNode::compile(SVMCompiler& compiler)
diff --git a/intern/cycles/render/session.cpp b/intern/cycles/render/session.cpp
index 023cd83..7b3b565 100644
--- a/intern/cycles/render/session.cpp
+++ b/intern/cycles/render/session.cpp
@@ -634,32 +634,6 @@ void Session::load_kernels()
}
}
-static int getClosureCount(Scene *scene)
-{
- int max_clos = 0;
- for(int i = 0; i < scene->shaders.size(); i++) {
- int num_closures = 0;
- foreach(ShaderNode *node, scene->shaders[i]->graph->nodes) {
- ClosureType type = node->clos;
- if(type > 0) {
- if(CLOSURE_IS_BSSRDF(type))
- num_closures = num_closures + 3;
- else if(type >= CLOSURE_BSDF_MICROFACET_BECKMANN_GLASS_ID && type <= CLOSURE_BSDF_SHARP_GLASS_ID)
- num_closures = num_closures + 2;
- else
- num_closures = num_closures + 1;
- }
- }
- if(num_closures > max_clos)
- max_clos = num_closures;
- }
-
- if(max_clos > maxclosure) {
- maxclosure = max_clos;
- }
- return maxclosure;
-}
-
void Session::run()
{
if (device->info.use_split_kernel) {
More information about the Bf-blender-cvs
mailing list