Gamedev


Ответить в тред Ответить в тред

<<
Назад | Вниз | Каталог | Обновить тред | Автообновление
1037 133 251

unity thread 2018.3 edition Аноним 22/09/18 Суб 10:09:45 5280481
DYsnb5uXkAAsysv[...].jpeg (69Кб, 1024x512)
1024x512
Аноним 22/09/18 Суб 10:14:16 5280512
что в ECS используют вместо SendMessage?
Аноним 22/09/18 Суб 11:15:39 5280533
>>528051
Допустим, есть entity с компонентом BulletComponent. Сейчас я в сообщении коллизии в этом компоненте просто использую SendMessage для отправки сообще об уроне и все. Остальные компоненты на столкнувшемся объекте обрабатывают сообщение как угодно. В этом гениальная простота ООП.

А вот как это сделать с ECS? Не понимаю.
Аноним 22/09/18 Суб 11:23:25 5280554
>>528053
может ты зайдешь в гугл хотя бы на 1 сек? прежде чем задавать даунский вопрос по фреймворку нужно его хотя бы ЧУТЬ изучить и понять принцип работы?
Аноним 22/09/18 Суб 11:26:45 5280565
Аноним 22/09/18 Суб 11:29:33 5280576
>>528055
>ко-ко-ко
Я уже в ECS не один месяц пытаюсь разобраться вообще-то.
Если ты такой гуру, то поделись знаниями.
Аноним 22/09/18 Суб 11:57:29 5280657
>>528056
А теперь добавляешь отображение урона на экране, и вся система ломается.
Аноним 22/09/18 Суб 12:02:02 5280668
>>528065
С использованием SendMessage это делает добавлением одного(!) компонента без изменения существующей системы.
Аноним 22/09/18 Суб 12:08:18 5280679
>>528065
Всплывающие циферки над врагами или что? Для этого создаёшь отдельную систему, которая не будет ломать текущую структуру игры.
Аноним 22/09/18 Суб 12:21:26 52807010
>>528067
Нет, не получится просто создать систему.
Аноним 22/09/18 Суб 12:22:11 52807111
>>528070
Почему? Ты не позволишь?
Аноним 22/09/18 Суб 12:32:47 52807312
Судя по тому, что я видел, ECS и Unity ECS - две абсолютно разные вещи. В юнити это просто строенная система для удобной работы с большим количеством объектов.

А вот здесь тру-ECS, на котором строится игра
>>528056
Аноним 22/09/18 Суб 13:18:15 52807613
>>528073
>тру-ECS
тру ECS - это data-oriented дизайн. А это какой-то тру говнокод. То же самое делается на MonoBehaviour намного проще.
Аноним 22/09/18 Суб 15:28:24 52808614
>>528076
>тру ECS - это data-oriented дизайн.
Необязательно, хотя это один из основных вариантов. Суть же в отказе от калечного ООП-дизайна и четкого разделения данных и логики. Можешь хоть из постгреса свои компоненты тягать.
Аноним 22/09/18 Суб 15:30:23 52808715
>>528086
>четкого разделения данных и логики
Но нахуя? Прочел >>528056 и не понятно, зачем такой анальный цирк нужен? Байтоебства ради?
Аноним 22/09/18 Суб 15:33:26 52808816
Аноним 22/09/18 Суб 15:33:43 52808917
>>528087
>Но нахуя?
Чтобы получить хороший, годный, читаемый и расширяемый код вместо ООП-лапши. Плюс при добавлении некоторых нехитрых констрейнтов такая архитектура позволяет здорово увеличить производительность а можно не добавлять и не увеличивать, вне зависимости от этого ецс будет лучше чисто с точки зрения дизайна кода.

Опять же, тут проблема в том, что под ecs (как и под mvc, как и под ооп) многие понимают вообще что угодно. И еще многие фанатики молятся на это, как на святую корову, из-за чего у некоторых возникает отторжение. Но на самом деле это просто нехитрая техника организации кода, в которой используется композиция вместо наследования.
Аноним 22/09/18 Суб 15:36:12 52809018
>>528088
Хайвмайнд практически, лол.

Я об этом и говорю: "ваше ооп не ооп" ваш коммунизм не коммунизм. На сегодня никто не подразумевает под "ооп" смоллток. Под "ооп" подразумевают класс-бейзед дизайн с наследованием и инкапсуляцией, а-ля джава. Самое смешное, что даже дизайнеры джавы во весь голос повторяют, что НЕНУЖНО пихать инкапсуляцию туда, где она не нужна (геттеры\сеттеры на дата-классах, ага), но их никто не слышит. Ну то есть тут уже нет смысла о чем-то говорить, настолько все blurred. Ничего не спасти - господь, жги.
Аноним 22/09/18 Суб 15:39:23 52809219
>>528089
>в которой используется композиция вместо наследования.
Но ведь это совсем не аргументный аргумент. Потому что ООП не запрещает применять композицию наследования. Прост иногда наследование удобнее, иногда - композиция.

>>528089
>читаемый и расширяемый код
Ну хз, разделение данных и методов как по мне хороший способ насоздавать багов, в отличии от обратной системы, где данные прочно прилеплены к алгоритмам.
Аноним 22/09/18 Суб 15:42:44 52809320
>>528090
Ну хз кто там что говорит, по мне так инкапсуляция везде нужна чтобы скрывать реализацию. Да и не стоит это ничего.
Аноним 22/09/18 Суб 15:47:11 52809621
>>528092
>Потому что ООП не запрещает применять композицию
Я же вот о чем говорю: есть ооп-дизайн, есть ecs-дизайн. Тот факт, что твой язык поддерживает ооп (чтобы эти три буквы не значили), не означает, что ты не можешь использовать ецс-дизайн. Точно так же гугловцы в свое время написали guava для поддержки иммутабельных структур и функционального программирования на джаве, например. То есть речь как раз о том, что твой язык тебе не запрещает применять композицию, у тебя есть выбор, какую архитектуру использовать для твоего приложения: лапшеобразную ооп архитектуру или православную ецс архитектуру. Непонятно, в чем твоя претензия.

>в отличии от обратной системы, где данные прочно прилеплены к алгоритмам.
Ну читай классиков. "Лучше иметь 100 функций, оперирующих одной структурой данных, чем 10 функций, оперирующих 10 структурами данных", все в таком духе.

>>528093
>Ну хз кто там что говорит
Лол, ну вот собственно поэтому и имеем то, что имеем.
Аноним 22/09/18 Суб 16:05:30 52810122
68747470733a2f2[...].png (221Кб, 1275x599)
1275x599
>>528096
Наверно я просто стриггерился.
Я, собственно, недавно стал с наследования переходить на компоненты в своем симуляторе кокономики. Не потому что разуверился в ООП (все еще использую его) просто классы большие стали. Теперь, когда класс больше 1200 строк я тупо выделяю часть связанного функционала (и данные и алгоритмы вместе) в отдельный класс который потом можно навешивать куда хочешь как компонент. Дипломатию, например, так обособил. Теперь ее даже в других проектах можно просто навесить и радоваться.

Впрочем, для гейм дизайнера, пожалуй, важно что бы был набор постоянного АПИ, а как оно там под капотом вертится - не важно, хоть ООП, хоть ЕКС хоть в одну строку на джава скрипт.
Аноним 22/09/18 Суб 16:13:41 52810223
Я, кстати, прочитал сейчас ту статью от пиксоник - там все годно расписано, ребята шарят. Блядь, теперь вдвойне обидно, что мейлру скатило wr в такое говно. Я думал все нормальные разрабы оттуда ушли в red button.

>>528101
Ну, геймдизайнеру ецс как раз позволяет редактировать поведение игры, не касаясь кода вообще, ведь все компоненты - это просто данные, хоть в экселе их редактируй, все энтити - это просто наборы компонентов, включай\отключай как хочешь, и т.п. Ну и даже при написании логики можно постараться и обернуть это все в красивый дсл, так что это будет больше похоже на sql\datalog запросы, чем на код. У меня в моем костыле, например, ты буквально пишешь: для всех e таких что у них есть отравление, уменьшить здоровье на величину отравления - выглядит как нечто среднее между селектором jquery и кодом на прологе.
Аноним 22/09/18 Суб 16:26:28 52810724
Хотя вот это говно:

>У нас есть специальные «singleton»-компоненты/сущности. Например, у нас есть сущность с ID=1, на которой висят специальные компоненты — настройки игры.
Для этого создается компонент "Game" или "Level" и вешается на соответствующую сущность. ID тут вообще ни при чем, айди трогать не надо.

>События/запросы мы реализуем за счет создания специальных компонент.
Это говно, из-за этого у них анальный цирк с созданием временных энтитей чтобы нанести игроку урон два раза за тик. Возникло это из-за того, что у них системы завязаны на игровой цикл, хотя они должны быть функциями GameState, Events -> Events (а они изначально рассматривали системы только как сайд-эффекты, проектированием датафлоу не занимались). Хотя тут трейдоффы по производительности конечно будут, так что это зависит.
Аноним 22/09/18 Суб 16:39:02 52811125
>>528107
>из-за этого у них анальный цирк с созданием временных энтитей чтобы нанести игроку урон два раза за тик
Хм, это серьезный недостаток ECS и использования компонентов для сообщений.
Как ECS-господа обходят это ограничение?
Аноним 22/09/18 Суб 17:26:35 52812126
>>528111
Это не ecs, это их конкретная реализация. Я же говорю, в общем виде ецс описывается так:

1. Состояние S: множество троек вида [id name data], где id - натуральное число, name - имя компонента, data - содержимое компонента.
2. Логика: множество пар (cs F), где cs - это список [c] имен компонентов, F - (чистая) функция вида E, S' -> [E], где E - "входящее" событие, которое триггерит эту функцию, [E] - множество "выходящих" событий, S' - множество троек из S вида [_ c _].

И все, вся игровая логика этим описывается, плюс есть некий внешний исполнитель, который запихивает начальные события в систему (юзер инпут, сеть, таймеры) и обрабатывает конечные события (отрисовка, сеть). Если добавить ограничение, что cs должен содержать ровно один элемент, и считать любой сайд-эффект событием, получится классический сишный однопроходный data-oriented ецс. У них как раз проблема в том, что нет явного notion'а событий, поэтому функции фактически получаются E, S -> S (ну и S получается состоянием
всей* программы, а не только игры, потому что глобальное состояние и сайд-эффекты). Потому что они транзишны запускают из геймлупа, ну и это кстати еще не даст распараллелить\разсинхронить обработку. Но аффтар там тащем-то как раз писал в комментах, что они планируют перевести свою ецс на событийную архитетуру.
Аноним 22/09/18 Суб 17:27:08 52812227
>>528121
Ой, разметка все-таки проебалась. Ну и хуй с ней.
Аноним 22/09/18 Суб 17:39:37 52812528
>>528121
>Это не ecs, это их конкретная реализация
Это практически стандарт ECS. Много где так сделано.
Аноним 22/09/18 Суб 17:44:34 52812629
>>528121
Я себе ECS представляю так

1. все игровое состояние представлено посредстом компонентов
2. компоненты явл. типом struct
3. компоненты хранятся в ассоциативных массивах (например, Dictionary)
4. каждый комп. ассоциирован с каким-то числом (entity id), это позволяет группировать разные компоненты вместе
5. можно осуществлять фильтрацию имеющихся entity по наличию у них нескольких типов комп-ов
Аноним 22/09/18 Суб 17:50:50 52812830
>>528121
>Но аффтар там тащем-то как раз писал в комментах, что они планируют перевести свою ецс на событийную архитетуру.
А это как?
Аноним 22/09/18 Суб 18:07:46 52813231
CombinedVideo.webm (3866Кб, 1168x792, 00:00:32)
1168x792
>>528101
ты это. partial классами тоже пользуйся. можно же разбивать логически один и тот-же класс на разные файлики когда когда разный функционал должен быть в одном месте. куда проще всем этим управлять становится.
Аноним 22/09/18 Суб 18:14:13 52813432
Slonikmacro.jpg (39Кб, 320x240)
320x240
>>528132
>partial классами тоже пользуйся
Аноним 22/09/18 Суб 18:48:30 52814033
>>528125
>Много где так сделано.
Все еще проблема много каких реализаций, где так сделано, но не самого ecs.

>>528128
Что как? Я же в посте это и описывал...
Аноним 22/09/18 Суб 19:21:01 52815034
>>528140
То, что ты описываешь, не существует. По крайней мере я не видел ECS на событиях. Везде используют добавление компонентов как флагов, вместо событий
Аноним 22/09/18 Суб 19:38:12 52816435
>>528121
>на событийную архитетуру
Как это выглядит?
Аноним 22/09/18 Суб 20:00:02 52817436
>>528164
Ээ, попробуй прочитать пост, на который отвечаешь. Там как раз это весь пост и описывается.

>>528150
По-хорошему надо бы послать тебя нахуй в гугл, но давай я за тебя открою первую ссылку на гитхаб по запросу "ecs callbacks": https://github.com/alecthomas/entityx
А еще можешь попробовать почитать вот эту труднодоступную обскурную статью: https://en.wikipedia.org/wiki/Entity–component–system - когда откроешь, нажми Ctrl-F и введи "events".
И это уж не говоря о том, что я прямо в посте русским языком описал, как именно вариант с прямым изменением глобального состояния является частным случаем этой общей модели.

Испытываю некоторую фрустрацию по поводу таких аутичных ответов, извините.
Аноним 22/09/18 Суб 20:22:57 52818237
>>528174
>попробуй прочитать пост
Нужны реальные примеры на C#, а не словоблудие.
Аноним 22/09/18 Суб 20:27:13 52818338
Аноним 22/09/18 Суб 20:35:48 52818839
>>528182
Если ты по формальному описанию не можешь закодить прототип на языкнейм, то я здесь и сейчас ничем не смогу тебе помочь.

>>528183
>то, что там события, еще не значит, что там события

Пожалуй, скрою-ка я обратно тред жс ой, то есть юнити-макак. Можете не отвечать.Но не сможете :3
Аноним 22/09/18 Суб 21:32:24 52819740
hmm.jpg (12Кб, 350x257)
350x257
Понял, что обосрался, и сразу дал по газам.
Аноним 23/09/18 Вск 10:47:13 52825841
>>528188
Суть юнитивских сообщений в том, что обработчик связан с компонентом и вызовется только если компонент добавлен к объекту. Сообщения ты отправляешь объекту, а не отдельным компонентам. Поэтому получается такой событийный полиморфизм. Ты просто добавляешь какие нужно компоненты, и они задают поведение объекта. Очень просто и эффективно.

В ECS тебе придется эмулировать ООП-функции. В самом простом случае тебе в подписчиках на твой глобальный диспетчер нужно писать какой-то такой код:
// обработчик урона
void OnMessage(Entity entity, string message) {
if (message == "OnDamage" && entity.HasComponent<Damage>()) {
//
}
}
Аноним 23/09/18 Вск 11:17:52 52825942
хуй
Аноним 23/09/18 Вск 11:59:28 52826143
>>528258
Что за хуйня? Зачем этот иф через иф? Ты вообще понимаешь, что такое подписка на событие? Это засовывание своего коллбека в список, хранящийся у глобального менеджера. Когда менеджеру приходит сообщение о событии, менеджер вызывает все коллбэки по списку. Никакие ифы в коллбэке не нужны. Сам факт подписки объекта на событие подтверждает, что он соответствует требованиям.
Аноним 23/09/18 Вск 12:25:05 52826644
>>528261
Нам нужна не просто подписка на событие. Нам нужно выполнять какой-то код, если entity содержит определенный/ые компоненты.

С SendMessage мы это получаем бесплатно.

C использованием компонентов как сообщений, мы создаем систему, которая фильтрует entity по компонентам. Недостатков у этого способа куча: начиная от ручного удаления компонента-флага, и заканчивая невозможностью отправить несколько сообщений за один тик.

C использования диспетчера нам нужны if в самом простом случае, чтобы фильтровать события для entity у которых есть нужный компонент. Про недостатки этого способа ничего не знаю, но уверен что их немало.

Аноним 23/09/18 Вск 12:49:11 52826945
Аноним 23/09/18 Вск 12:53:11 52827046
>>528269
Лол, бедные юнити-кликуши. Буквально неделю назад агрились на интерфейсы, а тут такая зрада от юнитеков подкатила.
Аноним 23/09/18 Вск 13:01:59 52827247
Почему Юнити не на питоне?
Было бы намного удобнее и быстрее писать код
Аноним 23/09/18 Вск 13:06:35 52827648
>>528272
Это толстота какая-то? Сложные нынче рофлы стали.
Аноним 23/09/18 Вск 13:28:39 52828249
>>528272
Юнити на питоне. Как годот на шарпе.
>>528266
Я все ещё не понимаю, зачем тебе все эти сложности, которые ты описываешь? Я вроде ясно выразился. Регистрируется слушатель сообщения. Процедура регистрации требует предъявить функцию-коллбэк в которой будет код, выполняемый каждый раз, когда данное сообщение будет послано. Регистрация делается в конструкторе компонента, атписка делается в деструкторе. Всё. О какой сложной ручной работе у тебя там идёт речь?
Аноним 23/09/18 Вск 13:47:16 52828350
>>528269
Во, я придумал новую систему, игровые объекты должны слать не только сообщения, а письма. Сообщение - широковещательное, письмо - адресное.
Например при коллизии пули с объектом, пуля посылает письмо объекту такому-то "ранен на столько-то". Синглтон "почтовый сервер" направляет письмо адресату и тот начинает хрустеть плотью и уменьшать свои хп, если он мясной, если же этот объект стена, то она просто рисует декаль в месте коллизии, указанном в письме.
Побежал патентовать, пока юнитеки не украли.
Аноним 23/09/18 Вск 13:49:22 52828551
>>528283
Уже украли, называется - broadcast message
Аноним 23/09/18 Вск 13:50:35 52828652
>>528285
Сцк. Ну что же такое делается?
Аноним 23/09/18 Вск 13:57:48 52829053
maxresdefault.jpg (136Кб, 1280x720)
1280x720
>>528283
>я придумал новую систему, игровые объекты должны слать не только сообщения, а письма
Приходите работать к нам в unyti
Аноним 23/09/18 Вск 14:02:58 52829154
Байтоебы - рак инди-геймдева
Аноним 23/09/18 Вск 14:13:47 52829455
>>528270
>неделю назад
>ссылка на API двухлетней давности
Аноним 23/09/18 Вск 14:19:43 52829656
>>528282
>О какой сложной ручной работе у тебя там идёт речь?
Объяснаю на пальцах.
У тебя есть система считающая коллизии. Допустим, эта система отправляет события через глобальный диспетчер.

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

Допустим сигнатура метода такая: OnCollision(Entity sender, Entity receiver); код подписки примерно такой AddListener("OnCollision", OnCollision);

Как ты в подписчике поймешь, что это столкнулась пуля с игроком и что у игрока надо отнять ХП?
Аноним 23/09/18 Вск 14:40:48 52829857
>>528296
Я делаю, например, так в компоненте пули и все. Никакого boilerplate кода.

void OnCollision(other) { other.SendMessage("OnDamage", gameObject); }

Через глобальный диспетчер это выглядит как-то так:

void OnCollisionMessageReceived(Entity sender, Entity receiver) {
// тут надо отфильтровать sender, чтобы у него было компонент Bullet
if (sender.HasComponent<Bullet>())
EventManager.Dispatch("OnDamage", sender, receiver);
}
Аноним 23/09/18 Вск 14:44:30 52829958
>>528296
Ладно, уговорил. Ифы нужны. Не там, так здесь.
23/09/18 Вск 16:57:53 52831559
>>528298
Долбоебина, ты понимаешь, что SendMessage мало того что пиздец какой медленный, потому что пытается вызвать метод через строчное название, так еще и пытается сделать этот вызов на всех компонентах, которые навешаны на твоем гейобжекте?

>So, on my (rather old) machine, a loop of 5000000 SendMessage calls, using an empty function, takes 9.872 seconds. A loop of 5000000 direct calls (using a cached GetComponent) takes .024 seconds. Therefore, direct calling seems to be about 400 times faster, although considering that the loop itself takes up some time, it's probably more than that

И нет, пускать все вызовы через глобальный маняменеджер маняэвентов, как местные дебилычи любят - тоже нихуя не оптимальный вариант. Вы просто два сорта даунов, спорящие чем лучше копать ямы - черенком от лопаты или полотном.
Аноним 23/09/18 Вск 17:25:26 52831660
>>528315
в сбилженных проектах он становится нормальным делегатом. это приблуда для удобства в эдиторе в такой форме, придурок.
Аноним 23/09/18 Вск 17:42:48 52832061
>>528315
Опять этот шизик вылез.
Время и простота разработки > производительность.
Аноним 23/09/18 Вск 17:59:43 52832762
ioslarge1412662[...].jpg (46Кб, 600x525)
600x525
Untitled.png (23Кб, 497x384)
497x384
АААА СУКА
Аноним 23/09/18 Вск 18:03:26 52832863
>>528320
Тем более что разница в скорости настолько ничтожна >>528320 , что пердолинг с оптимизацией не стоит этого.
Аноним 23/09/18 Вск 18:06:23 52832964
>>528327
Если кто не понял, то раньше при выборе префаба отображался GameObject с компонентами, и можно было быстро настроить префаб.
Теперь эта хуйня, которую нужно открывать в scene view, изменять, возвращаться обратно.
Это фейл.
Аноним 23/09/18 Вск 18:49:11 52833665
Когда хд рендер пайплайн можно будет использовать без ебли?
Аноним 23/09/18 Вск 18:59:00 52833766
>>528329
обновляться? в пизду.
Аноним 23/09/18 Вск 20:48:32 52835667
>>528266
Короче, самый оптимальный способ для ECS - это для каждого сообщения создавать отдельную entity с компонентом-данными сообщениями. Тогда можно обойти ограничение на один компонент.
Использование диспетчером и прочих SendMessage затрудняет распараллеливание систем.
Аноним 23/09/18 Вск 21:34:28 52836368
>>528316
>>528328
Мрази жирные, не знаю кто вас так раскормил, но надеюсь вы подавитесь.
Как пользоваться многопоточностью в Unity3d? (из скриптов) Аноним 23/09/18 Вск 21:46:42 52836569
15335772059950.png (92Кб, 300x300)
300x300
Короче у меня возникла идея. Я ведь изучал С#, а не сразу вкатился в Юнити и еще помню про стандартные средства C# связаные с потоками. И вот задался вопросом:
А можно ли с помощью скриптов С# прикрутить в Юнити-игру какую-то свою отдельную многопоточность? Ну типо помимо того, как Юнити сама работает и что-то обсчитывает, а ты из скрипта вызвал стандартный поток в C# и чето в нем обработал\посчитал? Или это хуйня идея? И почему?
Аноним 23/09/18 Вск 22:34:37 52837170
>>528276
Ну он же проще и удобней сисярпа
Аноним 23/09/18 Вск 23:45:16 52838171
>>528365
Можно. Уан минус - нельзя вызывать юните апи из доп. потоков. А так норм, брат жив. Но лучше jobs попробуй приладить
Аноним 24/09/18 Пнд 04:03:36 52839672
>>528371
Ну и истории у тебя.
Аноним 24/09/18 Пнд 07:16:39 52840473
Generation.webm (3171Кб, 1064x764, 00:00:14)
1064x764
>>528363
каникулы что-ли неожиданно начались гдето

>>528365
до тех пор пока многопоточность отдельно от самого юнити. вон у меня например пайплайн навмеша в отдельном потоке. в потоке юнити собирается информация о мире, проверяется физон, информация отправляется в пулл потоков, там генерируется чанк, в конце пинается поток навмеша, который уже объединяет результаты в один целый, ищет путь и прочее.
Аноним 24/09/18 Пнд 07:33:28 52840674
>>528381
> нельзя вызывать юните апи из доп. потоков
Точно нельзя? Даже с using?
24/09/18 Пнд 12:47:15 52843575
>>528053
>Сейчас я в сообщении коллизии в этом компоненте просто использую SendMessage для отправки сообще об уроне и все.
Ок. Скажешь как оно заработает при появлении у тебя хотя бы десятка противников с пулемётами. Вообще Юнити со своими SendMessage жидко насрали в общий котёл, пидарасы.
24/09/18 Пнд 12:48:56 52843676
>>528057
Для понимания ECS надо иметь определённый уровень понимания в software engineering ну или хотя бы уметь программировать.
Аноним 24/09/18 Пнд 13:53:54 52844777
>>528435
>при появлении у тебя хотя бы десятка противников с пулемётами
Даже под самым шквальным огнем будет максимум пара десятков SendMessage за апдейт.
Экономия на спичках.

>>528436
Скорее это ECS слишком ограниченная архитектура для программирования геймплея. ECS нужно применять только для оптимизации определенных алгоритмов, а не пытаться сделать на нем всю игру.
24/09/18 Пнд 14:27:30 52845378
>>528447
ECS по сути своей соответствует определению игры как "базы данных с красивым интерфейсом". Если мы считаем состояние игры как БД, то кадр можно описать как серию запросов переводящих игру в состояние следующего кадра. ECS даёт такое разделение - отдельно состояние, отдельно логика.
Аноним 24/09/18 Пнд 14:31:40 52845479
>>528453
лол. до тех пор пока эта логика находится на примитивном уровне. не всё тут так просто.
Аноним 24/09/18 Пнд 14:45:13 52845580
>>528454
Ну приведи пример непримитивной логики, которую нельзя реализовать в ecs.
24/09/18 Пнд 14:45:41 52845681
>>528454

>до тех пор пока эта логика находится на примитивном уровне

Она всегда находится на примитивном уровне. Даже в шахматных монстрах вроде стокфиша.
Аноним 24/09/18 Пнд 14:49:54 52845782
>>528456
>>528455
ололо хотелось бы узнать точку зрения этого замечательного господина >>528101 и того как он смотрит на этот вопрос.

а вообще разумеется когда ты делаешь какую-то хитрую хуйню где требуются километры спагетти чтобы связать разные участки кода и зачастую ещё и в иерархичном порядке и с приличным слоем абстракции то ECS будет болью и мучением.
Аноним 24/09/18 Пнд 15:03:53 52846183
>>528453
Какая база данных? Что ты пиздишь? Entity-Component-System это банальный паттерн (шаблон проектирования) в котором композиция ООП предпочтительнее наследования ООП. И все бля. Ебучие фанбои, нихуя не понимаете, а всюду лезете.
Аноним 24/09/18 Пнд 15:05:13 52846284
>>528461
Разве ECS не про отделение данных от логики?
24/09/18 Пнд 15:37:27 52846685
>>528457
>когда ты делаешь какую-то хуйню где требуются километры спагетти

Поправил тебя.

Аноним 24/09/18 Пнд 15:51:29 52847186
Unity5.webm (8822Кб, 1400x918, 00:01:01)
1400x918
Unity6.webm (4100Кб, 1056x696, 00:00:36)
1056x696
>>528466
ну а хули. вон как по твоему выглядит внутри эта хуйня? какая там иерархия компонентов?
там лол пришлось даже отдельно стейтмашину делать которая бы синхронизировала работу ИИ и контролер. плюс отдельно ИИ для планирования и стейтмашина которая меняет паттерн перемещения. отдельно даже была иная категория ИИ которая управляла сквадом меняя приоритеты действий у разных его участников. очень интересно посмотреть как это можно сделать в рамках ECS. очень увлекательное чтиво небось будет.
Аноним 24/09/18 Пнд 15:55:09 52847587
>>528471
Нихуя ты монстр. Что за шедевр пилишь?
Аноним 24/09/18 Пнд 16:21:21 52849488
>>528471
У меня один вопрос, нахуя тебе в прототипировании тканевая физика?
Аноним 24/09/18 Пнд 16:25:39 52849689
>>528475
>>528494
это навмеш-шизик, тредовый сумасшедший.
Аноним 24/09/18 Пнд 16:31:41 52849890
>>528471
А как проигрывать сцену в окне Scene? У меня постоянно открывается окно Game. Бесит.
Аноним 24/09/18 Пнд 16:36:53 52850091
>>528498
Сверху тупо переключаешься на окно сцены после запуска.
Аноним 24/09/18 Пнд 16:37:52 52850192
Аноним 24/09/18 Пнд 16:39:30 52850493
>>528501
Купи второй монитор, на него выведи окно Game, а на первом всё остальное, включая сцену.
Базарю, ещё захочешь.
Аноним 24/09/18 Пнд 16:40:52 52850594
pp,550x550.u1.jpg (36Кб, 550x550)
550x550
>>528504
>Купи второй монитор
Аноним 24/09/18 Пнд 16:51:40 52851195
1485498256874.png (495Кб, 862x574)
862x574
>>528505
Чем больше у тебя мониторов - тем больше у тебя обоев с деревотян!
Аноним 24/09/18 Пнд 17:00:31 52851696
>>528475
meh. только на дваче и можно этим кого-то впечатлить. видео старое как говно мамонта. это был прототип примерно того что можно было увидеть в FEAR. у меня на тот момент появилась первая рабочая версия моего навмеша и я решил исследовать пространство смежных проблем заебошив прототип ИИ. у меня было множество интересных ваниантов как это применить но мои идеи трансформировались раз за разом в всё более охуительные.
плюс один знакомый артист постоянно мешал моим планам. он был согласен помогать мне с проектом А но я хотел делать проект Б больше чем А. в итоге я начинал с ним делать А, но спустя какое-то время он сбегал. я начинал делать Б и он появлялся. в итоге пришлось послать его нахуй и продолжить совершенствоваться в этой сфере не делая ни один из проектов.

а ты бы как применил подобное могущество, анон?

кстати после прошлого апдейта моего навмеша я стал ебошить следующий и заодно сделал вон эту хуйню >>528132 теперь в этом ИИ можно сделать клёвые вещи и наверно надо вернутся к нему чтобы воплотить их. можно например сделать так чтобы ИИ в оптимальном порядке выполнял действия в разных местах. например последовательно надавил кнопки в разных частях лабиринта или собирал предметы рядом в оптимальном порядке.

>>528494
а че бы и нет? выглядит здорово! в юнити можно сделать щелчком пальцев, а смотреть становится интересней.

>>528496
я уверен я всё делаю правильно! разбавляю скуку треда.

>>528498
вообще тебе уже посоветовали два монитора (у меня два). но вообще можно же просто переместить окошко Game куда-нибудь нахуй. мне оно большую часть времени не нужно и поэтому я перемещаю его куда-нибудь в угол.
Аноним 24/09/18 Пнд 17:02:28 52851797
Unity.png (369Кб, 1678x967)
1678x967
Аноним 24/09/18 Пнд 17:02:32 52851898
>>528516
> у меня два
На работе тоже два, а дома один. На одном пиздец как неудобно, после того как к двум привык.
Вообще и двух маловато, особенно когда с анимациями работаешь.
Аноним 24/09/18 Пнд 17:08:20 52851999
>>528518
Просто в юнити нет нормального переключения workspace'ов.
Аноним 24/09/18 Пнд 17:17:23 528521100
>>528516
Я тоже кстати одно время игрался с ии, но я использовал утилитарный подход а у тебя как понимаю GOAP как в фире? Удалось добиться прикольных результатов, юниты грамотно сидели по препятсвиям, съебывали если их сильно обстреливаешь/подходишь близко/кидаешь гранату, плюс поверх этого сделал ии отряда, чтобы он распределял юнитов на подавление огнем/обходы с фланга/отступление и т.д.
Для фпс пилил, но проект затух, но наработки применил потом для икскома своего.
Аноним 24/09/18 Пнд 17:19:36 528525101
Аноним 24/09/18 Пнд 18:04:50 528532102
>>528516
А что за проекты ты делал расскажи вкратце?
Аноним 24/09/18 Пнд 18:13:35 528534103
Unity 2015-03-1[...].jpg (556Кб, 1648x1958)
1648x1958
Unity 2017-11-1[...].png (3223Кб, 3318x980)
3318x980
Unity 2017-11-1[...].png (1910Кб, 2386x796)
2386x796
>>528521 >>528532
йеп. это GOAP как в фире. сделал ещё обратный поиск, но этим никого не удивить. но изначально я применял его для немного иных целей. у меня список проблем начинался с того как научить ИИ организовывать собственный инвентарь. и GOAP отлично решал проблемы выстраивания цепочек из действий вроде "освободить основной слот", "положить предмет в основной слот", "одеть штаны", "перезарядить оружие" и так далее. просто потом к списку возможностей добавились подбирание и применение предметов в мире.
но тут появилась иная проблема - отсутствие возможности адекватно оценивать дистанцию между применяемыми предметами. и недостаточно крутые мои собственные наработки чтобы я мог добавлять такие фичи с лёгкостью.

у меня изначально наработки планировались для чего-то очень отдаленно похожего на сталкер и Xenus но без графона. хотел сделать чтобы симулировался какой-то примитивный социум вроде негров в джунглях и продвинутый милитаризированный социум вроде корпорантов с военными лабораториями и между ними были бы постоянно односторонние стычки за территорию. а задачей игрока было бы проникнуть в лабораторию корпорантов незаметно, но для этого пришлось бы как-то состыковать свои атаки с атаками негров. были интересные наработки в плане симуляции социума. например генератор террейна у меня выдавал диаграмму вороного чтобы делить мир на биомы а я переиспользовал его как граф с локациями чтобы между ними перемещались агенты и делали всякие дела не загружая их в мир, примерно как в иксах, или космических рейнджерах. негры ходили собирали бананы, носили их в деревню, корпоранты отстреливали негров если они слишком наглели.

пока что пик развития этой идеи это сделать что-то вроде симулятора командира отряда на манер SW republic commando но только в открытом мире. чтобы вокруг ходили терминаторы и вели охоту на мясное окружение, а игроку надо было шастать по помойкам и искать себе членов в отряд сопротивления и командовать ими.

>>528525
не. но разумеется я отлично знаком с этим подходом. миллион вагон вещей разумеется у меня было реализовано в виде данных и обрабатывалось одной функцией. например в проекте с бегающим человечком у меня был простенький менеджер баллистики который обрабатывал все сорты пуль. пули разумеется в массиве со структами, в потоке юнити рэйкастили вперёд, а потом в других потоках обрабатывались одной функцией.
Аноним 24/09/18 Пнд 18:20:08 528538104
>>528534
Бляя... Сколько ещё предстоит выучить, чтобы создать игру Мечты! :с
24/09/18 Пнд 18:49:17 528544105
>>528461
А вот такая. Если ты будешь всерьёз работать с ECS (я на работе закодировал целую игру на Entitas, сколько-то там миллионов закачек уже) - то очень скоро начнёшь мыслить в терминах данных и запросов к ним.
Аноним 24/09/18 Пнд 19:05:42 528548106
11982.jpg (68Кб, 200x262)
200x262
Закодировал игру на SendMessage. Начал думать как почтальон.
Аноним 24/09/18 Пнд 19:40:40 528558107
>>528548
У меня для вас новая парадигма. Но я ее вам не покажу. Потому что у вас паспорта нет.
Аноним 24/09/18 Пнд 19:42:58 528559108
>>528534
Что у тебя за плагин на вкладке mapatternedit?
Аноним 24/09/18 Пнд 19:43:55 528560109
>>528544
В терминах данных и запросов к ним мыслит любой программист, программа которого активно работает с данными.
Все ещё непонятно, при чем здесь паттерн, завязанный на композиции, как я описал выше.
Сдаётся мне, ты наслушался баззвордов из рекламных видосов юнитеков.
24/09/18 Пнд 19:54:24 528562110
>>528560
Вообще то я занимаюсь ECS уже третий год, задолго до того как Юнити решили очередную фичу, которая никогда не будет доделана, добавить. Игру шипнули до того как Юнити что то публично выложили.
Типично при ООП ты думаешь в терминах данных объекта и какие манипуляции ты проделываешь над объектом, что объект делает. Не про состояние игры в целом и как ты это состояние трансформируешь.
Аноним 24/09/18 Пнд 20:40:18 528573111
>>528562
Чушь. ООП не вещь в себе, при ООП тебе ничто не мешает думать так, как эффективнее для поставленной задачи. На ООП 30 лет корпоративный бд-софт пишется и успешно работает.
При этом ООП универсален: есть классы, есть методы. Внутри методов можно ебашить код на любой парадигме, хоть на императивной, хоть на функциональной, хоть на сущностно-компонентной.
Аноним 24/09/18 Пнд 20:43:22 528575112
>>528573
Я пожалуй, ещё раз повторюсь, ООП - каркас, ECS - одна из реализаций наполнения каркаса. Таким образом ECS - часть ООП. Сравнивать их все равно, что сравнивать печень человека с самим человеком.
Аноним 24/09/18 Пнд 23:28:54 528609113
Почему NavMeshComponents идет отдельным компонентом а не встроенным в юнити.
Аноним 25/09/18 Втр 03:51:10 528630114
>>528406
>Точно нельзя? Даже с using?
Хоть с двумя using. Вызывать то оно вызывается только ошибку выкидывает
Аноним 25/09/18 Втр 04:00:09 528632115
208-pop.png (43Кб, 410x505)
410x505
>>528457
>ололо хотелось бы узнать точку зрения этого замечательного господина >>528101 и того как он смотрит на этот вопрос.
Ну кстати для моей кокономики идеально бы подошла ECS если бы я с нее начал пилить. Потому что экономика это набор таблиц по сути, одномерных. БД то есть. А абстракции, наверно, можно и в ECS реализовать.

>>528461
>Какая база данных? Что ты пиздишь?
ECS предполагает хранить данные в виде таблиц, это формат баз данных.
Аноним 25/09/18 Втр 04:37:45 528636116
>>528630
Потому что работу с юнити апи нужно переводить в главный поток. В сайд потоках делаешь вычисления, в маин потоке обрабатываешь результат.
Аноним 25/09/18 Втр 07:47:54 528644117
>>528632
>ECS предполагает хранить данные в виде таблиц, это формат баз данных.
А есть LINQ для ECS?
25/09/18 Втр 10:42:16 528653118
>>528644
В Entitas очень годная система сборщиков (Collectors), можно создавать разные условия, типа "Всё что имеет здоровье, является игроком или монстром и не мертво", в реактивных системах ещё и дополнительным фильтром пройти.
>>528573
ООП значит объединение состояния с логикой с сокрытием состояния. Истинный ООП-код должен оперировать автономными агентами обменивающимися сообщениями (SendMessage в этом плане кстати ближе к Ъ-ООП). ECS это разделение состояния, не имеющего логики, и логики, которая не должна иметь в себе состояния. ECS это ближе к функциональному подходу, где игру можно описать как функцию от состояния, времени и ввода, отдающую новое состояние. Это достаточно разные вещи, но ничего не мешает использовать их вместе разумеется. Делать интерфейс на ECS есть форма мазохизма (в Tanki Online так делали, брррр). Ты можешь конечно использовать ООП-синтаксис для не-ООП кода.
Аноним 25/09/18 Втр 11:06:55 528658119
>>528538
а брось че там учить. гейдев это сорт исследовательской работы. к этому можно притупить имея минимум знаний и обрести их методически наступая на грабли.

>>528559
самописный UI конечно-же. в юнити своё окошко с говном довольно легко сделать, если знать как. у меня было 3 версии этого генератора карты.
первая была без UI, но я решил что ну его нахуй когда увидел 20 закрывающих скобок подряд.
вторая с UI на первом скриншоте где MapPatternEdit. где я имел плохое понимание о сериализации но в целом это было более-менее функциональным говном.
третья версия на втором и третем скриншоте которую я написал по человечески зная что оказывается можно же скриптабл обжекты совать в другие скриптабл обжекты и сериализовал каждую ноду как скриптабл обжект.

>>528632
хе хе. не-а. ECS это не набор таблиц и данных. это приблизительно равноценно тому что всё описываемое должно состоять из комбинируемых между собой struct. так что хуй а не полиморфизм. нету больше цепочки наследования "олигарх : гражданин : человек : пёс : существо" где на каждом этапе у тебя оно становится всё менее абстрактным. у тебя есть просто олигарх который как химера собран из кусков других существ. конечно же можно добиться какой-то формы абстракции, но можно охуеть делая это.
Аноним 25/09/18 Втр 11:29:14 528659120
>>528658
>но можно охуеть делая это
+++
Аноним 25/09/18 Втр 11:44:05 528661121
25/09/18 Втр 13:08:46 528670122
>>528658
Это именно набор таблиц, всё описываемое состоит из набора структурок. Каждый тип компонентов по сути таблица, а сама Entity это primary key. В иных реализациях даже такого объекта как Entity нет - чистый цифровой ключ по которому можно спросить систему "эй ты, объект 1337, ты кто?" и тот тебе выложит всё что в нём есть. Или давать запросы "дай мне все ключи к объектам содержащим такие и такие записи". Эдакий специфический упрощённый SQL.
Аноним 25/09/18 Втр 15:09:53 528706123
niceBottom2.png (2446Кб, 1477x827)
1477x827
>>528644
>А есть LINQ для ECS?
Так вроде LINQ должен и так работать. У тебя жи сущности и компоненты в массиве, вот и хуячь LINQ запросы к массиву. Или в системе опиши, она по сути сама является запросом.

>>528658
>добиться какой-то формы абстракции, но можно охуеть
Без абстракций как то хуево. Хз, может не привычно

А как быть со связями между компонентами? У меня классы имеют кучу ссылок на другие классы. В компонентах так можно или не тру?
25/09/18 Втр 15:39:31 528712124
>>528706
>А как быть со связями между компонентами?
Слабое место. Типично фигачат id другого компонента и всё. Сам id типично состоит из индекса и поколения, засунутых в 32/64 бита. Это кстати решает проблему уведомить всех кого надо про смерть объекта чтобы ссылки лишние не висели и проблему мёртвых ссылок - по такому id ты всегда можешь сказать что объект уже умер.
25/09/18 Втр 15:45:58 528716125
Аноним 25/09/18 Втр 16:56:20 528747126
>>528706
>Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity
Может ли энтитас работать с годотом?
Аноним 25/09/18 Втр 16:57:07 528749127
>>528747
Или там жестко прибито гвоздями к monobehaviour?
25/09/18 Втр 17:03:53 528757128
>>528747
Может.
>>528749
Нет. MonoBehaviour нужен только для получения Start, Update и Destroy.
Аноним 25/09/18 Втр 17:11:30 528761129
>>528747
>>Entitas is a super fast Entity Component System (ECS)
>классы для компонентов
>super fast
смешно
Аноним 25/09/18 Втр 18:15:43 528768130
Юзаю Юнити с 2014
@
до сих пор не пойму, как блядь работает местный snap to grid

Оф.доки читал, очень уж скудно. Может кто пояснит, ибо заебался уже с не-модульными левелами.

* имею ввиду 3д
Аноним 25/09/18 Втр 18:16:31 528770131
Почони, будьте любезны, подскажите, как сгладить управление камерой на телефонах? Ставлю сенсу камере низко- слишком медленно двигается, выше - перескакиваю место, куда пользователь хотел бы прицелиться. Золотая середина отсутствует.
25/09/18 Втр 18:27:07 528774132
>>528761
Быстрей чем штатное юнити-говно по тестам.
25/09/18 Втр 18:29:37 528775133
>>528770
Управление камерой не на мыше это огромная область. tl;dr: нужно определять куда игрок скорее всего хочет смотреть и помогать ему. Например в шутане камера оказавшись на враге должна притормаживать в ожидании что игрок хочет прицелиться на врага. С кучей условий - типа если игрок вертит камеру быстро то он скорее всего не хочет прицелиться, а если стал притормаживать то скорее всего хочет.
Аноним 25/09/18 Втр 18:47:15 528778134
>>528775
Спасибо за пояснение, озадачил прям. А не знаешь, есть ли в ассетсторе ассет с реализацией? Хочется взглянуть на пример.
25/09/18 Втр 22:32:23 528833135
>>528778
Таких нет. Это довольно узкоспецифическая область, в интернете есть очень мало упоминаний как работает управление камерой в консольных шутерах - но это очень сложные системы. Большинство вообще не в курсе их существования. Вот отсюда можно начать: http://drstrangevolt.blogspot.com/2012/12/aim-acceleration-in-console-shooters-part1.html и адаптировать для мабилок.
Аноним 25/09/18 Втр 22:53:42 528843136
>>528833
Как будто побывал в масонской ложе, спасибо за просвещение. Думаю, обойдусь рэйкастом: луч попадает на enemy-> player фиксируется на нём, знания пока слабоваты.
Аноним 25/09/18 Втр 23:39:35 528849137
>>528843
Автовыстрелы еще сделай, а игрок просто для рекламных видосов нужен
Аноним 26/09/18 Срд 22:57:20 529031138
Если я в блендер сделаю модель и навешаю на нее всякие текстурки, прозрачность и т.д. это сохранится в юнити или нужно будет заново в юнити навешать текстуры и эффекты?
Аноним 27/09/18 Чтв 04:45:49 529058139
>>529031
Заново, импортнется только часть и криво
Аноним 27/09/18 Чтв 13:05:20 529106140
Узнал про практическую пользу от ECS. В будущем движке от Photon - "QUANTUM" симуляция работает на ECS. Движок детерминирован. По сети отправляется лишь ввод от игрока. Так что имеет смысл уже сейчас начать учиться мыслить в парадигме ECS для разработки сетевых игр следующего поколения.

https://www.photonengine.com/en-US/Quantum
Аноним 27/09/18 Чтв 13:11:46 529108141
>>529106
>deterministic simulation without lockstepping
А это как?
Аноним 27/09/18 Чтв 15:02:14 529130142
Юняч, помогай.

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

И всё бы было хорошо, если бы эти ребята жили в 3D. Я бы прикрутил навмеш и в хуй бы не дул, как говорится.

Но как это реализовать в 2D?

Можно, конечно, просто заставить их бампаться друг об друга, но не хотелось бы использовать динамику там, где она не нужна. Да и выглядит сие топорно.
Аноним 27/09/18 Чтв 15:21:07 529136143
mayaModel.PNG (148Кб, 1913x800)
1913x800
mayaRig.PNG (122Кб, 1915x789)
1915x789
unityModel.PNG (403Кб, 1933x870)
1933x870
unityAnimation.PNG (394Кб, 1919x786)
1919x786
Как правильно экспортировать майя анимации отдельно от модели в юньку?
Если я импортирую модель с анимацией то все ок, но если пытаюсь сделать отдельно то ничего не работает.

В майе я сначала экспортирую модель без анимаций(скрин 1). Потом открываю файл с анимациями, делаю бейк, удаляю все меши, оставляя только кости(скрин 2). Экспортирую в fbx с анимацией.
В юньке создаю аватар из fbx с моделькой. Назначаю рандомную кость для rootNode.(скрин 3). А в fbx с анимацией ставлю этот аватар во вкладке rig.
Модельку немного пидорасит по оси y в процессе анимации, но анимация не та, некоторые анимации вообще польностью не работают.

Что я делаю не так?

Может ли это быть из за немного другой иерархии(скрин 2)?
Аноним 27/09/18 Чтв 15:21:59 529138144
Аноним 27/09/18 Чтв 15:33:10 529143145
>>529138
Я бы тебе отсосал, будь я пидором. Спасибо.
Аноним 27/09/18 Чтв 15:45:08 529146146
Аноним 27/09/18 Чтв 15:49:32 529147147
Аноним 27/09/18 Чтв 16:00:36 529149148
>>529147
Оно не автоматическое же, а работа с сенсором настроена чики-пуки. Стандартное говно ерзает, как припадочное.
27/09/18 Чтв 17:41:30 529166149
>>529146
>15к$
Ты даун.
>измеряет качество кода в килобайтах
Вдвойне даун.
>жмотится заплатить жалких 15 баксов за готовое решение и требует чтобы все сделали за него и бесплатно
Трижды даун.
>не может написать контроллер персонажа
Просто ultimate имбецил.

Даже ссать на тебя зашкварно, просто съеби под шконарь и не пиши сюда больше.
Аноним 27/09/18 Чтв 17:49:31 529170150
>>529166
А ты можешь? Ну напиши, раз герой такой, и запости со фри доступом. Я вот могу, но мне лень. Я ему 5 баксов и так занёс, он, наверное, от счастья кончил в очко твоей мамаши, быдло агрессивное.
Аноним 27/09/18 Чтв 17:53:48 529172151
>>529166
>15к$
Там 15к, я понимаю что ты мамкин миллионер и уже ослеп от элитного стекломоя, но даже я, пробежав пост по диагонали заметил.

Мимо
27/09/18 Чтв 17:59:12 529175152
image.png (598Кб, 600x693)
600x693
>>529170
>А ты можешь? Ну напиши, раз герой такой, и запости со фри доступом. Я вот могу, но мне лень. Я ему 5 баксов и так занёс, он, наверное, от счастья кончил в очко твоей мамаши, быдло агрессивное.
- раздался пронзительный голос со стороны параши.

Но пацаны, как всегда, не обратили внимания на это визгливое кукареканье. Пусть кукарекает, что с него взять?

Петух — не человек, и сегодня ему предстоит очень трудная ночь. У него уже в течение полутора лет каждая ночь была очень трудной, и теперь его анус был разработан настолько, что он без труда мог спрятать в нём банку сгущёнки.
Аноним 27/09/18 Чтв 18:00:08 529176153
изображение.png (252Кб, 1384x728)
1384x728
>>529172
Охуительные, блядь, истории.
Аноним 27/09/18 Чтв 18:04:44 529179154
Аноним 27/09/18 Чтв 18:40:07 529182155
>>529176
Окей, по ссылке я ясен хуй не переходил, беру свои слова обратно и ссу на того нищука с реквестом. 15 баксов это действительно немного.
Аноним 27/09/18 Чтв 19:16:18 529190156
Может кто подскажет? Как сделать так чтобы текст на экран выводился побуквенно(с анимацией), весь гугл прочекал ничего толком не нашел.
Аноним 27/09/18 Чтв 19:24:30 529193157
>>529190
Накодь сам, просто меняй компонент text, добавляя по одной букве.
Аноним 27/09/18 Чтв 19:58:47 529196158
>>529136
Что за игру делаешь?
Аноним 27/09/18 Чтв 20:23:08 529201159
>>529196
Иммерсив sci-fi шутер.
Аноним 27/09/18 Чтв 21:03:23 529208160
>>529196
Это модельки из вахи. Просто мне нравится изучать и экспериментировать с красивыми модельками, а не бездушными кубами.

Пока в планах пильнуть часть того же dow это RTS если вдруг не знаешь с некоторыми фишечками из другого кириллоподелия Zero-K тоже RTS.

Почему работает анимация я так и не разобрался, так что бампаю реквест двачеэкспертов.

пост #159 писал какой-то мимохуй
Аноним 27/09/18 Чтв 21:09:02 529212161
15346773900690.png (141Кб, 600x842)
600x842
Аноним 27/09/18 Чтв 21:14:08 529213162
>>529208
>бездушными кубами
У кубов есть душа! Я куб - я знаю!
Аноним 27/09/18 Чтв 21:23:58 529215163
>>529213
>Я куб
Надеюсь, перегонный?
Аноним 27/09/18 Чтв 21:24:29 529216164
>>529213
Дефолтный надеюсь? Без нескучных материалов?
Аноним 27/09/18 Чтв 21:26:23 529218165
>>529216
Не дефолтный, а классический. "Дефолтный" это ругательный эпитет, как "негр" или "женщина".
Аноним 27/09/18 Чтв 21:28:40 529219166
>>529215
У перегонных редко бывает форма правильная. Еще и эмиссия повышенная. Смешение кровей до добра не доводит.
Аноним 27/09/18 Чтв 21:31:10 529220167
>>529212
Все еще лучше чем стараться ради школьников, пожирающих любое йоба говно без разбору.
Аноним 27/09/18 Чтв 21:55:52 529223168
>>529136
Может потому что анимация не переносится и нужно все в юнити анимировать.
Аноним 27/09/18 Чтв 21:57:17 529224169
1538074607.png (0Кб, 80x80)
80x80
Аноним 27/09/18 Чтв 23:01:06 529236170
Ребят, чёт я мучаюсь с колайдером сильно, может кто поможет. Кароч я не хотел возится с кубическими колайдерами и решил пользоватся меш колайдером, и у него есть конвекс и нормальный. Но нормальный не работает с другими меш колайдерами. Но мне очень понравилась его детализация, может кто знает как добиться такого же детального колайдера но чтобы он работал везде?
Аноним 27/09/18 Чтв 23:37:10 529244171
Как скриптом сгенерировать mesh с множеством разных материалов? Как у отдельного triangle поменять материал?
Аноним 28/09/18 Птн 01:34:08 529253172
Аноним 28/09/18 Птн 01:57:53 529255173
>>529236
> не работает
Бастует? Или ты жалуешься, что isTrigger задизейблен, когда convex выключен?
> очень понравилась его детализация
Только её врядли оценят пользователи. Игра на вкладке Scene это не совсем игра, никому кроме тебя (ошибаюсь?) крутой коллайдер не нужен. Еще учти, что динамическое инстанцирование скейленного меха с меш-коллайдером (конвексным) стоит до 200мс в погожий день.
Аноним 28/09/18 Птн 06:21:00 529263174
Обьесните долбоебу - нахуя вкрячивают этот нейстед префабс. Когда он существовал отдельно - хорошо, я его не трогал, такая-же лютая хуета от сторонних разрабов, как и ECSюнитеки любят прикупать себе конкретных разрабов, чтоб решали вопросы всякие, типа вашего Киеджиры, что рендерпайплайн и hdrp за них нахуячил в одно лицо, чувака, что эн-гую псиал, сейчас взялись за этих вот
Только у меня с конкретным нейстед префабсом был очень плохой опыт общения, когда пришел проект практически доделаный кем-то очень криворуким на допилить. И нейстед префабс доставлял мне адскую жопную боль, ибо при каждом маломальски изменении единообразного префаба, на которых и строилась архитектура - ебашил мне сохранение всех дочек внутренних, без моей на то воли.
Может обьясните - зачем он есть и в чем прелесть. Видосики от юнитеков и авторов ни о чем прикладном не говорят, а на форуме только темы касательно прикладного пользования без указания причины - нахуя это нужно
Аноним 28/09/18 Птн 06:26:25 529264175
>>529236
Тебе юнитеки пишут прямым текстов - нихуя коллайдер не риджидбадя, пока он не конвексный. по-моему самая первая пятая юнька начала на это ругаться. Онли конвекс. И возможность в свежих версиях этот конвекс покрутить ползунки. Бай зе вей - количество поликов на один меш увеличится с 256 на нормальное в ближайших обновлениях. Эдакий симплигон встроенный будет именно для конвексов
Аноним 28/09/18 Птн 06:53:20 529267176
>>529263
Ну смотри, допустим у тебя есть несколько префабов неписей, ну там бармен, уборщица, пьяница и т.д. И есть у тебя сотня префабов домов разных, и в каждом эти неписи в разных конфигурациях. И если ты захочешь поменять что-то в одном из неписей, то без нестед префабов тебе придётся менять это в каждом из сотни домов. Так что нестед префабы нужны, чтобы избежать подобной ебли.
Аноним 28/09/18 Птн 07:51:53 529271177
>>529263
Ты говоришь про нейстиед прифабес из ассетстора? Там пиздец кривые реализации. Это говно из говна в говне. А реализация от Юнитеков просто божественная.
Аноним 28/09/18 Птн 08:02:33 529273178
>>529271
>изменил параметр в одном нестеб префабе
>рекурсивно изменилось 99% проекта
вложенные префабы - это зло. вложенные префабы - это как наследование. все знают что наследование - плохо.
Аноним 28/09/18 Птн 09:59:40 529286179
28/09/18 Птн 10:49:53 529298180
>>529263
Поменяй вид кнопок в интерфейсе на 100 экранов.
Аноним 28/09/18 Птн 11:27:38 529305181
>>529273
Я сталкнулся с подобным, не имея понимания - каким образом наследуются компоненты на обьектах и дочках.>>529298
>>529298
В чем проблема? пробежался по рекурсии, используя для поиска имена, накинул с ее помощью на каджую компонент, который поменяет любое тебе нужное свойство на новое. Изи 5 минут
Аноним 28/09/18 Птн 11:36:19 529307182
>>529267
Нахуя подобные вещи делать вообще в окне иерархии. Для подобной нели в любом же случае БД со свойствами, или для убогих - скриптбл обджекты. хуяк-хуяк, сериализовали - збс.
Нужен немного другой пример, ибо видя задачу вспоминаю решение или костыль. Можно больше абстракции
Аноним 28/09/18 Птн 11:37:57 529308183
>>529263
>Может обьясните - зачем он есть и в чем прелесть. Видосики от юнитеков и авторов ни о чем прикладном не говорят, а на форуме только темы касательно прикладного пользования без указания причины - нахуя это нужно

Может дело в том что ты недоразвитый долбоёб с однопотоком головного мозга в 2к18, у которого игры не тормозят только на топ пеках и топ-смартфонах и ты не можешь учиться в соверменные и актуальные парадигмы и приёмы?
Аноним 28/09/18 Птн 11:39:12 529310184
>>529308
Причем тут нейстед префабс?
Аноним 28/09/18 Птн 11:43:07 529311185
>>529310

Потому что ты дебич-шизик не могущий ни во что кроме MonoBehaviour и тормоза на >50 объектов+одноядро долбится в соточку.

То тебе ECS не нравится, то тебе Job System не нравится. А долбиться в соточку тебе нравится.
Аноним 28/09/18 Птн 11:46:15 529312186
>>529308
>Господа, нахуя ввели теплое?
>КАКОГО ХУЯ ТЕБЕ НЕ НРАВРАВИТСЯ МЯГКОЕ?
Аноним 28/09/18 Птн 11:50:06 529314187
>>529307
Это нужно для дезигнеров, не могущих в кодинг, чтобы всё в окне иерархии делалось.
Аноним 28/09/18 Птн 11:52:25 529315188
>>529311
И че ты доебался? Про многопоточность я топлю еще с ранних беток изучить и побаловаться с этим делом успел и заценил и уже юзаю, благо было время между проектами, и удалось прикрутить к ml-agent, где потоки пиздец как нужны.
Ебать ты дикий...
Я про конкретный нейстед префабс, который не имеет к сабжу обсуждаемого отношения
Аноним 28/09/18 Птн 11:56:05 529318189
>>529314
Спасибо. Вот ты адекват и все разложил.
закрыл глаза, представил Задорнова, произносящего в адрес дезигнеров "инсектором! ну-ту-пы-ые!". Даже попустило
Аноним 28/09/18 Птн 12:01:43 529319190
>>529263
Потому что можно создать префаб человека (с анимашками), можно создать префаб винтовки (умеет стрелять) - и сделать префаб человек-с-винтовкой. Так же можно создать префаб гранатомета. И создать префаб чеовек-с-гранатометом. При изменении человека будут меняться оба солдата. И еще засунуть 10 prefab variant'ов "ракетницы" рядом с префабов машины и получить префаб "ракетная установка". При изменении гранатомета будет изменен и гранатомет, и ракетница, и ракетная установка.
Аноним 28/09/18 Птн 12:10:01 529321191
>>529307
Напомни, через сколько месяцев после релиза у "this is the police" появилась песочница? Часто из кодом создаешь анимации (не крутишь их, а именно создаешь)?
Аноним 28/09/18 Птн 12:20:07 529325192
>>529321
Яебу кагда когда она вышла, что ты подразумеваешь под песочницей, и нахуя там анимации из кода. Братиш, ты говоришь какие-то странные тезисы, которые не все обязаны знать. Если знаешь что и как - тупо пиши, а не задавай странные вопросы, которые никому ничего не объясняют, а только выставляют тебя странным типом с манией величия
Аноним 28/09/18 Птн 12:22:29 529327193
>>529319
Ну, тогда посмотрим. спасибо
Аноним 28/09/18 Птн 12:24:32 529328194
>>529319
А потом ты соснёшь, когда человеку нужно будет сменить оружие.
Аноним 28/09/18 Птн 13:46:54 529349195
>>529328
Дада, никогда не забуду, как пехотинцы в старкрафте шли в штыковую, когда патроны кончались. А, нет, это ты обосрался.
Аноним 28/09/18 Птн 13:53:13 529354196
>>529349
А ничо, что в старкрафте патроны бесконечные?
Аноним 28/09/18 Птн 13:56:45 529357197
>>529354
Другие аргументы против твоего обсера? Все в курсе, что бесконечные, там и штыковую я тоже сам придумал
Аноним 28/09/18 Птн 14:25:03 529362198
изображение.png (191Кб, 360x308)
360x308
>>529354
>А ничо, что в старкрафте патроны бесконечные?

Попизди мне тут ещё, сука.
Аноним 28/09/18 Птн 14:40:32 529366199
>>529255
Я жалуюсь что два серх детальных меша друг с другом не работают, когда очень хочется.
Ух, 200 мс это больно. Так что получается, вы все делаете конструкцию из кубов вместо меша? Как вы делаете свои детальные колайдеры? Или вы их не делаете? Алсо можно ли использовать istrigger как колайдер? Если да то можно пример кода пожалуйста? не кричите чтобы я загуглил, я прост в гугле на эту тему запутался
Аноним 28/09/18 Птн 14:53:58 529370200
>>528670
тебе квадратно-гнездовой способ мышления не мешает?

>>529136
если экспортируешь свою хуйню как гуманойда, то юнити знает какая кость куда. если нет то разумеется имена и иерархия должна быть такой-же, откуда знать иначе где какая кость то?

>>529366
не делай детальные коллайдеры. вообще че ты там делаешь? творить хуйню вроде "а давайте сделаем целый уровень одним меш коллайдером и чтобы он двигался ещё" не рекомендуется. меш коллайдеры вообще физические движки пережевывают не очень быстро.

чтобы ловить коллизии с коллайдером есть специально отдельный код.
Аноним 28/09/18 Птн 15:40:59 529380201
>>529366
Конвекс или его подобие из тридередактора. Деградировавшая моделька отвечающая за физику там-же где лежит основная
Ты в майнкрафт переиграл
Аноним 28/09/18 Птн 15:51:03 529383202
>>529366
Я делаю так, чтобы модельки падали и ударялось прикольно, чтобы глаз не резало. Очень заебывает 10-30 кубов на модельке настраивать. Есть какой-то плагин, который автоматом кубы генерит, но со сложными фигурами (пикап с пустым задним отсеком) он справляется только очень большим количеством кубов (а 100500 кубов, я уверен, выльются опять же в потерянные кадры).
Аноним 28/09/18 Птн 16:04:15 529387203
>>529383
Почему кубы то? Кстати у кубов коллайдер очень странный и неправильно отрабатывает физику. Была задача сделать хват предмета физикой через джоинты и форсы (для виара) в итоге все отрабатывает правильно, включая конвексы, а кубы распидорашивает. Мешколлайдер такого-же куба даже без сабдивайда сетки дает нормальный результат. Оказалось, что у них вертексы физ. взаимодействия однонаправленные(наружу) а у всего остального - нет, и если мы что-то с большим усилием погружжаем в куб - он ебется, а остальные честно отрабатывают. Юнитеки в курсе, но зачем они так сделали - не понятно
Аноним 28/09/18 Птн 16:09:31 529389204
>>529387
Интересно. В плане перехвата пуль и падения объекта у меня с кубами все норм. А с кубами в жоинтах, гришь, проблемы возникают? Спасибо, буду знать.
Аноним 28/09/18 Птн 16:16:52 529391205
>>529389
Они там есть в принципе. Усилие приводящее к проходу сквозь коллизию вызывает не желание обьекта под собственной массой форснуться из куба в ближайший вектор до поверхности, а ждать пока следующие вертексы физики начнут взаимодействие друг с другом. Можешь провести эксперимент и захерачить предмет в куб юнитевский и заценить, покадрово - куда его херачит. и так-же сделать с кубом-мешем. Разница огромная
Аноним 28/09/18 Птн 17:59:28 529400206
>>529391
>>529383
Понял, то есть надо пользоватся конвексами, а там где надо что то точное так строить пирамиду из кубов? Кстати можешь дать название такого бесплатного строителя?
28/09/18 Птн 18:01:57 529401207
>>529305
> В чем проблема?
Вот в этом:
> пробежался по рекурсии, используя для поиска имена, накинул с ее помощью на каджую компонент, который поменяет любое тебе нужное свойство на новое
28/09/18 Птн 18:03:56 529402208
>>529370
>тебе квадратно-гнездовой способ мышления не мешает?
Нет. Я им наслаждаюсь.
Аноним 28/09/18 Птн 19:11:15 529414209
Аноним 28/09/18 Птн 22:01:18 529453210
>>529253
Это я уже всё это делал. Как разные текстуры на разные треугольники одного меша наложить?
Аноним 28/09/18 Птн 22:06:01 529455211
PleaseSendHelp.webm (1703Кб, 731x582, 00:00:32)
731x582
Памагити пожалуйста. Сделал кастомный эдитор суть которого в ВебМрелейтед. Проблема в том что при изменении префаба изменяются те его экземпляры, у которых spriteIndex помечен как неизмененный. Как можно этого избежать? Может, как-то пометить эту переменную как измененную?
Алсо, в новых Nested Префабах это будет правильно работать? Не спешу обновляться, но если это надо будет сделать для великого дела изменения тумбочек, то я готов.
Аноним 28/09/18 Птн 22:25:55 529460212
1538162692.png (8Кб, 487x382)
487x382
>>529455
Немношк потерпи, пока качается юнити кетчуп.
Аноним 28/09/18 Птн 22:32:16 529464213
>>529455
В ящике слева ты задал значение - при изменении префаба юнити... эм... изменило значение префаба. А переопределения остались переопределениями. Ну, в этом суть префабов. Скажем так: в префабе дефолтные значения, на сцене интересные значения.
Аноним 28/09/18 Птн 22:45:07 529466214
>>529460
unity hub установи уже
Аноним 28/09/18 Птн 22:56:51 529470215
>>529464
Имеется ввиду работа в инспекторе - раскидал, забыл про брейк префаб инстанс и... пизда, че. И да, есть варик завести скриптбл обджект, где хранятся как раз вот эти состояния по типам, и играться с ними, через обращение из твоего скрипта экзекьютеблом в едиторе
Аноним 28/09/18 Птн 23:05:08 529472216
>>529466
И что будет? Боздо подарит мне скоростной интернет?
Аноним 28/09/18 Птн 23:24:56 529481217
>>529470
Никакой "брейк префаб инстанс", как правило, не нужен, т.к. тогда эффективность префабов обнуляется. Есть вариант, задавать "интересное" значение равным "дефолтовому". Но так себе вариант - от "брейк префаб инстанс" отличается несильно. Вариант юзать как можно больше prefab variant'ов - кусок говна, т.к. у тебя удобный ползунок для смены спрайтов. Ну, млин, получается что нужно аккуратненько и лишний раз префаб не менять. Можешь для страховки использовать правило "использовать на сценах только prefab variant'ы". Эх, нету в мире совершенства - если хочешь, я могу убить тебя, чтобы ты не мучался.
Аноним 28/09/18 Птн 23:45:20 529485218
>>529481
>Эх, нету в мире совершенства - если хочешь, я могу убить тебя, чтобы ты не мучался.
Лучше поставить ГОДОТ. Там полноценный инстансинг префабов (сцен), включая нестед любого уровня вложенности.
28/09/18 Птн 23:54:12 529489219
>>529485
Ты даже не смог понять суть проблемы, но выпрыгиваешь: ПОСТАВЬ ГОДОТ ПОСТАВЬ ЕГО ПОЛНОСТЬЮ - ты не черт из табакерки, ты не очень разумный школьник.
Аноним 29/09/18 Суб 01:32:34 529500220
VeshestvennoeDo[...].webm (692Кб, 659x495, 00:00:16)
659x495
>>529481
>>529470
Если я двигаю ползунок с дефолтного значения, а потом возвращаю его на прежнее то переменная становится "интересной" и изменение префаба её не затрагивает, хотя по факту значение остается таким же. Я плохо представляю как юнити работает под капотом, поэтому пока не знаю как это имитировать в коде. Попробовал корутином переставлять значение на -1 и обратно - не помогло.
Аноним 29/09/18 Суб 02:54:38 529502221
>>529489
>Ты даже не смог понять суть проблемы
Ты тоже не смог понять суть проблемы. Инстансы сцен годота в отличие от префабов на вебм, могут переопределять общие значения переменных для себя. В отличие от того, что показано на вебм. Переопределяют значения любых параметров, установленных в сцене-префабе и это переопределение не влияет на другие инстансы. Но изменение параметра в корневой сцене всё еще затрагивает инстансы, если этот параметр не переопределен. Юнити сосёт не разгибаясь у опенсорца.
Аноним 29/09/18 Суб 07:17:21 529507222
Аноним 29/09/18 Суб 07:49:29 529513223
Оказывается, есть способ изменить название сериализуемого поля, не потеряв при этом его значения. Для этого нужно использовать атрибут, а потом убрать его кек:
[FormerlySerializedAs("old name")]
Аноним 29/09/18 Суб 10:24:35 529522224
>>529455
Мне вот одно непонятно. Чего ты блядь пытался добиться нажатием apply?
Аноним 29/09/18 Суб 10:29:35 529523225
Аноним 29/09/18 Суб 12:36:29 529535226
>>529522
А чего обычно добиваются с его помощью? На видосе видно, какой ебанутый эффеки у нас происходит при сохранении префаба
Аноним 29/09/18 Суб 14:29:35 529546227
>>529502
Инстансы могут переопределять общие значения переменных для себя - это показано на вебм. Изменение параметра в корневой сцене всё еще затрагивает инстансы, если этот параметр не переопределен - это тоже есть. В юньке инстанция префаба может жить не только на сцене, то и внутри другого префаба (насколько я тебя понял, годот так тоже умеет). Еще в юньке есть prefab variant'ы и save/load настроек компонента, чего нет в годоте. Использовать менее функциональный инструмент не очень идея. Про суть проблемы: нашему строителю тумбочек это не нужно.
Аноним 29/09/18 Суб 23:06:53 529593228
Аноны, посоветуйте годный кит для UI а-ля РПГ. С инвентарём и прочей поебистикой.
Аноним 29/09/18 Суб 23:16:58 529594229
Capture.PNG (119Кб, 698x459)
698x459
Как поменять background color эдитора, как у этого петушка на скрине?
Аноним 29/09/18 Суб 23:23:50 529595230
Аноним 29/09/18 Суб 23:37:13 529596231
x-bar.png (601Кб, 1400x1050)
1400x1050
>>529595
Не обязательно. На гитхабе давненько видел репозиторий, где человек клепает кастомные шкурки для редактора. Хотя это на совсем любителя тема
Аноним 29/09/18 Суб 23:40:24 529597232
>>529596
>>529595
Забыл уточнить, что только под винду
Аноним 30/09/18 Вск 00:25:17 529601233
Короче делаю вот это https://www.youtube.com/watch?v=q-r1YJzj28M
В окне игры как по умолчанию один спрайт накладывается на другой, но в окне сцены всё работает как на видео. Чяднт?
Аноним 30/09/18 Вск 12:49:08 529671234
>>529601
Тебе же все видео твердят про сортинг груп. https://docs.unity3d.com/Manual/SortingGroup.html Если с чем-то сталкиваешься - сразу лезь в документацию, а если там нет, гугли на юнитиансверс, пока их не полюбишь

Умничка, что изучаешь по оф. туториалам, а не говнокодерам с ютюба(есть пара хороших ребят, но это только те, на кого сами юнитеки подписаны). Все бы так начинали...
Аноним 30/09/18 Вск 18:04:53 529711235
2.jpg (82Кб, 700x634)
700x634
>>529671
Так суть в том, что в сцене всё работает нормально, но в игре не работает вообще, пикрелейтед. Сортинг групы само собой проставил. Да и раньше я уже такое делал тащемта, всё было ок.
Аноним 01/10/18 Пнд 21:38:15 529974236
Есть задачка запилить клиент-серверную игру не используя unity-network. Что посоветуете попроще? Photon?
Аноним 01/10/18 Пнд 21:39:14 529975237
Аноним 01/10/18 Пнд 22:15:10 530002238
1538421233405.png (147Кб, 475x624)
475x624
Почему при активном компоненте rb2d нельзя поменять order in layer? На обекте висит 2 триггера и 1 коллайдер.
Аноним 01/10/18 Пнд 22:27:46 530009239
>>529974
Тебе реалтайм нужен или только запросы?
Аноним 01/10/18 Пнд 22:36:39 530012240
Аноним 01/10/18 Пнд 23:08:58 530025241
>>530012
Что-то полноценное или индюшатина для себя?
Аноним 01/10/18 Пнд 23:14:50 530028242
>>530025
Просто демка. Только надо считать все на сервере, от клиента только ввод брать (и графон показывать)
Аноним 01/10/18 Пнд 23:21:12 530031243
>>530028
А почему на unet триггер? И это все-таки игра или что-то стенлово-выставочное?
Аноним 01/10/18 Пнд 23:24:10 530032244
>>530031
Сервер нужно сделать отдельно, не на юнити
unet так не может, насколько я знаю
Аноним 01/10/18 Пнд 23:37:30 530040245
>>530032
Пиши тогда на чем знаешь - джанго, нода, руби, аспнеткор. Не понимаю, что значит в твоем понимании - что есть "попроще"
Аноним 01/10/18 Пнд 23:40:30 530041246
>>530040
На c# надо. Движок какой посоветуешь или мне ручками в сокеты долбиться?
Аноним 01/10/18 Пнд 23:46:58 530043247
>>530041
Движок на шарпе... Ну пиздец теперь. Ебись если хочешь c asp.net core, но есть вероятность что быстро без навыков серверного охуеешь. Но если думаешь, что знаешь шарп - флаг тебе в руки открою тебе тайну, шарп юнитевые разработчики не знают и имеют лишь общие и ограниченные представления о нем
Аноним 02/10/18 Втр 03:25:05 530057248
Когда новый скин для редактора завезут?
Аноним 02/10/18 Втр 06:55:34 530065249
>>530032
Либо Lidgren.Network, либо Photon Server, если тебе нужна готовая система с мастер сервером, который запускает инстанцы и держит связь с другими серверами.
Аноним 02/10/18 Втр 08:02:08 530076250
ecs.jpg (116Кб, 1286x542)
1286x542
Аноним 02/10/18 Втр 08:08:52 530078251
tenor.png (270Кб, 540x410)
540x410
Аноним 02/10/18 Втр 08:39:44 530080252
>>530078
По ссылке открывается сразу про ECS. Если до тебя не дошло.
Аноним 02/10/18 Втр 08:46:55 530081253
>>530080
Это то же самое что и на хабре?
Аноним 02/10/18 Втр 08:50:53 530083254
Аноним 02/10/18 Втр 08:52:23 530084255
>>530076
ECS - сила, ООП - могила. Буквально неделю назад я копротивлялся за ООП, но тут почитал пару статей и ПРОЗРЕЛ!
Аноним 02/10/18 Втр 08:53:16 530085256
>>530084
ЕКС актуален только для сетевых дрочилен.
Аноним 02/10/18 Втр 09:10:03 530089257
>>530085
И для крупных игор с открытым миром и обилием контента.
Аноним 02/10/18 Втр 09:31:39 530092258
Аноним 02/10/18 Втр 09:39:48 530094259
>>530092
Он так говорит, будто ИСИЕС это будущее разработки, всё будет на ИСИЕС. Ага, конечно.
Аноним 02/10/18 Втр 09:46:03 530096260
ecs.jpg (164Кб, 1280x721)
1280x721
Аноним 02/10/18 Втр 10:32:08 530097261
>>530096
> смириться с тем, что многое недоступно
> ради выигрыша в 0,05 микросекунд
Ололо! ЕЦСблядей ебут уже в открытую.
Аноним 02/10/18 Втр 10:35:40 530098262
>>530097
Они, кстати, рассказали, что это пока низкоуровневая реализация. Потом они будут пилить высокоуровневую, которая будет такой же удобной, как обычные монобехавиоры.

ЕУЧ сосёт с его отсталой архитектурой из 90х. А больше движков и нет.
Аноним 02/10/18 Втр 13:16:41 530125263
>>530094
>Он так говорит, будто ИСИЕС это будущее разработки, всё будет на ИСИЕС. Ага, конечно.

Это уже настоящее для всех крупных контор, которые прошли путь от ООП головного мозга и XRay-engine середины 2000х подобных движков, вдоволь наелись говна с ООП и консолями прошлого поколения, поняли что без Data-oriented design в AAA никуда и прикрутили его к ECS. Уже скоро как 10 лет основная архитектура всех современных крутых игорь с графеном - ECS.

Для манявкатывальщиков-оопдебилов из галер это, безусловно, будущее.

Поэтому у них в лучшем случае пупки получаются, в которых на топ пекарне нужно на минималочках играть шоб нитармазило.
Аноним 02/10/18 Втр 13:18:39 530126264
>>530125
>и XRay-engine-подобных движков середины 2000х
Аноним 02/10/18 Втр 19:55:08 530244265
>>530098
Крайенджин на ecs работает(которую год как знатно обновили). Даже первый сурс на нем был.
Переучиваться прийдется всем и походу это реально бужет стандатом. Но скорее всего это будет плавно и в течении минимум года(как когда делали переход только на шарп, убирая js и boo
Аноним 02/10/18 Втр 20:35:23 530251266
>>530244
Никогда этот ограниченный процедурный понос не будет стандартом. Его область применения - это оптимизация алгоритмов. Все.
Аноним 02/10/18 Втр 20:41:14 530252267
>>530251
Есть твои вскукареки, а есть слова разработчиков из юнити. Это станет новым стандартом. Ещё они встроят екс в их новую сеть.
Аноним 02/10/18 Втр 20:41:16 530253268
То, что в unity - это вообще ограниченная версия ECS с которой ничего нельзя сделать. Там можно только сделать выборку по типу компонентов и все. Нахуй это нужно, если можно объявить массивы в MonoBehaviour и написать обычный процедурный код без ебли
Аноним 02/10/18 Втр 20:42:31 530254269
>>530252
>а есть слова разработчиков из юнити
Знатные пиздаболы. Их слова надо на 10 делить.
Будет очередная заброшенная технология. Лет через 5 анонсирует новый ECS опять, если к этому времени юнити не издохнет.
Аноним 02/10/18 Втр 20:54:10 530258270
Энтитидауны Школьники ОРХИТЕКТУРЩИКИ захватили тред, пиздец, я думал хуже в юнититредах уже не будет.
Аноним 02/10/18 Втр 22:16:14 530286271
>>530254
Юнитеки - ребята пиздатые и вообще ниразу не пиздоболы. Ричителла - неебаться управленец, и для роста акций продукт, что они реализуют обрастает фичами такого толка, что разрабы готовы переходить с других движков, видя удобство сейчас и на перспективу. А это привязывает кучу народа к другим сервисам экосистемы - унеты всякие и юнитиэдс. Почему, думаешь, скупают этих всяких самородков, которые делали топчик ассеты для стора и keijiro?
Аноним 02/10/18 Втр 22:25:20 530290272
>>530251
Так и про реактивное программирование говорили и про функциональный подход, и MVC, когда он появился(не про геймдев речь, а в целом)
Аноним 02/10/18 Втр 22:49:48 530292273
>>530258
Люди постигшие дзен геймдева понимают, что любую игру можно сдделать используя только передачу сообщений и behaviour tree
Аноним 02/10/18 Втр 22:51:54 530294274
>>530286
Тебя тоже скупили, самородок?
Аноним 02/10/18 Втр 22:53:53 530296275
>>530294
Как будто ты не знаешь, о чем я
Аноним 03/10/18 Срд 02:16:23 530318276
Я могу как-то реализовать чтобы при клике на объекте в иерархии выделялся не сам объект, а все его дочерние объекты с определенным компонентам на них?
Аноним 03/10/18 Срд 03:10:27 530322277
>>530318
не... зато можешь пробежаться по дочерним обьектам и заполнить ими массив с нужным тебе компонентом
Аноним 03/10/18 Срд 03:19:12 530326278
>>530292
Что ты делал прошлым летом? Где ты был год назад? Хотя, я бы и сейчас почитал толковых статей, чтобы колхозить поменьше.
Аноним 03/10/18 Срд 03:20:03 530327279
>>530318
не... зато можешь выделить их по-одинчоке, зажав ctrl
Аноним 03/10/18 Срд 05:30:07 530340280
Аноним 03/10/18 Срд 11:45:21 530368281
>>530340
Как?

>>530327
Это я знаю, долго и неудобно, когда я делаю какой-то эффект удобнее делать particleSystem дочерними элементами пустого объекта. И хотелось бы выделять их все при клике на пустой объект.
Делать вложенными сами партикл системc неудобно, если хочешь каждую по отдельности смотреть.

Я так понимаю что могу сделать кастомный инспектор с кнопкой и при клике добавлять нужные мне объекты в Selection. Но мне интересно могу ли я как-то перехватывать выделение нужного объекта и вместо него добавлять в Selection то, что мне нужно?
Аноним 03/10/18 Срд 11:59:09 530369282
209.png (258Кб, 1019x553)
1019x553
А я могу в решение юнити (*.sln) добавить второй проект, причем второй - не на юнити а windows form?

Прост я хочу чтобы эти два проекта использовали общие классы, а с dll пердолиться не хочу.
Аноним 03/10/18 Срд 13:04:41 530395283
>>530369
Добавил, и на уровне ms vs код видит классы из другого проекта. А юнька чет не хочет видеть. Она только из Plugins видит связи?
03/10/18 Срд 13:36:58 530408284
>>530251
Это стандарт для ААА уже не первый и не второй год.
03/10/18 Срд 13:43:14 530409285
>>530286
>вообще ниразу не пиздоболы.
Где их Server Library, чтобы делать сервера на UNET без необходимости запускать Юнити, которую обещали в районе 5.3? Нету. Они обещали расширять свою серверную библиотеку? Обещали. Где она? Нету, они кинули всех и пилят какую то новую пиздецому которую точно так же забросят. Потому пиздаболы.
Ах да, про баги в критических элементах вроде ломающихся через версию канвасы находящиеся внутри других канвасах (критично для производительного UI!) я вообще молчу. А ещё у них был фундаментальный баг когда запечённый и сохранённый в проекте свет на одной платформе пропадал при сборке на другой - они вообще ответили по багрепорту с минимальным примером где то через 4 месяца. Не просто пиздаболы, а пиздаболы-говноделы.
03/10/18 Срд 13:44:10 530410286
>>530369
Не стоит - проектные файлы генерируются и вообще не должны идти в контроль версий.
Аноним 03/10/18 Срд 14:59:53 530452287
>>530368
Ты можешь рекурсией или просто по нужными тебе компонентам пробежаться файндом и экзекьют ин эдитормод заинстансить единожды нужный тебе префаб при указанном парэнте. Изи же
Аноним 03/10/18 Срд 15:33:22 530463288
>>530410
Кароч я поебался, теперь у меня 2 солюшена и 3 проекта: Юнити, Сервер на виндовс форм и Common который билдит длл с описанием общий классов. Все правильно делаю?
Аноним 03/10/18 Срд 15:41:46 530465289
>>530463
>Сервер на виндовс форм
Это легально вообще?
Аноним 03/10/18 Срд 15:58:16 530469290
>>530465
Даже на ГТК# легально. Даже на УЕЧе. Даже на Godot.
Аноним 03/10/18 Срд 16:48:15 530482291
>>530465
Я щас еще начну все сериализировать в XML и кидать бродкастом, вызывай полицию
03/10/18 Срд 17:17:33 530489292
>>530482
Ты такой удивишься когда откроешь что грузить уровни из xml быстрей чем обычной сценой.
Аноним 03/10/18 Срд 18:07:29 530513293
>>530489
Говнокоду юнитеков уже давно никто не удивляется.
Аноним 03/10/18 Срд 22:01:20 530564294
>>530452
Врядли ты читал мой пост. Я спрашивал можно ли как-то перехватить клик на объекте в эдиторе. Мне не нужно ничего инстантить.
Аноним 04/10/18 Чтв 01:33:44 530631295
Котоны, а как можно сделать, чтоб визуализация текста, например Text mesh pro, управлялся с помощью партикл систем? Можно сделать материал, чтоб он использовал текст как текстуру?
Аноним 04/10/18 Чтв 01:58:39 530633296
>>530043
А используемый в юнити шарп полноценный или нет?
Аноним 04/10/18 Чтв 09:49:12 530679297
>>530633
Он у них отстаёт от последнего апдейта (или что-то вроде). Например, туплей нет, надо либо самому их делать, либо выкручиваться, если приспичило тупли использовать. Несущественные мелочи.
Аноним 04/10/18 Чтв 12:12:46 530712298
04/10/18 Чтв 12:53:44 530719299
>>530631
Рендеришь в текстуру, текстуру в партикли.
Аноним 04/10/18 Чтв 13:31:59 530736300
Платиновый вопрос от очередного вкатывальщика не программиста. С# или юнитискрипт учить?
Аноним 04/10/18 Чтв 13:37:11 530739301
Аноним 04/10/18 Чтв 13:42:42 530740302
>>530719
>Рендеришь в текстуру
Не подскажешь как это сделать?
Аноним 04/10/18 Чтв 13:48:09 530741303
04/10/18 Чтв 14:45:20 530748304
Аноним 04/10/18 Чтв 14:52:02 530751305
>>530736
Второй поциент разве сейчас существует?
Аноним 04/10/18 Чтв 14:53:54 530752306
Аноним 04/10/18 Чтв 15:13:30 530756307
>>530748
Я уже без тебя разобрался. Спасибо
Аноним 04/10/18 Чтв 15:15:21 530757308
Аноним 04/10/18 Чтв 15:27:03 530759309
>>530757
Меня смущает вторая камера, потому что-то я клепаю своё ДЕТИЩЕ на андроид, и когда-то начитался от ахуевших гуру сеньёров юнити, что якобы использовать вторую камеру приравнивается к смертному греху и в приличном обществе за такое бьют в ебало. Вот я и комплексую по этому поводу. Хотя, конечно, я всё уже затестил и пока стабильные 60 фпс на телефоне.
Аноним 04/10/18 Чтв 15:56:53 530764310
>>530759
Вторая камера вроде бы юзается для создания минимапов, т.е. показывается область сверху, на врага вешается префаб красный шарик, на игрока синий шарик, потом после хитрых манипуляций со слоями сцены, разрешаем второй камере рендерить только слои с шариками и общим лэйаутом уровня - чтобы сцена не рендерилась два раза целиком. А основной камере запрещаем рендерить слои с шариками и лэйаутом, как-то так.
Аноним 05/10/18 Птн 00:15:09 530846311
Сделал я отсылку данных с сервера на клиент (прост сериализую карту и шлю)

Но как мне слать команды с клиента на сервер? В буквально текстовом виде как то не айс "отправь этот юнит туда то".

Завести класс Command или как принято?
Аноним 05/10/18 Птн 03:21:37 530862312
>>530846
А что официальные туторы говорят? Там были какие-то спец. инструкции для полей.
Аноним 05/10/18 Птн 08:25:45 530874313
Аноним 05/10/18 Птн 08:35:30 530875314
Аноним 07/10/18 Вск 12:33:17 531250315
Придумываю архитектуру для карточной игры. И кажется что ECS подходит для этого идеально.
Простите меня, ООП-братушки. Кажется я перехожу на темную сторону силы!
Аноним 07/10/18 Вск 13:19:20 531252316
Аноним 07/10/18 Вск 13:22:17 531253317
Какой FPS ассет посоветуете? Говорят что UFPS говнище в красивой обёртке, это так?
Аноним 07/10/18 Вск 13:39:17 531256318
>>531253
>Какой FPS ассет посоветуете?
ЕБЕТ ЭТО ЧТОЛИ??? СУКА БЛЯТЬ ВОТ ЗА ТАКИЕ ВОПРОСЫ У МЕНЯ УБИВАЮТ В ТРЕДЕ НАХУЙ!
Аноним 07/10/18 Вск 17:12:31 531282319
>>531250
esc подходит идеально почти для всего лил
Аноним 07/10/18 Вск 18:16:48 531289320
>>531256
Не бомби ты так, не у всех есть время копаться в сторе и вылавливать годные ассеты.
Аноним 07/10/18 Вск 21:17:01 531328321
ss1-med-975cbaf[...].jpg (114Кб, 720x450)
720x450
Как бы вы сделали игровой цикл в карточной игре?
Ну то есть начало хода, получение карты, выбор карт.
Аноним 07/10/18 Вск 21:19:09 531329322
>>531282
Нет. Просто в картах удобнее сделать просто данные, чем городить поведения для каждого эффекта. По крайней мере мне так показалось.
Аноним 07/10/18 Вск 21:41:10 531333323
>>531328
В смысле архитектуры?
Аноним 07/10/18 Вск 21:55:55 531338324
>>531333
Да. Как это сделать в коде. SendMessage? корутины?
Аноним 07/10/18 Вск 21:59:13 531339325
>>531338
Я бы сделал визуалку отдельно, логику - отдельно, сеть - отдельно.

Т.е. игрок делает ввод данных, возникает событие, все кому надо на него подписались и отрабатывают. Логика про существования визуалки даже не знает. C# события. Корутины разве что для анимации какой.
Аноним 07/10/18 Вск 22:08:06 531340326
>>531339
И именно поэтому визуалку никак в ХС не пропустить и не ускорить, хотя всем уже сколько лет хочется. Визуалке и логике нужно друг об дружке знать, все потуги разделить их есть ошибка - в конце концов ввод игрока зависит от визуалки, он не общается с логикой напрямую.

Буффер команд надо делать как в файтингах. И кверю с первый входит первый выходит.
Вызываешь начало хода одного игрока, апдейтятся статы через корутину, в которой вейт пока переменная конца анимаций не станет тру, в конце корутины вызывается корутина с самим ходом игрока, в которой вейтится нажатие конца хода. Когда нажимается, вызывается начало хода другого игрока.
Аноним 07/10/18 Вск 22:08:58 531341327
>>531250
ECS - это один из паттернов ООП, назывался композицией до того, как ньюфаги придумали ему новое модное базз-имя. Так что никуда ты не переходишь, братушка.
Аноним 07/10/18 Вск 22:19:19 531345328
>>531340
>ХС
Що се теке?

>>531340
>Вызываешь начало хода одного игрока, апдейтятся статы через корутину
Чет звучит плохо. Это ты УСЫ изобразил?

>>531340
>Визуалке и логике нужно друг об дружке знать
Ниет. Визуалку геймдизайнер сломает, логика вообще на удаленные сервера в гонконг уедет. Для годного дизайна - надо разделять. Попытки оптимизировать перформанс таким образом - смешны. особенно когда игры нет. И внутри логики и визуалки надо все разделять.
Аноним 07/10/18 Вск 22:22:24 531347329
>>531340
То бишь так сделать:
Логика эффекта карт, которая лежит в буффере и которая связана с визуалкой, чтобы не ебаться с ускорением/пропуском ходов и т.п.
Логика добавления эффекта карты в буффер
>>531345
>логика вообще на удаленные сервера в гонконг уедет
Нахуя? Клиент сам со всем справится. Это, блядь, карточная игра, там нехуй считать. Пересылать только действия другого игрока.
>оптимизировать перформанс
Это не оптимизация, дорогой, это такая архитектура, чтобы волосы на голове потом не рвать, когда придётся баги решать.
Аноним 07/10/18 Вск 22:26:14 531348330
>>531347
>такая архитектура
Называется вермишель. Захочешь потом другую игру делать - готовый код из вермишели не выдрать, будешь всю хуйню сначала писать. Зато писать быстро научишься, тоже норм.
Аноним 07/10/18 Вск 22:30:09 531352331
>>531348
>Захочешь потом другую игру делать - готовый код из вермишели не выдрать, будешь всю хуйню сначала писать.
Чивоплять.
Что проще распутывать - раздельные логику и графон, т.е. по сути две цепочки действий, которые обрабатываются параллельно, или же единственную связанную цепочку действий, где логика нового действия не начинается, пока не кончится графон старого действия?
Какая ещё вермишель из одной цепочки, когда альтернатива - две цепочки, которые никак не взаимодействуют и друг друга не знают, из-за чего сотни графических багов и невозможность сделать ход, если враг забафферил слишком дохуя графония?
Аноним 07/10/18 Вск 22:34:16 531355332
>>531348
>Захочешь потом другую игру делать - готовый код из вермишели не выдрать, будешь всю хуйню сначала писать.
Что значит "не выдрать" вообще? У меня такая цепочка вместо разделения логики и графона. Ты думаешь я что, для каждой абилки программно графон и логику прописываю? Нихуя вообще, у меня поддержка моддерства, всё в скриптах во внешних файлах прописано. Очевидно, что это НЕ вермишель, если возможно в такую систему вписать новую абилку с новым скриптом и новым графонием просто из текстовика.
Аноним 08/10/18 Пнд 03:36:18 531370333
>>531328
Было бы круто, если бы я играл в карточные игры и знал, о чем говорю.
Вот есть ход. Ход это игрока, или ход ИИ, или ход игрока-за-сеткой: без разницы - делаем Ходильщика, унаследованного от Unit(точнее, нужен public ActionReceiver getActionReceiver, но с ним писанины кратно больше). Список ходильщиков держим в PartyController и итерируем, пока у одного из ходильщиков не случился .isPartyWinner.
У ходильщика случился ход. Он может: кинуть карту на лоток, нажать спец. действие (-3 всем роботам противника), нажать конец хода сделать что-нибудь. Из синглтона partyController вызываем у tekuwiyHodilwik.nextAction(this) (если вернулся false - делаем this.endTurn()).
Внутри .nextAction решили, что нужно кастануть "Уебать всех роботов врага" - дергаем myPartyController.castSpell(actions).
Каждый Action должен уметь понимать кого можно трогать (FilterRule_ByRase : FilterRule ... public List<FilterRule> canTouch) и кого трогать не стоит (FilterRule_ByOwner : FilterRule ... public List<FilterRule> refuseTouch). Массив юнитов не держим. Держим массив плейсхолдеров: Placeholder_CardOnDesk, Placeholder_CardInPacket, Placeholder_Hodilshik, ... Бегаем по плейсхолдерам. Placeholder вернул true из .canReceiveAction(action): итерируемя по Unit'ам из .getUnitsForAction(action). Например, нам вернули магический-щит-над-орком и самого орка (оба унаследованы от Unit, а точнее имеют getActionReceiver). units[0].runAction(action) сделает action.damagePoints-=10, а units[1].runAction(action) вернет false. И тут пора бы еще раз дернуть .nextAction, но...
Но у нас есть анимашки. Точнее, для игры они нужны, а для каких-нибудь юнит-тестов и просчета баланса визуальная часть не нужна. У ActionReceiver создаем public Visualizer visualizer и public GameObject visualizerAnimationLivesHere. Собственно, если visualizer у нас не null'овый - инстанцируем некий префаб с некими анимашками и сохраняем его в visualizerAnimationLivesHere. Запускаем все итерации как сразу по получению команды, так и по Update - покуда кто-то (из ActionReceiver'ов) имеет visualizerAnimationLivesHere!=null делаем return, если null у всех - считаем действие выполненным.
Идем на следующий .nextAction. Решили выкинуть карту. Тоже экнш, применяется к первому-не-пустому Placeholder_CardOnDesk, но с проверкой на .blockAction(action) (и там тоже нужен ActionReceiver+Visualizer, который покажет: "Нельзя использовать пиратов и английскую королеву одновременно"). Положили карту на стол со всеми теми же visualizerAnimationLivesHere.
.nextAction вернул-таки false. Делаем конец хода. По-одному берем каждый плейсхолдер из Placeholder_CardOnDesk, Placeholder_Hodilshik, дергаем у него .getEnemySlotForAttack (если занятого вражьего Placeholder_CardOnDesk нету, то возвращаем вражий Placeholder_Hodilshik; да, конечно, тут логика потяжелее, но я уже заебался печатать), берем .getUnit (если кудаАтаковать и когоМогуАтаковать связаны - ну блядь делаем общий метод, усложняем логику), делаем ourDearUnit.atack(toSlot, toUnit) (Action+ActionReceiver?+ActionVisualizer+Update).
Когда все атаки проитерированы - переключаем ходильщика.
Аноним 08/10/18 Пнд 03:47:25 531371334
>>531370
Чтобы не было недопонимания. От MonoBehavior в таком раскладе вообще никто не унаследован. Как нарисовать карту-на-столе:
1. делаем у плейсхолдера список-карт-на-столе опциональный visualizer (разумеется, не ActionVisualier) который знает куда карты рисовать (задано мышкой в юнити) и знает какие карты рисовать из-за дабл-каплинга с плейсхолдером (да, блядь, прямо вот оба о друге знают, три программиста погибли, пассажиры в шоке).
2. делаем у карты опциональный visualizer (опять же, не ActionVisualier и не CardsListOnDeskVisualizer), который нашу карту рисует. кол-во здоровья, кол-во урона, все иконки рисуем отдельными компонентами, которые знают о юните.
Аноним 08/10/18 Пнд 04:35:41 531375335
Антош, помоги пожалуйста, я тупой.
Есть код: https://pastebin.com/YAhFsa1B
insectPrefabsArray - 3 элемента, последние 2 пустые, первый префаб.

Если запустить все как есть, то все работает как ожидается:
Спавнится объект раз в 3 секунды.

Но если раскомментировать строчку 31 и закомментировать 32ю то начинается какая то хуйня, тогда у меня в первые 3 секунды спавнится 1 объект, во вторые 3 секунды спавнится 2 объекта, в третьи 3 секунды спавнится 5 и так по нарастающей. Из-за чего такое происходит?
По задумке должен раз в 3 секунды создаваться объект с шансом 1/3.
Аноним 08/10/18 Пнд 04:50:16 531376336
>>531375
.isTimeToSpawn ставится в false только если свезет с 1f/3f - цепочка Update > SpawnInsect > StartCoroutine отрабатывает чаще.
Можешь SpawnCooldown выпилить и сделать
void Update() {
spawnEachSecondsTail -= Time.deltaTime;
if (spawnEachSecondsTail<0f) {
spawnEachSecondsTail = spawnEachSecond;
SpawnInsect(); // в котором нет вызова SpawnCooldown - 1f/3f будет без сайд-эффектов
}
}
Аноним 08/10/18 Пнд 08:11:40 531384337
>>531340
>И именно поэтому визуалку никак в ХС не пропустить и не ускорить, хотя всем уже сколько лет хочется.
Не понял как разделение логики и визуала связано с невозможность пропустить анимации? По сути это получается что-то вроде MVC паттерна. Ввод игрока, анимации и их пропуск это тогда ответственность слоя представления. А логика просто рассылает SendMessage и обновляет состояние модели, которое триггерит сообщения, которые обрабатываются в визуальном слое.
Все анимации просто добавляются, например, в буфер анимаций и проигрываются по очереди, и могут быть легко пропущены, т.к. модель данных уже давно изменена.
Это скорее если все связано, то нужно ждать конца анимации, чтобы обновилось игровое состояние.

>Буффер команд надо делать как в файтингах.
Да, как то я не подумал про такое. Я сначала хотел все на одних сообщениях сделать. Но тут лучше сделать 2 абстракции: игровые эвенты и буфер команд. Тогда игровые эвенты генерирует команды и добавляют их в буфер, где они выполняются по очереди.
Аноним 08/10/18 Пнд 09:59:43 531395338
Безымянный.png (22Кб, 712x958)
712x958
Первая версия архитектуры ККИ. Но это не точно.
Аноним 08/10/18 Пнд 10:58:53 531402339
>>531375
>По задумке должен раз в 3 секунды создаваться объект с шансом 1/3.
Нипонил. Раз в три секунды создаётся по одному ненулевому объекту в массиве (каждый с шансом 1/3) так, что раз в три секунды может создаться случайное количество объектов в диапазоне от нуля до количества ненулевых объектов в массиве?
Аноним 08/10/18 Пнд 11:59:37 531410340
>>531375
Апдейт каждый фрейм, а isSpawnЧто-тоТам буля поглощается лишь в 1/3 случаев, тогда как корутина, эту булю создающая, случается всегда. Вот и получаешь примерно так:
первый фрейм выпадает 3 из 3, запускается кулдаун
второй фрейм 2 из 3, запускается кулдаун
третий фрейм 1 из 3, сжирается буля и создаётся инсект, запускается кулдаун
Через время кулдауна первого фрейма буля становится тру, снова происходит то, что выше
В следующий фрейм снова случается то же самое
И третий фрейм снова, итого 5 раз выходит, что тебе в дебаглог кулдауна запись внесёт
Аноним 08/10/18 Пнд 12:39:32 531414341
>>531395
Хм, такая проблема. Допустим, игрок нажимает кнопку конца хода. Отправляется сообщение. Одна система проверяет карты и находит карту с эффектом конца хода и добавляет в буфер команд. Последняя система добавляет команду окончания хода.
Тогда в буфере такие команды:
1. Выполнить эффект
2. Конец хода.

Но возможно такое, что во время выполнения эффекта будут созданы новые сообщения и новые команды (например, это эффект убей существо, будет убито существо с эффектом при смерти), и тогда они будут добавлены в буфер после конца хода.
Аноним 08/10/18 Пнд 12:47:08 531416342
Аноним 08/10/18 Пнд 13:00:05 531418343
>>531414
Надо сделать буфер команд не очередью, а стеком. Тогда команда конца хода добавляется первой, а все последующие команды выполняются в порядке с последней добавленной по первую.
Нет ли тут каких-то подводных камней?
Аноним 08/10/18 Пнд 13:16:28 531420344
>>531416
>Нужно организовать игровой цикл через ECS
Не понимаю. Как ты это себе представляешь?
У меня тут событийная архитектура. Это отлично подходит для карточных игр. Системы это просто подписчики на события, которые выполняются в заданной последовательности.
Я их называю системами, потому что они делают принципиально то же самое: фильтруют сущности (карты) по каким-то данным и выполняют код в зависимости от данных.
Аноним 08/10/18 Пнд 15:43:11 531442345
>>531375
if(Random.value < 0.3f) { Spawn(); }
Аноним 08/10/18 Пнд 16:59:28 531449346
>>531418
Делаю буфер в виде листа из контейнеров, в каждом из них в конце контейнер удаляется из листа и вызывается NextAction(), в самом NextAction() висит проверка, сколько элементов в листе осталось, если 0, то конец хода, иначе берётся следующий контейнер из листа
Аноним 08/10/18 Пнд 21:42:30 531488347
Аноним 08/10/18 Пнд 23:49:15 531498348
Можно ли как-нибудь заставить trail renderer работать в localPosition без костылей?
Аноним 09/10/18 Втр 04:20:31 531507349
Посоны, в юнити же собирались какой-то язык разметки завезти для гуя. Как с этим дела обстоят?
Аноним 09/10/18 Втр 06:32:40 531510350
>>531507
Давно слышал, что у них был html в планах. Они даже левый js+css+html движок на c# выкопали в какой-то помойке. Но забили, уж не знаю к счастью или нет.
Аноним 09/10/18 Втр 11:00:14 531531351
>>531507
В 2019 бете появится скорее всего.
Аноним 09/10/18 Втр 11:02:46 531532352
А это мысль, нужно создать персонажа Петуха-Энтитуха, страдающего преждевременной кокоптимизацией. Чтобы он такой кокококококо внимательно в экран смотрит, задумчиво клювом водит, тут SSE-интринсик впендюрил, сразу радостное КУДАААААх , там кучу ECS лапши написал, такой получил +5 фпс и сидит довольный, кукарекает и тут такое оказывается, что он всё это время сидел в питушином углу, его блатные сокамерники уже три игры на объектах с наследованием написали и зашиппили, а разъяренный издатель в конце этой истории засовывает ему банку с абстрактной фабрикой в анус.
Аноним 09/10/18 Втр 12:05:31 531546353
>>531532
Почему ты так баттхёртишь от энтитей? Батька в детстве выебал, годотюшек?
Аноним 09/10/18 Втр 12:36:30 531554354
>>531250
ECS для карточной игры? Ебануться... скоро для сапера многопоточность пилить начнут.

мимо быдло геймдевер
Аноним 09/10/18 Втр 16:02:29 531566355
>>531554
Сапер на CUDA! Наконец-то ваша любимая игра рендерится 257 000 раз в секунду. Если Вы оставите куда-сапера включенным на сутки, по он отрендерится больше раз, чем обычный сапер смог бы отрендериться за всю Вашу жизнь!
Аноним 09/10/18 Втр 23:55:50 531658356
Screenshot1.png (3Кб, 550x35)
550x35
Screenshot2.png (9Кб, 538x207)
538x207
Screenshot3.png (1Кб, 238x33)
238x33
Ребят что может быть не так? Уже все проверил ничо не пойму.
Аноним 10/10/18 Срд 04:13:28 531668357
>>531658
Вы пробовали выключить и включить? Кеш ошибок - штука забористая. Когда юнька рисует белый экран и бастует - ребутай комп, как в 95м. Это правда.
Аноним 10/10/18 Срд 07:57:19 531680358
Как правильно организовывать на этапе создания глубокое дерево графического интерфейса? Начал кое что тут делать и чем больше развилок тем сложнее все настраивать.
Аноним 10/10/18 Срд 08:46:09 531683359
>>531658
Я не вижу на твоих скринах "pobeda1 = ... ;" при этом юнька говорит тебе, что в переменной pobeda1 ничего нет. Ты что нас за идиотов тут держишь?
Аноним 10/10/18 Срд 10:40:51 531691360
Screenshot1.png (1Кб, 196x55)
196x55
Screenshot2.png (11Кб, 369x170)
369x170
Аноним 10/10/18 Срд 12:59:58 531711361
>>531691
А ни что другое (в рантайме) не удаляет Win (или родителя)? И не зануляет pobeda1?
ребутй-комп-кун
Аноним 10/10/18 Срд 14:25:49 531716362
>>531680
Хз что ты называешь глубоким деревом, но вероятно твоя проблема в избыточной связности
Аноним 10/10/18 Срд 14:33:57 531717363
>>531716
И как с этим бороться? Особенно если это мобильная игра фактически из одного интерфейса и состоящая.
Проблема в том, что постоянно доступных кнопок много, на каждую нужно вешать закрытие всех любых уже открытых окон, на все окна нужно ставить булианы для запоминания их состояния, значения прогресса, это все в такую кашу превращается в которой я начинаю путаться.
Аноним 10/10/18 Срд 14:38:33 531718364
>>531717
>что постоянно доступных кнопок много, на каждую нужно вешать закрытие всех любых уже открытых окон
Можно через события сделать. райзишь события - все кому надо его обрабатывают и закрываются.

А вообще по апрхитектуру почитай, тут например https://habr.com/post/276593/
Аноним 10/10/18 Срд 15:03:43 531719365
>>531718
Вектор исследования понятен, попытаемся вникнут практически.
> райзишь события - все кому надо его обрабатывают и закрываются.
А вот тут можно поподробнее?
Аноним 10/10/18 Срд 15:42:38 531723366
>>531719
Ты не вызываешь гуишные методы напрямую, вместо этого у тебя есть событие "Конец уровня", например. На это событие уже подписаны окна и они сами решают что им делать с этим событием.



Аноним 10/10/18 Срд 15:45:25 531725367
Аноним 10/10/18 Срд 16:14:57 531731368
1502456506608.jpg (9Кб, 236x227)
236x227
Подскажите долбоеб-tier новичку как лучше организовывать игровое поле для пошаговой грид-бейсед рпг.
Аноним 10/10/18 Срд 16:21:06 531733369
>>531731
Использовать какой нибудь РПГ движок, там и учиться?
Аноним 10/10/18 Срд 16:33:17 531735370
f5605bac4d9c7c8[...].jpg (164Кб, 1000x1414)
1000x1414
>>531733
Ну не, все не настолько плохо. Я сейчас балуюсь с векторной физикой. Но из практического опыта только платформер на Моногейме. Видел пример сеточного поля, но там чел использовал circle collider для определения дальности атаки и я засомневался в этом подходе.
Аноним 10/10/18 Срд 16:33:58 531736371
>>531731
Тайлмапы в помощь.
Аноним 10/10/18 Срд 17:22:05 531740372
Аноним 10/10/18 Срд 21:29:56 531763373
Что лучше, json или xml?
Аноним 10/10/18 Срд 21:31:59 531764374
Аноним 11/10/18 Чтв 09:24:52 531788375
Ну че поцоны, кто-нибудь Quake 4 на Юнити уже запилил или вы еще все с платформерами ебетесь?
Аноним 11/10/18 Чтв 10:37:23 531797376
>>531788
Уже не один сделан
Аноним 11/10/18 Чтв 11:00:32 531798377
>>531763
Кастомный чтец текстовых файлов лучше
Аноним 11/10/18 Чтв 11:04:56 531800378
Аноним 11/10/18 Чтв 11:49:53 531806379
>>531800
За такое из /gd/ гонять ссаными тряпками (показывать-то нечего).
Аноним 11/10/18 Чтв 14:15:27 531820380
Аноним 11/10/18 Чтв 14:29:05 531822381
image.png (6Кб, 380x93)
380x93
Смарите, вот я например хочу, чтобы у меня был класс, в котором бы содержались различные объкты, и я хочу ссылку на эти объекты указать в инспекторе unity. Как мне это сделать?
Написал небольшой скрипт (https://pastebin.com/3fXQbF2c), но результата нет.
Аноним 11/10/18 Чтв 14:33:33 531823382
>>531822
Объяви публичный массив геймобджектов в классе.
Аноним 11/10/18 Чтв 14:49:12 531825383
Аноним 11/10/18 Чтв 14:52:11 531826384
Алсо, чему у меня через раз GetComponents<GraphicElement>() выдает нулл? Ладно бы все время, но он рандомно то пустую коллекцию дает то нулл выкидывает.

NullReferenceException
UnityEngine.Component.GetComponents[GraphicElement] () (at C:/buildslave/unity/build/artifacts/generated/common/runtime/ComponentBindings.gen.cs:185)
Аноним 11/10/18 Чтв 17:58:01 531841385
>>531826
Ну тут два варианта, либо Юнити у тебя косячный (спасибо разрабам), либо ты вкатился в геймдев на пахуе не изучав программирование и не замечаешь почему у тебя выдает null.
Аноним 11/10/18 Чтв 18:51:37 531845386
Аноним 11/10/18 Чтв 19:02:05 531847387
>>531826
Как вариант, что ни одного такого компонента не нашлось - "вместо" пустой коллекции вернулся null. Рандомно потому что компонент на одном элементе находит компоненты, а на другом элементе - не находит. Как будет (создай пустую сцену и повесь свой компонент на камеру) вести GetComponents когда нет компонентов?
Аноним 11/10/18 Чтв 20:50:06 531856388
Сука блять написал какую то хуйню в Watch, теперь Unity вещается до того как я это почищу. Пиздец инженеры ПО блять.
Аноним 11/10/18 Чтв 23:40:05 531911389
Челикс у которого лагало при открытии плакатов, ты тут? Как успехи?
Аноним 12/10/18 Птн 19:04:24 532020390
image.png (24Кб, 812x304)
812x304
Есть одна стейт машина. Анимация в Closing меняет альфу картинки до нуля. Однако, при следующем заходе на Opening альфа остается на нуле. Как сделать что б альфа в дефолтное состояние вернулась? Как то зациклить? Когда ставлю Loop оно в рамках одного перехода начинает мигать

Запускаю машину через animator.Play("Opening");
Аноним 12/10/18 Птн 19:08:39 532024391
И можно ли сделать чтобы после Exit машина не перескакивала автоматически на Entry?
Аноним 12/10/18 Птн 19:43:12 532029392
>>532020
Сделай новый стейт с той же анимацией и поставь скорость -1
Аноним 12/10/18 Птн 19:44:18 532030393
>>532024
Не выводи на Exit, зацикли на Idle
Аноним 12/10/18 Птн 20:11:27 532038394
>>532029
Спасибо. Добавил стейт с отрицательной скоростью но обратная анимация отображается визуально, а это не нужно.. Надо как то лучше вернуть анимированные значения в дефолт..

Могу, конечно сделать это в скрипте но это жи тупо.. Могу еще запилить другую анимацию которая будет возвращать альфу выключив элемент через енаблядь но это тожи тупо..

https://twitter.com/i/status/1047640140540260359
Аноним 12/10/18 Птн 22:37:45 532061395
>>532038
У тебя же простая последовательность. Зачем тогда юзать стейтмашин, если есть таймлайн. Там же практически любые юнитевские компоненты и паблики монобехов менять можно, пользуясь визуалочкой
arm64 Oreo 8.0 Аноним 12/10/18 Птн 23:30:17 532072396
Help, намутил апк - на xiaomi с 8 ядерным хз чем и андроидом 8.1, запускается норм. На Sony с arm64 Snapdragon 835 MSM8998 под андроидом 8,0, не запускается, сразу ошибка. В настройках поставил галку на arm64, всё обновил - и Юнити от 12.10.2018 и в андроид студии все инструменты обновил и джаву. в гугле ответы только от 2017го года, где обещают завести поддержку arm64, а в нынещней юнити оно уже есть но не робит. ПОМОХИТЕ!!!
Аноним 13/10/18 Суб 11:02:38 532094397
15390942885570.png (401Кб, 718x782)
718x782
С чего быстрее дергать значения, из массива? А почему? Массив это класс? Значит кажыдй раз как минимум надо заглянуть в кучу?
Аноним 13/10/18 Суб 11:27:44 532096398
>>532094
В гугле забанили?
Аноним 13/10/18 Суб 11:40:17 532099399
>>532096
Если не знаешь, так и скажи
Аноним 13/10/18 Суб 12:05:24 532101400
Аноним 13/10/18 Суб 16:51:58 532130401
Насколько по силе различаются эдитор и билд? Особенно интересует работа с текстом. Я постоянно срусь с падения фпс от отображения текста на экране, но в самом билде всё СИЛКИ СМУФ без проблем с падением фпс.
Я себя уже уверил, что дело в эдиторе, но вдруг я ошибаюсь в причине. Знает кто-нибудь что за дела такие?
Аноним 13/10/18 Суб 18:53:56 532142402
>>532130
Начнем с того что мы не знаем под какую кофеварку ты билдешь. На разных платформах разные интерпретаторы. По хорошему надо на каждой конкретной платформе тестить а не гадать на пораше.

А так стандалон билд быстрее в несколько раз, на моих задачах.
Аноним 13/10/18 Суб 20:16:55 532148403
image.png (463Кб, 1277x961)
1277x961
Подсобите ньюфагу. Импортировал из блендера машину, отображается в итоге так. Как исправить и не переделывать модель? Всякое напереключал, смотрел, понятия не имею что с этим делать.
Аноним 13/10/18 Суб 20:34:28 532150404
>>532148
Инвертируй нормали в блендере.
Аноним 13/10/18 Суб 20:35:35 532151405
>>532150
Вкратце, как это гуглить хотя бы?
Аноним 13/10/18 Суб 20:39:23 532152406
Аноним 13/10/18 Суб 20:53:17 532153407
Аноним 14/10/18 Вск 19:42:22 532280408
2018-10-14-20-3[...].webm (1038Кб, 1280x720, 00:00:15)
1280x720
Почему картинки, которая не привязана к движению камеры, странно начинает пикселизироваться при движении? Как пофиксить?
Аноним 14/10/18 Вск 19:42:53 532281409
Аноним 15/10/18 Пнд 16:57:27 532464410
>>532280
Ой, да кто заметит? Я вот в твоём видео еле-еле разглядел.
Аноним 16/10/18 Втр 03:50:25 532648411
Сап юнитач. Можно ли как-нибудь отражать спрайты с шейдерами? Попробовал сделать тень на свои спрайты, и все бы ничего, но при флипе, или повороте на 180, или при скейле на -1 спрайт исчезает.
Аноним 16/10/18 Втр 06:31:42 532655412
>>532648
Нагуглил что там нужно в шейдер Cull Off вписать, но куда именно, шейдер ведь на 2к строк? Legacy Shaders/Transparent/Diffuse - вот этот меня интересует.
Аноним 16/10/18 Втр 10:47:16 532665413
>>532655
В начале, лел. Погугли любой шейдер
Аноним 17/10/18 Срд 16:18:06 532843414
Как в if else создать несколько условий?
Например:
if (Нажатие пкм по кнопке, свет выключен)
свет включен
Аноним 17/10/18 Срд 16:29:10 532850415
>>532843
Даю голодающему удочку: if (true) => if (true == true) => if (!false == true) => if (true && false == !true) => if (!false || true == true), и так далее. Дальше сам.
Аноним 17/10/18 Срд 16:58:53 532858416
r102813Wx1Vb.jpg (27Кб, 500x483)
500x483
Аноним 17/10/18 Срд 17:12:30 532861417
1.jpg (269Кб, 1913x936)
1913x936
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class FaceCamera : MonoBehaviour {
Vector3 cameraDirection;

void Update()
{
cameraDirection = Camera.main.transform.forward;
cameraDirection.y = 0;
transform.rotation = Quaternion.LookRotation(cameraDirection);
}
}

Что я делаю не так почему не работает?
Аноним 17/10/18 Срд 17:15:48 532863418
Как в скрипте обратиться к какому-нибудь объекту? Допустим я хочу, чтобы кубик поменял цвет. Как указать этот кубик в скрипте?
Аноним 17/10/18 Срд 17:26:09 532865419
1.jpg (14Кб, 388x87)
388x87
>>532861
Сам решил проблему.
Аноним 17/10/18 Срд 17:27:50 532866420
index.jpg (5Кб, 207x243)
207x243
>>532861
>Object reference not set to an instance of object
>FaceCamera.cs:10

>Что я делаю не так почему не работает?

теперь у главной камеры надо ставить тег MainCamera
Аноним 17/10/18 Срд 17:33:45 532870421
>>532843

Под юнити же на С# пишут?

if (ПКМ && Свет выключен)
{
Свет включен
}
else
{
Свет выключен
}

Это же блять даже не основы программирования, это блять 5-тилетка через три минуты изучения любого языка узнает, куда ты лезешь не зная этого, оно тебя сожрёт.
Аноним 17/10/18 Срд 17:36:53 532873422
>>532858
Проиграл в голосину чёт.
Аноним 17/10/18 Срд 17:40:31 532874423
>>532863
Вешай свой скрипт на кубик и используй gameObject.getComponent
Аноним 17/10/18 Срд 19:30:03 532915424
>>532870
Самое интересное, что это в школе проходят. Не помнишь, как "жи" и "ши" пишется, или сколько будет 4х8?
Аноним 17/10/18 Срд 19:35:11 532916425
15379911254690.jpg (17Кб, 379x336)
379x336
>>532843
Бля ты че серьезно такие вопросы задавать? Вот ты вообще нихуя решил не делать, даже капельку программирование не поизучать, даже в туторах по юнити всяких такая лабуда встречается, и вот ты еблан тут решился это спросить?
Пиздец уебки разленились, еще и игори делать хотят.
Аноним 18/10/18 Чтв 01:37:41 532975426
Есть гараж. В гараже автомобили. Не статичные. На потолке светильники. Как лучше организовать освещение? Натыкл каждому светильнику поинт лайтов, но чет не уверен.
Аноним 18/10/18 Чтв 02:42:51 532977427
Может есть у кого-то плагин pro camera 2d 2.6.5 ?
Аноним 18/10/18 Чтв 04:58:18 532979428
>>532977
Есть только Pro Camera 2D 2.2.2
magnet:?xt=urn:btih:38e88075347f308dc8921df5b45b58b304ca876c
Аноним 19/10/18 Птн 09:54:22 533139429
Короче такой трабл. При первой загрузке сцены все нормально. Но когда из этой сцены выхожу в другую (меню), а потом из меню загружаю первую сцену обратно, не видит ригидбоди на объектах. Это баг, или я что-то сделал не правильно? Ригидбоди определяю в Start() с помощью gameObject.GetComponent.
Аноним 19/10/18 Птн 10:25:09 533141430
>>533139
Разобрался, проблема была в необнуленных ивентах.
Аноним 19/10/18 Птн 11:20:50 533142431
>>533139
А что в этом вашем юнити нельзя поставить текущую сцену на паузу и показать сцену с меню оверлейно? Правда штоле? Ахазхаха! Ебать движок тысячелетия!
Аноним 19/10/18 Птн 12:33:26 533149432
>>533142
Можно как угодно.
Аноним 19/10/18 Птн 14:38:07 533169433
>>533149
Пока что я вижу только так как не угодно.
Аноним 19/10/18 Птн 14:52:47 533175434
изображение.png (142Кб, 1024x601)
1024x601
>>532094
> С чего быстрее дергать значения, из массива?

Да.

> А почему?

Потому что данные в памяти лежат подряд и в кеш сразу по несколько элементов читаются процессором. Если конечно эти элементы - не жирные экземпляры классов на стопицот пропертей каждый.

> Массив это класс?

Массив это экземпляр System.Array. Устроен вот так (пикрелейтед).

> Значит кажыдй раз как минимум надо заглянуть в кучу?

"стек" и "куча" - суть абстракции области видимости и времени жизни языка.

В реалиях железа имеет смысл говорить сугубо о cache friendliness тех или иных структур данных.
Аноним 20/10/18 Суб 18:52:05 533334435
>>528048 (OP)
Аноны, не обосрался ли я с реализацией? Нужно реализовать разные типы профессии со способностями, которые характеризуют данную профессию. То есть если ты слесарь, то способностью будет уметь "крафтить" и т.п.

Самая профессия реализованная через скриптовый объект. Он принимает в себя название, описание и само состояние способности, пока этого хватит.

Тип, состояние спобности реализовано через enum. К примеру: врачевать, крафтить и т.п.

А вот уже о способности, описание, склонение, прочий текст, enum профессии и т.п. реализовано тоже через sctiptable object.

Еба событие
Тоже скриптовый объект. В нём хранится описание, enum способности, последствия.

Как работает:

Если происходит событие в котором нужно врачевание, в событии написано какое состояние, enum способность нужна, его ищем через enum в пуле всех скриптовых объектов способностей и печатаем текст с названием способности и том, что произошла еба и нужен врач и его умение врачевать.
Если данный человек есть, смотрим на его scriptable object, в нем мы смотреть на его профессию и получаем состояние способности.


Лично мне не нравится хранить столько скриптовых объектов, но как сделать иначе, заранее заготовленные объекты по-другому не приходит в голову. Кроме как отдельного массива класса, но просто будет не удобно работать.

Можно же слить в одно и скилы и профессию, то есть в описании скила написать профессию, но мне нужно отдельно объект скил и отдельно объект профессии.

Надеюсь понятно объяснил, рад любой критике, как этого монстра можно уменьшить и оптимизировать.
Аноним 20/10/18 Суб 19:42:22 533344436
>>533334
Можно рассмотреть вариант, при котором у человечков есть навыки в скиллах и они не связаны с профессией напрямую. Т.е. был npc врачом, а потом стал лесорубом - лечить он не разучился. Профессия npm служит для выбора задачи. Тогда у каждого человечка есть массив скиллов, у профессии (а то и у текущей задачи) есть массив как-скиллы-прокачиваются. Для каких-то задач может потребоваться массив минимальный-размер-скиллов.
Скилл перестает быть объектом первого уровня, становится абстрактной субстанцией на страничке в вики. Названия скиллам для работы не нужны - переходят на уровень локализации. Профессии я бы хранил в DontDestroyOnExit синглтоном из префаба (может быть, скриптаблы более правильное решение, я их не люблю).
Скиллы и характеристики отличаются только ростом из-за выполненных задач (т.е. это параметры). Т.е. у размера сисек и дальнозоркости в массиве буста будут стоять нолики. Или не нолики, если мы говорим о действии "медицинская операция" (задача это приказ-к-действию, профессия лишь добавляет возможные действия).
Компоненты массив-буста-параметров, массив-требований-к-параметров, массив-текущих-значений-параметров должны или наследоваться от компонента МассивПараметров, или иметь ссылку на лежащий рядом МассивПараметров. Очень рекомендую залепить в МассивПараметров кастомную рисовалку для инспектора.
Аноним 20/10/18 Суб 20:26:27 533350437
>>533334
>Аноны, не обосрался ли я с реализацией?
>Тип, состояние спобности реализовано через enum.
Обосрался
20/10/18 Суб 22:16:58 533363438
>>533334
А в чем собственно проблема с количеством скриптабл обжектов? Или ты собрался делать тысячу профессий?
Аноним 21/10/18 Вск 05:46:31 533380439
>>533344
Да это круто. Но у меня не будет такой большой и растущей системы с переходами способностей, прокачкой

Просто будет человек. Ему случайно присваивается профессия, которая уже заранее ссылается на enum или название, скилла.
Мне нужно отдельно объект профессии и скиллов. Чтобы можно было ссылаться на профессию и скилы. А не через профессию на скилл.

Хотя как раз можно вытаскивать из профессии скилл и выдать сразу человеку.

Спасибо, есть над чем подумать.
Аноним 21/10/18 Вск 05:53:50 533381440
>>533363
С началом мы создаём скриптобжекты профессий их в dictonary ключём будет название профы. Потом скриптобжекты скиллов их тоже в dictonary с ключем их enum.

Трабл в том что, а можно ли запихивать в dictonary заранее или только при старте проекта.

И сколько будет весить эта еба, да ещё и в dictonary.
21/10/18 Вск 08:08:07 533385441
>>533381
Словари не сериализуются в унити, но можешь на гитхабе поискать Serializable Dictionary. Или на старом юнити вики, не помню уже.
Аноним 21/10/18 Вск 08:27:18 533389442
>>533385
Как и ожидал. Просто не хочется нагружать проекта, сторонними инструментами, но если что воспользуюсь в крайнем случае. Спасибо
Аноним 21/10/18 Вск 17:43:57 533438443
Как реализовать пре-лоад рекламных объявлений AdMob? Межстраничное объявление загружается 5-8 секунд, а видео 12-15.
Аноним 21/10/18 Вск 19:05:48 533465444
На этом говне есть хоть одна нормальная игра?
Аноним 21/10/18 Вск 19:07:26 533466445
Аноним 21/10/18 Вск 19:12:35 533468446
>>533466
Что за поделки детей? Я правильно понимаю что юнити нужен чтобы создавать низкопробное мультяшное говно с пучеглазыми ебальниками, на большее он не годится?
Аноним 21/10/18 Вск 19:13:53 533470447
>>533465
С какой целью интересуешься?
Аноним 21/10/18 Вск 19:15:16 533471448
>>533470
Провожу исследование.
Аноним 21/10/18 Вск 19:17:03 533472449
image.png (1392Кб, 1280x720)
1280x720
image.png (2220Кб, 1536x864)
1536x864
image.png (924Кб, 1241x698)
1241x698
>>533468
>мультяшное говно с пучеглазыми ебальниками
Аноним 21/10/18 Вск 19:18:06 533473450
>>533472
> нормальная игра
Аноним 21/10/18 Вск 19:19:17 533475451
>>533471
Исследование реакции на толстые набросы?
Аноним 21/10/18 Вск 19:22:09 533477452
image.png (1271Кб, 2320x1238)
2320x1238
Аноним 21/10/18 Вск 19:24:28 533480453
Ясно, ни одного достойного внимания проекта нет. Так и я и думал.
Аноним 21/10/18 Вск 19:25:47 533481454
>>533480
Нам очень жаль, а теперь иди нахуй отсюда.
Аноним 21/10/18 Вск 20:13:02 533495455