mirror of
https://github.com/AssetRipper/AssetRipper.git
synced 2025-12-11 20:15:29 +01:00
MaxShaderModelVersion extension methods
This commit is contained in:
parent
3d8b19c3d5
commit
43ddfd6953
@ -44,4 +44,9 @@ public static class SerializedPassExtensions
|
||||
yield return pass.ProgRayTracing;
|
||||
}
|
||||
}
|
||||
|
||||
public static int MaxShaderModelVersion(this ISerializedPass pass, UnityVersion version)
|
||||
{
|
||||
return pass.GetPrograms().Max(program => program.MaxShaderModelVersion(version));
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
using AssetRipper.SourceGenerated.Subclasses.SerializedPlayerSubProgram;
|
||||
using AssetRipper.SourceGenerated.Extensions.Enums.Shader.GpuProgramType;
|
||||
using AssetRipper.SourceGenerated.Subclasses.SerializedPlayerSubProgram;
|
||||
using AssetRipper.SourceGenerated.Subclasses.SerializedProgram;
|
||||
|
||||
namespace AssetRipper.SourceGenerated.Extensions;
|
||||
@ -64,4 +65,15 @@ public static class SerializedProgramExtensions
|
||||
return [];
|
||||
}
|
||||
|
||||
public static int MaxShaderModelVersion(this ISerializedProgram program, UnityVersion version)
|
||||
{
|
||||
if (program.Has_PlayerSubPrograms())
|
||||
{
|
||||
return program.GetPlayerSubPrograms().Max(p => p.GetProgramType(version).ToShaderModelVersion());
|
||||
}
|
||||
else
|
||||
{
|
||||
return program.SubPrograms.Max(p => p.GetProgramType(version).ToShaderModelVersion());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user