Commit: 5a8b5a0377781b5d03b39543a58175d8f4bc2bab Author: lazydodo Date: Fri Dec 9 08:28:04 2016 -0700 Branches: master https://developer.blender.org/rB5a8b5a0377781b5d03b39543a58175d8f4bc2bab
Land D2339 by bliblu bli =================================================================== M intern/cycles/device/device.cpp M intern/cycles/device/device.h M intern/cycles/kernel/kernel_types.h M intern/cycles/render/session.cpp M intern/cycles/render/shader.cpp =================================================================== diff --git a/intern/cycles/device/device.cpp b/intern/cycles/device/device.cpp index ff9387b..31c99f4 100644 --- a/intern/cycles/device/device.cpp +++ b/intern/cycles/device/device.cpp @@ -64,6 +64,8 @@ std::ostream& operator <<(std::ostream &os, << string_from_bool(requested_features.use_integrator_branched) << std::endl; os << "Use Patch Evaluation: " << string_from_bool(requested_features.use_patch_evaluation) << std::endl; + os << "Use Transparent Shadows: " + << string_from_bool(requested_features.use_transparent) << std::endl; return os; } diff --git a/intern/cycles/device/device.h b/intern/cycles/device/device.h index 988ad10..ccee25a 100644 --- a/intern/cycles/device/device.h +++ b/intern/cycles/device/device.h @@ -117,6 +117,9 @@ public: /* Use OpenSubdiv patch evaluation */ bool use_patch_evaluation; + + /* Use Transparent shadows */ + bool use_transparent; DeviceRequestedFeatures() { @@ -133,6 +136,7 @@ public: use_volume = false; use_integrator_branched = false; use_patch_evaluation = false; + use_transparent = false; } bool modified(const DeviceRequestedFeatures& requested_features) @@ -148,7 +152,8 @@ public: use_subsurface == requested_features.use_subsurface && use_volume == requested_features.use_volume && use_integrator_branched == requested_features.use_integrator_branched && - use_patch_evaluation == requested_features.use_patch_evaluation); + use_patch_evaluation == requested_features.use_patch_evaluation && + use_transparent == requested_features.use_transparent); } /* Convert the requested features structure to a build options, @@ -189,6 +194,9 @@ public: if(!use_patch_evaluation) { build_options += " -D__NO_PATCH_EVAL__"; } + if(!use_transparent) { + build_options += " -D__NO_TRANSPARENT__"; + } return build_options; } }; diff --git a/intern/cycles/kernel/kernel_types.h b/intern/cycles/kernel/kernel_types.h index a6c31d4..fd96183 100644 --- a/intern/cycles/kernel/kernel_types.h +++ b/intern/cycles/kernel/kernel_types.h @@ -192,6 +192,9 @@ CCL_NAMESPACE_BEGIN #ifdef __NO_PATCH_EVAL__ # undef __PATCH_EVAL__ #endif +#ifdef __NO_TRANSPARENT__ +# undef __TRANSPARENT_SHADOWS__ +#endif /* Random Numbers */ diff --git a/intern/cycles/render/session.cpp b/intern/cycles/render/session.cpp index 8e90224..3372104 100644 --- a/intern/cycles/render/session.cpp +++ b/intern/cycles/render/session.cpp @@ -636,6 +636,7 @@ DeviceRequestedFeatures Session::get_requested_device_features() BakeManager *bake_manager = scene->bake_manager; requested_features.use_baking = bake_manager->get_baking(); requested_features.use_integrator_branched = (scene->integrator->method == Integrator::BRANCHED_PATH); + requested_features.use_transparent &= scene->integrator->transparent_shadows; return requested_features; } diff --git a/intern/cycles/render/shader.cpp b/intern/cycles/render/shader.cpp index 06b6dd9..335edcb 100644 --- a/intern/cycles/render/shader.cpp +++ b/intern/cycles/render/shader.cpp @@ -571,6 +571,9 @@ void ShaderManager::get_requested_graph_features(ShaderGraph *graph, if(node->has_surface_bssrdf()) { requested_features->use_subsurface = true; } + if(node->has_surface_transparent()) { + requested_features->use_transparent = true; + } } } _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs