mirror of
https://github.com/EsotericSoftware/spine-runtimes.git
synced 2026-02-13 18:48:44 +08:00
Merge branch '3.8' into 4.0-beta
This commit is contained in:
commit
3b5f0b1c35
@ -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;
|
||||
|
||||
@ -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;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -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,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",
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user