protected internal override void Write(ContentWriter output, BasicMaterialContent value) { output.WriteExternalReference(value.Textures.ContainsKey(BasicMaterialContent.TextureKey) ? value.Texture : null); output.Write(value.DiffuseColor ?? new Vector3(1, 1, 1)); output.Write(value.EmissiveColor ?? new Vector3(0, 0, 0)); output.Write(value.SpecularColor ?? new Vector3(1, 1, 1)); output.Write(value.SpecularPower ?? 16); output.Write(value.Alpha ?? 1); output.Write(value.VertexColorEnabled ?? false); }
protected internal override void Write(ContentWriter output, EffectMaterialContent value) { output.WriteExternalReference(value.CompiledEffect); var dict = new Dictionary <string, object>(); foreach (var item in value.Textures) { dict.Add(item.Key, item.Value); } foreach (var item in value.OpaqueData) { if (item.Key != EffectMaterialContent.EffectKey && item.Key != EffectMaterialContent.CompiledEffectKey) { dict.Add(item.Key, item.Value); } } output.WriteObject(dict); }
/// <summary> /// Writes the value to the output. /// </summary> /// <param name="output">The output writer object.</param> /// <param name="value">The value to write to the output.</param> protected internal override void Write(ContentWriter output, ExternalReference <T> value) { output.WriteExternalReference(value); }