void raycastCamera() { Vector3 ballPos = Vector3.zero; BallScript ballScript = (BallScript)GameObject.FindObjectOfType(typeof(BallScript)); if (ballScript) { ballPos = ballScript.transform.position; } Vector3 dir = GetComponent <Camera>().transform.position - ballPos; RaycastHit[] hits = Physics.RaycastAll(ballPos, dir.normalized, 2000.0f); m_renderers2.Clear(); for (var i = 0; i < hits.Length; i++) { RaycastHit hit = hits[i]; Renderer renderer = hit.collider.GetComponent <Renderer>(); string nom = renderer.gameObject.name; if (m_renderers.ContainsKey(nom) == false) { m_renderers[nom] = new RendererEx(); m_renderers[nom].renderer = renderer; m_renderers[nom].shader = renderer.material.shader; m_renderers2[nom] = m_renderers[nom]; renderer.material.shader = Shader.Find("Transparent/Diffuse"); Color col = renderer.material.color; col.a = alphaColor; renderer.material.color = col; } } m_cleared = false; }
void raycastCamera() { Vector3 ballPos = Vector3.zero; BallScript ballScript = (BallScript)GameObject.FindObjectOfType( typeof(BallScript)); if(ballScript) { ballPos = ballScript.transform.position; } Vector3 dir = GetComponent<Camera>().transform.position - ballPos; RaycastHit[] hits = Physics.RaycastAll (ballPos, dir.normalized, 2000.0f); m_renderers2.Clear(); for (var i = 0;i < hits.Length; i++) { RaycastHit hit = hits[i]; Renderer renderer = hit.collider.GetComponent<Renderer>(); string nom = renderer.gameObject.name; if(m_renderers.ContainsKey(nom)==false){ m_renderers[nom] = new RendererEx(); m_renderers[nom].renderer = renderer; m_renderers[nom].shader = renderer.material.shader; m_renderers2[nom] = m_renderers[nom]; renderer.material.shader = Shader.Find("Transparent/Diffuse"); Color col = renderer.material.color; col.a = alphaColor; renderer.material.color = col; } } m_cleared=false; }