[Bf-blender-cvs] [01f576e87b5] blender2.8: Merge branch 'master' into blender2.8

Brecht Van Lommel noreply at git.blender.org
Fri Jun 15 23:18:32 CEST 2018


Commit: 01f576e87b54159bb360cf1ed85518bb75231107
Author: Brecht Van Lommel
Date:   Fri Jun 15 23:04:35 2018 +0200
Branches: blender2.8
https://developer.blender.org/rB01f576e87b54159bb360cf1ed85518bb75231107

Merge branch 'master' into blender2.8

The Eevee AO node supports the new Normal socket, but ignores Distance,
Samples, Inside and Only Local settings.

===================================================================



===================================================================

diff --cc intern/cycles/blender/addon/version_update.py
index 2db4def9dcb,922ea9d9d7f..d3948f8fbb5
--- a/intern/cycles/blender/addon/version_update.py
+++ b/intern/cycles/blender/addon/version_update.py
@@@ -430,22 -462,14 +464,26 @@@ def do_versions(self)
          # Switch to squared roughness convention
          square_roughness_nodes_insert()
  
 -    if bpy.data.version <= (2, 79, 4):
 +    if bpy.data.version <= (2, 80, 15):
 +        # Copy cycles hair settings to internal settings
 +        for part in bpy.data.particles:
 +            cpart = part.get("cycles", None)
 +            if cpart:
 +                part.shape = cpart.get("shape", 0.0)
 +                part.root_radius = cpart.get("root_width", 1.0)
 +                part.tip_radius = cpart.get("tip_width", 0.0)
 +                part.radius_scale = cpart.get("radius_scale", 0.01)
 +                part.use_close_tip = cpart.get("use_closetip", True)
 +
-     for world in bpy.data.worlds:
-         cworld = world.cycles
-         # World MIS
-         if not cworld.is_property_set("sampling_method"):
-             if cworld.get("sample_as_light", False):
-                 cworld.sampling_method = 'MANUAL'
-             else:
-                 cworld.sampling_method = 'NONE'
++    if bpy.data.version <= (2, 79, 4) or \
++       (bpy.data.version >= (2, 80, 0) and bpy.data.version <= (2, 80, 18)):
+         for world in bpy.data.worlds:
+             cworld = world.cycles
+             # World MIS
+             if not cworld.is_property_set("sampling_method"):
+                 if cworld.get("sample_as_light", False):
+                     cworld.sampling_method = 'MANUAL'
+                 else:
+                     cworld.sampling_method = 'NONE'
+ 
+         ambient_occlusion_nodes_relink()
diff --cc release/scripts/startup/nodeitems_builtins.py
index d60710db4aa,3826b2b10de..713dbdafcc5
--- a/release/scripts/startup/nodeitems_builtins.py
+++ b/release/scripts/startup/nodeitems_builtins.py
@@@ -192,31 -224,29 +193,30 @@@ shader_node_categories = 
          NodeItem("ShaderNodeOutputLineStyle", poll=line_style_shader_nodes_poll),
          NodeItem("NodeGroupOutput", poll=group_input_output_item_poll),
          ]),
 -    ShaderNewNodeCategory("SH_NEW_SHADER", "Shader", items=[
 -        NodeItem("ShaderNodeMixShader"),
 -        NodeItem("ShaderNodeAddShader"),
 -        NodeItem("ShaderNodeBsdfDiffuse", poll=object_shader_nodes_poll),
 -        NodeItem("ShaderNodeBsdfPrincipled", poll=object_shader_nodes_poll),
 -        NodeItem("ShaderNodeBsdfGlossy", poll=object_shader_nodes_poll),
 -        NodeItem("ShaderNodeBsdfTransparent", poll=object_shader_nodes_poll),
 -        NodeItem("ShaderNodeBsdfRefraction", poll=object_shader_nodes_poll),
 -        NodeItem("ShaderNodeBsdfGlass", poll=object_shader_nodes_poll),
 -        NodeItem("ShaderNodeBsdfTranslucent", poll=object_shader_nodes_poll),
 -        NodeItem("ShaderNodeBsdfAnisotropic", poll=object_shader_nodes_poll),
 -        NodeItem("ShaderNodeBsdfVelvet", poll=object_shader_nodes_poll),
 -        NodeItem("ShaderNodeBsdfToon", poll=object_shader_nodes_poll),
 -        NodeItem("ShaderNodeSubsurfaceScattering", poll=object_shader_nodes_poll),
 -        NodeItem("ShaderNodeEmission", poll=object_shader_nodes_poll),
 -        NodeItem("ShaderNodeBsdfHair", poll=object_shader_nodes_poll),
 +    ShaderNodeCategory("SH_NEW_SHADER", "Shader", items=[
 +        NodeItem("ShaderNodeMixShader", poll=eevee_cycles_shader_nodes_poll),
 +        NodeItem("ShaderNodeAddShader", poll=eevee_cycles_shader_nodes_poll),
 +        NodeItem("ShaderNodeBsdfDiffuse", poll=object_eevee_cycles_shader_nodes_poll),
 +        NodeItem("ShaderNodeBsdfPrincipled", poll=object_eevee_cycles_shader_nodes_poll),
 +        NodeItem("ShaderNodeBsdfGlossy", poll=object_eevee_cycles_shader_nodes_poll),
 +        NodeItem("ShaderNodeBsdfTransparent", poll=object_eevee_cycles_shader_nodes_poll),
 +        NodeItem("ShaderNodeBsdfRefraction", poll=object_eevee_cycles_shader_nodes_poll),
 +        NodeItem("ShaderNodeBsdfGlass", poll=object_eevee_cycles_shader_nodes_poll),
 +        NodeItem("ShaderNodeBsdfTranslucent", poll=object_cycles_shader_nodes_poll),
 +        NodeItem("ShaderNodeBsdfAnisotropic", poll=object_cycles_shader_nodes_poll),
 +        NodeItem("ShaderNodeBsdfVelvet", poll=object_cycles_shader_nodes_poll),
 +        NodeItem("ShaderNodeBsdfToon", poll=object_cycles_shader_nodes_poll),
 +        NodeItem("ShaderNodeSubsurfaceScattering", poll=object_eevee_cycles_shader_nodes_poll),
 +        NodeItem("ShaderNodeEmission", poll=object_eevee_cycles_shader_nodes_poll),
 +        NodeItem("ShaderNodeBsdfHair", poll=object_cycles_shader_nodes_poll),
          NodeItem("ShaderNodeBackground", poll=world_shader_nodes_poll),
-         NodeItem("ShaderNodeAmbientOcclusion", poll=object_eevee_cycles_shader_nodes_poll),
 -        NodeItem("ShaderNodeHoldout", poll=object_shader_nodes_poll),
 -        NodeItem("ShaderNodeVolumeAbsorption"),
 -        NodeItem("ShaderNodeVolumeScatter"),
 +        NodeItem("ShaderNodeHoldout", poll=object_cycles_shader_nodes_poll),
 +        NodeItem("ShaderNodeVolumeAbsorption", poll=eevee_cycles_shader_nodes_poll),
 +        NodeItem("ShaderNodeVolumeScatter", poll=eevee_cycles_shader_nodes_poll),
          NodeItem("ShaderNodeVolumePrincipled"),
 +        NodeItem("ShaderNodeEeveeSpecular", poll=object_eevee_shader_nodes_poll),
          ]),
 -    ShaderNewNodeCategory("SH_NEW_TEXTURE", "Texture", items=[
 +    ShaderNodeCategory("SH_NEW_TEXTURE", "Texture", items=[
          NodeItem("ShaderNodeTexImage"),
          NodeItem("ShaderNodeTexEnvironment"),
          NodeItem("ShaderNodeTexSky"),
diff --cc source/blender/blenkernel/BKE_blender_version.h
index c3dbb362206,a3da6d5016e..0dddb8e7b0b
--- a/source/blender/blenkernel/BKE_blender_version.h
+++ b/source/blender/blenkernel/BKE_blender_version.h
@@@ -27,11 -27,11 +27,11 @@@
  /* these lines are grep'd, watch out for our not-so-awesome regex
   * and keep comment above the defines.
   * Use STRINGIFY() rather than defining with quotes */
 -#define BLENDER_VERSION         279
 -#define BLENDER_SUBVERSION      5
 -/* Several breakages with 270, e.g. constraint deg vs rad */
 -#define BLENDER_MINVERSION      270
 -#define BLENDER_MINSUBVERSION   6
 +#define BLENDER_VERSION         280
- #define BLENDER_SUBVERSION      17
++#define BLENDER_SUBVERSION      18
 +/* Several breakages with 280, e.g. collections vs layers */
 +#define BLENDER_MINVERSION      280
 +#define BLENDER_MINSUBVERSION   0
  
  /* used by packaging tools */
  /* can be left blank, otherwise a,b,c... etc with no quotes */
diff --cc source/blender/blenloader/intern/versioning_280.c
index e7d4e4f33ae,00000000000..0324161f6e1
mode 100644,000000..100644
--- a/source/blender/blenloader/intern/versioning_280.c
+++ b/source/blender/blenloader/intern/versioning_280.c
@@@ -1,1602 -1,0 +1,1603 @@@
 +/*
 + * ***** BEGIN GPL LICENSE BLOCK *****
 + *
 + * This program is free software; you can redistribute it and/or
 + * modify it under the terms of the GNU General Public License
 + * as published by the Free Software Foundation; either version 2
 + * of the License, or (at your option) any later version.
 + *
 + * This program is distributed in the hope that it will be useful,
 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 + * GNU General Public License for more details.
 + *
 + * You should have received a copy of the GNU General Public License
 + * along with this program; if not, write to the Free Software Foundation,
 + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
 + *
 + * Contributor(s): Dalai Felinto
 + *
 + * ***** END GPL LICENSE BLOCK *****
 + *
 + */
 +
 +/** \file blender/blenloader/intern/versioning_280.c
 + *  \ingroup blenloader
 + */
 +
 +/* allow readfile to use deprecated functionality */
 +#define DNA_DEPRECATED_ALLOW
 +
 +#include <string.h>
 +#include <float.h>
 +
 +#include "BLI_listbase.h"
 +#include "BLI_math.h"
 +#include "BLI_mempool.h"
 +#include "BLI_string.h"
 +#include "BLI_string_utf8.h"
 +#include "BLI_utildefines.h"
 +
 +#include "DNA_object_types.h"
 +#include "DNA_camera_types.h"
 +#include "DNA_constraint_types.h"
 +#include "DNA_gpu_types.h"
 +#include "DNA_group_types.h"
 +#include "DNA_lamp_types.h"
 +#include "DNA_layer_types.h"
 +#include "DNA_lightprobe_types.h"
 +#include "DNA_material_types.h"
 +#include "DNA_mesh_types.h"
 +#include "DNA_particle_types.h"
 +#include "DNA_scene_types.h"
 +#include "DNA_screen_types.h"
 +#include "DNA_view3d_types.h"
 +#include "DNA_genfile.h"
 +#include "DNA_workspace_types.h"
 +
 +#include "BKE_collection.h"
 +#include "BKE_constraint.h"
 +#include "BKE_customdata.h"
 +#include "BKE_freestyle.h"
 +#include "BKE_idprop.h"
 +#include "BKE_image.h"
 +#include "BKE_layer.h"
 +#include "BKE_main.h"
 +#include "BKE_mesh.h"
 +#include "BKE_node.h"
 +#include "BKE_report.h"
 +#include "BKE_scene.h"
 +#include "BKE_screen.h"
 +#include "BKE_studiolight.h"
 +#include "BKE_workspace.h"
 +
 +#include "BLO_readfile.h"
 +#include "readfile.h"
 +
 +#include "MEM_guardedalloc.h"
 +
 +static bScreen *screen_parent_find(const bScreen *screen)
 +{
 +	/* can avoid lookup if screen state isn't maximized/full (parent and child store the same state) */
 +	if (ELEM(screen->state, SCREENMAXIMIZED, SCREENFULL)) {
 +		for (const ScrArea *sa = screen->areabase.first; sa; sa = sa->next) {
 +			if (sa->full && sa->full != screen) {
 +				BLI_assert(sa->full->state == screen->state);
 +				return sa->full;
 +			}
 +		}
 +	}
 +
 +	return NULL;
 +}
 +
 +static void do_version_workspaces_create_from_screens(Main *bmain)
 +{
 +	for (bScreen *screen = bmain->screen.first; screen; screen = screen->id.next) {
 +		const bScreen *screen_parent = screen_parent_find(screen);
 +		Scene *scene = screen->scene;
 +		WorkSpace *workspace;
 +		ViewLayer *layer = BLI_findlink(&scene->view_layers, scene->r.actlay);
 +		if (screen->temp) {
 +			continue;
 +		}
 +		if (!layer) {
 +			layer = BKE_view_layer_default_view(scene);
 +		}
 +
 +		if (screen_parent) {
 +			/* fulls

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list