Войти
UnityФорумОбщее

Unity3d - ограничения

Страницы: 1 2 343 44 Следующая »
#0
12:24, 19 мар. 2013

Привет, друзья!

Сразу к делу. Есть такой движок Unity3d. Хотелось бы узнать о его принципиальных ограничениях - есть ли что-то, чего на unity сделать нельзя, или
теперь вообще нет смысла кодить под чистый DirectX или OpenGL, т.к. двиги типа Unity прикрывают полностью все аспекты создания игр?

Я с Юнити близко не знаком. Поэтому могу лишь попробовать угадать слабости.


1. Scene-based. Мне кажется, что Unity плохо подходит (совсем не подходит?) для огромных, бесшовных миров, т.к. в редакторе Unity их не создашь.
Так ли это?

2. Процедурная генерация чего бы то ни было. Опять таки, мне кажется, что Юнити приспособлен для загрузки объектов извне и установки ручками
на сцену.

3. Многопоточность. Я могу дико ошибаться, но у меня создалось ощущение, что в Unity3d c# не настоящий =)  Иными словами, он не обладает полной мощью
C#, а используется лишь как скриптовый язык для манипуляции объектами движка. Откуда может следовать, что нельзя делать такие обычные вещи, как, например,
создание потока, сокета и т.п.

4. Сетевая часть. Ну наверняка же есть какие-то ограничения, связанные с сетевой частью. Например, наверняка нельзя создать встроенный сервер, который
принимает подключения от других копий данной игры.

Больше ничего не приходит в голову, потому обращаюсь за помощью к великому и ужасному коллективному разуму. Пожалуйста, если у кого есть какие идеи, поделитесь!


#1
13:13, 19 мар. 2013

когда кажется - креститься надо.
К чему весь этот набор домыслов?

1)Для больших миров она подходит так же. как любой другой двиг. Кроме подземелий.
Один фиг никто никогда сразу весь мир не загружает, в этом просто нет смысла.

2)Вообще из пальца высосано

3)Потоки - да, но есть короунтины. Причем тут сокеты? нормально пашут

4)Тоже мимо :-)

#2
13:21, 19 мар. 2013

IIyxMASTER
это просто разогреть беседу.
Основной вопрос - теперь вообще нет смысла кодить под чистый DirectX или OpenGL, т.к. двиги типа Unity прикрывают полностью все аспекты создания игр?

#3
13:27, 19 мар. 2013

создание конкурентноспособного движка сейчас - дорого, долго, и в 99% случаев неоправданно.
Только для неординарных проектов типа майнкрафта можно углядеть смысл для этого.
С каждым годом пропасть между самодельными подделками и двигателями вроде юнити, UE и CE увеличивается, дальше будет только хуже :-)

#4
13:31, 19 мар. 2013

IIyxMASTER
> 2)Вообще из пальца высосано
Например, насколько я знаю, механизм NavMesh не работает с уровнями генерируемыми на ходу. Хотя, конечно, никто не мешает сделать свой поиск пути.

#5
13:35, 19 мар. 2013

ну никто не говорит о создании движке, тем более о "конкурентоспособном" движке на продажу =) Сейчас под движком,
если судить по Unity и UE (CE не смотрел), вообще понимается некая среда, где можно игру собрать вообще не будучи программистом,
просто как в фотошопе накидать ассетов - и готово. Мне, например, больше импонируют фреймворки, просто-напросто упрощающие
некоторые базовые действия - загрузка моделей, материалов, камера, шейдеры, коллизии и т.п. А казуальный редактор мира мне
не нравится вовсе.

Вообще, данный вопрос из разряда теоретических скорее. Не хотелось бы, скажем, ввязаться в проект на Unity3D, а потом обнаружить
что на нём в принципе нельзя создать некоторые вещи.

#6
13:48, 19 мар. 2013

kipar
темболее что уже существуют готовые варианты :-)

Mephisto std
Ну любишь велосипеды изобретать - твое дело :-)
Некоторым больше нравится делать игры, а не инструменты для создания игр. Каждому свое

#7
13:56, 19 мар. 2013

Работа на юнити в больших проектах, это борьба с юнити. Закрытая система. Можно сделать много чего, но иногда очень большой ценой.

#8
14:14, 19 мар. 2013

А как же поддержка расширения? Ведь в совсем больших проектах тот же Unreal каждый точит под себя. Смотрите, какую красоту сделали в DmC)

#9
14:16, 19 мар. 2013

my.name
ох пожалуйста поподробней, с красочными примерами из жизни!!!

Naykin
Так... хгм... в Unity она есть?

#10
15:11, 19 мар. 2013

Да вроде ко многим конструкторам можно плагины писать.

#11
16:48, 19 мар. 2013

my.name
> Работа на юнити в больших проектах, это борьба с юнити.
Это есть во всех движках, у которых сорсы закрыты.
Mephisto std
> нельзя делать такие обычные вещи, как, например,
> создание потока
Можно. Нельзя обращаться к структурам Юнити из своего потока. Можно в поток вынести сложные расчеты. А результат отдавать Юнити.
Mephisto std
> Так... хгм... в Unity она есть?
Расширение? Очень и очень широкое (увы не безграничное). Особенно приятно, что можно расширять редактор.

#12
18:53, 19 мар. 2013

my.name
> Работа на юнити в больших проектах, это борьба с юнити.
Это когда вместо втыкания костыля в движок приходиться думать?)

#13
18:56, 19 мар. 2013

в другой тред писал немного батхерта:
http://www.gamedev.ru/code/forum/?id=174088#m8

#14
21:12, 19 мар. 2013

Mr F

хуже всего юнити для шейдерописателей - дофига ограничений: нельзя передавать массивы в шейдер, нельзя ставить дефайны (нельзя сделать убершейдер), нельзя импортировать текстуры 16/32 битные, 3д текстуры слышал только недавно приклеили, кубмапы префильтрованные из ддс нельзя добавлять, CG компилер много чего отказывается компилить там где обычный MS HLSL компилер прекрасно справляется, для передачи параметров в шейдер необходимо создавать новый материал (например если сам юнити умеет в один материал сувать на рендере разные лайтмапы - то самому так не сделаешь, копируй 100 копий материала, потом если какой общий параметр поменять надо у них - приёдтся скрипты писать), в общем ужасно огорчило всё это говно.
в остальном юнити весьма приятен, если не ожидать от него ААА движка, а ожидать что-то находящееся в вечной бета версии) система гуи неюзабельна, недавно сломали паковку атласов лайтмапов... но для того чтобы быстро прототипировать геймплей, лучше средства я не видел.

это я так, на всякий случай скопировал, чтобы в одном треде было
Если с шейдерами и правда так, то это не очень хорошо.

Страницы: 1 2 343 44 Следующая »
UnityФорумОбщее

Тема в архиве.