@@ -428,6 +428,7 @@ public ConstantBuffer(ObjectReader reader)
428
428
429
429
if ( ( version [ 0 ] == 2020 && version [ 1 ] > 3 ) ||
430
430
( version [ 0 ] == 2020 && version [ 1 ] == 3 && version [ 2 ] >= 2 ) || //2020.3.2f1 and up
431
+ ( version [ 0 ] > 2021 ) ||
431
432
( version [ 0 ] == 2021 && version [ 1 ] > 1 ) ||
432
433
( version [ 0 ] == 2021 && version [ 1 ] == 1 && version [ 2 ] >= 4 ) ) //2021.1.4f1 and up
433
434
{
@@ -605,6 +606,7 @@ public SerializedSubProgram(ObjectReader reader)
605
606
606
607
if ( ( version [ 0 ] == 2020 && version [ 1 ] > 3 ) ||
607
608
( version [ 0 ] == 2020 && version [ 1 ] == 3 && version [ 2 ] >= 2 ) || //2020.3.2f1 and up
609
+ ( version [ 0 ] > 2021 ) ||
608
610
( version [ 0 ] == 2021 && version [ 1 ] > 1 ) ||
609
611
( version [ 0 ] == 2021 && version [ 1 ] == 1 && version [ 2 ] >= 1 ) ) //2021.1.1f1 and up
610
612
{
@@ -690,6 +692,7 @@ public class SerializedProgram
690
692
{
691
693
public SerializedSubProgram [ ] m_SubPrograms ;
692
694
public SerializedProgramParameters m_CommonParameters ;
695
+ public ushort [ ] m_SerializedKeywordStateMask ;
693
696
694
697
public SerializedProgram ( ObjectReader reader )
695
698
{
@@ -704,11 +707,18 @@ public SerializedProgram(ObjectReader reader)
704
707
705
708
if ( ( version [ 0 ] == 2020 && version [ 1 ] > 3 ) ||
706
709
( version [ 0 ] == 2020 && version [ 1 ] == 3 && version [ 2 ] >= 2 ) || //2020.3.2f1 and up
710
+ ( version [ 0 ] > 2021 ) ||
707
711
( version [ 0 ] == 2021 && version [ 1 ] > 1 ) ||
708
712
( version [ 0 ] == 2021 && version [ 1 ] == 1 && version [ 2 ] >= 1 ) ) //2021.1.1f1 and up
709
713
{
710
714
m_CommonParameters = new SerializedProgramParameters ( reader ) ;
711
715
}
716
+
717
+ if ( version [ 0 ] > 2022 || ( version [ 0 ] == 2022 && version [ 1 ] >= 1 ) ) //2022.1 and up
718
+ {
719
+ m_SerializedKeywordStateMask = reader . ReadUInt16Array ( ) ;
720
+ reader . AlignStream ( ) ;
721
+ }
712
722
}
713
723
}
714
724
@@ -795,7 +805,7 @@ public SerializedPass(ObjectReader reader)
795
805
m_Name = reader . ReadAlignedString ( ) ;
796
806
m_TextureName = reader . ReadAlignedString ( ) ;
797
807
m_Tags = new SerializedTagMap ( reader ) ;
798
- if ( version [ 0 ] > 2021 || ( version [ 0 ] == 2021 && version [ 1 ] >= 2 ) ) //2021.2 and up
808
+ if ( version [ 0 ] == 2021 && version [ 1 ] >= 2 ) //2021.2 ~2021.x
799
809
{
800
810
m_SerializedKeywordStateMask = reader . ReadUInt16Array ( ) ;
801
811
reader . AlignStream ( ) ;
0 commit comments