浏览代码

Merge branch '4.1' into 4.2-beta

Harald Csaszar 2 年之前
父节点
当前提交
03b6a397d9

+ 12 - 3
spine-unity/Assets/Spine/Runtime/spine-unity/Components/SkeletonRenderSeparator/SkeletonRenderSeparator.cs

@@ -30,6 +30,11 @@
 #if UNITY_2018_3 || UNITY_2019 || UNITY_2018_3_OR_NEWER
 #if UNITY_2018_3 || UNITY_2019 || UNITY_2018_3_OR_NEWER
 #define NEW_PREFAB_SYSTEM
 #define NEW_PREFAB_SYSTEM
 #endif
 #endif
+
+#if UNITY_2018_1_OR_NEWER
+#define HAS_PROPERTY_BLOCK_QUERY
+#endif
+
 #define SPINE_OPTIONAL_RENDEROVERRIDE
 #define SPINE_OPTIONAL_RENDEROVERRIDE
 
 
 using System.Collections.Generic;
 using System.Collections.Generic;
@@ -207,7 +212,12 @@ namespace Spine.Unity {
 			int rendererCount = partsRenderers.Count;
 			int rendererCount = partsRenderers.Count;
 			if (rendererCount <= 0) return;
 			if (rendererCount <= 0) return;
 
 
-			if (copyPropertyBlock)
+#if HAS_PROPERTY_BLOCK_QUERY
+			bool assignPropertyBlock = this.copyPropertyBlock && mainMeshRenderer.HasPropertyBlock();
+#else
+			bool assignPropertyBlock = this.copyPropertyBlock;
+#endif
+			if (assignPropertyBlock)
 				mainMeshRenderer.GetPropertyBlock(copiedBlock);
 				mainMeshRenderer.GetPropertyBlock(copiedBlock);
 
 
 			MeshGenerator.Settings settings = new MeshGenerator.Settings {
 			MeshGenerator.Settings settings = new MeshGenerator.Settings {
@@ -234,9 +244,8 @@ namespace Spine.Unity {
 					MeshGenerator meshGenerator = currentRenderer.MeshGenerator;
 					MeshGenerator meshGenerator = currentRenderer.MeshGenerator;
 					meshGenerator.settings = settings;
 					meshGenerator.settings = settings;
 
 
-					if (copyPropertyBlock)
+					if (assignPropertyBlock)
 						currentRenderer.SetPropertyBlock(copiedBlock);
 						currentRenderer.SetPropertyBlock(copiedBlock);
-
 					// Render
 					// Render
 					currentRenderer.RenderParts(instruction.submeshInstructions, start, si + 1);
 					currentRenderer.RenderParts(instruction.submeshInstructions, start, si + 1);
 
 

+ 1 - 1
spine-unity/Assets/Spine/package.json

@@ -2,7 +2,7 @@
 	"name": "com.esotericsoftware.spine.spine-unity",
 	"name": "com.esotericsoftware.spine.spine-unity",
 	"displayName": "spine-unity Runtime",
 	"displayName": "spine-unity Runtime",
 	"description": "This plugin provides the spine-unity runtime core.",
 	"description": "This plugin provides the spine-unity runtime core.",
-	"version": "4.2.19",
+	"version": "4.2.20",
 	"unity": "2018.3",
 	"unity": "2018.3",
 	"author": {
 	"author": {
 		"name": "Esoteric Software",
 		"name": "Esoteric Software",