Allow overriding far clip plane

This commit is contained in:
Nick 2022-09-10 20:00:09 -04:00
parent 073892c008
commit e5b652ba22
2 changed files with 12 additions and 20 deletions

View File

@ -14,6 +14,11 @@ namespace NewHorizons.External.Configs
[JsonObject] [JsonObject]
public class StarSystemConfig public class StarSystemConfig
{ {
/// <summary>
/// An override value for the far clip plane. Allows you to see farther.
/// </summary>
public float farClipPlaneOverride;
/// <summary> /// <summary>
/// Whether this system can be warped to via the warp drive. If you set factRequiredForWarp, this will be true. /// Whether this system can be warped to via the warp drive. If you set factRequiredForWarp, this will be true.
/// </summary> /// </summary>

View File

@ -1,4 +1,4 @@
using HarmonyLib; using HarmonyLib;
namespace NewHorizons.Patches namespace NewHorizons.Patches
{ {
[HarmonyPatch] [HarmonyPatch]
@ -8,25 +8,12 @@ namespace NewHorizons.Patches
[HarmonyPatch(typeof(OWCamera), nameof(OWCamera.Awake))] [HarmonyPatch(typeof(OWCamera), nameof(OWCamera.Awake))]
public static void OnOWCameraAwake(OWCamera __instance) public static void OnOWCameraAwake(OWCamera __instance)
{ {
// var oldDist = __instance.farClipPlane; if (Main.SystemDict.TryGetValue(Main.Instance.CurrentStarSystem, out var system) && system?.Config?.farClipPlaneOverride != 0f)
// var newDist = __instance.farClipPlane * 10f; {
// if (__instance.useFarCamera) Mathf.Clamp(newDist, oldDist, 50000f); __instance.farClipPlane = system.Config.farClipPlaneOverride;
// else newDist = Mathf.Clamp(newDist, oldDist, 10000000f); __instance.farCameraDistance = system.Config.farClipPlaneOverride;
// __instance.farClipPlane = newDist; __instance.mainCamera.farClipPlane = system.Config.farClipPlaneOverride;
// __instance.farCameraDistance = newDist; }
// __instance.mainCamera.farClipPlane = newDist;
} }
// [HarmonyPrefix]
// [HarmonyPatch(typeof(OWCamera), nameof(OWCamera.RebuildSkybox))]
// public static bool OnOWCameraRebuildSkybox(OWCamera __instance)
// {
// __instance._skyboxCommandBuffer = new CommandBuffer();
// __instance._skyboxCommandBuffer.name = "Skybox";
// var camera = __instance._useFarCamera && !SystemInfo.usesReversedZBuffer ? __instance._farCamera : __instance._mainCamera;
// CameraEvent evt = CameraEvent.BeforeSkybox;
// camera.AddCommandBuffer(evt, __instance._skyboxCommandBuffer);
// return false;
// }
} }
} }