Пятница, 29 Марта 2024, 07:46

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Менеджер объектов юнити
Менеджер объектов юнити
RangerДата: Пятница, 07 Февраля 2014, 09:59 | Сообщение # 1
почти ветеран
Сейчас нет на сайте
Коллеги,
У меня возникла задача по поиску и управлению большим количеством объектов.
getcomponent по отзывам работает чрезвычайно медленно. Возникла мысль написать менеджер объектов в виде:
Код
Dictionary<GameObject, Component> AllActiveObjects  =   new Dictionary<GameObject, Component>();

Вопрос:
1. Кто нибудь сталкивался с подобной задачей??

///2. В качестве ключа используется референс на GameObject. Можно ли быть уверенным, что GC не изменит референс самого объекта? решено... не будет.




Сообщение отредактировал Ranger - Пятница, 07 Февраля 2014, 10:07
nwsxДата: Суббота, 08 Февраля 2014, 17:41 | Сообщение # 2
постоянный участник
Сейчас нет на сайте
выкладывай свой менеджер когда доделаешь smile

Westboro
Dungeon Journey на Google Play
RangerДата: Суббота, 08 Февраля 2014, 21:31 | Сообщение # 3
почти ветеран
Сейчас нет на сайте
ишшшш... smile smile smile

KamiRoninДата: Суббота, 08 Февраля 2014, 22:14 | Сообщение # 4
почти ветеран
Сейчас нет на сайте
смотря какой компонент будет в Value.

если твой собственный скрипт, то одно, если юньковский компонент - другое.
отвечая на вопрос - изменит ли GC референс - то не должен, потому как c# работает по ссылке везде где ему иное прямо не сказано...
и можно доступ взять в трай-кэтч.

для собственного скрипта (ну например типа ZmobyAI) - я делал так:
Код


public class ZombyAI : Monobehaviuor{
       public static List<ZombyAI> AllZomby;

       void Awake(){
             if(AllZomby == null) AllZomby = new List<ZombyAI>();
              
             AllZomby.Add(this);             
       }
       .....
       public DestroyZomby(float aTime){
              AllZomby.Remove(this);
              GameObject.Destroy(this, aTime);
       }
}



и все было очень быстро.. а так про пул объектов и тут и по сети уже много инфы.


Мыслю - значит программирую...
Конструктивная критика - умных ведет к совершенству...
Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
Форум игроделов » Движки для разработки игр и сложные системы разработки » Unity » Менеджер объектов юнити
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг