Exemple #1
0
        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);
            }
        }
Exemple #2
0
        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);
            }
        }
Exemple #3
0
        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);
        }
Exemple #4
0
        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> >();
            }
        }
Exemple #5
0
        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();
            }
        }