private void reloadLight() { var LightingObjects = GameObject.FindGameObjectsWithTag("Lighting"); // Debug.Log("Mask Update LightingObjects.Count=" + LightingObjects.Length); List <Vector4> pointLights = new List <Vector4>(); int pointCount = 0; List <Vector4> lineLights = new List <Vector4>(); int lineCount = 0; // Debug.Log("Screen.width=" + Screen.width + ",Screen.height=" + Screen.height); var asW = Screen.width / 1080f; var asH = Screen.height / 1920f; foreach (var obj in LightingObjects) { Shining sh = obj.gameObject.GetComponent <Shining>(); if (sh.LightShape == 1 && sh.P1 > 0) { // Debug.Log("Lighting if Object Name=" + obj.name); pointLights.Add(sh.GetPointLightInfo()); pointCount++; } else if (sh.LightShape == 2 && sh.P1 > 0) { // Debug.Log("Lighting else if Object Name=" + obj.name); foreach (var e in sh.GetLineLightList()) { // Debug.Log("Lighting Object Name=" + obj.name + ",e=" + e); lineLights.Add(e); lineCount++; } } else { // Debug.Log("Lighting else Object Name=" + obj.name); } } for (int i = pointCount; i < 30; i++) { pointLights.Add(new Vector4()); } for (int i = lineCount; i < 90; i++) { lineLights.Add(new Vector4()); } spriteRenderer.material.SetFloat("_Alpha", spriteRenderer.color.a); spriteRenderer.material.SetVectorArray("_LightingArr", pointLights); spriteRenderer.material.SetFloat("_LightingArrLen", pointCount); spriteRenderer.material.SetFloat("_LineLightingArrLen", lineCount); if (lineLights.Count > 0) { // Debug.Log("Lighting lineLights.Count=" + lineLights.Count + ",lineCount=" + lineCount); spriteRenderer.material.SetVectorArray("_LineLightingArr", lineLights); } }