protected override void ComputeParameterHash(BinarySerializationWriter writer) { base.ComputeParameterHash(writer); uint effectbyteCodeMagicNumber = EffectBytecode.MagicHeader; writer.Serialize(ref effectbyteCodeMagicNumber, ArchiveMode.Serialize); writer.Serialize(ref effectName, ArchiveMode.Serialize); writer.Serialize(ref compilerParameters, ArchiveMode.Serialize); }
protected override void ComputeParameterHash(BinarySerializationWriter writer) { base.ComputeParameterHash(writer); // Regenerate new shaders if magic header changed uint effectbyteCodeMagicNumber = EffectBytecode.MagicHeader; writer.Serialize(ref effectbyteCodeMagicNumber, ArchiveMode.Serialize); }
public static void SaveFromMemory(PixelBuffer[] pixelBuffers, int count, ImageDescription description, System.IO.Stream imageStream) { var stream = new BinarySerializationWriter(imageStream); // Write magic code stream.Write(MagicCode); // Write image header imageDescriptionSerializer.Serialize(ref description, ArchiveMode.Serialize, stream); // Write total size int totalSize = 0; foreach (var pixelBuffer in pixelBuffers) totalSize += pixelBuffer.BufferStride; stream.Write(totalSize); // Write buffers contiguously foreach (var pixelBuffer in pixelBuffers) { stream.Serialize(pixelBuffer.DataPointer, pixelBuffer.BufferStride); } }
protected override void ComputeParameterHash(BinarySerializationWriter writer) { // force execution of the command with a new GUID var newGuid = Guid.NewGuid(); writer.Serialize(ref newGuid, ArchiveMode.Serialize); }