BlendingSlotStruct.cs
1 using Ryujinx.Common.Utilities; 2 3 namespace Ryujinx.Graphics.Vic.Types 4 { 5 readonly struct BlendingSlotStruct 6 { 7 private readonly long _word0; 8 private readonly long _word1; 9 10 public int AlphaK1 => (int)_word0.Extract(0, 10); 11 public int AlphaK2 => (int)_word0.Extract(16, 10); 12 public int SrcFactCMatchSelect => (int)_word0.Extract(32, 3); 13 public int DstFactCMatchSelect => (int)_word0.Extract(36, 3); 14 public int SrcFactAMatchSelect => (int)_word0.Extract(40, 3); 15 public int DstFactAMatchSelect => (int)_word0.Extract(44, 3); 16 public int OverrideR => (int)_word1.Extract(66, 10); 17 public int OverrideG => (int)_word1.Extract(76, 10); 18 public int OverrideB => (int)_word1.Extract(86, 10); 19 public int OverrideA => (int)_word1.Extract(96, 10); 20 public bool UseOverrideR => _word1.Extract(108); 21 public bool UseOverrideG => _word1.Extract(109); 22 public bool UseOverrideB => _word1.Extract(110); 23 public bool UseOverrideA => _word1.Extract(111); 24 public bool MaskR => _word1.Extract(112); 25 public bool MaskG => _word1.Extract(113); 26 public bool MaskB => _word1.Extract(114); 27 public bool MaskA => _word1.Extract(115); 28 } 29 }