public static void Save(string fullPath, ShaderCollection shaderCollection) { NativeFileStream fs = new NativeFileStream(fullPath, NativeFileMode.Create, NativeFileAccess.Write); try { BinarySerializer bs = new BinarySerializer(fs, SerializerMode.Write) { AllowIdentity = true }; bs.Serialize(ref shaderCollection); } catch (SerializationException e) { LogEvent.Tool.Error(e.Message); throw; } finally { fs.Dispose(); } }
public static ShaderCollection Load(string fullPath) { NativeFileStream fs = new NativeFileStream(fullPath, NativeFileMode.Open, NativeFileAccess.Read); try { ShaderCollection sc = null; BinarySerializer bs = new BinarySerializer(fs, SerializerMode.Read) { AllowIdentity = true }; bs.Serialize(ref sc); return(sc); } catch (SerializationException e) { LogEvent.Tool.Error(e.Message); throw; } finally { fs.Dispose(); } }