Ejemplo n.º 1
0
        // --------------------------------------------------
        // OCCLUDER DATA

        private static SerializableOccluder[] GetStaticOccluderData()
        {
            // Get all Occluders and Serialize
            var staticOccluderObjects = GetStaticOccluderRenderers();
            var customOccluderData    = new SerializableOccluder[staticOccluderObjects.Length];

            for (int i = 0; i < customOccluderData.Length; i++)
            {
                customOccluderData[i] = staticOccluderObjects[i].Serialize();
            }
            return(customOccluderData);
        }
Ejemplo n.º 2
0
        // --------------------------------------------------
        // OCCLUDER PROXY

        private static MeshCollider CreateOccluderProxy(SerializableOccluder occluder)
        {
            // Initialize proxy object
            var go        = new GameObject("OccluderProxy", typeof(MeshCollider));
            var transform = go.transform;
            var collider  = go.GetComponent <MeshCollider>();

            // Set occluder data
            transform.position   = occluder.positionWS;
            transform.rotation   = occluder.rotationWS;
            transform.localScale = occluder.scaleWS;
            collider.sharedMesh  = occluder.mesh;
            return(collider);
        }
Ejemplo n.º 3
0
        private static SerializableOccluder[] GetCustomOccluderData()
        {
            // Get all PortalOccluders in scene
            var customOccluderObjects = UnityEngine.Object.FindObjectsOfType <PortalOccluder>();

            // Serialize
            var customOccluderData = new SerializableOccluder[customOccluderObjects.Length];

            for (int i = 0; i < customOccluderData.Length; i++)
            {
                customOccluderData[i] = customOccluderObjects[i].Serialize();
            }
            return(customOccluderData);
        }