[Bf-blender-cvs] [aed09d43295] blender2.8: Cleanup: remove unused shader node compatibility flag.
Brecht Van Lommel
noreply at git.blender.org
Fri Jul 6 20:24:57 CEST 2018
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. @@
More information about the Bf-blender-cvs
mailing list