| 123456789101112131415161718192021222324252627282930313233343536 |
- using System;
- namespace Ryujinx.Graphics.Shader
- {
- public enum AttributeType : byte
- {
- Float,
- Sint,
- Uint
- }
- static class AttributeTypeExtensions
- {
- public static string GetScalarType(this AttributeType type)
- {
- return type switch
- {
- AttributeType.Float => "float",
- AttributeType.Sint => "int",
- AttributeType.Uint => "uint",
- _ => throw new ArgumentException($"Invalid attribute type \"{type}\".")
- };
- }
- public static string GetVec4Type(this AttributeType type)
- {
- return type switch
- {
- AttributeType.Float => "vec4",
- AttributeType.Sint => "ivec4",
- AttributeType.Uint => "uvec4",
- _ => throw new ArgumentException($"Invalid attribute type \"{type}\".")
- };
- }
- }
- }
|