From e5a748ced17c8f59e5e73309096adeea3ba95e04 Mon Sep 17 00:00:00 2001 From: Pascal Schoen Date: Fri, 21 Oct 2016 08:51:20 +0200 Subject: [PATCH] Removed code that isn't in use anymore --- intern/cycles/kernel/closure/bsdf_util.h | 92 ------------------------ intern/cycles/render/nodes.cpp | 23 ------ intern/cycles/render/nodes.h | 1 - 3 files changed, 116 deletions(-) diff --git a/intern/cycles/kernel/closure/bsdf_util.h b/intern/cycles/kernel/closure/bsdf_util.h index 397d642c35a..66c3ea158cf 100644 --- a/intern/cycles/kernel/closure/bsdf_util.h +++ b/intern/cycles/kernel/closure/bsdf_util.h @@ -148,98 +148,6 @@ ccl_device float smooth_step(float edge0, float edge1, float x) return result; } -ccl_device void importance_sample_ggx_slopes( - const float cos_theta_i, const float sin_theta_i, - float randu, float randv, float *slope_x, float *slope_y, - float *G1i) -{ - /* special case (normal incidence) */ - if (cos_theta_i >= 0.99999f) { - const float r = sqrtf(randu / (1.0f - randu)); - const float phi = M_2PI_F * randv; - *slope_x = r * cosf(phi); - *slope_y = r * sinf(phi); - *G1i = 1.0f; - - return; - } - - /* precomputations */ - const float tan_theta_i = sin_theta_i / cos_theta_i; - const float G1_inv = 0.5f * (1.0f + safe_sqrtf(1.0f + tan_theta_i*tan_theta_i)); - - *G1i = 1.0f / G1_inv; - - /* sample slope_x */ - const float A = 2.0f*randu*G1_inv - 1.0f; - const float AA = A*A; - const float tmp = 1.0f / (AA - 1.0f); - const float B = tan_theta_i; - const float BB = B*B; - const float D = safe_sqrtf(BB*(tmp*tmp) - (AA - BB)*tmp); - const float slope_x_1 = B*tmp - D; - const float slope_x_2 = B*tmp + D; - *slope_x = (A < 0.0f || slope_x_2*tan_theta_i > 1.0f) ? slope_x_1 : slope_x_2; - - /* sample slope_y */ - float S; - - if (randv > 0.5f) { - S = 1.0f; - randv = 2.0f*(randv - 0.5f); - } - else { - S = -1.0f; - randv = 2.0f*(0.5f - randv); - } - - const float z = (randv*(randv*(randv*0.27385f - 0.73369f) + 0.46341f)) / (randv*(randv*(randv*0.093073f + 0.309420f) - 1.000000f) + 0.597999f); - *slope_y = S * z * safe_sqrtf(1.0f + (*slope_x)*(*slope_x)); -} - -ccl_device float3 importance_sample_microfacet_stretched( - const float3 omega_i, const float alpha_x, const float alpha_y, - const float randu, const float randv, - bool beckmann, float *G1i) -{ - /* 1. stretch omega_i */ - float3 omega_i_ = make_float3(alpha_x * omega_i.x, alpha_y * omega_i.y, omega_i.z); - omega_i_ = normalize(omega_i_); - - /* get polar coordinates of omega_i_ */ - float costheta_ = 1.0f; - float sintheta_ = 0.0f; - float cosphi_ = 1.0f; - float sinphi_ = 0.0f; - - if (omega_i_.z < 0.99999f) { - costheta_ = omega_i_.z; - sintheta_ = safe_sqrtf(1.0f - costheta_*costheta_); - - float invlen = 1.0f / sintheta_; - cosphi_ = omega_i_.x * invlen; - sinphi_ = omega_i_.y * invlen; - } - - /* 2. sample P22_{omega_i}(x_slope, y_slope, 1, 1) */ - float slope_x, slope_y; - - importance_sample_ggx_slopes(costheta_, sintheta_, - randu, randv, &slope_x, &slope_y, G1i); - - /* 3. rotate */ - float tmp = cosphi_*slope_x - sinphi_*slope_y; - slope_y = sinphi_*slope_x + cosphi_*slope_y; - slope_x = tmp; - - /* 4. unstretch */ - slope_x = alpha_x * slope_x; - slope_y = alpha_y * slope_y; - - /* 5. compute normal */ - return normalize(make_float3(-slope_x, -slope_y, 1.0f)); -} - CCL_NAMESPACE_END #endif /* __BSDF_UTIL_H__ */ diff --git a/intern/cycles/render/nodes.cpp b/intern/cycles/render/nodes.cpp index 2d89f60a3f9..fb8fd22543e 100644 --- a/intern/cycles/render/nodes.cpp +++ b/intern/cycles/render/nodes.cpp @@ -2323,29 +2323,6 @@ void DisneyBsdfNode::compile(SVMCompiler& compiler, ShaderInput *p_metallic, Sha __float_as_int(ss_default.x), __float_as_int(ss_default.y), __float_as_int(ss_default.z)); } -void DisneyBsdfNode::simplify_settings(Scene *scene) -{ -#if 0 - if (distribution_orig == NBUILTIN_CLOSURES) { - distribution_orig = distribution; - } - Integrator *integrator = scene->integrator; - if (integrator->filter_glossy == 0.0f) { - /* Fallback to Sharp closure for Roughness close to 0. - * Note: Keep the epsilon in sync with kernel! - */ - ShaderInput *roughness_input = input("Roughness"); - if (!roughness_input->link && roughness <= 1e-4f) { - distribution = CLOSURE_BSDF_SHARP_GLASS_ID; - } - } - else { - /* Rollback to original distribution when filter glossy is used. */ - distribution = distribution_orig; - } -#endif -} - bool DisneyBsdfNode::has_integrator_dependency() { ShaderInput *roughness_input = input("Roughness"); diff --git a/intern/cycles/render/nodes.h b/intern/cycles/render/nodes.h index a466ba0598d..b071900d8e3 100644 --- a/intern/cycles/render/nodes.h +++ b/intern/cycles/render/nodes.h @@ -390,7 +390,6 @@ public: } ClosureType get_closure_type() { return closure; } - void simplify_settings(Scene *scene); bool has_integrator_dependency(); };