void Update() { // Progress fade if (fadeInProgress) { TickFade(); } // HUD is always first window on stack when ready if (dfUnity.IsPathValidated && !hudSetup) { if (enableHUD) { dfHUD = new DaggerfallHUD(uiManager); uiManager.PushWindow(dfHUD); Debug.Log("HUD pushed to stack."); } hudSetup = true; } // Route messages to top window or handle locally if (uiManager.MessageCount > 0) { // Top window has first chance at message if (uiManager.TopWindow != null) { uiManager.TopWindow.ProcessMessages(); } // Then process locally ProcessMessages(); } // Update top window if (uiManager.TopWindow != null) { uiManager.TopWindow.Update(); } // Clear key state every frame lastCharacterTyped = (char)0; lastKeyCode = KeyCode.None; }
void ApplyStartSettings() { // Resolution Screen.SetResolution( DaggerfallUnity.Settings.ResolutionWidth, DaggerfallUnity.Settings.ResolutionHeight, DaggerfallUnity.Settings.Fullscreen); // Camera settings GameObject cameraObject = GameObject.FindGameObjectWithTag("MainCamera"); if (cameraObject) { // Set camera FOV Camera camera = cameraObject.GetComponent <Camera>(); if (camera) { camera.fieldOfView = DaggerfallUnity.Settings.FieldOfView; } // Set mouse look PlayerMouseLook mouseLook = cameraObject.GetComponent <PlayerMouseLook>(); if (mouseLook) { mouseLook.invertMouseY = DaggerfallUnity.Settings.InvertMouseVertical; } // Set mouse look smoothing if (mouseLook) { mouseLook.enableSmoothing = DaggerfallUnity.Settings.MouseLookSmoothing; } // Set mouse look sensitivity if (mouseLook) { mouseLook.sensitivityScale = DaggerfallUnity.Settings.MouseLookSensitivity; } // Set rendering path if (DaggerfallUnity.Settings.UseLegacyDeferred) { camera.renderingPath = RenderingPath.DeferredLighting; } } // Shadow Resoltion Mode switch (DaggerfallUnity.Settings.ShadowResolutionMode) { case 0: QualitySettings.shadowResolution = ShadowResolution.Low; break; case 1: default: QualitySettings.shadowResolution = ShadowResolution.Medium; break; case 2: QualitySettings.shadowResolution = ShadowResolution.High; break; case 3: QualitySettings.shadowResolution = ShadowResolution.VeryHigh; break; } // VSync settings if (DaggerfallUnity.Settings.VSync) { QualitySettings.vSyncCount = 1; } else { QualitySettings.vSyncCount = 0; } // Filter settings DaggerfallUnity.Instance.MaterialReader.MainFilterMode = (FilterMode)DaggerfallUnity.Settings.MainFilterMode; DaggerfallUnity.Instance.MaterialReader.CompressModdedTextures = DaggerfallUnity.Settings.CompressModdedTextures; // HUD settings DaggerfallHUD hud = DaggerfallUI.Instance.DaggerfallHUD; if (hud != null) //null at startup { hud.ShowCrosshair = DaggerfallUnity.Settings.Crosshair; } // Weapon swing settings WeaponManager weaponManager = GameManager.Instance.WeaponManager; weaponManager.AttackThreshold = DaggerfallUnity.Settings.WeaponAttackThreshold; TransportManager transportManager = GameManager.Instance.TransportManager; // Weapon hand settings // Only supporting left-hand rendering for now // More handedness options may be added later if (DaggerfallUnity.Settings.Handedness == 1) { weaponManager.ScreenWeapon.FlipHorizontal = true; } // GodMode setting PlayerEntity playerEntity = FindPlayerEntity(); playerEntity.GodMode = GodMode; // Enable/disable videos DaggerfallUI.Instance.enableVideos = EnableVideos; // Streaming world terrain distance GameManager.Instance.StreamingWorld.TerrainDistance = DaggerfallUnity.Settings.TerrainDistance; }
public void ApplyStartSettings() { // Resolution if (DaggerfallUnity.Settings.ExclusiveFullscreen && DaggerfallUnity.Settings.Fullscreen) { Screen.SetResolution( DaggerfallUnity.Settings.ResolutionWidth, DaggerfallUnity.Settings.ResolutionHeight, FullScreenMode.ExclusiveFullScreen); } else { Screen.SetResolution( DaggerfallUnity.Settings.ResolutionWidth, DaggerfallUnity.Settings.ResolutionHeight, DaggerfallUnity.Settings.Fullscreen); } // Camera settings GameObject cameraObject = GameObject.FindGameObjectWithTag("MainCamera"); if (cameraObject) { // Set camera FOV Camera camera = cameraObject.GetComponent <Camera>(); if (camera) { camera.fieldOfView = DaggerfallUnity.Settings.FieldOfView; } // Set mouse look PlayerMouseLook mouseLook = cameraObject.GetComponent <PlayerMouseLook>(); if (mouseLook) { mouseLook.invertMouseY = DaggerfallUnity.Settings.InvertMouseVertical; } // Set mouse look smoothing if (mouseLook) { mouseLook.enableSmoothing = DaggerfallUnity.Settings.MouseLookSmoothing; } // Set mouse look sensitivity if (mouseLook) { mouseLook.sensitivityScale = DaggerfallUnity.Settings.MouseLookSensitivity; } } // Set shadow resolution GameManager.UpdateShadowResolution(); // VSync settings if (DaggerfallUnity.Settings.VSync) { QualitySettings.vSyncCount = 1; } else { QualitySettings.vSyncCount = 0; } // Target frame rate settings // Does nothing if VSync enabled // Default is 0 but anything below 30 is ignored and treated as disabled if (DaggerfallUnity.Settings.TargetFrameRate >= 30 && !DaggerfallUnity.Settings.VSync) { Application.targetFrameRate = DaggerfallUnity.Settings.TargetFrameRate; } // Filter settings DaggerfallUnity.Instance.MaterialReader.MainFilterMode = (FilterMode)DaggerfallUnity.Settings.MainFilterMode; DaggerfallUnity.Instance.MaterialReader.CompressModdedTextures = DaggerfallUnity.Settings.CompressModdedTextures; // HUD settings DaggerfallHUD hud = DaggerfallUI.Instance.DaggerfallHUD; if (hud != null) //null at startup { hud.ShowCrosshair = DaggerfallUnity.Settings.Crosshair; } // Weapon swing settings WeaponManager weaponManager = GameManager.Instance.WeaponManager; weaponManager.AttackThreshold = DaggerfallUnity.Settings.WeaponAttackThreshold; TransportManager transportManager = GameManager.Instance.TransportManager; // Weapon hand settings // Only supporting left-hand rendering for now // More handedness options may be added later if (DaggerfallUnity.Settings.Handedness == 1) { weaponManager.ScreenWeapon.FlipHorizontal = true; } // GodMode setting PlayerEntity playerEntity = FindPlayerEntity(); playerEntity.GodMode = GodMode; PlayerSpeedChanger speedChanger = FindPlayerSpeedChanger(); speedChanger.ToggleSneak = DaggerfallUnity.Settings.ToggleSneak; // Enable/disable videos DaggerfallUI.Instance.enableVideos = EnableVideos; // Streaming world terrain distance GameManager.Instance.StreamingWorld.TerrainDistance = DaggerfallUnity.Settings.TerrainDistance; }
void ApplyStartSettings() { // Resolution Screen.SetResolution( DaggerfallUnity.Settings.ResolutionWidth, DaggerfallUnity.Settings.ResolutionHeight, DaggerfallUnity.Settings.Fullscreen); // Camera settings GameObject cameraObject = GameObject.FindGameObjectWithTag("MainCamera"); if (cameraObject) { // Set camera FOV Camera camera = cameraObject.GetComponent <Camera>(); if (camera) { camera.fieldOfView = DaggerfallUnity.Settings.FieldOfView; } // Set mouse look PlayerMouseLook mouseLook = cameraObject.GetComponent <PlayerMouseLook>(); if (mouseLook) { mouseLook.invertMouseY = DaggerfallUnity.Settings.InvertMouseVertical; } // Set mouse look smoothing if (mouseLook) { mouseLook.enableSmoothing = DaggerfallUnity.Settings.MouseLookSmoothing; } // Set mouse look sensitivity if (mouseLook) { mouseLook.sensitivityScale = DaggerfallUnity.Settings.MouseLookSensitivity; } // Set rendering path if (DaggerfallUnity.Settings.UseLegacyDeferred) { camera.renderingPath = RenderingPath.DeferredLighting; } } // VSync settings if (DaggerfallUnity.Settings.VSync) { QualitySettings.vSyncCount = 1; } else { QualitySettings.vSyncCount = 0; } // Filter settings DaggerfallUnity.Instance.MaterialReader.MainFilterMode = (FilterMode)DaggerfallUnity.Settings.MainFilterMode; // HUD settings DaggerfallHUD hud = DaggerfallUI.Instance.DaggerfallHUD; if (hud != null) { hud.ShowCrosshair = DaggerfallUnity.Settings.Crosshair; } // Weapon swing settings WeaponManager weaponManager = GameManager.Instance.WeaponManager; weaponManager.HorizontalThreshold = DaggerfallUnity.Settings.WeaponSwingThreshold; weaponManager.VerticalThreshold = DaggerfallUnity.Settings.WeaponSwingThreshold; weaponManager.TriggerCount = DaggerfallUnity.Settings.WeaponSwingTriggerCount; // Weapon hand settings // Only supporting left-hand rendering for now // More handedness options may be added later if (DaggerfallUnity.Settings.Handedness == 1) { weaponManager.RightHandWeapon.LeftHand = true; } // GodMode setting playerHealth.GodMode = GodMod; // Enable/disable videos DaggerfallUI.Instance.enableVideos = EnableVideos; // Streaming world terrain distance int terrainDistance = DaggerfallUnity.Settings.TerrainDistance; if (DaggerfallUnity.Settings.Nystul_IncreasedTerrainDistance) { // Reduce terrain distance by 1 if far terrain enabled terrainDistance = Mathf.Clamp(terrainDistance - 1, 1, 4); } GameManager.Instance.StreamingWorld.TerrainDistance = terrainDistance; }
void ApplyStartSettings() { // Camera settings GameObject cameraObject = GameObject.FindGameObjectWithTag("MainCamera"); if (cameraObject) { // Set camera FOV Camera camera = cameraObject.GetComponent <Camera>(); if (camera) { camera.fieldOfView = DaggerfallUnity.Settings.FieldOfView; } // Set mouse look PlayerMouseLook mouseLook = cameraObject.GetComponent <PlayerMouseLook>(); if (mouseLook) { mouseLook.invertMouseY = DaggerfallUnity.Settings.InvertMouseVertical; } // Set mouse look smoothing if (mouseLook) { mouseLook.enableSmoothing = DaggerfallUnity.Settings.MouseLookSmoothing; } // Set mouse look sensitivity if (mouseLook) { mouseLook.sensitivityScale = DaggerfallUnity.Settings.MouseLookSensitivity; } // Set rendering path if (DaggerfallUnity.Settings.UseLegacyDeferred) { camera.renderingPath = RenderingPath.DeferredLighting; } } // VSync settings if (DaggerfallUnity.Settings.VSync) { QualitySettings.vSyncCount = 1; } else { QualitySettings.vSyncCount = 0; } // Filter settings DaggerfallUnity.Instance.MaterialReader.MainFilterMode = (FilterMode)DaggerfallUnity.Settings.MainFilterMode; // HUD settings DaggerfallHUD hud = DaggerfallUI.Instance.DaggerfallHUD; if (hud != null) { hud.ShowCrosshair = DaggerfallUnity.Settings.Crosshair; } // Weapon hand settings WeaponManager weaponManager = GameManager.Instance.WeaponManager; weaponManager.RightHandWeapon.LeftHand = DaggerfallUnity.Settings.ShowWeaponLeftHand; // Weapon swing settings weaponManager.HorizontalThreshold = DaggerfallUnity.Settings.WeaponSwingThreshold; weaponManager.VerticalThreshold = DaggerfallUnity.Settings.WeaponSwingThreshold; weaponManager.TriggerCount = DaggerfallUnity.Settings.WeaponSwingTriggerCount; // GodMode setting playerHealth.GodMode = GodMod; // Enable/disable videos DaggerfallUI.Instance.enableVideos = EnableVideos; }
public void ApplyStartSettings() { // Resolution if (DaggerfallUnity.Settings.ExclusiveFullscreen && DaggerfallUnity.Settings.Fullscreen) { Screen.SetResolution( DaggerfallUnity.Settings.ResolutionWidth, DaggerfallUnity.Settings.ResolutionHeight, FullScreenMode.ExclusiveFullScreen); } else { Screen.SetResolution( DaggerfallUnity.Settings.ResolutionWidth, DaggerfallUnity.Settings.ResolutionHeight, DaggerfallUnity.Settings.Fullscreen); } // Camera settings GameObject cameraObject = GameObject.FindGameObjectWithTag("MainCamera"); if (cameraObject) { // Set camera FOV Camera camera = cameraObject.GetComponent <Camera>(); if (camera) { camera.fieldOfView = DaggerfallUnity.Settings.FieldOfView; } // Set mouse look PlayerMouseLook mouseLook = cameraObject.GetComponent <PlayerMouseLook>(); if (mouseLook) { mouseLook.invertMouseY = DaggerfallUnity.Settings.InvertMouseVertical; // Set mouse look smoothing mouseLook.enableSmoothing = DaggerfallUnity.Settings.MouseLookSmoothing; // Set mouse look sensitivity mouseLook.sensitivityScale = DaggerfallUnity.Settings.MouseLookSensitivity; mouseLook.joystickSensitivityScale = DaggerfallUnity.Settings.JoystickLookSensitivity; } // Anti-aliasing method PostProcessLayer postProcessLayer = camera.GetComponent <PostProcessLayer>(); if (postProcessLayer) { switch ((AntiAliasingMethods)DaggerfallUnity.Settings.Antialiasing) { case AntiAliasingMethods.None: postProcessLayer.antialiasingMode = PostProcessLayer.Antialiasing.None; break; case AntiAliasingMethods.FXAA: postProcessLayer.antialiasingMode = PostProcessLayer.Antialiasing.FastApproximateAntialiasing; break; case AntiAliasingMethods.SMAA: postProcessLayer.antialiasingMode = PostProcessLayer.Antialiasing.SubpixelMorphologicalAntialiasing; break; case AntiAliasingMethods.TAA: postProcessLayer.antialiasingMode = PostProcessLayer.Antialiasing.TemporalAntialiasing; break; } } } InputManager.Instance.JoystickCursorSensitivity = DaggerfallUnity.Settings.JoystickCursorSensitivity; InputManager.Instance.JoystickMovementThreshold = DaggerfallUnity.Settings.JoystickMovementThreshold; InputManager.Instance.JoystickDeadzone = DaggerfallUnity.Settings.JoystickDeadzone; InputManager.Instance.EnableController = DaggerfallUnity.Settings.EnableController; Application.runInBackground = DaggerfallUnity.Settings.RunInBackground; // Set shadow resolution GameManager.UpdateShadowResolution(); // VSync settings if (DaggerfallUnity.Settings.VSync) { QualitySettings.vSyncCount = 1; } else { QualitySettings.vSyncCount = 0; } // Target frame rate settings // Does nothing if VSync enabled // Default is 0 but anything below 30 is ignored and treated as disabled if (DaggerfallUnity.Settings.TargetFrameRate >= 30 && !DaggerfallUnity.Settings.VSync) { Application.targetFrameRate = DaggerfallUnity.Settings.TargetFrameRate; } // Filter settings DaggerfallUnity.Instance.MaterialReader.MainFilterMode = (FilterMode)DaggerfallUnity.Settings.MainFilterMode; DaggerfallUnity.Instance.MaterialReader.CompressModdedTextures = DaggerfallUnity.Settings.CompressModdedTextures; // HUD settings DaggerfallHUD hud = DaggerfallUI.Instance.DaggerfallHUD; if (hud != null) //null at startup { hud.ShowCrosshair = DaggerfallUnity.Settings.Crosshair; } // Weapon swing settings WeaponManager weaponManager = GameManager.Instance.WeaponManager; weaponManager.AttackThreshold = DaggerfallUnity.Settings.WeaponAttackThreshold; TransportManager transportManager = GameManager.Instance.TransportManager; // Weapon hand settings // Only supporting left-hand rendering for now // More handedness options may be added later if (DaggerfallUnity.Settings.Handedness == 1) { weaponManager.ScreenWeapon.FlipHorizontal = true; } // GodMode setting PlayerEntity playerEntity = FindPlayerEntity(); playerEntity.GodMode = GodMode; PlayerSpeedChanger speedChanger = FindPlayerSpeedChanger(); speedChanger.ToggleSneak = DaggerfallUnity.Settings.ToggleSneak; // Enable/disable videos DaggerfallUI.Instance.enableVideos = EnableVideos; // Streaming world terrain distance GameManager.Instance.StreamingWorld.TerrainDistance = DaggerfallUnity.Settings.TerrainDistance; }