Commit: aed09d43295de3dcba3d318345a4fd1396a16ea1 Author: Brecht Van Lommel Date: Thu Jul 5 19:18:43 2018 +0200 Branches: blender2.8 https://developer.blender.org/rBaed09d43295de3dcba3d318345a4fd1396a16ea1
Cleanup: remove unused shader node compatibility flag. No longer needed after Blender Internal removal and Eevee replacing the Cycles GLSL shading nodes. =================================================================== M intern/cycles/blender/addon/version_update.py M release/scripts/modules/bl_previews_utils/bl_previews_render.py M source/blender/blenkernel/BKE_node.h M source/blender/blenkernel/intern/node.c M source/blender/editors/space_node/node_templates.c M source/blender/makesrna/intern/rna_nodetree.c M source/blender/nodes/intern/node_common.c M source/blender/nodes/shader/node_shader_util.c M source/blender/nodes/shader/nodes/node_shader_add_shader.c M source/blender/nodes/shader/nodes/node_shader_ambient_occlusion.c M source/blender/nodes/shader/nodes/node_shader_attribute.c M source/blender/nodes/shader/nodes/node_shader_background.c M source/blender/nodes/shader/nodes/node_shader_bevel.c M source/blender/nodes/shader/nodes/node_shader_blackbody.c M source/blender/nodes/shader/nodes/node_shader_brightness.c M source/blender/nodes/shader/nodes/node_shader_bsdf_anisotropic.c M source/blender/nodes/shader/nodes/node_shader_bsdf_diffuse.c M source/blender/nodes/shader/nodes/node_shader_bsdf_glass.c M source/blender/nodes/shader/nodes/node_shader_bsdf_glossy.c M source/blender/nodes/shader/nodes/node_shader_bsdf_hair.c M source/blender/nodes/shader/nodes/node_shader_bsdf_principled.c M source/blender/nodes/shader/nodes/node_shader_bsdf_refraction.c M source/blender/nodes/shader/nodes/node_shader_bsdf_toon.c M source/blender/nodes/shader/nodes/node_shader_bsdf_translucent.c M source/blender/nodes/shader/nodes/node_shader_bsdf_transparent.c M source/blender/nodes/shader/nodes/node_shader_bsdf_velvet.c M source/blender/nodes/shader/nodes/node_shader_bump.c M source/blender/nodes/shader/nodes/node_shader_camera.c M source/blender/nodes/shader/nodes/node_shader_common.c M source/blender/nodes/shader/nodes/node_shader_curves.c M source/blender/nodes/shader/nodes/node_shader_displacement.c M source/blender/nodes/shader/nodes/node_shader_eevee_specular.c M source/blender/nodes/shader/nodes/node_shader_emission.c M source/blender/nodes/shader/nodes/node_shader_fresnel.c M source/blender/nodes/shader/nodes/node_shader_gamma.c M source/blender/nodes/shader/nodes/node_shader_geometry.c M source/blender/nodes/shader/nodes/node_shader_hair_info.c M source/blender/nodes/shader/nodes/node_shader_holdout.c M source/blender/nodes/shader/nodes/node_shader_hueSatVal.c M source/blender/nodes/shader/nodes/node_shader_ies_light.c M source/blender/nodes/shader/nodes/node_shader_invert.c M source/blender/nodes/shader/nodes/node_shader_layer_weight.c M source/blender/nodes/shader/nodes/node_shader_light_falloff.c M source/blender/nodes/shader/nodes/node_shader_light_path.c M source/blender/nodes/shader/nodes/node_shader_mapping.c M source/blender/nodes/shader/nodes/node_shader_math.c M source/blender/nodes/shader/nodes/node_shader_mixRgb.c M source/blender/nodes/shader/nodes/node_shader_mix_shader.c M source/blender/nodes/shader/nodes/node_shader_normal.c M source/blender/nodes/shader/nodes/node_shader_normal_map.c M source/blender/nodes/shader/nodes/node_shader_object_info.c M source/blender/nodes/shader/nodes/node_shader_output_lamp.c M source/blender/nodes/shader/nodes/node_shader_output_linestyle.c M source/blender/nodes/shader/nodes/node_shader_output_material.c M source/blender/nodes/shader/nodes/node_shader_output_world.c M source/blender/nodes/shader/nodes/node_shader_particle_info.c M source/blender/nodes/shader/nodes/node_shader_rgb.c M source/blender/nodes/shader/nodes/node_shader_script.c M source/blender/nodes/shader/nodes/node_shader_sepcombHSV.c M source/blender/nodes/shader/nodes/node_shader_sepcombRGB.c M source/blender/nodes/shader/nodes/node_shader_sepcombXYZ.c M source/blender/nodes/shader/nodes/node_shader_shaderToRgb.c M source/blender/nodes/shader/nodes/node_shader_squeeze.c M source/blender/nodes/shader/nodes/node_shader_subsurface_scattering.c M source/blender/nodes/shader/nodes/node_shader_tangent.c M source/blender/nodes/shader/nodes/node_shader_tex_brick.c M source/blender/nodes/shader/nodes/node_shader_tex_checker.c M source/blender/nodes/shader/nodes/node_shader_tex_coord.c M source/blender/nodes/shader/nodes/node_shader_tex_environment.c M source/blender/nodes/shader/nodes/node_shader_tex_gradient.c M source/blender/nodes/shader/nodes/node_shader_tex_image.c M source/blender/nodes/shader/nodes/node_shader_tex_magic.c M source/blender/nodes/shader/nodes/node_shader_tex_musgrave.c M source/blender/nodes/shader/nodes/node_shader_tex_noise.c M source/blender/nodes/shader/nodes/node_shader_tex_pointdensity.c M source/blender/nodes/shader/nodes/node_shader_tex_sky.c M source/blender/nodes/shader/nodes/node_shader_tex_voronoi.c M source/blender/nodes/shader/nodes/node_shader_tex_wave.c M source/blender/nodes/shader/nodes/node_shader_uvAlongStroke.c M source/blender/nodes/shader/nodes/node_shader_uvmap.c M source/blender/nodes/shader/nodes/node_shader_valToRgb.c M source/blender/nodes/shader/nodes/node_shader_value.c M source/blender/nodes/shader/nodes/node_shader_vectMath.c M source/blender/nodes/shader/nodes/node_shader_vectTransform.c M source/blender/nodes/shader/nodes/node_shader_vector_displacement.c M source/blender/nodes/shader/nodes/node_shader_volume_absorption.c M source/blender/nodes/shader/nodes/node_shader_volume_principled.c M source/blender/nodes/shader/nodes/node_shader_volume_scatter.c M source/blender/nodes/shader/nodes/node_shader_wavelength.c M source/blender/nodes/shader/nodes/node_shader_wireframe.c =================================================================== diff --git a/intern/cycles/blender/addon/version_update.py b/intern/cycles/blender/addon/version_update.py index b6ace0e6b57..679c3e6a437 100644 --- a/intern/cycles/blender/addon/version_update.py +++ b/intern/cycles/blender/addon/version_update.py @@ -22,45 +22,6 @@ import math from bpy.app.handlers import persistent -def check_is_new_shading_ntree(node_tree): - for node in node_tree.nodes: - # If material has any node with ONLY new shading system - # compatibility then it's considered a Cycles material - # and versioning code would need to perform on it. - # - # We can not check for whether NEW_SHADING in compatibility - # because some nodes could have compatibility with both old - # and new shading system and they can't be used for any - # decision here. - if node.shading_compatibility == {'NEW_SHADING'}: - return True - - # If node is only compatible with old shading system - # then material can not be Cycles material and we - # can stopiterating nodes now. - if node.shading_compatibility == {'OLD_SHADING'}: - return False - return False - - -def check_is_new_shading_material(material): - if not material.node_tree: - return False - return check_is_new_shading_ntree(material.node_tree) - - -def check_is_new_shading_world(world): - if not world.node_tree: - return False - return check_is_new_shading_ntree(world.node_tree) - - -def check_is_new_shading_light(light): - if not light.node_tree: - return False - return check_is_new_shading_ntree(light.node_tree) - - def foreach_notree_node(nodetree, callback, traversed): if nodetree in traversed: return @@ -74,20 +35,20 @@ def foreach_notree_node(nodetree, callback, traversed): def foreach_cycles_node(callback): traversed = set() for material in bpy.data.materials: - if check_is_new_shading_material(material): - foreach_notree_node(material.node_tree, - callback, - traversed) + if material.node_tree: + foreach_notree_node(material.node_tree, + callback, + traversed) for world in bpy.data.worlds: - if check_is_new_shading_world(world): - foreach_notree_node(world.node_tree, - callback, - traversed) + if world.node_tree: + foreach_notree_node(world.node_tree, + callback, + traversed) for light in bpy.data.lights: - if check_is_new_shading_world(light): - foreach_notree_node(light.node_tree, - callback, - traversed) + if light.node_tree: + foreach_notree_node(light.node_tree, + callback, + traversed) def displacement_node_insert(material, nodetree, traversed): @@ -128,7 +89,7 @@ def displacement_node_insert(material, nodetree, traversed): def displacement_nodes_insert(): traversed = set() for material in bpy.data.materials: - if check_is_new_shading_material(material): + if material.node_tree: displacement_node_insert(material, material.node_tree, traversed) def displacement_principled_nodes(node): @@ -186,7 +147,7 @@ def square_roughness_node_insert(material, nodetree, traversed): def square_roughness_nodes_insert(): traversed = set() for material in bpy.data.materials: - if check_is_new_shading_material(material): + if material.node_tree: square_roughness_node_insert(material, material.node_tree, traversed) @@ -301,7 +262,7 @@ def ambient_occlusion_node_relink(material, nodetree, traversed): def ambient_occlusion_nodes_relink(): traversed = set() for material in bpy.data.materials: - if check_is_new_shading_material(material): + if material.node_tree: ambient_occlusion_node_relink(material, material.node_tree, traversed) diff --git a/release/scripts/modules/bl_previews_utils/bl_previews_render.py b/release/scripts/modules/bl_previews_utils/bl_previews_render.py index f2c766b2b2d..16b0b107927 100644 --- a/release/scripts/modules/bl_previews_utils/bl_previews_render.py +++ b/release/scripts/modules/bl_previews_utils/bl_previews_render.py @@ -122,21 +122,9 @@ def do_previews(do_objects, do_collections, do_scenes, do_data_intern): light_data.spot_size = 1.0471975803375244 # 60 scene.objects.link(light) - if engine == 'BLENDER_RENDER': - scene.render.engine = 'BLENDER_RENDER' - scene.render.alpha_mode = 'TRANSPARENT' - - world.use_sky_blend = True - world.horizon_color = 0.9, 0.9, 0.9 - world.zenith_color = 0.5, 0.5, 0.5 - world.ambient_color = 0.1, 0.1, 0.1 - world.light_settings.use_environment_light = True - world.light_settings.environment_energy = 1.0 - world.light_settings.environment_color = 'SKY_COLOR' - elif engine == 'CYCLES': - scene.render.engine = 'CYCLES' - scene.cycles.film_transparent = True - # TODO: define Cycles world? + scene.render.engine = 'CYCLES' + scene.cycles.film_transparent = True + # TODO: define Cycles world? scene.render.image_settings.file_format = 'PNG' scene.render.image_settings.color_depth = '8' @@ -239,17 +227,6 @@ def do_previews(do_objects, do_collections, do_scenes, do_data_intern): return success - def objects_render_engine_guess(obs): - for obname, libpath in obs: - ob = bpy.data.objects[obname, libpath] - for matslot in ob.material_slots: - mat = matslot.material - if mat and mat.use_nodes and mat.node_tree: - for nd in mat.node_tree.nodes: - if nd.shading_compatibility == {'NEW_SHADING'}: - return 'CYCLES' - return 'BLENDER_RENDER' - def object_bbox_merge(bbox, ob, ob_space, offset_matrix): # Take collections instances into account (including linked one in this case). if ob.type == 'EMPTY' and ob.dupli_type == 'COLLECTION': @@ -360,11 +337,10 @@ def do_previews(do_objects, do_collections, do_scenes, do_data_intern): continue objects = ((root.name, None),) - render_engine = objects_render_engine_guess(objects) - render_context = render_contexts.get(render_engine, None) + render_context = render_contexts.get('CYCLES', None) if render_context is None: - render_context = render_context_create(render_engine, objects_ignored) - render_contexts[render_engine] = render_context + render_context = render_context_create('CYCLES', objects_ignored) + render_contexts['CYCLES'] = render_context scene = bpy.data.scenes[render_context.scene, None] bpy.context.screen.scene = scene @@ -405,11 +381,10 @@ def do_previews(do_objects, do_collections, do_scenes, do_data_intern): # Here too, we do want to keep linked objects members of local collection... objects = tuple((ob.name, ob.library.filepath if ob.library else None) for ob in grp.objects) - render_engine = objects_render_engine_guess(objects) - render_context = render_contexts.get(render_engine, None) + render_context = render_contexts.get('CYCLES', None) if render_context is None: - render_context = render_context_create(render_engine, objects_ignored) - render_contexts[render_engine] = render_context + render_context = render_context_create('CYCLES', objects_ignored) + render_contexts['CYCLES'] = render_context scene = bpy.data.scenes[render_context.scene, None] bpy.context.screen.scene = scene diff --git a/source/blender/blenkernel/BKE_node.h b/source/blender/blenkernel/BKE_node.h index 13d6fd10eaa..e72c6c14bfb 100644 --- a/source/blender/blenkernel/BKE_node.h +++ b/source/blender/blenkernel/BKE_node.h @@ -152,7 +152,7 @@ typedef struct bNodeType { float width, minwidth, maxwidth; float height, minheight, maxheight; - short nclass, flag, compatibility; + short nclass, flag; /* templates for static sockets */ bNodeSocketTemplate *inputs, *outputs; @@ -251,10 +251,6 @@ typedef struct bNodeType { #define NODE_CLASS_SHADER 40 #define NODE_CLASS_LAYOUT 100 -/* nodetype->compatibility */ -#define NODE_OLD_SHADING (1 << 0) -#define NODE_NEW_SHADING (1 << 1) - /* node resize directions */ #define NODE_RESIZE_TOP 1 #define NODE_RESIZE_BOTTOM 2 @@ -600,7 +596,6 @@ void node_type_update(struct bNodeType *ntype, void node_type_exec(struct bNodeType *ntype, NodeInitExecFunction initexecfunc, NodeFreeExecFunction freeexecfunc, NodeExecFunction execfunc); void node_type_gpu(struct bNodeType *ntype, NodeGPUExecFunction gpufunc); void node_type_internal_links(struct bNodeType *ntype, void (*update_internal_links)(struct bNodeTree *, struct bNode *)); -void node_type_compatibility(struct bNodeType *ntype, short compatibility); /** \} */ diff --git a/source/blender/blenkernel/intern/node.c b/source/blender/blenkernel/intern/node.c index f7cd2bd52dc..7aa0ecdad87 100644 --- a/source/blender/blenkernel/intern/node.c +++ b/source/blender/blenkernel/intern/node.c @@ -3333,11 +3333,6 @@ void node_type_internal_links(bNodeType *ntype, void (*update_internal_links)(bN ntype->update_internal_links = update_internal_links; } -void node_type_compatibility(struct bNodeType *ntype, short compatibility) -{ - ntype->compatibility = compatibility; -} - /* callbacks @@ Diff output truncated at 10240 characters. @@ _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs