コード例 #1
0
 internal void _Read(TableStreamReader reader)
 {
     reader.Blob("SceneObjectData", () =>
     {
         Read(reader);
     });
 }
コード例 #2
0
        private void _Read(TableStreamReader reader)
        {
            reader.Blob("SceneChunkData", () =>
            {
                this.Name = reader.ReadKeyString("Name");

                this.Objects = new List <SceneObjectData>();
                var count    = reader.ReadKeyNumber("Objects");
                for (var i = 0; i < count; ++i)
                {
                    var type = (SceneObjectType)reader.ReadKeyByte("Type");
                    SceneObjectData objectData = null;
                    switch (type)
                    {
                    case SceneObjectType.PREFAB:
                        objectData = new ScenePrefabData();
                        break;

                    case SceneObjectType.LIGHTMODIFIER:
                        objectData = new SceneLightModifierData();
                        break;

                    default:
                        objectData = new SceneObjectData();
                        break;
                    }
                    objectData._Read(reader);
                    this.Objects.Add(objectData);
                }
            });
        }
コード例 #3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="stream"></param>
 /// <param name="validateData">是否校验数据</param>
 /// <returns></returns>
 public static SceneChunkData Deserialize(Stream stream, bool validateData)
 {
     using (var reader = new TableStreamReader(stream, validateData)) {
         var chunkData = new SceneChunkData();
         chunkData._Read(reader);
         return(chunkData);
     }
 }
コード例 #4
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="reader"></param>
        protected override void Read(TableStreamReader reader)
        {
            base.Read(reader);

            this.Intensity = (float)reader.ReadKeyFloat("Intensity");

            this.Red   = (float)reader.ReadKeyFloat("Red");
            this.Green = (float)reader.ReadKeyFloat("Green");
            this.Blue  = (float)reader.ReadKeyFloat("Blue");
        }
コード例 #5
0
        internal void _Read(TableStreamReader reader)
        {
            reader.Blob("SceneChunkRefData", () =>
            {
                this.Name = reader.ReadKeyString("Name");

                this.PositionX = (float)reader.ReadKeyFloat("PositionX");
                this.PositionY = (float)reader.ReadKeyFloat("PositionY");
                this.PositionZ = (float)reader.ReadKeyFloat("PositionZ");

                this.OrientationX = (float)reader.ReadKeyFloat("OrientationX");
                this.OrientationY = (float)reader.ReadKeyFloat("OrientationY");
                this.OrientationZ = (float)reader.ReadKeyFloat("OrientationZ");
                this.OrientationW = (float)reader.ReadKeyFloat("OrientationW");

                this.Path = reader.ReadKeyString("Path");
            });
        }
コード例 #6
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="reader"></param>
        protected virtual void Read(TableStreamReader reader)
        {
            this.Type = (SceneObjectType)reader.ReadKeyByte("Type");

            this.Name = reader.ReadKeyString("Name");

            this.PositionX = (float)reader.ReadKeyFloat("PositionX");
            this.PositionY = (float)reader.ReadKeyFloat("PositionY");
            this.PositionZ = (float)reader.ReadKeyFloat("PositionZ");

            this.OrientationX = (float)reader.ReadKeyFloat("OrientationX");
            this.OrientationY = (float)reader.ReadKeyFloat("OrientationY");
            this.OrientationZ = (float)reader.ReadKeyFloat("OrientationZ");
            this.OrientationW = (float)reader.ReadKeyFloat("OrientationW");

            this.ScaleX = (float)reader.ReadKeyFloat("ScaleX");
            this.ScaleY = (float)reader.ReadKeyFloat("ScaleY");
            this.ScaleZ = (float)reader.ReadKeyFloat("ScaleZ");
        }
コード例 #7
0
        private void _Read(TableStreamReader reader)
        {
            reader.Blob("SceneLevelData", () =>
            {
                this.Name = reader.ReadKeyString("Name");

                this.ChunkWidth  = (float)reader.ReadKeyFloat("ChunkWidth");
                this.ChunkHeight = (float)reader.ReadKeyFloat("ChunkHeight");

                this.ChunkColumns = (int)reader.ReadKeyNumber("ChunkColumns");
                this.ChunkRows    = (int)reader.ReadKeyNumber("ChunkRows");

                this.Chunks = new List <SceneChunkRefData>();
                var count   = reader.ReadKeyNumber("Chunks");
                for (var i = 0; i < count; ++i)
                {
                    var chunkRefData = new SceneChunkRefData();
                    chunkRefData._Read(reader);
                    this.Chunks.Add(chunkRefData);
                }
            });
        }
コード例 #8
0
ファイル: ScenePrefabData.cs プロジェクト: Hengle/Unity3D-1
        /// <summary>
        ///
        /// </summary>
        /// <param name="reader"></param>
        protected override void Read(TableStreamReader reader)
        {
            base.Read(reader);

            this.Path = reader.ReadKeyString("Path");
        }