47 lines
1.3 KiB
C#
47 lines
1.3 KiB
C#
// Copyright (c) 2023 bradson
|
|
// This Source Code Form is subject to the terms of the Mozilla Public
|
|
// License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
// file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
|
|
|
/*namespace PerformanceFish.Rendering;
|
|
public sealed class GenDrawPatches : ClassWithFishPatches
|
|
{
|
|
public sealed class DrawMeshNowOrLater_Patch : FishPatch
|
|
{
|
|
public override Delegate TargetMethodGroup { get; }
|
|
= (Action<Mesh, Vector3, Quaternion, Material, bool>)GenDraw.DrawMeshNowOrLater;
|
|
|
|
public static void Replacement(Mesh mesh, Vector3 loc, Quaternion quat, Material mat, bool drawNow)
|
|
{
|
|
if (drawNow)
|
|
{
|
|
if (!mat.SetPass(0))
|
|
Log.Error("SetPass(0) call failed on material " + mat.name + " with shader " + mat.shader.name);
|
|
Graphics.DrawMeshNow(mesh, loc, quat);
|
|
}
|
|
else
|
|
{
|
|
Graphics.DrawMesh(mesh, loc, quat, mat, 0);
|
|
}
|
|
}
|
|
}
|
|
|
|
public sealed class DrawMeshNowOrLaterWithMatrix_Patch : FishPatch
|
|
{
|
|
public override Delegate TargetMethodGroup { get; }
|
|
= (Action<Mesh, Matrix4x4, Material, bool>)GenDraw.DrawMeshNowOrLater;
|
|
|
|
public static void Replacement(Mesh mesh, Matrix4x4 matrix, Material mat, bool drawNow)
|
|
{
|
|
if (drawNow)
|
|
{
|
|
mat.SetPass(0);
|
|
Graphics.DrawMeshNow(mesh, matrix);
|
|
}
|
|
else
|
|
{
|
|
Graphics.DrawMesh(mesh, matrix, mat, 0);
|
|
}
|
|
}
|
|
}
|
|
}*/ |