Added gas grid optimization, various despawn optimizations, new hauling optimizations utilizing events and regions, bugfixes for old patches and for vanilla functions too, as well as smaller additions. 1.3 files removed.

This commit is contained in:
bbradson
2024-01-27 10:24:24 +01:00
parent 0247ad59a1
commit c8b764de68
151 changed files with 7318 additions and 2145 deletions
@@ -4,9 +4,9 @@
// file, You can obtain one at https://mozilla.org/MPL/2.0/.
/*namespace PerformanceFish.Rendering;
public class GenDrawPatches : ClassWithFishPatches
public sealed class GenDrawPatches : ClassWithFishPatches
{
public class DrawMeshNowOrLater_Patch : FishPatch
public sealed class DrawMeshNowOrLater_Patch : FishPatch
{
public override Delegate TargetMethodGroup { get; }
= (Action<Mesh, Vector3, Quaternion, Material, bool>)GenDraw.DrawMeshNowOrLater;
@@ -26,7 +26,7 @@ public class GenDrawPatches : ClassWithFishPatches
}
}
public class DrawMeshNowOrLaterWithMatrix_Patch : FishPatch
public sealed class DrawMeshNowOrLaterWithMatrix_Patch : FishPatch
{
public override Delegate TargetMethodGroup { get; }
= (Action<Mesh, Matrix4x4, Material, bool>)GenDraw.DrawMeshNowOrLater;
@@ -4,9 +4,9 @@
// file, You can obtain one at https://mozilla.org/MPL/2.0/.
/*namespace PerformanceFish.Rendering;
public class GraphicPatches : ClassWithFishPatches
public sealed class GraphicPatches : ClassWithFishPatches
{
public class DrawMeshInt_Patch : FishPatch
public sealed class DrawMeshInt_Patch : FishPatch
{
public override MethodBase TargetMethodInfo { get; }
= AccessTools.DeclaredMethod(typeof(Graphic), nameof(Graphic.DrawMeshInt));
@@ -17,7 +17,7 @@ public class GraphicPatches : ClassWithFishPatches
}
}
public class Shadow_DrawWorker_Patch : FishPatch
public sealed class Shadow_DrawWorker_Patch : FishPatch
{
public override MethodBase TargetMethodInfo { get; }
= AccessTools.DeclaredMethod(typeof(Graphic_Shadow), nameof(Graphic_Shadow.DrawWorker));
@@ -5,13 +5,13 @@
/*namespace PerformanceFish.Rendering;
public class PawnCacheRendererPatches : ClassWithFishPatches
public sealed class PawnCacheRendererPatches : ClassWithFishPatches
// The PawnCacheRenderer's Camera.Render() call has a considerable performance impact despite only being used for
// rendering of single pawns. These are failed attempts at lowering its impact.
{
private static bool _optimizeCameraEnabled;
public class OnPostRender_Patch : FishPatch
public sealed class OnPostRender_Patch : FishPatch
{
public override MethodBase TargetMethodInfo
=> AccessTools.DeclaredMethod(typeof(PawnCacheRenderer), nameof(PawnCacheRenderer.OnPostRender));
@@ -33,7 +33,7 @@ public class PawnCacheRendererPatches : ClassWithFishPatches
private static int? _defaultCullinkMask;
}
public class RenderPawn_Patch : FishPatch
public sealed class RenderPawn_Patch : FishPatch
{
public override MethodBase TargetMethodInfo
=> AccessTools.DeclaredMethod(typeof(PawnCacheRenderer), nameof(PawnCacheRenderer.RenderPawn));