Ejemplo n.º 1
0
        public ref SystemGhostData GetGhostData(uint systemId)
        {
            if (!UnsafeHashMap.ContainsKey(SystemToGhostIds, systemId))
            {
                var data = new SystemGhostData {
                    GhostIds = new UnsafeList <uint>(64, Allocator.Persistent)
                };
                UnsafeHashMap.Set(SystemToGhostIds, systemId, UnsafeUtility.AddressOf(ref data), UnsafeUtility.SizeOf <SystemGhostData>());

                return(ref UnsafeUtility.AsRef <SystemGhostData>(UnsafeHashMap.GetPtr(SystemToGhostIds, systemId)));
            }

            return(ref UnsafeUtility.AsRef <SystemGhostData>(UnsafeHashMap.GetPtr(SystemToGhostIds, systemId)));
        }
Ejemplo n.º 2
0
        public ref SystemChunkData GetChunkData(uint systemId)
        {
            if (!UnsafeHashMap.ContainsKey(SystemToChunks, systemId))
            {
                var data = new SystemChunkData {
                    Chunks = new UnsafeList <ArchetypeChunk>(64, Allocator.Persistent)
                };
                UnsafeHashMap.Set(SystemToChunks, systemId, UnsafeUtility.AddressOf(ref data), UnsafeUtility.SizeOf <SystemChunkData>());

                return(ref UnsafeUtility.AsRef <SystemChunkData>(UnsafeHashMap.GetPtr(SystemToChunks, systemId)));
            }

            return(ref UnsafeUtility.AsRef <SystemChunkData>(UnsafeHashMap.GetPtr(SystemToChunks, systemId)));
        }