public override void Write(AssetWriter writer) { base.Write(writer); SplatDatabase.Write(writer); DetailDatabase.Write(writer); Heightmap.Write(writer); if (HasLightmap(writer.Version)) { Lightmap.Write(writer); } }
public override void Read(AssetReader reader) { base.Read(reader); SplatDatabase.Read(reader); DetailDatabase.Read(reader); Heightmap.Read(reader); if (HasLightmap(reader.Version)) { Lightmap.Read(reader); } }
protected override YAMLMappingNode ExportYAMLRoot(IExportContainer container) { YAMLMappingNode node = base.ExportYAMLRoot(container); node.Add(SplatDatabaseName, SplatDatabase.ExportYAML(container)); node.Add(DetailDatabaseName, DetailDatabase.ExportYAML(container)); node.Add(HeightmapName, Heightmap.ExportYAML(container)); if (HasLightmap(container.ExportVersion)) { node.Add(LightmapName, Lightmap.ExportYAML(container)); } return(node); }
public override void Read(AssetReader reader) { base.Read(reader); SplatDatabase.Read(reader); DetailDatabase.Read(reader); Heightmap.Read(reader); if (HasLightmap(reader.Version)) { Lightmap.Read(reader); } if (HasPreloadShaders(reader.Version)) { PreloadShaders = reader.ReadAssetArray <PPtr <Shader> >(); } }
private static PPtr <Shader> GetDetailMeshGrassShader(IExportContainer container, ref DetailDatabase origin) { if (DetailDatabase.HasDetailBillboardShader(container.Version)) { return(origin.DetailMeshGrassShader); } else { #warning TODO: add references to builtin shader throw new NotImplementedException(); } }