public IEnumerator 優先順の設定が反映される() { BaseCamera.GetUniversalAdditionalCameraData().renderType = CameraRenderType.Base; OverlayCamera1.GetUniversalAdditionalCameraData().renderType = CameraRenderType.Overlay; OverlayCamera2.GetUniversalAdditionalCameraData().renderType = CameraRenderType.Overlay; OverlayCamera3.GetUniversalAdditionalCameraData().renderType = CameraRenderType.Overlay; var component1 = OverlayCamera1.gameObject.AddComponent <AddOverlayCameraToCameraStack>(); var component2 = OverlayCamera2.gameObject.AddComponent <AddOverlayCameraToCameraStack>(); var component3 = OverlayCamera3.gameObject.AddComponent <AddOverlayCameraToCameraStack>(); component1.GetType().GetField("priority", BindingFlags.Instance | BindingFlags.NonPublic)?.SetValue(component1, 10.0f); component2.GetType().GetField("priority", BindingFlags.Instance | BindingFlags.NonPublic)?.SetValue(component2, -10.0f); component3.GetType().GetField("priority", BindingFlags.Instance | BindingFlags.NonPublic)?.SetValue(component3, 0.0f); yield return(null); var cameraStack = BaseCamera.GetUniversalAdditionalCameraData().cameraStack; Assert.That(cameraStack[0], Is.EqualTo(OverlayCamera2)); Assert.That(cameraStack[1], Is.EqualTo(OverlayCamera3)); Assert.That(cameraStack[2], Is.EqualTo(OverlayCamera1)); yield return(SceneManager.UnloadSceneAsync(OverlayScene3)); yield return(SceneManager.UnloadSceneAsync(OverlayScene2)); yield return(SceneManager.UnloadSceneAsync(OverlayScene1)); yield return(SceneManager.UnloadSceneAsync(BaseScene)); }
public IEnumerator OverlayCameraが正しくCameraStackに追加される() { BaseCamera.GetUniversalAdditionalCameraData().renderType = CameraRenderType.Base; OverlayCamera.GetUniversalAdditionalCameraData().renderType = CameraRenderType.Overlay; OverlayCamera.gameObject.AddComponent <AddOverlayCameraToCameraStack>(); yield return(null); Assert.That( BaseCamera .GetUniversalAdditionalCameraData() .cameraStack .Contains(OverlayCamera), Is.True ); yield return(SceneManager.UnloadSceneAsync(SingleScene)); }
public IEnumerator OverwriteRenderTypeを真にするとCameraStackに追加される() { BaseCamera.GetUniversalAdditionalCameraData().renderType = CameraRenderType.Base; OverlayCamera.GetUniversalAdditionalCameraData().renderType = CameraRenderType.Base; var addOverlayCameraToCameraStack = OverlayCamera.gameObject.AddComponent <AddOverlayCameraToCameraStack>(); addOverlayCameraToCameraStack.GetType().GetField("overwriteRenderType", BindingFlags.Instance | BindingFlags.NonPublic)?.SetValue(addOverlayCameraToCameraStack, true); yield return(null); Assert.That( BaseCamera .GetUniversalAdditionalCameraData() .cameraStack .Contains(OverlayCamera), Is.True ); yield return(SceneManager.UnloadSceneAsync(SingleScene)); }