Forráskód Böngészése

Merge branch '3.8' into 4.0-beta

Harald Csaszar 4 éve
szülő
commit
3b5f0b1c35

+ 9 - 2
spine-unity/Assets/Spine/Runtime/spine-unity/Components/SkeletonGraphic.cs

@@ -341,7 +341,15 @@ namespace Spine.Unity {
 
 		#region API
 		protected Skeleton skeleton;
-		public Skeleton Skeleton { get { return skeleton; } set { skeleton = value; } }
+		public Skeleton Skeleton {
+			get {
+				Initialize(false);
+				return skeleton;
+			}
+			set {
+				skeleton = value;
+			}
+		}
 		public SkeletonData SkeletonData { get { return skeleton == null ? null : skeleton.data; } }
 		public bool IsValid { get { return skeleton != null; } }
 
@@ -474,7 +482,6 @@ namespace Spine.Unity {
 		public void Initialize (bool overwrite) {
 			if (this.IsValid && !overwrite) return;
 
-			// Make sure none of the stuff is null
 			if (this.skeletonDataAsset == null) return;
 			var skeletonData = this.skeletonDataAsset.GetSkeletonData(false);
 			if (skeletonData == null) return;

+ 4 - 2
spine-unity/Assets/Spine/Runtime/spine-unity/Components/SkeletonRenderer.cs

@@ -186,14 +186,16 @@ namespace Spine.Unity {
 				generateMeshOverride += value;
 				if (disableRenderingOnOverride && generateMeshOverride != null) {
 					Initialize(false);
-					meshRenderer.enabled = false;
+					if (meshRenderer)
+						meshRenderer.enabled = false;
 				}
 			}
 			remove {
 				generateMeshOverride -= value;
 				if (disableRenderingOnOverride && generateMeshOverride == null) {
 					Initialize(false);
-					meshRenderer.enabled = true;
+					if (meshRenderer)
+						meshRenderer.enabled = true;
 				}
 			}
 		}

+ 14 - 7
spine-unity/Assets/Spine/Runtime/spine-unity/Utility/MaterialChecks.cs

@@ -251,8 +251,11 @@ namespace Spine.Unity {
 		}
 
 		static bool IsPMAMaterial (Material material) {
-			return (material.HasProperty(STRAIGHT_ALPHA_PARAM_ID) && material.GetInt(STRAIGHT_ALPHA_PARAM_ID) == 0) ||
-					material.IsKeywordEnabled(ALPHAPREMULTIPLY_ON_KEYWORD);
+			bool usesAlphaPremultiplyKeyword = IsSpriteShader(material);
+			if (usesAlphaPremultiplyKeyword)
+				return material.IsKeywordEnabled(ALPHAPREMULTIPLY_ON_KEYWORD);
+			else
+				return material.HasProperty(STRAIGHT_ALPHA_PARAM_ID) && material.GetInt(STRAIGHT_ALPHA_PARAM_ID) == 0;
 		}
 
 		static bool IsURP3DMaterial (Material material) {
@@ -280,14 +283,18 @@ namespace Spine.Unity {
 					break;
 				}
 			}
-			bool isShaderWithMeshNormals =
-				material.shader.name.Contains("Spine/Sprite/Pixel Lit") ||
-				material.shader.name.Contains("Spine/Sprite/Vertex Lit") ||
-				material.shader.name.Contains("2D/Spine/Sprite") || // covers both URP and LWRP
-				material.shader.name.Contains("Pipeline/Spine/Sprite"); // covers both URP and LWRP
+			bool isShaderWithMeshNormals = IsSpriteShader(material);
 			return isShaderWithMeshNormals && !anyFixedNormalSet;
 		}
 
+		static bool IsSpriteShader (Material material) {
+			string shaderName = material.shader.name;
+			return shaderName.Contains("Spine/Sprite/Pixel Lit") ||
+				shaderName.Contains("Spine/Sprite/Vertex Lit") ||
+				shaderName.Contains("2D/Spine/Sprite") || // covers both URP and LWRP
+				shaderName.Contains("Pipeline/Spine/Sprite"); // covers both URP and LWRP
+		}
+
 		static bool RequiresTintBlack (Material material) {
 			bool isTintBlackShader =
 				material.shader.name.Contains("Spine") &&

+ 2 - 2
spine-unity/Modules/com.esotericsoftware.spine.timeline/package.json

@@ -2,7 +2,7 @@
 	"name": "com.esotericsoftware.spine.timeline", 
 	"displayName": "Spine Timeline Extensions",
 	"description": "This plugin provides integration of spine-unity for the Unity Timeline.\n\nPrerequisites:\nIt requires a working installation of the spine-unity runtime, version 4.0.\n(See http://esotericsoftware.com/git/spine-runtimes/spine-unity)",
-	"version": "4.0.2",
+	"version": "4.0.3",
 	"unity": "2018.3",
 	"author": {
 		"name": "Esoteric Software",
@@ -10,7 +10,7 @@
 		"url": "http://esotericsoftware.com/"
 	},
 	"dependencies": {
-		"com.unity.timeline": "1.0.0"
+		"com.unity.timeline": "1.2.10"
 	},
 	"keywords": [
 		"spine",