public Screen() { _screenGameObject = new GameObject("CinemaScreen"); _screenSurface = _screenGameObject.AddComponent <CurvedSurface>(); _screenGameObject.layer = LayerMask.NameToLayer("Environment"); _screenRenderer = _screenGameObject.GetComponent <Renderer>(); _screenBodyGameObject = CreateBody(); _screenBloomPrePass = _screenGameObject.AddComponent <CustomBloomPrePass>(); Hide(); }
private GameObject CreateBody() { GameObject body = new GameObject("CinemaScreenBody"); _screenBodySurface = body.AddComponent <CurvedSurface>(); body.transform.parent = _screenGameObject.transform; body.transform.localPosition = new Vector3(0, 0, 0.1f); //A fixed offset is necessary for the center segments of the curved screen body.transform.localScale = new Vector3(1.0015f, 1.0015f, 1.0015f); Renderer bodyRenderer = body.GetComponent <Renderer>(); bodyRenderer.material = new Material(Resources.FindObjectsOfTypeAll <Material>() .Last(x => x.name == "DarkEnvironmentSimple")); body.layer = LayerMask.NameToLayer("Environment"); return(body); }