From 11a6717db2eb7140a625153dc23d9e6d965ec4c5 Mon Sep 17 00:00:00 2001 From: pharan Date: Sun, 31 Jul 2016 09:33:13 +0800 Subject: [PATCH] [unity] Handle changed API in Unity 5.4 --- .../SkeletonRenderSeparator.cs | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/spine-unity/Assets/spine-unity/Modules/SkeletonRenderSeparator/SkeletonRenderSeparator.cs b/spine-unity/Assets/spine-unity/Modules/SkeletonRenderSeparator/SkeletonRenderSeparator.cs index 258272735..5bf76d18d 100644 --- a/spine-unity/Assets/spine-unity/Modules/SkeletonRenderSeparator/SkeletonRenderSeparator.cs +++ b/spine-unity/Assets/spine-unity/Modules/SkeletonRenderSeparator/SkeletonRenderSeparator.cs @@ -75,8 +75,23 @@ namespace Spine.Unity.Modules { skeletonRenderer.GenerateMeshOverride -= HandleRender; skeletonRenderer.GenerateMeshOverride += HandleRender; + #if UNITY_5_4_OR_NEWER if (copyMeshRendererFlags) { - bool useLightProbes = mainMeshRenderer.useLightProbes; + var lightProbeUsage = mainMeshRenderer.lightProbeUsage; + bool receiveShadows = mainMeshRenderer.receiveShadows; + + for (int i = 0; i < partsRenderers.Count; i++) { + var currentRenderer = partsRenderers[i]; + if (currentRenderer == null) continue; // skip null items. + + var mr = currentRenderer.MeshRenderer; + mr.lightProbeUsage = lightProbeUsage; + mr.receiveShadows = receiveShadows; + } + } + #else + if (copyMeshRendererFlags) { + var useLightProbes = mainMeshRenderer.useLightProbes; bool receiveShadows = mainMeshRenderer.receiveShadows; for (int i = 0; i < partsRenderers.Count; i++) { @@ -88,6 +103,7 @@ namespace Spine.Unity.Modules { mr.receiveShadows = receiveShadows; } } + #endif }