public void Serialize(OverloadLevelConvertSerializer serializer)
 {
     serializer.StartCmd(CommandId);
     serializer.SerializeX(this, x => x.thisTransformGuid);
     serializer.SerializeX(this, x => x.newParentGuid);
     serializer.FinishCmd(CommandId);
 }
        public void Serialize(OverloadLevelConvertSerializer serializer)
        {
            serializer.StartCmd(CommandId);
            serializer.SerializeX(this, x => x.AssetFileGuid);
            serializer.SerializeX(this, x => x.AssetGuid);

            if (serializer.IsWriting)
            {
                // Write out the name of the type
                string assetDataTypeName = AssetObjectType.FullName;
                serializer.SerializeOut_string(assetDataTypeName);
            }
            else
            {
                // Read in the name of the type
                string assetDataTypeName = serializer.SerializeIn_string();
                this.AssetObjectType = Type.GetType(assetDataTypeName);
#if !OVERLOAD_LEVEL_EDITOR
                if (this.AssetObjectType == null)
                {
                    // Look for the type in UnityEngine, as not all the Unity types resolve on Type.GetType
                    var unityEngineAsm = System.Reflection.Assembly.GetAssembly(typeof(UnityEngine.Mesh));
                    this.AssetObjectType = unityEngineAsm.GetType(assetDataTypeName);
                }
#endif
            }
            serializer.FinishCmd(CommandId);
        }
 public void Serialize(OverloadLevelConvertSerializer serializer)
 {
     serializer.StartCmd(CommandId);
     serializer.SerializeX(this, x => x.assemblyAssetName);
     serializer.SerializeX(this, x => x.bundleRefGuid);
     serializer.FinishCmd(CommandId);
 }
 public void Serialize(OverloadLevelConvertSerializer serializer)
 {
     serializer.StartCmd(CommandId);
     serializer.SerializeX(this, x => x.prefabName);
     serializer.SerializeX(this, x => x.prefabAssetReferenceGuid);
     serializer.FinishCmd(CommandId);
 }
 public void Serialize(OverloadLevelConvertSerializer serializer)
 {
     serializer.StartCmd(CommandId);
     serializer.SerializeX(this, x => x.gameManagerName);
     serializer.SerializeX(this, x => x.levelObjectInitializerComponentGuid);
     serializer.FinishCmd(CommandId);
 }
Beispiel #6
0
        public static object Serialize_LevelGeometry(object obj, System.Type type, OverloadLevelConvertSerializer serializer)
        {
            LevelGeometry geom = (LevelGeometry)obj;

            serializer.SerializeX(geom, x => x.name);
            serializer.SerializeX(geom, x => x.FileName);
            serializer.SerializeX(geom, x => x.Segments);
            serializer.SerializeX(geom, x => x.Portals);
            serializer.SerializeX(geom, x => x.SegmentVerts);
            serializer.SerializeX(geom, x => x.SegmentRootIndicesIntoPerSegmentBSPData);
            serializer.SerializeX(geom, x => x.PerSegmentBSPData);
            serializer.SerializeX(geom, x => x.SegmentAABBTree);
            serializer.SerializeX(geom, x => x.Chunks);
            serializer.SerializeX(geom, x => x.ChunkPortals);
            serializer.SerializeX(geom, x => x.PortalGeomVerts);
            serializer.SerializeX(geom, x => x.PortalGeomTriangles);
            serializer.SerializeX(geom, x => x.PortalGeomDatas);
            serializer.SerializeX(geom, x => x.ChallengeModeDataText);
            serializer.SerializeX(geom, x => x.SegmentToSegmentVisibility);
            serializer.SerializeX(geom, x => x.PathDistances);
            serializer.SerializeX(geom, x => x.GeometryHash);
            serializer.SerializeX(geom, x => x.RobotSpawnPointsHash);

            return(geom);
        }
 public void Serialize(OverloadLevelConvertSerializer serializer)
 {
     serializer.StartCmd(CommandId);
     serializer.SerializeX(this, x => x.RelativeAssetPath);
     serializer.SerializeX(this, x => x.AssetFileGuid);
     serializer.FinishCmd(CommandId);
 }
 public void Serialize(OverloadLevelConvertSerializer serializer)
 {
     serializer.StartCmd(CommandId);
     serializer.SerializeX(this, x => x.materialGuid);
     serializer.SerializeX(this, x => x.keyword);
     serializer.FinishCmd(CommandId);
 }
 public void Serialize(OverloadLevelConvertSerializer serializer)
 {
     serializer.StartCmd(CommandId);
     serializer.SerializeX(this, x => x.thisGameObjectGuid);
     serializer.SerializeX(this, x => x.layer);
     serializer.FinishCmd(CommandId);
 }
 public void Serialize(OverloadLevelConvertSerializer serializer)
 {
     serializer.StartCmd(CommandId);
     serializer.SerializeX(this, x => x.thisGameObjectGuid);
     serializer.SerializeX(this, x => x.newComponentGuid);
     serializer.SerializeX(this, x => x.componentTypeName);
     serializer.FinishCmd(CommandId);
 }
 public void Serialize(OverloadLevelConvertSerializer serializer)
 {
     serializer.StartCmd(CommandId);
     serializer.SerializeX(this, x => x.prefabAssetReferenceGuid);
     serializer.SerializeX(this, x => x.resultGameObjectGuid);
     serializer.SerializeX(this, x => x.resultGameObjectTransformGuid);
     serializer.FinishCmd(CommandId);
 }
Beispiel #12
0
        public static object Serialize_PortalGeomData(object _obj, System.Type type, OverloadLevelConvertSerializer serializer)
        {
            PortalGeomData obj = (PortalGeomData)_obj;

            serializer.SerializeX(obj, x => x.NumTriangles);
            serializer.SerializeX(obj, x => x.StartIndex);
            return(obj);
        }
 public void Serialize(OverloadLevelConvertSerializer serializer)
 {
     serializer.StartCmd(CommandId);
     serializer.SerializeX(this, x => x.relativeBundleFolder);
     serializer.SerializeX(this, x => x.bundleName);
     serializer.SerializeX(this, x => x.bundleRefGuid);
     serializer.FinishCmd(CommandId);
 }
 public void Serialize(OverloadLevelConvertSerializer serializer)
 {
     serializer.StartCmd(CommandId);
     serializer.SerializeX(this, x => x.materialAssetGuid);
     serializer.SerializeX(this, x => x.geometryType);
     serializer.SerializeX(this, x => x.materialLookupName);
     serializer.FinishCmd(CommandId);
 }
        public void Serialize(OverloadLevelConvertSerializer serializer)
        {
            serializer.StartCmd(CommandId);

            int    width         = 0;
            int    height        = 0;
            string formatStr     = UnityEngine.TextureFormat.RGB24.ToString();
            string filterModeStr = UnityEngine.FilterMode.Bilinear.ToString();
            string name          = string.Empty;
            bool   mipmap        = false;

            if (serializer.IsWriting)
            {
                width         = texture.width;
                height        = texture.height;
                formatStr     = texture.format.ToString();
                filterModeStr = texture.filterMode.ToString();
                name          = texture.name;
#if OVERLOAD_LEVEL_EDITOR
                mipmap = texture.mipmap;
#endif
            }

            serializer.SerializeX(this, x => x.texture2DGuid);
            serializer.Serialize(ref width);
            serializer.Serialize(ref height);
            serializer.Serialize(ref formatStr);
            serializer.Serialize(ref mipmap);
            serializer.Serialize(ref filterModeStr);
            serializer.Serialize(ref name);

            UnityEngine.Color32[] pixelData = null;
            if (serializer.IsWriting)
            {
                serializer.SerializeOut_array(typeof(UnityEngine.Color32), texture.GetPixels32());
            }
            else
            {
                pixelData = (UnityEngine.Color32[])serializer.SerializeIn_array(typeof(UnityEngine.Color32));
            }

            if (!serializer.IsWriting)
            {
                UnityEngine.TextureFormat format = (UnityEngine.TextureFormat)Enum.Parse(typeof(UnityEngine.TextureFormat), formatStr);
                this.texture = new UnityEngine.Texture2D(width, height, format, mipmap);

                UnityEngine.FilterMode filterMode = (UnityEngine.FilterMode)Enum.Parse(typeof(UnityEngine.FilterMode), filterModeStr);
                this.texture.filterMode = filterMode;

                this.texture.name = name;

                this.texture.SetPixels32(pixelData);
                this.texture.Apply();
            }

            serializer.FinishCmd(CommandId);
        }
 public void Serialize(OverloadLevelConvertSerializer serializer)
 {
     serializer.StartCmd(CommandId);
     serializer.SerializeX(this, x => x.includeChildren);
     serializer.SerializeX(this, x => x.componentName);
     serializer.SerializeX(this, x => x.gameObjectGuid);
     serializer.SerializeX(this, x => x.searchResultGuid);
     serializer.FinishCmd(CommandId);
 }
Beispiel #17
0
 public static object Serialize_SpawnPoint(object _obj, System.Type type, OverloadLevelConvertSerializer serializer)
 {
     LevelData.SpawnPoint obj = (LevelData.SpawnPoint)_obj;
     serializer.SerializeX(obj, x => x.position);
     serializer.SerializeX(obj, x => x.orientation);
     serializer.SerializeX(obj, x => x.m_current_segment);
     serializer.SerializeX(obj, x => x.multiplayer_team_association_mask);
     return(obj);
 }
Beispiel #18
0
        public static object Serialize_ChunkData(object _obj, System.Type type, OverloadLevelConvertSerializer serializer)
        {
            ChunkData obj = (ChunkData)_obj;

            serializer.SerializeX(obj, x => x.PortalIndices);
            serializer.SerializeX(obj, x => x.Segnums);
            serializer.SerializeX(obj, x => x.IsEnergyCenter);
            return(obj);
        }
Beispiel #19
0
        public static object Serialize_PortalData(object _obj, System.Type type, OverloadLevelConvertSerializer serializer)
        {
            PortalData obj = (PortalData)_obj;

            serializer.SerializeX(obj, x => x.MasterSegmentIndex);
            serializer.SerializeX(obj, x => x.MasterSideIndex);
            serializer.SerializeX(obj, x => x.SlaveSegmentIndex);
            serializer.SerializeX(obj, x => x.SlaveSideIndex);
            serializer.SerializeX(obj, x => x.Polygons);
            // Note: not serializing .DoorData, which is only used in the runtime
            return(obj);
        }
Beispiel #20
0
        public static object Serialize_ChunkPortal(object _obj, System.Type type, OverloadLevelConvertSerializer serializer)
        {
            ChunkPortal obj = (ChunkPortal)_obj;

            serializer.SerializeX(obj, x => x.Num);
            serializer.SerializeX(obj, x => x.Chunknum);
            serializer.SerializeX(obj, x => x.Segnum);
            serializer.SerializeX(obj, x => x.Sidenum);
            serializer.SerializeX(obj, x => x.ConnectedChunk);
            serializer.SerializeX(obj, x => x.ConnectedPortal);
            serializer.SerializeX(obj, x => x.PortalGeomNum);
            return(obj);
        }
 public void Serialize(OverloadLevelConvertSerializer serializer)
 {
     serializer.StartCmd(CommandId);
     serializer.SerializeX(this, x => x.materialGuid);
     serializer.SerializeX(this, x => x.shaderGuid);
     serializer.SerializeX(this, x => x.color);
     serializer.SerializeX(this, x => x.enableInstancing);
     serializer.SerializeX(this, x => x.mainTexture);
     serializer.SerializeX(this, x => x.mainTextureOffset);
     serializer.SerializeX(this, x => x.mainTextureScale);
     serializer.SerializeX(this, x => x.renderQueue);
     serializer.SerializeX(this, x => x.shaderKeywords);
     serializer.SerializeX(this, x => x.name);
     serializer.FinishCmd(CommandId);
 }
Beispiel #22
0
        public static object Serialize_AABB(object _obj, System.Type type, OverloadLevelConvertSerializer serializer)
        {
            AABB obj = (AABB)_obj;

            if (serializer.IsWriting)
            {
                serializer.SerializeOut_vector3(obj.MinXYZ);
                serializer.SerializeOut_vector3(obj.MaxXYZ);
            }
            else
            {
                obj.MinXYZ = serializer.SerializeIn_vector3();
                obj.MaxXYZ = serializer.SerializeIn_vector3();
            }
            return(obj);
        }
Beispiel #23
0
        public static object Serialize_BSPTreeNode(object _obj, System.Type type, OverloadLevelConvertSerializer serializer)
        {
            BSPTreeNode obj = (BSPTreeNode)_obj;

            if (serializer.IsWriting)
            {
                serializer.SerializeOut_vector4(obj.PlaneEq);
                serializer.SerializeOut_int32(obj.BackNodeIndex);
                serializer.SerializeOut_int32(obj.FrontNodeIndex);
            }
            else
            {
                obj.PlaneEq        = serializer.SerializeIn_vector4();
                obj.BackNodeIndex  = serializer.SerializeIn_int32();
                obj.FrontNodeIndex = serializer.SerializeIn_int32();
            }
            return(obj);
        }
Beispiel #24
0
        public static object Serialize_AABBTreeNode(object _obj, System.Type type, OverloadLevelConvertSerializer serializer)
        {
            AABBTreeNode obj = (AABBTreeNode)_obj;

            if (serializer.IsWriting)
            {
                serializer.SerializeOut_object(obj.Bounds);
                serializer.SerializeOut_int32(obj.MinChildIndex);
                serializer.SerializeOut_int32(obj.MaxChildIndex);
                serializer.SerializeOut_int32(obj.SegmentIndex);
            }
            else
            {
                obj.Bounds        = (AABB)serializer.SerializeIn_object(typeof(AABB));
                obj.MinChildIndex = serializer.SerializeIn_int32();
                obj.MaxChildIndex = serializer.SerializeIn_int32();
                obj.SegmentIndex  = serializer.SerializeIn_int32();
            }
            return(obj);
        }
Beispiel #25
0
 public static void RegisterSerializers()
 {
     OverloadLevelConvertSerializer.RegisterSerializer(typeof(SegmentLightInfo), Serializers.Serialize_SegmentLightInfo, 0x1A6A41130A1A026F);
     OverloadLevelConvertSerializer.RegisterSerializer(typeof(SegmentReflectionProbeInfo), Serializers.Serialize_SegmentReflectionProbeInfo, 0x544F641426210104);
     OverloadLevelConvertSerializer.RegisterSerializer(typeof(LevelData.PortalDoorConnection), Serializers.Serialize_PortalDoorConnection, 0x7A1A461C0338151A);
     OverloadLevelConvertSerializer.RegisterSerializer(typeof(LevelData.SpawnPoint), Serializers.Serialize_SpawnPoint, 0x4048456A0F034C1B);
     OverloadLevelConvertSerializer.RegisterSerializer(typeof(LevelGeometry), Serializers.Serialize_LevelGeometry, 0x4F1D0629010A9502);
     OverloadLevelConvertSerializer.RegisterSerializer(typeof(UnityEngine.Mesh), Serializers.Serialize_UnityMesh, 0x1625382F0C613911);
     OverloadLevelConvertSerializer.RegisterSerializer(typeof(PortalPolygonData), Serializers.Serialize_PortalPolygonData, 0x8A188B0EB600690B);
     OverloadLevelConvertSerializer.RegisterSerializer(typeof(PortalData), Serializers.Serialize_PortalData, 0x081B0F4622022E04);
     OverloadLevelConvertSerializer.RegisterSerializer(typeof(SegmentData), Serializers.Serialize_SegmentData, 0x175B612B03657695);
     OverloadLevelConvertSerializer.RegisterSerializer(typeof(BSPTreeNode), Serializers.Serialize_BSPTreeNode, 0x458B012301C00016);
     OverloadLevelConvertSerializer.RegisterSerializer(typeof(AABB), Serializers.Serialize_AABB, 0x3F492A0C1E022C05);
     OverloadLevelConvertSerializer.RegisterSerializer(typeof(AABBTreeNode), Serializers.Serialize_AABBTreeNode, 0x002A050200321E0E);
     OverloadLevelConvertSerializer.RegisterSerializer(typeof(ChunkData), Serializers.Serialize_ChunkData, 0x470116442D051D07);
     OverloadLevelConvertSerializer.RegisterSerializer(typeof(ChunkPortal), Serializers.Serialize_ChunkPortal, 0xAD3C0D0200150210);
     OverloadLevelConvertSerializer.RegisterSerializer(typeof(PortalGeomTriangle), Serializers.Serialize_PortalGeomTriangle, 0x1A7C981C322F3DD3);
     OverloadLevelConvertSerializer.RegisterSerializer(typeof(PortalGeomData), Serializers.Serialize_PortalGeomData, 0x025CCD9E09040B00);
     OverloadLevelConvertSerializer.RegisterSerializer(typeof(PathDistanceData), Serializers.Serialize_PathDistanceData, 0x5019100A0A0E0365);
 }
        public void Serialize(OverloadLevelConvertSerializer serializer)
        {
            serializer.StartCmd(CommandId);
            serializer.SerializeX(this, x => x.thisComponentGuid);
            serializer.SerializeX(this, x => x.propertyName);
            if (serializer.IsWriting)
            {
                serializer.SerializeOut_byte((byte)propertyValueNamespace);
                serializer.SerializeOut_byte((byte)targetType);
                serializer.SerializeOut_unknown(propertyValue, propertyValue.GetType());
            }
            else
            {
                propertyValueNamespace = (ValueNamespace)serializer.SerializeIn_byte();
                targetType             = (TargetType)serializer.SerializeIn_byte();
                propertyValue          = serializer.SerializeIn_unknown();
            }

            serializer.FinishCmd(CommandId);
        }
Beispiel #27
0
        public static object Serialize_SegmentData(object _obj, System.Type type, OverloadLevelConvertSerializer serializer)
        {
            SegmentData obj = (SegmentData)_obj;

            serializer.SerializeX(obj, x => x.VertIndices);
            serializer.SerializeX(obj, x => x.Center);
            serializer.SerializeX(obj, x => x.MinCornerPos);
            serializer.SerializeX(obj, x => x.MaxCornerPos);
            serializer.SerializeX(obj, x => x.ApproxSidePlaneEquations);
            serializer.SerializeX(obj, x => x.Portals);
            serializer.SerializeX(obj, x => x.ChunkNum);
            serializer.SerializeX(obj, x => x.DecalFlags);
            serializer.SerializeX(obj, x => x.DoorFlags);
            serializer.SerializeX(obj, x => x.Dark);
            serializer.SerializeX(obj, x => x.Pathfinding);
            serializer.SerializeX(obj, x => x.ExitSegment);
            // Note: skip .Lights           -- it isn't used in export, only at runtime
            // Note: skip .ReflectionProbes -- it isn't used in export, only at runtime
            serializer.SerializeX(obj, x => x.DeformationHeights);
            serializer.SerializeX(obj, x => x.WarpDestinationSegs);
            return(obj);
        }
        public void Serialize(OverloadLevelConvertSerializer serializer)
        {
            serializer.StartCmd(CommandId);
            serializer.SerializeX(this, x => x.AssetGuid);
            if (serializer.IsWriting)
            {
                serializer.SerializeOut_ExistingObject(this.AssetGuid, this.AssetData);
            }
            else
            {
                // Lookup this object in the asset database
                this.AssetData = null;
#if !OVERLOAD_LEVEL_EDITOR
                // Lookup the UnityEngine.Object from the Guid
                this.AssetData = ((UserLevelLoader)serializer.Context).ResolveAsset(this.AssetGuid);
                if (this.AssetData == null)
                {
                    // TODO: Report error
                }
#endif
                serializer.SerializeIn_ExistingObject(this.AssetData);
            }
            serializer.FinishCmd(CommandId);
        }
Beispiel #29
0
        public static object Serialize_PortalPolygonData(object _obj, System.Type type, OverloadLevelConvertSerializer serializer)
        {
            PortalPolygonData obj = (PortalPolygonData)_obj;

            if (serializer.IsWriting)
            {
                serializer.SerializeOut_vector3(obj.Normal);
                serializer.SerializeOut_float(obj.PlaneEqD);
                serializer.SerializeOut_array(typeof(int), obj.VertIndices);
            }
            else
            {
                obj.Normal      = serializer.SerializeIn_vector3();
                obj.PlaneEqD    = serializer.SerializeIn_float();
                obj.VertIndices = (int[])serializer.SerializeIn_array(typeof(int));
            }
            return(obj);
        }
 public void Serialize(OverloadLevelConvertSerializer serializer)
 {
     serializer.StartCmd(CommandId);
     serializer.FinishCmd(CommandId);
 }