@@ -53,7 +53,7 @@ private void Awake()
5353 {
5454 teleportTransform = cameraTransform . parent ;
5555 Debug . Assert ( teleportTransform != null ,
56- $ "{ nameof ( InstantTeleportProvider ) } requires that the camera be parented under another object " +
56+ $ "{ nameof ( FadingTeleportProvider ) } requires that the camera be parented under another object " +
5757 $ "or a parent transform was assigned in editor.") ;
5858 }
5959
@@ -70,9 +70,7 @@ private void Update()
7070 fadeTime += Time . deltaTime ;
7171 var t = fadeTime / fadeDuration ;
7272 var frameColor = Color . Lerp ( fadeInColor , fadeOutColor , t ) ;
73- var material = fadeSphereRenderer . material ;
74- material . color = frameColor ;
75- fadeSphereRenderer . material = material ;
73+ SetColor ( frameColor ) ;
7674
7775 if ( t >= 1f )
7876 {
@@ -85,9 +83,7 @@ private void Update()
8583 fadeTime += Time . deltaTime ;
8684 var t = fadeTime / fadeDuration ;
8785 var frameColor = Color . Lerp ( fadeOutColor , fadeInColor , t ) ;
88- var material = fadeSphereRenderer . material ;
89- material . color = frameColor ;
90- fadeSphereRenderer . material = material ;
86+ SetColor ( frameColor ) ;
9187
9288 if ( t >= 1f )
9389 {
@@ -194,41 +190,48 @@ private void InitiailzeFadeSphere()
194190 // Configure the mesh renderer to not impact anything else
195191 // in the scene.
196192 fadeSphereRenderer = fadeSphere . GetComponent < MeshRenderer > ( ) ;
197- fadeSphereRenderer . shadowCastingMode = UnityEngine . Rendering . ShadowCastingMode . Off ;
193+ fadeSphereRenderer . shadowCastingMode = ShadowCastingMode . Off ;
198194 fadeSphereRenderer . receiveShadows = false ;
199195 fadeSphereRenderer . allowOcclusionWhenDynamic = false ;
200- fadeSphereRenderer . lightProbeUsage = UnityEngine . Rendering . LightProbeUsage . Off ;
201- fadeSphereRenderer . reflectionProbeUsage = UnityEngine . Rendering . ReflectionProbeUsage . Off ;
196+ fadeSphereRenderer . lightProbeUsage = LightProbeUsage . Off ;
197+ fadeSphereRenderer . reflectionProbeUsage = ReflectionProbeUsage . Off ;
202198
203- // Finally paint the sphere black. We use the default
204- // material created on the sphere to clone its properties
205- // and paint it black with transparency enabled.
206- var blackMaterial = new Material ( fadeSphereRenderer . material )
199+ // Finally paint the sphere with a transparency enabled material.
200+ // We use the default material created on the sphere to clone its properties.
201+ var fadeMaterial = new Material ( fadeSphereRenderer . material )
207202 {
208- color = fadeOutColor
203+ color = fadeInColor
209204 } ;
210205
211206 if ( GraphicsSettings . renderPipelineAsset . IsNull ( ) )
212207 {
213- blackMaterial . SetInt ( "_SrcBlend" , ( int ) BlendMode . One ) ;
214- blackMaterial . SetInt ( "_DstBlend" , ( int ) BlendMode . OneMinusSrcAlpha ) ;
215- blackMaterial . SetInt ( "_ZWrite" , 0 ) ;
216- blackMaterial . DisableKeyword ( "_ALPHATEST_ON" ) ;
217- blackMaterial . DisableKeyword ( "_ALPHABLEND_ON" ) ;
218- blackMaterial . EnableKeyword ( "_ALPHAPREMULTIPLY_ON" ) ;
219- blackMaterial . renderQueue = 3000 ;
208+ // Unity standard shader can be assumed since we created a primitive.
209+ fadeMaterial . SetInt ( "_SrcBlend" , ( int ) BlendMode . One ) ;
210+ fadeMaterial . SetInt ( "_DstBlend" , ( int ) BlendMode . OneMinusSrcAlpha ) ;
211+ fadeMaterial . SetInt ( "_ZWrite" , 0 ) ;
212+ fadeMaterial . DisableKeyword ( "_ALPHATEST_ON" ) ;
213+ fadeMaterial . DisableKeyword ( "_ALPHABLEND_ON" ) ;
214+ fadeMaterial . EnableKeyword ( "_ALPHAPREMULTIPLY_ON" ) ;
215+ fadeMaterial . renderQueue = 3000 ;
220216 }
221217 else
222218 {
223219 Debug . LogError ( $ "{ nameof ( FadingTeleportProvider ) } does not support render pipelines. The handler won't be able to fade in and out.") ;
224220 }
225221
226- fadeSphereRenderer . material = blackMaterial ;
222+ fadeSphereRenderer . material = fadeMaterial ;
227223 }
228224
229225 // Initially hide the sphere, we only want it to be active when
230226 // fading.
231227 fadeSphere . SetActive ( false ) ;
232228 }
229+
230+ private void SetColor ( Color color )
231+ {
232+ var material = fadeSphereRenderer . material ;
233+ material . color = color ;
234+ fadeSphereRenderer . material = material ;
235+ }
233236 }
234237}
0 commit comments