public override void Read(EndianStream stream) { base.Read(stream); if (IsSerialized) { SerializedShader.Read(stream); } else { Shader.Read(stream); } if (IsReadKeywords) { if (IsKeywordsArray) { m_shaderKeywordsArray = stream.ReadStringArray(); } else { ShaderKeywords = stream.ReadStringAligned(); } } if (IsReadLightmapFlags) { LightmapFlags = stream.ReadUInt32(); if (IsReadOtherFlags) { EnableInstancingVariants = stream.ReadBoolean(); DoubleSidedGI = stream.ReadBoolean(); stream.AlignStream(AlignType.Align4); } } if (IsReadCustomRenderQueue) { CustomRenderQueue = stream.ReadInt32(); } if (IsReadStringTagMap) { StringTagMap.Read(stream); if (IsReadDisabledShaderPasses) { m_disabledShaderPasses = stream.ReadStringArray(); } } SavedProperties.Read(stream); }