Ejemplo n.º 1
0
        private void ReleaseOldData()
        {
            Assert.IsTrue(m_objects.Count == m_renderers.Count);
            for (int i = 0; i < m_objects.Count; i++)
            {
                var go = m_objects[i];
                // If the component does not exist it means nothing else has been added as well
                if (go == null)
                {
                    continue;
                }

#if DEBUG
                go.name = m_prefabName;
#endif

                MeshFilter filter = go.GetComponent <MeshFilter>();
                filter.sharedMesh.Clear(false);
                Globals.MemPools.MeshPool.Push(filter.sharedMesh);
                filter.sharedMesh = null;

                Renderer renderer = go.GetComponent <Renderer>();
                renderer.sharedMaterial = null;

                GameObjectProvider.PushObject(m_prefabName, go);
            }

            m_objects.Clear();
            m_renderers.Clear();
        }
Ejemplo n.º 2
0
        private void ReleaseOldData()
        {
            Assert.IsTrue(m_drawCalls.Count == m_drawCallRenderers.Count);
            for (int i = 0; i < m_drawCalls.Count; i++)
            {
                var go = m_drawCalls[i];
                // If the component does not exist it means nothing else has been added as well
                if (go == null)
                {
                    continue;
                }

                var filter = go.GetComponent <MeshFilter>();
                filter.sharedMesh.Clear(false);
                Globals.Pools.MeshPool.Push(filter.sharedMesh);
                filter.sharedMesh = null;

                GameObjectProvider.PushObject(GOPChunk, go);
            }

            m_drawCalls.Clear();
            m_drawCallRenderers.Clear();
        }