public void Write(AssetWriter writer)
 {
     writer.Write(BakedConvexCollisionMesh);
     writer.AlignStream();
     writer.Write(BakedTriangleCollisionMesh);
     writer.AlignStream();
 }
示例#2
0
        public void Write(AssetWriter writer)
        {
            Heights.Write(writer);
            if (HasAlign(writer.Version))
            {
                writer.AlignStream();
            }
            if (HasShifts(writer.Version))
            {
                Shifts.Write(writer);
                writer.AlignStream();
            }

            PrecomputedError.Write(writer);
            MinMaxPatchHeights.Write(writer);
            if (HasDefaultPhysicMaterial(writer.Version))
            {
                DefaultPhysicMaterial.Write(writer);
            }

            writer.Write(Width);
            writer.Write(Height);
            if (HasThickness(writer.Version))
            {
                writer.Write(Thickness);
            }

            writer.Write(Levels);
            Scale.Write(writer);
        }
示例#3
0
 public void Write(AssetWriter writer)
 {
     Renderers.Write(writer);
     if (IsAlign(writer.Version))
     {
         writer.AlignStream();
     }
     Systems.Write(writer);
     if (IsAlign(writer.Version))
     {
         writer.AlignStream();
     }
     if (HasProbesets(writer.Version))
     {
         Probesets.Write(writer);
         writer.AlignStream();
     }
     SystemAtlases.Write(writer);
     if (IsAlign(writer.Version))
     {
         writer.AlignStream();
     }
     if (HasTerrainChunks(writer.Version))
     {
         TerrainChunks.Write(writer);
         if (IsAlign(writer.Version))
         {
             writer.AlignStream();
         }
     }
 }
        public void Write(AssetWriter writer)
        {
            Sprites.Write(writer);
            if (SpriteMetaData.HasOutline(writer.Version))
            {
                Outline.Write(writer);
            }
            if (SpriteMetaData.HasPhysicsShape(writer.Version))
            {
                PhysicsShape.Write(writer);
            }
            if (SpriteMetaData.HasBones(writer.Version))
            {
                Bones.Write(writer);
                writer.Write(SpriteID);
            }
            if (SpriteMetaData.HasInternalID(writer.Version))
            {
                writer.Write(InternalID);
            }
            if (SpriteMetaData.HasBones(writer.Version))
            {
                Vertices.Write(writer);
                Indices.Write(writer);
                Edges.Write(writer);
                writer.AlignStream();

                Weights.Write(writer);
                writer.AlignStream();
            }
            if (HasSecondaryTextures(writer.Version))
            {
                SecondaryTextures.Write(writer);
            }
        }
示例#5
0
        public void Write(AssetWriter writer)
        {
            if (HasCurrentChannels(writer.Version))
            {
                writer.Write(CurrentChannels);
            }
            writer.Write(VertexCount);

            if (HasChannels(writer.Version))
            {
                writer.WriteAssetArray(Channels);
                writer.AlignStream(AlignType.Align4);
            }
            if (HasStreams(writer.Version))
            {
                if (IsStreamStatic(writer.Version))
                {
                    for (int i = 0; i < StaticStreamCount; i++)
                    {
                        writer.WriteAsset(Streams[i]);
                    }
                }
                else
                {
                    writer.WriteAssetArray(Channels);
                }
            }

            writer.WriteArray(Data);
            writer.AlignStream(AlignType.Align4);
        }
示例#6
0
 public void Write(AssetWriter writer)
 {
     writer.Write(NumItems);
     writer.Write(Data);
     writer.AlignStream(AlignType.Align4);
     writer.Write(BitSize);
     writer.AlignStream(AlignType.Align4);
 }
示例#7
0
 public void Write(AssetWriter writer)
 {
     Bounds.Write(writer);
     LayerIndices.Write(writer);
     writer.AlignStream();
     NumberOfObjects.Write(writer);
     writer.AlignStream();
 }
 public void Write(AssetWriter writer)
 {
     writer.Write(NumItems);
     writer.Write(Range);
     writer.Write(Start);
     writer.Write(Data);
     writer.AlignStream();
     writer.Write(BitSize);
     writer.AlignStream();
 }
        public override void Write(AssetWriter writer)
        {
            base.Write(writer);

            if (HasInternalIDToNameTable(writer.Version))
            {
                if (IncludesIDToName)
                {
                    InternalIDToNameTable.Write(writer, (t) => (int)t);
                }
            }
            else if (FileIDToRecycleNameRelevant(writer.Version))
            {
                if (!IsFileIDToRecycleNameConditional(writer.Version) || IncludesIDToName)
                {
                    if (PPtr <Object> .IsLongID(writer.Version))
                    {
                        FileIDToRecycleName.Write(writer);
                    }
                    else
                    {
                        FileIDToRecycleNameInt.Write(writer);
                    }
                }
            }
            if (HasPreview(writer.Version))
            {
                Preview.Write(writer);
            }
            if (HasHash(writer.Version))
            {
                OldHashIdentity.Write(writer);
                NewHashIdentity.Write(writer);
            }
            if (HasExternalObjects(writer.Version))
            {
                ExternalObjects.Write(writer);
                if (IsAlignExternalObjects(writer.Version))
                {
                    writer.AlignStream();
                }
            }
            if (HasUsedFileIDs(writer.Version))
            {
                UsedFileIDs.Write(writer);
                writer.AlignStream();
            }
        }
示例#10
0
        public void Write(AssetWriter writer)
        {
            if (HasSkyLightColor(writer.Version))
            {
                SkyLightColor.Write(writer);
                writer.Write(SkyLightIntensity);
            }

            writer.Write(BounceScale);
            writer.Write(IndirectOutputScale);
            writer.Write(AlbedoBoost);
            if (HasTemporalCoherenceThreshold(writer.Version))
            {
                writer.Write(TemporalCoherenceThreshold);
            }
            if (HasDynamicEnv(writer.Version))
            {
                writer.Write(DynamicEnv);
            }
            else
            {
                writer.Write((int)EnvironmentLightingMode);
                writer.Write(EnableBakedLightmaps);
                writer.Write(EnableRealtimeLightmaps);
            }
            writer.AlignStream();
        }
 public void Write(AssetWriter writer)
 {
     writer.Write(CompressedFormat);
     writer.Write(UncompressedFormat);
     if (HasRecommendedFormat(writer.Version))
     {
         writer.Write(RecommendedFormat);
     }
     if (HasDesiredFormat(writer.Version))
     {
         writer.Write(DesiredFormat);
     }
     writer.Write(UsageMode);
     writer.Write(ColorSpace);
     if (HasAndroidETC2Fallback(writer.Version))
     {
         writer.Write(AndroidETC2FallbackFormat);
     }
     writer.Write(Width);
     writer.Write(Height);
     writer.Write(CompressionQuality);
     if (HasAndroidETC2Fallback(writer.Version))
     {
         writer.Write(AndroidETC2FallbackDownscale);
         writer.AlignStream();
     }
 }
示例#12
0
        public override void Write(AssetWriter writer)
        {
            if (IsModificationsFormat(writer.Version))
            {
                WriteObject(writer);

                bool hasRootGameObject     = IsRootGameObjectRelevant(writer.Flags);
                bool isRootGameObjectFirst = IsRootGameObjectFirst(writer.Version);
                if (hasRootGameObject && isRootGameObjectFirst)
                {
                    RootGameObject.Write(writer);
                }

                Modification.Write(writer);
                SourcePrefab.Write(writer);
                if (hasRootGameObject && !isRootGameObjectFirst)
                {
                    RootGameObject.Write(writer);
                }
                if (IsPrefabAssetRelevant(writer.Version))
                {
                    writer.Write(IsPrefabAsset);
                }
                if (IsExplodedRelevant(writer.Version))
                {
                    writer.Write(IsExploded);
                }
                writer.AlignStream();
            }
            else
            {
                LastMergeIdentifier.Write(writer);
                if (HasLastTemplateIdentifier(writer.Version))
                {
                    LastTemplateIdentifier.Write(writer);
                }
                Objects.Write(writer);
                Father.Write(writer);
                writer.Write(IsDataTemplate);
                writer.AlignStream();

                base.Write(writer);
            }
        }
示例#13
0
        public override void Write(AssetWriter writer)
        {
            PrefabInstanceLayout layout = writer.Layout.PrefabInstance;

            if (layout.IsModificationFormat)
            {
                WriteObject(writer);

                if (layout.HasRootGameObject && layout.IsRootGameObjectFirst)
                {
                    RootGameObject.Write(writer);
                }

                Modification.Write(writer);
                SourcePrefab.Write(writer);
                if (!layout.IsRootGameObjectFirst)
                {
                    RootGameObject.Write(writer);
                }
                if (layout.HasIsPrefabAsset)
                {
                    writer.Write(IsPrefabAsset);
                }
                if (layout.HasIsExploded)
                {
                    writer.Write(IsExploded);
                }
                writer.AlignStream();
            }
            else
            {
                LastMergeIdentifier.Write(writer);
                if (layout.HasLastTemplateIdentifier)
                {
                    LastTemplateIdentifier.Write(writer);
                }
                Objects.Write(writer);
                Father.Write(writer);
                writer.Write(IsDataTemplate);
                writer.AlignStream();

                base.Write(writer);
            }
        }
示例#14
0
        public override void Write(AssetWriter writer)
        {
            base.Write(writer);

            writer.Write(Enabled);
            if (IsAlign(writer.Version))
            {
                writer.AlignStream();
            }
        }
        public void Write(AssetWriter writer)
        {
            writer.Write(Name);
            writer.AlignStream();

            Position.Write(writer);
            Rotation.Write(writer);
            writer.Write(Length);
            writer.Write(ParentId);
        }
        public void Write(AssetWriter writer)
        {
            Heights.Write(writer);
            if (HasHoles(writer.Version))
            {
                writer.Write(Holes);
                writer.Write(HolesLOD);
                writer.Write(EnableHolesTextureCompression);
            }
            if (HasAlign(writer.Version))
            {
                writer.AlignStream();
            }
            if (HasShifts(writer.Version))
            {
                Shifts.Write(writer);
                writer.AlignStream();
            }

            PrecomputedError.Write(writer);
            MinMaxPatchHeights.Write(writer);
            if (HasDefaultPhysicMaterial(writer.Version))
            {
                DefaultPhysicMaterial.Write(writer);
            }

            if (HasWidth(writer.Version))
            {
                writer.Write(Width);
                writer.Write(Height);
            }
            if (HasThickness(writer.Version))
            {
                writer.Write(Thickness);
            }
            if (HasResolution(writer.Version))
            {
                writer.Write(Resolution);
            }

            writer.Write(Levels);
            Scale.Write(writer);
        }
示例#17
0
        public void Write(AssetWriter writer)
        {
            writer.Write(Name);
            Rect.Write(writer);
            writer.Write((int)Alignment);
            Pivot.Write(writer);
            if (HasBorder(writer.Version))
            {
                Border.Write(writer);
            }
            if (HasOutline(writer.Version))
            {
                Outline.Write(writer);
            }
            if (HasPhysicsShape(writer.Version))
            {
                PhysicsShape.Write(writer);
            }
            if (HasTessellationDetail(writer.Version))
            {
                writer.Write(TessellationDetail);
            }
            if (HasBones(writer.Version))
            {
                Bones.Write(writer);
                writer.Write(SpriteID);
            }
            if (HasInternalID(writer.Version))
            {
                writer.Write(InternalID);
            }
            if (HasBones(writer.Version))
            {
                Vertices.Write(writer);
                Indices.Write(writer);
                Edges.Write(writer);
                writer.AlignStream();

                Weights.Write(writer);
                writer.AlignStream();
            }
        }
示例#18
0
        public override void Write(AssetWriter writer)
        {
            base.Write(writer);

            BehaviourLayout layout = writer.Layout.Behaviour;

            writer.Write(Enabled);
            if (layout.IsAlignEnabled)
            {
                writer.AlignStream();
            }
        }
示例#19
0
        public void Write(AssetWriter writer)
        {
            writer.WriteAssetArray(Vertices);
            writer.WriteAssetArray(Shapes);
            writer.WriteAssetArray(Channels);
            if (IsAlign(writer.Version))
            {
                writer.AlignStream(AlignType.Align4);
            }

            writer.WriteArray(FullWeights);
        }
示例#20
0
        public override void Write(AssetWriter writer)
        {
            base.Write(writer);

            if (HasIsReadable(writer.Version))
            {
                writer.Write(IsReadable);
            }
            writer.AlignStream();

            PostWrite(writer);
        }
示例#21
0
        public override void Write(AssetWriter writer)
        {
            base.Write(writer);

            TextureSettings.Write(writer);
            writer.Write(IsReadable);
            if (HasSRGBTexture(writer.Version))
            {
                writer.Write(SRGBTexture);
            }
            if (HasStreamingMipmaps(writer.Version))
            {
                writer.Write(StreamingMipmaps);
                writer.AlignStream();

                writer.Write(StreamingMipmapsPriority);
            }
            writer.AlignStream();

            PostWrite(writer);
        }
        public void Write(AssetWriter writer)
        {
            Curve.Write(writer);
            writer.AlignStream(AlignType.Align4);

            writer.Write((int)PreInfinity);
            writer.Write((int)PostInfinity);
            if (HasRotationOrder(writer.Version))
            {
                writer.Write((int)RotationOrder);
            }
        }
        public override void Write(AssetWriter writer)
        {
            base.Write(writer);

            if (HasMainObjectFileID(writer.Version))
            {
                writer.Write(MainObjectFileID);
            }
            writer.AlignStream();

            PostWrite(writer);
        }
示例#24
0
        public void Write(AssetWriter writer)
        {
            Vertices.Write(writer);
            Shapes.Write(writer);
            Channels.Write(writer);
            if (IsAlign(writer.Version))
            {
                writer.AlignStream();
            }

            FullWeights.Write(writer);
        }
示例#25
0
        public void Write(AssetWriter writer)
        {
            GradientLayout layout = writer.Layout.Serialized.Gradient;

            if (layout.Version == 1)
            {
                Key0_32.Write(writer);
                Key1_32.Write(writer);
                Key2_32.Write(writer);
                Key3_32.Write(writer);
                Key4_32.Write(writer);
                Key5_32.Write(writer);
                Key6_32.Write(writer);
                Key7_32.Write(writer);
            }
            else
            {
                Key0.Write(writer);
                Key1.Write(writer);
                Key2.Write(writer);
                Key3.Write(writer);
                Key4.Write(writer);
                Key5.Write(writer);
                Key6.Write(writer);
                Key7.Write(writer);
            }

            writer.Write(Ctime0);
            writer.Write(Ctime1);
            writer.Write(Ctime2);
            writer.Write(Ctime3);
            writer.Write(Ctime4);
            writer.Write(Ctime5);
            writer.Write(Ctime6);
            writer.Write(Ctime7);
            writer.Write(Atime0);
            writer.Write(Atime1);
            writer.Write(Atime2);
            writer.Write(Atime3);
            writer.Write(Atime4);
            writer.Write(Atime5);
            writer.Write(Atime6);
            writer.Write(Atime7);
            if (layout.HasMode)
            {
                writer.Write((int)Mode);
            }

            writer.Write(NumColorKeys);
            writer.Write(NumAlphaKeys);
            writer.AlignStream();
        }
示例#26
0
        public void Write(AssetWriter writer)
        {
            if (IsColor32(writer.Version))
            {
                Key0.Write32(writer);
                Key1.Write32(writer);
                Key2.Write32(writer);
                Key3.Write32(writer);
                Key4.Write32(writer);
                Key5.Write32(writer);
                Key6.Write32(writer);
                Key7.Write32(writer);
            }
            else
            {
                Key0.Write(writer);
                Key1.Write(writer);
                Key2.Write(writer);
                Key3.Write(writer);
                Key4.Write(writer);
                Key5.Write(writer);
                Key6.Write(writer);
                Key7.Write(writer);
            }

            writer.Write(Ctime0);
            writer.Write(Ctime1);
            writer.Write(Ctime2);
            writer.Write(Ctime3);
            writer.Write(Ctime4);
            writer.Write(Ctime5);
            writer.Write(Ctime6);
            writer.Write(Ctime7);
            writer.Write(Atime0);
            writer.Write(Atime1);
            writer.Write(Atime2);
            writer.Write(Atime3);
            writer.Write(Atime4);
            writer.Write(Atime5);
            writer.Write(Atime6);
            writer.Write(Atime7);
            if (HasMode(writer.Version))
            {
                writer.Write((int)Mode);
            }

            writer.Write(NumColorKeys);
            writer.Write(NumAlphaKeys);
            writer.AlignStream();
        }
示例#27
0
        public void Write(AssetWriter writer)
        {
            AnimationCurveTplLayout layout = writer.Layout.Serialized.AnimationCurveTpl;

            Curve.Write(writer);
            writer.AlignStream();

            writer.Write((int)PreInfinity);
            writer.Write((int)PostInfinity);
            if (layout.HasRotationOrder)
            {
                writer.Write((int)RotationOrder);
            }
        }
示例#28
0
        public void Write(AssetWriter writer)
        {
            PPtrCurveLayout layout = writer.Layout.AnimationClip.PPtrCurve;

            Curve.Write(writer);
            if (layout.IsAlignCurve)
            {
                writer.AlignStream();
            }

            writer.Write(Attribute);
            writer.Write(Path);
            writer.Write((int)ClassID);
            Script.Write(writer);
        }
示例#29
0
 public void Write(AssetWriter writer)
 {
     writer.Write(Width);
     writer.Write(Height);
     writer.Write(DoesTextureContainAlpha);
     if (HasDoesTextureContainColor(writer.Version))
     {
         writer.Write(DoesTextureContainColor);
     }
     if (HasSourceWasHDR(writer.Version))
     {
         writer.Write(SourceWasHDR);
         writer.AlignStream();
     }
 }
        protected void PostWrite(AssetWriter writer)
        {
            if (HasUserData(writer.Version))
            {
                writer.AlignStream();

                writer.Write(UserData);
            }
            if (HasAssetBundleName(writer.Version))
            {
                writer.Write(AssetBundleName);
            }
            if (HasAssetBundleVariant(writer.Version))
            {
                writer.Write(AssetBundleVariant);
            }
        }