Этого треда уже нет.
Это копия, сохраненная 5 сентября в 23:04.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Безымянный.jpg73 Кб, 633x784
Unity 3D #26 850680 В конец треда | Веб
Добро пожаловать в тред Unity - лучшего 3D и 2D игрового движка современности!

Прошлый тред: >>846842 (OP) (OP)

Официальный сайт: https://unity3d.com/ru
Документация: https://docs.unity3d.com/ru/current/Manual/index.html
Уроки: https://unity3d.com/ru/learn/tutorials
Форум: https://forum.unity3d.com/
Магазин ассетов: https://unity3d.com/ru/asset-store
UnityWiki: http://wiki.unity3d.com/index.php/Main_Page

На Unity сделано много замечательных игр - Valheim, Genshin Impact, Subnautica, Albion Online, Endless Space, Beat Saber, Boneworks, Rust, Блицкриг 3, Pillars of Eternity, Tyranny, Kerbal Space Program и многие другие. Главным преимуществом Unity перед другими движками является его простота для одиночной разработки. Не нужно иметь целую компанию девелоперов, чтобы сделать хорошую игру. Если ты один или имеешь небольшую команду и хочешь сделать хорошую игру без претензий на ААА, то Unity станет лучшим выбором. Тем не менее, даже крупные корпорации зачастую выбирают для своих игр именно Unity.

FAQ

- Какие у Unity сильные стороны?
- Простота разработки, удобный инструментарий, кроссплатформенность, богатая документация, огромное сообщество.

- Какие у Unity слабые стороны?
- Сложность в создании фотореалистичной графики. Для графики "как в Crysis" рекомендуется взять другой движок. Хотя Unity вполне способен выдавать не уступающую любым другим движкам картинку, это требует определённого навыка от разработчика.

- На каких языках я могу писать скрипты для Unity?
- На выбор два языка - C# и UnityScript. UnityScript - это что-то среднее между JavaScript и ActionScript. Выбирай язык по своему вкусу, они оба вполне удобны, но помни, что большинство примеров написано на C#., уже выпилили.

- Для каких жанров подходит Unity?
- Для абсолютно любых! Жанр ограничивается лишь фантазией разработчика (и его умением писать скрипты, разумеется). Можно создавать и РПГ, и стратегии, и слэшеры. Можно делать VR-проекты или Minecraft-подобные песочницы.

- На каких платформах работают созданные с помощью Unity игры?
- Windows, Linux, MacOS, SteamOS, Android, iOS, Windows Phone, PlayStation4, Xbox One, WebGL, Oculus Rift и многие другие. Полный список можно найти на официальном сайте. Таким образом, игры Unity работают на десктопах, на смартфонах, планшетах, приставках, в браузерах, VR-очках и некоторых других системах.

- Часто вижу скриншоты с красивой природой на Unity. Как такое создать?
- Очень просто! В Unity встроены удобные инструменты для создания террейна и SpeedTree для создания деревьев и готовая реализация ветра - не нужно ничего писать или скачивать и подключать плагины - ландшафт в Unity создаётся в пару кликов.

- Что такое стартер киты?
- Starter Kit - это набор скриптов и префабов, а зачастую и графических элементов для игры. Они призваны облегчить разработку игры определённого жанра и как правило разбиты по жанрам (Action-RPG Starter Kit, RTS Starter Kit, 3D Shooter Starter Kit, Space Game Starter Kit, VR Starter Kit и так далее). Также бывают стартер киты различных игровых элементов, не связанных с геймплеем (Nature Starter Kit с дополнительными природными объектами, Medieval Starter Kit со средневековыми объектами и так далее). По сути, стартер киты выполняют в разработке игры ту же роль, что и фреймворки в программировании. Однако стоит отметить, что использование геймплейного стартер кита принуждает разработчика изучать большое количество чужого кода и чужой структуры для внесения своих изменений и полноценного использования. В связи с этим большинство разработчиков предпочитает писать почти всё с нуля, получая полное понимание работы своей игры. Новичкам крайне не рекомендуется начинать знакомство с Unity со стартер китов.

- Что нужно уметь делать для создания полноценной игры, кроме Unity-разработки?
- Кроме непосредственной разработки игры на Unity, требуется также уметь создавать 3D модели (3ds Max, Blender, ZBrush), 2D рисунки (GraphicsGale, Aseprite, Piskel), текстуры (Substance Designer, NeoTextureEdit), музыку (FruityLoops, Ableton). Не обязательно учить это всё - например, в 2D играх не нужны 3D модели, а музыка необходима далеко не всегда. Также вы можете скачивать элементы для ваших игр на бесплатных сайтах. Если у вас есть деньги, то все необходимые элементы можно заказать у фрилансеров на https://www.fl.ru/ (русскоязычный) или https://www.upwork.com/ (англоязычный).

- Бесплатен ли Unity?
- Можно свободно скачивать, использовать и продавать готовые игры на Unity с лицензией Personal - это абсолютно бесплатно! Но на бесплатной версии при запуске игры будет появляться короткий стартовый ролик "Made with Unity", а также ваши доходы ограничены 100 000 долларов в год. Для снятия этих ограничений нужно приобретать платные версии лицензий Unity. В конечном итоге, платные варианты используются лишь крупными компаниями с огромными доходами, тогда как обычные разработчики в большинстве своём используют бесплатную Personal лицензию.

Обучение по книгам

Обучение языку C# книги на русском языке:

1. Head First. Изучаем C# 4е издание Авторы: Эндрю Стиллмен, Дженнифер Грин
2. Программирование на C# для начинающих 2е части Автор: Алексей Васильев
3. C# для чайников Автор книги – Джон Пол Мюллер
4. Unity и C#. Геймдев от идеи до реализации Автор: Джереми Гибсон Бонд
5. Язык программирования C# 7 и платформы .NET и .NET Core Авторы: Филипп Джепикс, Эндрю Троелсен

Для людей абсолютно не знакомых с движком есть 3и основные книги на русском языке:

1. Разработка игр на Unity 2018 за 24 часа Майка Гейга
(Знакомство с движком, изучение редактора, создание 4х простых игр практически без кода, отличное пособие для полных новичков).
2. Изучаем C# через разработку игр на Unity. 5-е издание Харрисон Ферроне
(Пошаговое освоение всех базовых знаний по программированию на языке С# в редакторе юнити, создание одной игры стрелялки от первого лица, написание искусственного интеллекта врага, книга переведена не совсем корректно и порой встречаются не просто опечатки, а серьёзные неточности перевода.)
3. Unity в действии. Мультиплатформенная разработка на C#. 3-е межд. издание Хокинг Джозеф
(Правильное построение архитектуры кода для сложных проектов, углублённое изучение программированию на C#, создание 4х полноценных игр на движке, обязательно нужно скачать код проектов, так как в книге он местами уже устарел.)
121.mp418,7 Мб, mp4,
1920x1080, 0:32
2 850684
3 850685
>>0680 (OP)
>>0680 (OP)

>UnityScript - это что-то сред


переписывай.
4 850690
>>0680 (OP)
Ебать блять, это самый худший перекат из всех. Пиздец, нахуй ты перекатываешь даже не читая? И что с картинкой в ОПпике?
Ебанутый.
5 850692
>>0690
Годотер перекатил
6 850693
>>0680 (OP)

Что за клоунский перекат ебанарот. 26 тема по счету не может нормальную шапку сделать. Еще и картинку непонятную поставил. Казел.
7 850694
>>0680 (OP)
>>0685
>>0690
>>0692
>>0693

БУНТ, РАБОТЯГИ!!!
8 850697
Я знаю это моя беда что мне лень перекатывать, но какого хуя ньюфаги делают перекат на 500, если он делается на 1к?
Вот прям нарываются чтобы я сделал след перекат по красоте и с любовью.

Если это продолжиться я займусь лично тредом своего любимого движка. Не поленюсь потратить своё время чтобы всё привести в порядок.
9 850698
>>0697
Да, да. Штаны подтянуть не забудь

мимо автор лучшего переката
10 850730
Ответ никто не знает? >>850679 →
11 850831
>>0697

>делается на 1к?


Полотно ебаное сейчас бы скроллить.
Давай на 5к делать перекат хули
12 850843
>>0730
Если ты используешь карты нормалей для сглаженных углов, то это, или же потому что у тебя просто куб из восьми точе и нормали расположились под углом 45 градусов
13 850861
>>0843
Да, восемь точек и фаски. думал чем меньше полигонов сделаю, тем лучше. Видимо, при экспорте в fbx нормали перевернулись (хотя показывает, что они обычные типа). Если я нарежу ребер на модельке, они станут по идее соответствовать же? Попробую, спс
14 850873
>>0861
Ты правильно думал, но в игровой индустрии уже десятки лет используется практика запекания нормалей с хайполи модели на лоуполи игровую модель. Почитай про это.
15 850888
>>0873
Так это делают для сохранения деталей вроде. Чтобы из миллиона полигонов осталось десять тысяч, а все финтифлюшки были на текстурах. Ну короче просто закину в Сабстенс Пейнтер стол, и мне выдаст автоматом Нормал мэп и свет запечется хорошо?
16 850945
В общем посоны кое как со скрипом попердывая походу родилась таки система апгрейдов башен.

Хэндлер офк не будет статическим, прокину там по архитектуре норммально. он же будет хранить уровни апгрейдов и он же будет бизнес логикой для построения связи с юай и дергать датабазу он будет через конструктор офк.
TowerUpgrade.jpg134 Кб, 782x947
17 850946
18 850988
>>0946
А андерскоре перед названиями переменных это часть синтаксиса или просто традиция, чтобы визуально отличать переменные от названия классов?
19 850989
>>0988
общепринятая(одна из, другая например m_*) "традиция" для именования приватных полней
20 850990
>>0989

>приватных


Так там в коде и публичные переменные так названы
21 850992
>>0990
прозреваю они были приватными изначально (на что SeriazableField указывает - на публичных оно тупо не нужно)
22 850994
>>0988
помечаю так филды, без привязки к модификаторам доступа.
23 851008
>>0988
В данном случае частично традиция(перед приватными полями), частично долбоебизм(перед публичными)
24 851014
>>1008
А зачем вы переменные называете полями? локальные приватными? функции методами? хватит меня бесить!
25 851016
Шарповики это буквально как хохлы, придумали названия обычных вещей по-другому, лишь бы не было похоже на плюсы, ей богу
26 851017
>>1014
потому что это не переменная а поле класса. и локальным оно быть не может
27 851018
>>1017
Это переменная класса, локальная
28 851019
>>1018
переменная - именованная область памяти.
поле сдвиг в этой области относительно начала.

локальность - воопше другая концепция никак не связанная с приватностью/публичностью.
локальная переменная видна только в том куске кода где объявлена(ака зона видимости) поля класса доступны всегда и везде, даже если они приватные - тут только компилятор не дает влезть в приват, но его можно наебать прямым доступом по сдвигу.
29 851020
>>1019
зы. локальную переменную вытянуть не получиться никак ибо она просто не существует вне своей зоны видимости.
30 851021
>>1008
И в чем долбоебизм?
31 851048
>>1020
>>1019
Почему тогда в анриле есть локальные переменные и публичные? А полей никаких нет
32 851050
>>1048
потому что мне поебать что там в этой блюпринтошлепке. пусть называют как хотят
33 851055
>>1050
Мне кажется, ты просто хочешь казаться важнее, поэтому придумал поля какие-то
image.png32 Кб, 644x223
35 851074
>>1063
Буквально синоним
36 851075
>>1074
я так понимаю голова и головка хуя у тебя тоже синонимы
37 851090
>>1075
Ну вот что ты выебываешься? То, что ты так жаждешь называть полями - это просто вид переменных, который используется в классах. Возможно, это разграничение имеет роль для тех, кто занят архитектурой и инжинирингом ЯП, но не для обычного использования. Просто усложняешь и плодишь сущности зачем-то
38 851091
>>1019

> поле сдвиг в этой области относительно начала.


У него тоже есть имя пчелидзе.
Более того

> переменная - именованная область памяти


У этой именованной области памяти есть адрес, что есть сдвиг.

Ну и лан чтобы слишком сильно не рофлить держи официальное определение

> Afieldis a variable of any type that is declared directly in aclassorstruct. Fields aremembersof their containing type



>>1048
Потому что разрабы си шарпа так придумали, и ввели такое понятие - поле. Просто чтобы удобнее было, потому что это тебе не С++, у нас тут есть атрибуты например, которые можно повесить на поле, но нельзя повесить на локальную переменную в функции.
39 851092
>>1090
Чтобы не было хуйни, просто называй поле и метод и всё, прими и не копротивляйся
40 851093
>>1091

>которые можно повесить на поле, но нельзя повесить на локальное поле в функции

41 851094
>>1092
Переменная и ф-ция
42 851096
>>1094
по-е и ме-од
43 851101
>>1096
>>1094

А как быть с существованием локальной переменной? про локальные поля я еще не слышал.
44 851105
>>1101
л-я п-я
45 851143
Ебать тут пориджи познают мир за пределами школьного курса бейсика.
46 851157
>>0945
Тут отписок не хватает, лучшим способом будет метод deinit который будет отписывать, плюс булева _isInited которая не будет давать два раза заинитить, а значит подписать два раза. Если нужно будет реинит делать то тогда будешь вызывать свой deinit() в начале инита без булева isInited.
>>0946

>[SerializeField]


>public


Двойная сериализация лишняя

>GetTowerType() и GetUpgradeLevel()


здесь и в других напрашивается свойство
public TowerType TowerType => _effectedTower;
47 851158
>>1014
Поле - это скорее не просто переменная, а переменная типа инстанса, то есть то, что вы в классе объявляете. Переменная более узкое определение.
48 851167
>>1157
сенкс за фидбек
49 851181
>>1157
Я так понял, что если инициализация происходит не через конструктор, а через отдельный метод, то, если по уму, то надо в каждый публичный метод пихать проверку на инициализацию. Эм ай райт?
50 851183
>>1181
"по уму" - да. ну т.е. если ты хочешь написать красивый код, который будет проверять все ошибки и правильно их обрабатывать, что бы какой-то левый юзер который будет его использовать все понимал даже не читая доков - то надо. ах да доки тоже "по уму" надо. и подробные комментарии.

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

>а надо ли оно все тебе?


в соло разработке оно мне точно не всралось лол))
52 851235
>>1186
Если будет много кода и захочешь переинитить объект то словишь очень странное поведение и можешь долго искать причину.
На подкорке уже срабатывает - вижу подписку ищу отписку, тем более написать отписку одной строкой дешевле чем ловить непонятное поведение в будущем.
Юнитеки придумали ивенты OnEnable, OnDisable, OnDestroy - подходят для многих кейсов чтобы туда засунуть подписку/отписку.
53 851238
>>1183

> а надо ли оно все тебе


В высокоуровневых классах стоит добавлять проверки. Это классы которые будут работать со Steam API например, или с аналитикой, мультиплеером. А в геймплее оно конечно нахуй не нужно.
54 851285
Прохожу щас туториал фотона. Имаджинирую ебальники джунов, которые себе в резюме пишут его как один из навыков. ставлю анус, после прохождения того же туториала
55 851370
>>1183

> а надо ли оно все тебе?


А че, так впадлу написать 3 строчки?

Ну серьезно, это написать займет 30 секунд, чего тут думать, конечно надо сделать. Даже если он сейчас пройдется по ВСЕМУ коду чтобы расставить выбрасывание исключений и проверки внутри классов чтобы сделать невозможным их использование неправильным образом - он потратит на это ну полчаса-час если я правильно прикидываю масштаб его проекта.

Зато не облысеет когда вылезут баги. Это даже не вопрос красивого кода, он просто рискует сойти с ума потом если не сделает этого.
изображение.png190 Кб, 640x432
Ебаный рот этого аниматора 56 851411
Кириллы, может кто то подсказать по аниматору?
Есть аниматор у которого переход из Walk u Attack построен из AnyState. Переход из Entry выведен в пустой стейт.
Переход из Walk u Attack происходит по булевым флажкам.

Проблема: какого хуя между переходами анимаций аниматор все равно лезет в пустой стейт? В дебаге проверил, ситуации когда работают\выключены оба стейта не происходит

Пикча не моя
57 851424
>>1285
Что именно проходишь? PUN уже устарел и выкинут на помойку, если что. Его заменил Photon Fusion.

Сейчас в трендах Photon Quantum. Там уже надо писать код на ECS и хорошо его оптимизировать.
58 851432
>>1411
А свою пичку не догадался скинуть? По описанию не понятно нихуя
59 851435
>>1424
Пун)) Во фьюжене подходы из пуна не используются?
image341 Кб, 948x1032
60 851466
>>1435

> Во фьюжене подходы из пуна не используются?


Общий подход такой же, если ты используешь модель с мастер-клиентом, когда вся логика на клиентах крутится. Посмотри туториалы. Можешь начать с доков:
https://doc.photonengine.com/en-us/fusion/current/getting-started/fusion-intro

Он стоит дороже, чем обычный Фотон (на котором крутится PUN), но при этом не даёт ничего особо нового для модели мастер-клиента. Он больше заточен под выделенные сервера. А под мастер-клиента лучше учи сразу Quantum, ибо это реально ПРОРЫВ нахуй. Особенно когда они выпустят версию 3.0, в которой будет много нового.
61 851473
>>1466
а есть хоть что-то готовое и нормальное от юнити?
62 851480
>>1473
Ты конкретно про сеть или в общем? Для сети у них есть вот это:
https://docs-multiplayer.unity3d.com/netcode/current/about

Но проблема в том, что это чисто сетевая либа. Никакой тебе интерполяции, никакого предикшена, никакой проверки попадания с откатами (которая реализована была ещё в древней КС 20 лет назад). Ебись сам как хочешь.

Видел ещё вот этот сетевой движок популярен:
https://mirror-networking.com/

И вот этот:
https://www.darkriftnetworking.com/
63 851483
>>1466
Понял/принял.
64 851493
как же хочется ECS, но я мамонт на 5.3...
65 851494
>>1493
ну поставь отдельно 2022.3 это делается в 2 клика...
66 851495
>>1493

>5.3


зочем?
image673 Кб, 794x798
67 851499
>>1493

>5.3

Сообщество Unity педики 68 851561
Чем вам не угодил аниме перекат?
Вы что геи?
хрюкалка.webm1,6 Мб, webm,
1024x576, 0:06
69 851574
70 851603
Пацаны, а вы используете Assembly definitions для разделения кода на разные сборки?

https://docs.unity3d.com/Manual/ScriptCompilationAssemblyDefinitionFiles.html
71 851619
>>1494
>>1495
>>1499
таков мой одинокий легасипуть, посоны...
72 851623
>>1619
Это не твой канал?
https://www.youtube.com/@user-yv6oe7sd3b
image.png51 Кб, 503x640
73 851635
Как удалять текстурки тут? Не в тот канал положил. Перепробовал все комбинации с контролами и шифтами уже
74 851641
>>1635
Выбрать None?
75 851647
>>1641
Понял
76 851663
>>1623
нет, мне конечно льстит предположение, но это успешный титан игродел с 134 подписчиков, а у меня ноль потому что канала на ютубе нет
77 851665
>>1663
Ну судя по всему он (не ты) вообще на 3-ей версии Юнити делает игры и ему норм.
78 851667
>>1665
так я игры на 21 делаю. а это легаси и чужое, я его для души допиливаю у меня даже сорцов нет, только ilspy
79 851693
Как же меня заебал ебаный сын говна Романс Акутин, я заебался эту хуйню удалять из ютуба уже. Дак мне теперь еще и с яндекса письмо пришло, запишитесь на курс Романса Сакутина у нас тут бесплатный ебана.
80 851719
>>1693
а нахуя ты покупал курсы и оставлял свою почту?
81 851724
>>1693
Этот инфо-циган и у меня в ленте бывает всплывает.
82 851768
>>1667
как же я тебя понимаю
убил 2 года на моддинг бт
83 851803
Если я переключу готовый проект с виндовса на андроид, он будет долго пересобираться. Но там похерится что-то? Или я смогу его обратно на виндовс переключить без потерь? Или надо делать бекап перед этим?
84 851806
>>1803
если возникает вопрос "нужно ли делать бекап" - значит нужно делать
85 851810
>>1806
Мудро. Есть встроеный бекапщик в юнити?
86 851814
>>1810
пришло время поговорить о боге нашем git'e...
серьезно попробуй. хотя бы в виде локального репозитория
87 851835
>>1814
Хорошо
88 851838
После забилдивания "игра" сильно нагружает видеокарту, кулер на полную вертится, 80 градусов видеокарта. Сильнее чем какая-нибудь дота. Это из-за того, что я выбрал у источников света тени и режим mixed?
89 851842
>>1838
это из-за того что ты отключил всинк
90 851866
>>1842
Я не отключал. Когда в движке играю, то норм, а забилдженное не норм
image.png7 Кб, 219x145
91 851886
>>1866
ну так ты даун ебаный галки оффни
92 851888
>>1886
Не думаю, что связано с этим
93 851909
>>1838
Фпс сколько? Ты можешь хоть кс 1.6 видеокарту так нагрузить - если проц вытягивает дохуя фпс и не стоит лимит на фпс(всинк тоже очевидно дает лимит на фпс)

Да и вообще больше конкретики нужно, что за видеокарта, что есть на сцене - сколько треугольников, есть ли полупрозрачность, какие рендер пайплайн и есть ли какие-то особые шейдеры?
94 851919
>>1838
Я знаю что это за трабла, и она решается ровно одной строчкой. Что ты готов сделать ради неё?
image.png32 Кб, 190x125
95 851924
>>1909
фпс по ощущениям 60+
Полупрозрачность есть — стандартный шейдер для стекла типа. Есть шейдеры которые импортировались с модельками, но там типа аутодеск шейдер и че еще такое, не страшное. Частицы скачал, но их в сумме 400 на всю сцену, просто снежинки летают. Треугольников хз сколько, по идее не выше среднего. Текстурки пережал. Видеокарта 3060ти

>>1919
Ну это мир сбилженный под VRchat, поэтому я не уверен, что мы говорим об одном и том же. Я грешу все-таки на свет, хотя внутри движка не нагружается так видюха
96 851929
>>1924
Без разницы под что сбилжено хоть под ведро. Если сбилженая игра жрёт как не в себя гпу под 70-90%, хотя в теории и 5% не должна то я знаю что это.
97 851931
>>1929
так говори не томи
98 851932
>>1929
А я не знаю
99 851939
>>1924

> фпс по ощущениям 60+


Ну а надо по факту, а не по ощущениям. Может оно там в 500 фпс крутится.

> Есть шейдеры которые импортировались с модельками, но там типа аутодеск шейдер и че еще такое, не страшное


А кто знает, может и страшное. Материалы это серьезное дело, надо знать что у тебя за материалы висят и сколько их.

Треугольники в статс можно посмотреть

Глобальное освещение есть? Реалтайм освещение?
100 851945
>>1931
Ну а что ты готов сделать ради этого?
Это примитивная херня, но без опыта и понимания долго можно копать. Если не синьерпомидор то никогда не выкопать.
101 851958
>>1945
ничего разумеется, если такая проблема у меня возникнет я ее решу без твоих выебонов
Безымянный.jpg8 Кб, 484x80
102 851978
Как открытие сэкондхэнда на украине нахуй лол.
103 851980
>>1958
Ну смари чел. Если вдруг не сможешь решить, ты знаешь где меня искать.
image.png30 Кб, 296x198
104 851984
>>1939

>Глобальное освещение есть? Реалтайм освещение?


Дирекшнл свет и сфера с небом, которую вставляю на вкладке Lighting. Риалтаймовые 5 поинт лайтов и 2 спот лайта (ну они у меня Mixed стоят с Hard shadows) в комнатке 5х5 метров.

Ну попробую все материалы прочекать и поменять их на оптимизированные. Только после перевода проекта под андроид, свет стал запекаться странно (серый вместо черного цвета; причем запеченная ранее карта света на винвовс норм отображалась)
105 852082
Чет тдшка моя разрастается. Накидал систему сохранения данных, еще + 4 скрипта. щас главное меню и переход между сценами туда сюда уже под 80 будет. К билду точно за сотку перевалит.
106 852089
>>2082
Типо структура, которая хранит данные игрока, сейчас содержит два раздела. Номер последней игровой сцены и апгрейды. Данные совершенно разные для разных систем. Значит надо разбивать на два интерфейса. И пошло, поехало.
107 852115
В общем как-то так. начал заполнять абстракцию конкретикой. Выглядит вроде как будто будет работать. Типа в начале каждой игровой сцены центровой скрипт будет загружать файл, вытаскивать дату. Дату поделю на 2 интерфейса, один пойдет в систему управляющую сценами, второй в апгрейды. Потом, при прохождении уровня, будет запрашивать эти данные из подсистем, упаковывать в датафайл и отправлять на запись. Осталось только понять куда засунуть подсистему апгрейдов, потому что на отдельную она явно не тянет, и оттуда уже прокидывать ее к башням.
108 852241
Кто-то пользовался плагином Bakery?
109 852369
>>2115
Переместил проверку на наличие файла из ридера в лоад метод менеджера, если файла нет менеджер запускает райтер с дефолтными статами игрока в аргументах, и возвращает их же. Запилил код для уи основного меню, код, управляющий сценой главного меню, код управляющий переключением сцен.

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

Последнее время началась хуйня, не знаю почему, юнити скидывает протянутые в редакторе связи, чет подзаебало.
110 852395
>>2115
класс DataManager лучше сделать статикой.

Ты можешь свои классы сериализировать в json, юнити предоставляет нативное легкое решение, да ещё скорее всего будет быстрее работать.

https://docs.unity3d.com/ru/530/Manual/JSONSerialization.html
https://www.youtube.com/watch?v=gMfijpTkKX8
111 852408
>>2395
лучше взять json.net он быстрее и получше. юнитековский корявый весьма
image.png21 Кб, 587x161
112 852420
хочицца
113 852421
>>2420
В курсе что бесплатная версия лежит на сайте разрабов?
114 852422
>>2420
дык сам напиши астар же очень простой
115 852438
>>2395

>класс DataManager лучше сделать статикой.



хмм. угу.
116 852448
>>2395

> юнити предоставляет нативное легкое решение


Забавно, что сами они им не пользуются в своих SDK, а используют Newtonsoft.
https://docs.unity3d.com/Packages/com.unity.nuget.newtonsoft-json@3.0/manual/index.html
117 852453
Можно ли как-то пофиксить вот эти не состыковки по цвету / свету? На мониторе и шлеме белый материал, они динамические объекты, поэтому свет на них не запекается, и освещены они глобалкой. Если я подберу цвет глобального освещения под монитор, то у меня начинает явно выделяться другой объект (за кадром). Как профессионалы геймдева решают эту задачу?
118 852456
>>2453
Лампу повесь для освещения динамических объектов, одной глобалкой нормально ничего не осветишь. На лампе можно выставить на какие отдельные объекты он будет светить.
119 852459
>>2456
О, прикол
120 852490
>>2456
Я нашел туториал и там чел делал это через слои. Он правильно делал или это костыль?
121 852494
>>2490
Не костыль.
122 852496
>>2494
Cлоев-то всего 30 штук, не нашел где добавлять. Но работает, спасибо.
123 852498
>>2496
Ничего страшного, в соседней комнате переиспользуешь эти же слои.
124 852501
>>2448
Да похоже я тоже перепутал, думал как раз об этом пакедже у них в мануале и написано.
125 852576
>>2453
это билт ин рендер пайплайн такой? На юрпе у меня таких проблем изначально не возникало - после запекашки всё равномерно освещено и динамический объекты не выбиваются из вида
126 852585
>>2576

>На юрпе


На чем?
image.png25 Кб, 789x223
127 852589
Это правда?
128 852590
>>2589
всё так, тебе дают калпилятор под все платформы, кое-как рабочий редактор, несколько кое-как рабочих калпанентов и несколько полезных API функций, всё остальное делоешь и думоешь сам
129 852594
Люди, которые больше дрочат на код, оптимизацию, архитектуру - это просто программисты, а не игроделы, которые, конечно же, больше чем просто программисты. Им правда важен код. Даже если у них будут готовые няшные ассеты, готовое окружение - пока они не будут удовлетворены кодом, они игру так и не сделают.
А почему? Ну, потому что программист - это про код, про программу в целом. Дофамин у программиста вырабатывается именно при таком положении, когда их код их целиком удовлетворяет. Они просто физически не смогут продвинуться дальше, пока их текущий код их всецело неудовлетворяет. Пока они чуют, что что-то не так/что можно сделать лучше, они и не продвинутся ни на шаг.

Они могут игру сделать быстро, если не будут рефлексировать над каждой строчкой/классом. Возможно, даже код будет не говнокодом, если хотя бы будут избегать самоповтора.
Не сужу. Программисты они такие. Возможно, это работяги-программисты, а геймдев - это хобби. Либо хобби связано с программирование. У них в мозгу уже вшито правильное программирование, и есть печальный опыт еботни с кривой архитектурой.
Не-программисты ебашат сразу, коряво, всрато, но идут семимильными шагами.
130 852595
>>2590
Ну видимо в этом есть и свои плюсы: работает на некропеках и игры делать можно для некропек, добавляя только оптимизированные штуки
131 852596
>>2594

>Пока они чуют, что что-то не так/что можно сделать лучше


Знакомая хуйня
132 852603
Все выпуки в сторону программистов в стиле кокококо вы дрочите, пока игроделы делают игры, основаны на ложном тезисе о том, что не программисты делают игры. На самом деле вы нехуя не можете сделать, кроме маленькой хуетеньки и обосретесь на первой же сложной механике, на ее расширении подлива улетит до потолка и будет капать вам на голову.
133 852605
>>2594
Нормально гуманитарий порвался. Ты кстати тоже не игродел, потому что без прогера ты игру не сделаешь.
134 852607
>>2594

> Люди, которые больше дрочат на код, оптимизацию, архитектуру


Это три разные вещи.

1) Дроч на код ради кода. Это проблема перфекционизма. Ей страдают часть программистов. Это действительно проблема.

2) Дроч на оптимизацию. Есть игры в которых без этого никак, как в той же Факторио. Особенно это было раньше актуально. В этом нет ничего плохого.

3) Дроч на архитектуру помогает развивать игру. Если ты создаёшь пиксельную инди-хуинди, которую раз прошёл и забыл - ок. Если ты создаёшь игру-сервис или игру, которая будет развиваться, ты обязан сделать нормальную архитектуру. Тот же Нотч сделал шикарную расширяемую архитектуру в Майнкрафте, что породило много крутых модов.
135 852616
>>2605
Cделает. Карточные игры и настолки никто не отменял
image.png19 Кб, 510x176
136 852619
попросил чат жпт накалякать подобие консоли и обработчика команд, выглядит как что-то жизнеспособное
https://pastebin.com/Pgdc4Tvr
137 852624
>>2619
А игру когда будешь делать?
138 852636
>>2616
и как без кодера перекатить правила например той же дынды? ну даже урезанной допустим. там их духуя. и как потом поддерживать эту яндерелапшу.
я без подъебы, мне реально интересно.
139 852646
>>2636
Ну ты говоришь, что геймдизанер не сделает игру без прогера. Но в реальности он ее сделает. Геймдизайн происходит из настолок и карточных игр, а не из программизма. Поэтому базовая смысловая единица для геймдизанера это именно настолка. Простая или сложная — значения не имеет, ибо прототип собирается из листочков бумаги, потом в издательстве художники рисуют картинки, скульпторы отливают фигурки итд. Программистов тут нет (только косвенно, который софт писали для 3д и 2д принтеров, для логистических программ)
140 852647
>>2636

>и как без кодера перекатить правила например той же дынды?



никак. Ну т.е. кто не брался, может и думает что сделает, но как сядет, будем несколько смущен тем фактом, что перетаскивание ссылок в редакторе не решает вопросы, а ответов в гугле об архитектуре подобной системы нет.
141 852659
>>2646
ну хорошо допустим геймдизайнер сделал эту настолку на листочках. как их переводить в код? они же не сами там образуются. а что потом делать, когда правила надо будет поменять или дополнить? правила же не в граните отливаются. даже в чисто физических настолках есть ревизии разные.
>>2647
вот тут реально бы подошли blueprints из анрила
какой-то кривой косой можно было бы сделать, а потом передать людям которые уже шарят
142 852666
>>2594
Люди, которые больше дрочат на механики, баланс, таблички - это просто геймдизайнеры, а не игроделы, которые, конечно же, больше чем просто геймдизайнеры. Им правда важны механики. Даже если у них будут готовые няшные ассеты, готовое окружение - пока они не будут удовлетворены балансом, они игру так и не сделают.
А почему? Ну, потому что геймдизайнер - это про баланс, про механики в целом. Дофамин у геймдизайнера вырабатывается именно при таком положении, когда их баланс их целиком удовлетворяет. Они просто физически не смогут продвинуться дальше, пока их текущий баланс их всецело неудовлетворяет. Пока они чуют, что что-то не так/что можно сделать лучше, они и не продвинутся ни на шаг.

Они могут игру сделать быстро, если не будут рефлексировать над каждой механикой/комбо. Возможно, даже механика будет не говномеханикой, если хотя бы будут избегать самоповтора.
Не сужу. Геймдизайнеры они такие. Возможно, это работяги-бухгалетеры, а геймдев - это хобби. Либо хобби связано с табличками. У них в мозгу уже вшито правильное сведение баланса, и есть печальный опыт еботни с кривой табличкой.
Не-геймдизайнеры ебашат сразу, коряво, всрато, но идут семимильными шагами.
143 852667
>>2659

>как их переводить в код?


В настолку можно играть без кода
144 852669
>>2659

>ну хорошо допустим геймдизайнер сделал эту настолку на листочках. как их переводить в код?


Знаю довольно много не программистов, которые методом копипасты пишут скрипты для разных программ, наподобие Tabletop Simulator и прочих VTT. Ну то есть это уровень примерно как формулы в экселе писать.
145 852670
>>2667
мы в юнити треде братан и делаем вид что делаем игры для вычислительных устройств.
146 852674
>>2670
Ну разговор же шел о том, что без пограмиста игру не сделать, а оказывается, что сделать
147 852675
>>2674
Долбоеб не смог в контекст дискуссии.
148 852676
>>2675
Соболезную.
149 852685
>>2675
Я смог, просто это рушит все твои аргументы, ведь мир не ограничивается только видеоиграми. Самое тривиальное упражнение для гд: создать настолку как раз
Capture.JPG44 Кб, 1594x445
150 852687
>>2685
/bg/ на другом этаже есличо
151 852692
>>2685
Давно из асилума убежал?
152 852694
>>2687
Там не делают игры
153 852695
>>2692
Ну просто это шаблонное мышление, будто бы геймдизайнер это профессия только про компьютерные видеоигры и без программиста геймдизайнер никто
154 852696
>>2694
ну а тут делают компьютерные игры поэтому хош не хош а от нас макак кодерков и возможно даже полторы настоящего программиста не спрячешься братан
155 852697
>>2696
Анрил уже написан. Теперь любой гд может быть сам себе погроммистом
156 852698
>>2697
ну ладно, это отлично. у них еще и мегасканы пиздатые.
но у нас юнити ультрахардкор братан
157 852733
Кто-нибудь пользовался в студии компонентом, проверяющим зависимости? что за еболда такая?
158 852738
>>2733
Как называется?
159 852746
>>2738
Проверка зависимостей лул)) во вкладке компоненты, ближе к концу в разделе с гитом в инсталере.
160 852753
Чет с# ин депф не зашел. Вот такой код нахуй был в C#1, а вот такой он нахуй стал в 2.0, а вот в 3 вот добавили вот такую хуйню, смотри как стало заебись третий раз один и тот же код посмотреть.

Ща пощупаем Pro c#)))) по оглавлению выглядит балдежнее
image.png9 Кб, 720x362
161 852777
Что случилось с ассет стором? Почему при заходе на главную страницу, память загружается на 100%, процессор загружается на 100% и греется до 60 градусов, и ни один ассет невозможно добавить в библиотеку? Они там ебанулись все?
162 852784
>>2777
Хз, я не пойду пробовать посмотреть че там. уже был прецедент когда свинорылый пидарас через юнити хаб чета закидывал российским пользователям.
163 852785
>>2784
Это не через юнити хаб, это в браузере. Уже починили. Но я минут 40 не мог бесплатный ассет добавить, и через VPN тоже.
нахуя.jpg38 Кб, 865x142
164 852788
Не стал выебываться, читаю Про си шарп с азов так сказать. Челик говорит - создайте пустой солюшен. В солюшене через солюшен эксплорер добавьте проект консольонго приложения, а потом хуярьте в терминале вот эту хуюмбулу с пика

И вот тут нада пояснительную бригаду. а нахуя?

Я такпонимаю, что первая строчка дает имя солюшену. Збс, я его еще при создании указал. Вторая говорит, что солюшен будет на шарпе и использует дотнет5. Ну тут вроде тоже понятно, он был бланк, мы настроили. А вот смысл третьей строчки я не догоняю. Я же уже создал проект через солюшен эксплорер.
165 852790
>>2788
А не, тут даже получается, что он создает новый проект и потом регистрирует его в солюшене. Только нахуя я не понял
166 852797
>>2790
Потому что M$ придумало 20 лет что проекты находятся в солюшнах.
167 852818
>>2797
Ну да, только он это просит делать для проекта созданного через солюшен эксплорер. я думал может там двойное дно какое-то, но походу просто теже самые действия, только через консоль.
168 852852
>>2788

>Не стал выебываться, читаю Про си шарп с азов


А игры делать когда? Поступай как я: гуглишь нужную механику и воруешь код из туториала, так и учишь этот говнонедоязык
169 852853
>>2852
не заебало одну и ту же шарманку заводить каждый раз, болезный?
170 852862
>>2852
Извинись. С# это величайший язык, вершина. В нем есть только один недостаток.
171 852874
>>2862

> В нем есть только один недостаток


Этот недостаток расположен между монитором?
172 852925
реквестирую видео игры годот где платформер про волка и звуки хрюканья
173 852944
>>2788
зачем тебе это нужно дикий подключи студию/райдер к эдитору и работай с юнити как нормальный человек
174 852958
>>2944
Так и делаю. Это чел с книжки чет паехал просто.
175 852992
>>2958
так ты не читай книжки для тырпрайсеров кровавых, плохому научат
176 853023
Чет мне тд этот ебаный неохота доделывать до релиза. Скрипты вроде все есть, остался визуал,баланс и сцены настроить. Но типа осознание того, что никто играть в него не будет не мотивирует браться за этот большой труд вообще нихуя.
177 853024
>>3023
Ну и заднюю давать тоже как-то некрасиво. Сделаю карочи туториал сцену и ебись оно конем.
178 853025
>>3023

>тд


Ты даун
179 853026
>>3023
ну зато ты получил ценный опыт
180 853027
>>3023

> осознание того, что никто играть в него не будет


Это правильные мысли. Я изначально решил, что буду реализовывать только популярные хайповые темы. И это сработало с первой же игрой. Жаль ребятишек, которые годами создают никому не нужное говно.
181 853028
>>3027

>И это сработало с первой же игрой.


Здесь хули трешься, петушоникс?
182 853029
Мануал по гитхабу лучше почитаю. Хоть в резюме будет че вставить.))
183 853030
>>3028
Вредная привычка.
184 853031
>>3030
Бросай
image6 Кб, 160x160
185 853032
186 853050
>>3023
прикручивай механику по всякой прокачке и талантам и донат дающий доп. бонусы, 100% не прогадаешь
187 853058
188 853072
>>2874
Нет. IList не реализует интерфейс IReadOnlyList. Я всё ещё ищу тварь которая это сделала.
189 853081
>>3023
Лох.
190 853086
>>3081
Соси.
191 853154
>>3072
чем не устроил ReadOnlyCollection?
192 853170
>>3154
Нету порядка элементов и доступа по индексу
Capture.JPG15 Кб, 505x242
193 853180
194 853191
>>3180
Это конкретный класс, и он кста даже не реализует интерфейс IReadOnlyCollection.
)))

Смари:

private List<Yoba> _yobas;
public IReadOnlyList<Yoba> Yobas => _yobas; -----не выйдет, ошибка.

Внутри класса я юзаю _yobas и модифицирую его. Мне надо чтобы внешние классы могли получить доступ к этому списку, но не могли его менять. То что я написал - так по логике должно было бы работать, но нет. Конечно можно сконвертировать лист в ireadonlylist, но типа какого хуя я должен с этим заморачиваться, особенно мерзко когда надо в методы передавать и там лишний мусор выделять
195 853196
>>3191
да похуй свои задачи выполняет и ладно
я уже заебался беспокоиться обо всей этой хуите которая творится вокруг коллекций в сисярпе мне нервы дороже
image.png8 Кб, 558x102
196 853198
В шарпе нельзя объявить переменную, а потом использовать ее в коде, чтобы создать массив с определенным количеством элементов?
197 853199
>>3198
Значение ей присвой сначала.
198 853200
>>3199
Это не играет роли, я проверял
199 853201
>>3198
Нужно приписать static, в общем. Методом тыка выяснил
200 853206
Есть ли здесь кто то, кто мне доходчиво объяснил бы как работает тессеракт в коде и как превратить трехмерный мэш в четырехмерную модель?
Как его ротация отображается?
image.png33 Кб, 788x140
201 853223
иишная тяночка ревьют мой код, вы больше не нужны!
202 853240
>>3201
не улавливаю взаимосвязь со статиком.
Безымянный.jpg46 Кб, 911x293
203 853241
>>3201
Ты чет видимо не сильно понимаешь, что делаешь.
204 853243
>>3240
static выделяет память во время компиляции, поэтому можно создать массив с размером, записанным в статическую переменную. Но это всё какие-то нубские движения.
205 853244
>>3241
Я всё понимаю, это язык такой тупой, что нельзя создать массив вне функции, где количество элементов задаются перед этим в переменной
206 853247
>>3244

>количество элементов задаются перед этим в переменной


у тебя количество элементов как раз не задано.
207 853248
>>3244

>ест суп ножом


>ой аноны весь рот себе разрезал нож виноват

image.png8 Кб, 558x102
208 853249
>>3247
На скрине нет, но я пробовал public int Points = 5;
Все равно была та же самая ошибка. Либо надо инт делать статик, либо запихнуть создание массива в функцию
209 853250
>>3249
Ты какую-то хуйню делаешь. Это же MonoBehaviour? Тебе вообще не нужно создавать массив. Потому что он создаётся автоматически Юнити, а количество элементов настраивается в редакторе.
210 853251
>>3250
Почему мне не нужен массив, если мне нужен массив?
211 853252
>>3251
Это сериализуемое поле. Его создаёт Юнити. И Юнити задаёт кол-во элементов массива. Вообще, используй SerializeField, чтобы код нормально читался.
image.png158 Кб, 804x565
212 853253
Чтобы создать джоинт нужно всего лишь...
213 853254
>>3249
Константой сделай
214 853255
>>3252

>используй SerializeField, чтобы код нормально читался.



Не улавливаю причинно-следственной
215 853256
>>3198
Можно если points будет константой или статическим полем.
aZYw-aPSmgc.jpg223 Кб, 760x1027
216 853258
Карочи начал кодить днд. Сразу ясен хер начал хуярить Character, Health, Stats и тому подобные классы, но вовремя остановился и не стал их даже имплементировать дальше интерфейсов.
Вовремя понял в который уже раз?, что это просто дата классы ссаные днище донное. Что методы, которые я кавалерийским наскоком хотел ебануть чарактеру вообще нихуя не его методы по SOLIDу и по совести. И что программу надо проектировать все-таки отталкиваясь от того что где с кем будет взаимодействовать, т.е. начиная с верхних уровней.
В общем попробую накидать схему. Начну с продумки подсистем.

Товер дефенс анон бывший майт энд мэджик анон в будущем возможно долбоеб, наступивший на старые грабли
217 853259
>>3258
Что следующее начнешь когда дропнешь днд?
218 853260
>>3259
Сделаю несколько простеньких игр, уровня крестики нолики. Одна будет обязательно сетевой. Добавлю в портфолио и начну долбить во все мидл вакансии.
219 853261
Кстати новую вакансию на гейдевру поймал сегодня. Написала какая-то пизда, представилась сотрудником вайлдбериса, предложила лайки ставить товарам за деньги. Прямо с устра обломала карочи уебище.
220 853267
>>3261
ну так правильно, игоры все равно нахуй не нужны, а так хоть чем-то полезным займетесь
221 853270
>>3255
Он имеет ввиду что юнити тебе предоставит настраиваемый параметр в виде коллекции элементов в инспекторе, что как раз в концепции разработки под юнити, особенно если элементы будут Monobehaviour
222 853271
>>3260

>мидл вакансии.


это же сарказм?
223 853275
>>3271
Нет. Вдруг где возьмут на вырост. Вакансий ждунов то нет нихуя.
224 853276
>>3275
Платить ждуну зп мидла пока он растет? Ну ты фантазер.
225 853277
>>3276
Ты походу не очень гибкий по головушке да?
изображение.png138 Кб, 900x900
226 853287
>>3249
короче смотри что происходит. суть в том что на момент создания массива его размер должен быть определен. для инициализатора поля points на этот момент не существует, посему он не может его прочитать и ругается на это. более того ятп тебе надо что бы массив ресайзился через при задании количества точек - в таком варианте это происходить не будет, потому что инициализаторы отрабатывают один раз перед конструктором. более того массив уже имеет свойство которое дает его длину, хранить отдельно нет смысла
в теории можно сделать через свойство типа
public int Points {
get => ArraySphere?.Length ?? 0;
set { создание нового и копирование старого }}
||но опять же если это динамически(и регулярно) изменяемый массив то лучше юзать List<>||

НО как ужо сказали юнити уже содержит все нужно - юнити инспектор умеет и ресайзить и количество пишет. просто сделай его сериализируемым что бы увидел
227 853298
>>3277

>Ты походу не очень гибкий по головушке да?


>сказал безработный и безыгорный джун

228 853300
>>3287
Понятно. Ну я просто засунул его в метод старта, теперь он создается при старте игры
image.png9 Кб, 714x166
229 853339
Как добавить скрипт-компонент? Он говорит, что такого нет, а на форумах пишут что добавлять так, будто есть тип
230 853349
>>0680 (OP)
Какого хуя это ваше юнити такое тяжелое? По ссылкам из шапки начал проходить юнити эссентиалс, там был лего туториал. Вся эта шняга весит гигабайт с лишним. Потом у меня была ошибка, надо было добавить скрипт. Сука, скрипт на 10 строчек весит 300 мегабайт. Это я делал на старой лежавшей с 21 года версии. Вот сейчас обновился до последней LTS версии 2021 и этот же самый лего микрогейм у меня открывается уже минут 15 и размер папки с проектом доходит до полутора гигабайт, а таймер в unity package manager'е все увеличивается и увеличивается. Все докачалось и открылось. В итоге эта лего микрогейм весит 2.42ГБ!!! Первый маунт и блейд весил меньше гига. Третьи кресты весят всего в два раза больше. А тут блядская демка после создания билда весит 3.33ГБ. После переката на последнюю ЛТС версию кстати грузиться и тормозить стало запредельно дольше, чем на предпредыдущей версии. Какие же дауны на разработчиках я просто охуеваю. Вопрос у них там вообще об оптимизации думают нет? Я конечно видел в видео, кто у них там работает. Какой-то трап, негр, индус и две фемки. Эти про оптимизацию даже не слышали наверное
231 853352
почему нельзя просто взять всех чилдренов как массив объектов...
почему для этого надо делать цикл и брать их трансформ
image.png35 Кб, 788x288
232 853354
Я просто хочу взять всех чилдренов и дать им новый компонент...
почему нельзя...
ИИшная дура мне вообще ерунду советует...
233 853359
>>3349
В папке Library накапливается всякий кэш и прочие временные файлы.

> А тут блядская демка после создания билда весит 3.33ГБ.


Ну а ты хуле думал.
234 853363
>>3339
>>3354
ёбаному дауну настучите хуем по ебалу и скажите, чтобы прошёл начальный гайд по сисе и юнити
235 853364
>>3363
Просто скажи, как мне добавить скрипт-компонент и всё
236 853366
>>3364
void Start()
{
Rigidbody rb = gameObject.AddComponent<Rigidbody>();
rb.mass = 10;
}
237 853372
>>3366
Такое я уже добавлял, это легко.

У меня там кастомный скрипт (ну вот когда создаешь например новый скрипт в контент-бравзере и перетягиваешь его потом на объект, появляется компонент для скрипта)

>>3365 (Del)
Ты показываешь, что сдк2 деприкейтет, а выше написано про сдк3. Там только имя класса дается, а я про более общую вещь спрашиваю вообще
image.png65 Кб, 520x756
238 853373
Я умею добавлять обычные компоненты типа ригидбади или джоинтов, а как добавить через код кастомные скрипты, не понимаю
239 853375
>>3373
Pizda pizda;
void Start()
{
pizda = gameObject.AddComponent<Pizda>();
}
240 853376
>>3375
Ну я так вот тут и делал >>3339
Ладно, спс. Значит проблема не в синтаксисе
241 853377
В юнити есть возможность вызывать функцию (метод) прям в редакторе, а не в рантайме? Чтобы сгенерировать объекты один раз, буду вручную навешивать этот компонент. Я сдаюсь, какая-то лютая мозгоебка с этим шарпом
image198 Кб, 1024x1024
242 853381
>>3375

>Pizda pizda;


Бля, напугал. Сначала подумал, что кто-то мой код запостил.
image.png181 Кб, 268x697
243 853382
Если че, я сделал вот такую колбасу, типа веревки, и она даже работает немного, но из-за того, что синхронизация не висит на сферах, у меня только нижняя видна в самой игре (потому что на ней висит синхронизация).

Она у меня появляется во время старта игры, а я хочу ее вызвать в редакторе по клику просто. Это наверное надо в консоли что-то прописать? название класса и метод?
244 853383
>>3349

> Вопрос у них там вообще об оптимизации думают нет? Я конечно видел в видео, кто у них там работает. Какой-то трап, негр, индус и две фемки. Эти про оптимизацию даже не слышали наверное


Ну тебе то открывшему юнити в первый раз явно виднее как там что должно быть и что сколько должно весить.

А так - ты путаешь что такое билд и проект.
В проекте лежит: куча всякого неисользуемого мусора на всякий случай, несжатые текстуры, кэш чтобы все в редакторе моментально запускалось, скомпилированные шейдеры.
Всё это весит много, в итоговый билд очевидно оно всё не нужно.

> Сука, скрипт на 10 строчек весит 300 мегабайт


Ну тут уж просто хуйню несешь.
245 853384
>>3377

>В юнити есть возможность вызывать функцию (метод) прям в редакторе, а не в рантайме?


Конечно, есть, ты просто тупой петух неосилятор, ищи господина прогера себе, сам не сможешь
246 853385
>>3377
Конечно можно. Ты можешь создать свои пункты меню, свои окна и т.п. и из них вызывать код.
https://learn.unity.com/tutorial/editor-scripting
https://docs.unity3d.com/ScriptReference/MenuItem.html

Дохуя примеров на ютабчике есть. Вообще, в редакторе можно сделать что угодно.
247 853386
>>3384
Чел, иди на хуй
248 853387
>>3377
Есть. Кастомным испектором
249 853390
>>3386
Лучше бы ты съебал уже, попрошайка тупая, няньку себе найми
250 853393
>>3390
Смотри сюда >>3382 эти анальные бусы я сделал для тебя. Будешь плакать и кричать, когда я засуну их тебе в дупу, а когда буду вытаскивать, ты, уебище токсичное, будешь томно охать от удовольствия и в истерике просить продолжения карнавала
251 853394
>>3385
>>3387
Спс
На анриле одна галочка в блюпринтах, а тут целый туториал. Ну ладно
252 853405
>>3383

>Ну тебе то открывшему юнити в первый раз явно виднее как там что должно быть и что сколько должно весить.


Не надо, но я могу сравнить с полноценной игрой и какой-то демкой, где 9 сцен и некоторое количество объектов

>А так - ты путаешь что такое билд и проект.


А, вроде понял о чем ты. Тогда да, наверное хуйню сморозил

>Ну тут уж просто хуйню несешь.


Я реально посмотрел сколько весит весь проект, накинул в него скрипт и посмотрел опять. Возможно за это время в тот же кэш какая-нибудь хуйня отлетела, но не могу ручаться, надо проверять еще раз, а мне уже лень
253 853406
>>3393
Хуя у тебя гомофантазии, дебил анальный
254 853407
>>3405
Не виднее*
255 853408
>>3406
хуй соси сынок ебаный пока струю мочи в ебало не отхватил сын спида и пидора хусосинка
256 853409
>>3408

>гомофантазии дауна со справкой


Хуя шкила разверещалась
257 853410
>>3406
Если ты будешь одет в девочку, то это уже не гомофантазии, зайчик
258 853411
>>3395 (Del)

>гд.ру


Ты дурак?
259 853412
>>3409
Старшеклассник, не скули. Лучше домашку начни делать, иначе завтра Мариванна тебе двойку влепит, а дома мамаша за это интернет отберет
260 853425
>>3394
Че ж ты на анриле не остался раз там все одной галочкой делается?
261 853428
так челик с анальными бусинами
не возвращайся пока не посмотришь весь гайд от спасителя нашего ромки. он сделает из тебя настоящего программиста по юнити играм.
https://www.youtube.com/watch?v=w8rRhAup4kg
262 853429
>>3425
Врчат работает через юнити
263 853534
>>3405
Да именно так.

Могу сказать по своим примерам - у нас проекты от 4 до 20 гб где-то весят, просто потому что туда сваливаются тонны ассетов из стора. А итоговый билд в районе 100мб выходит.
264 853536
>>3428
Да нах он вам нужен, когда есть метанит?
265 853543
Пытаюсь сделать чтобы тело отлетало от взрыва по физике.

Как сделоть чтобы объект отлетал от другого объекта по X и Z, но не по Y. Т.е. я передаю во врага трансформ взрыва, а дальше что надо вписать в AddForce чтобы он отлетел так, как я хочу?
266 853554
>>3543
Чел есть такая вещь доки, научись ими пользоваться.
https://docs.unity3d.com/ScriptReference/Rigidbody.AddExplosionForce.html
267 853567
>>3554
Мне кажется этот кловун тем же самым занимается в анриал треде.
268 853568
>>3567
Долбоеб, это другой клоун. Чмо ты шизоидное с паранойей
269 853569
>>3543
Тебе тут не помогут, лучше сразу поискать норм коммьюнити
270 853574
А старые импуты в юнити уже попущены? Теперь по умолчанию надо импутсистем юзать?
271 853617
>>3574
Не попущены. Новый инпутсистем тоже простой и нестрашный.
272 853623
>>3617
Да там вроде можно работать как со старой даже, только вместо input используется девай. Но оно конечно нахуй не надо, когда ты жмешь два клика мышкой, а тебе выдает уже готовые 3дэкшон биндинги причем на 3 вида девайсов сразу.
image.png45 Кб, 900x287
273 853656
274 853835
юнитач, а никто не задумывался как впилить более новую версию языка в эдитор?
вот допустим если я в VS делаю проект с нужным таргетом и потом скомпилированный длл пихаю в /plugins - все работает как часы
а вот если я пытаюсь какие-то фишки из нового языка уже в эдиторе пилить - хуй, ругается
оно гвоздями прибито или есть варианты?
275 853849
>>3835
Ну чем новее версия юнити тем новее компилятор. Последняя версия шарпа это 9 емнип. Хз какие ты там фишки нагуглил которые не поддерживаются.
276 853864
>>3849
так в том и дело что я не на последней версии юнити сижу. все вкусное начинается где-то с 19-20, а у меня ниже. каждый раз приходится либо переписывать либо компилить вне
277 853875
>>3864
Все "фишки" это синтаксический сахар, вместо которого на старой юнити писать надо на пару строчек больше, только и всего. Не припомню киллер фич шарпа без которых на старых юнитях писать совсем тяжко.
278 853881
>>3875
я об этом и говорю т.к. моя версия старой юнити это 5.3.5 и либы которые я переодически тягаю с гитхаба с более новых версий - все лицо в сахарке, весь лог в ошибках.
переходить на новую версию не могу потому и ищу наизжопный хак
279 853885
>>3864
Ну так обнови?
280 853888
>>3881
Делай на старых версиях либ.
281 853973
Заебала привычка кодить сразу всю хуйню. Вроде начал понемногу разгребать архитектуру проекта, накидал слои, настроил инпуты, выделил из них интерфейс на передачу значений в мувинг систему , прокинул его в нее. Ну остановить тут дебилушка! Нет, нихуя. пошло нахуй еулер ротейшен мувмент хуювмент мувспид тайм дельта тайм. ебаный икебастос.
282 853990
Какими средствами лога и дебага вы используете? Я бы хотел, например, чтобы прямо на экране отображались значения нужных мне переменных из определенного класса.
Например, в классе LohMonobehaviour есть private float pidr, и я бы хотел ее мониторить прямо на экране в игре в runtime.
Также, когда переменная меняет значение, я бы хотел, чтобы она например подсветилась временно, чтобы я заметил.
Есть готовые решения с кучей полезных прибамбасов?
Вроде можно отобразить все все поля в инспекторе, но мне я бы хотелось чтобы именно на экране, чтобы сразу все было видно

Зы: я тут подумал, что GUI.label("loh:"+loh) вполне подойдёт.
изображение.png35 Кб, 768x559
284 854000
>>3835
задумывались во времена юнити 5.0/5.1
когда уже готовился 6й (или 7й?) шарп а юнити толком в 4й не умело. была ебля с подменой компилятора(тут фишка в том что шарп коспилируется во внутренний язык дотнета а он обновляется очень редко, обновления шарпа - синтакс, библиотеки и допиливание компилятора на il никак не влияет, а юнити работает уже по сути с этим языком передавая его дотнету или ил2срр или еще чему под конкретную платформу) можешь попытатся побыть некромантом и впендюрить
https://libraries.io/github/iamchenxin/CShape6_Unity3D
если совсем все плохо.

с 20хх версий это ушло нахер и юнити без проблем использует(и более того требует для новых фич) компилятор вижуал студии
285 854048
>>3973

> Ну остановить тут дебилушка!


Как же я тебя понимаю. Устал себя хуесосить за это. Когда ловлю себя на мысли, что уже не решаю конкретные задачи, а просто дрочу код ради кода, то хочется разъебать пк.
286 854054
>>4000
о, спасибо, я как раз задумывался над тем не подменить ли его, а тут такой подгон как раз от человека который на 5.x это делает
287 854065
>>0680 (OP)
Сап, расскажите про TextMeshPro. Я "интегрировал" гит в юнити, а из-за этого ТМР у меня проект отображается будто написан на ШейдерЛабе, тк там дохуя файлов связанно с ТМР. Как мне избавиться от этой хуйни? Перевести все в текст? Так текст в юнити галимый. Или дальше страдать?
288 854087
Я тупой перфекционист. Хуже меня никого нет.
289 854093
>>4087

>Я тупой перфекционист


Где твоя идеальная игра?
290 854095
>>4087

> Хуже меня никого нет


Я хуже тебя. Как-то больше суток потратил на то, чтобы придумать название для класса.
image.png34 Кб, 807x361
291 854096
ЧЗХ.
Почему кастомный класс - event удаляет инфу о количестве референсов.
292 854102
>>4095

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


Какое в итоге придумал?
293 854103
>>4065

> а из-за этого ТМР у меня проект отображается будто написан на ШейдерЛабе


Где отображается и почему на это не похуй?
294 854111
>>4095
Пали название
295 854114
>>4102
>>4111
Context.cs
296 854118
>>4114
Ну это стоило того
297 854122
>>4114
Идеально
298 854158
>>4114
не зря сидел
299 854196
>>4114
С каких пор в названии класса есть точка?
300 854197
>>3258
Велик соблазн делать через классы. Но на самом деле днд это ecs.
Но делать ее не советую. Там сейчас бурления говен с лицензией. Лучше делать свои механики и геймплей.
301 854212
>>4197
можно делать не днд а пасфайндер
там пайзо впряглись на стороне всех нормальных людей
302 854216
>>4212
Впряглись но результаты пока неизвестны, поэтому они сами на волоске.
Как бы их самих не раздели.
Ждем ОРК под черным флагом!
303 854220
>>4216
лизарды уже вроде на попятку пошли хотя я только краем глаза слежу
304 854221
>>4220
Создают видимость, переставляя пункты туда сюда, а по главному вопросу (отзыв старой лицензии, с которой PF посыпется) никак не отвечают.
305 854230
>>4197
Если я хотя бы базис самый осилю накодить, там куда угодно можно будет повернуть. Пока я только пропукиваю над архитектурой.
306 854232
>>4230
Просто учитывай что бывают такие вещи вроде аур или лужи кислоты.
inventoryUI.jpg207 Кб, 1886x1275
307 854241
В общем аноны, тут нужен консилиум карочи. Есть такая ебала. В чем суть. Инвентарь чисто данные, коллекция неких itemKeys и методы на добавление и удаление предметов. Я жму кнопку АЙ, контроллер просыпается и пинает инвентарь - дай список!! инвентарь дает список. Контроллер обращается в класс, отвечающий за данные предметов в игре и просит по ключу предоставить данные, дальше эти данные летят в UIcontroller, который уже разбирается кому их конкретно просунуть.

Похоже на рабочий вариант чи шо?
308 854255
>>4241
Зачем тебе дополнительные слои абстракции? Просто сделай класс инвентарь и пускай с ним работает и UI, и персонаж. Внутри него будут ссылки на объекты, которые содержат всю инфу о предмете. В пустых слотах будет просто null ссылка. Если нужно пройтись по всем предметам и что-то подсчитать, сделай это через сам инвентарь.
309 854269
>>4241
Норм

>>4255

> Просто сделай класс инвентарь и пускай с ним работает и UI, и персонаж.


ЫЫЫЫЫЫЫ
310 854278
>>0680 (OP)
Почему ты ещё не бросил геймдев? В нем же одни минусы:
1. Ты портишь зрение.
2. Ты портишь осанку.
3. Ты утомляешься, психуешь, бугуртишь в этих проклятых циферках.
4. Все было легко и классно, когда ты был новичком. Когда чуть стал постарше, ты понял, какие умственные напряги нужны чтобы писать нормальный код, чтобы не спотыкаться, не тормозить, не переписывать и при этом легко править и добавлять новые фичи.
5. И самое главное - осознавать, а ради чего это все? Если ты развил свой ум, а в программировании это все же естественно,то ты понимаешь, что не сможешь создать игру, которая всем понравится. Ты правда считаешь, что можешь изобрести новый интересный геймплей/сюжет/графон? Ты можешь сделать только очередной клон. Все эти твои усилия - ради очередного клона? Ты такой взрослый, но надеешься как девочка, что произойдет чудо и ты вдруг заработаешь неплохо. Чтобы сделать такую игру, пусть это и будет всратый клон, нужно ещё больше усилий, маркетинг, попсовый графон и вау музыка и эффекты.

А может ты оправдываешь себя тем, что твой опыт позволит тебе устроится на работу в заветный геймдев? Ок, это возможно. Но в 99% ты будешь делать раковые игры для деточек. Ведь твой босс будет хотеть лишь заработать денег, и поэтому ты будешь как конвейер клепать то, что заходит современным школьникам. Лучше в офисе бумажки перебирать, ей богу, тот же онанизм, но без умственных напрягов.

Я скажу тебе, когда стоит быть в gd. Когда у тебя есть единомышленники и у вас у всех есть идея игры, которая привнесет что-то новое, которая захватит сердца и потрясёт ум игрока. Когда вы по настоящему одержимы идеей и готовы идти до конца. Вот, он истинный геймдев. Все остальное рак, духота, дроч.

Вот что тебе не хватает. Именно в твоём подсознании мучает тебя - ты делаешь не то, ты делаешь зря, у тебя нет идеи и смысла.

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

Бросай геймдев. Освободи гигантское количество умственной энергии и свободного времени.
310 854278
>>0680 (OP)
Почему ты ещё не бросил геймдев? В нем же одни минусы:
1. Ты портишь зрение.
2. Ты портишь осанку.
3. Ты утомляешься, психуешь, бугуртишь в этих проклятых циферках.
4. Все было легко и классно, когда ты был новичком. Когда чуть стал постарше, ты понял, какие умственные напряги нужны чтобы писать нормальный код, чтобы не спотыкаться, не тормозить, не переписывать и при этом легко править и добавлять новые фичи.
5. И самое главное - осознавать, а ради чего это все? Если ты развил свой ум, а в программировании это все же естественно,то ты понимаешь, что не сможешь создать игру, которая всем понравится. Ты правда считаешь, что можешь изобрести новый интересный геймплей/сюжет/графон? Ты можешь сделать только очередной клон. Все эти твои усилия - ради очередного клона? Ты такой взрослый, но надеешься как девочка, что произойдет чудо и ты вдруг заработаешь неплохо. Чтобы сделать такую игру, пусть это и будет всратый клон, нужно ещё больше усилий, маркетинг, попсовый графон и вау музыка и эффекты.

А может ты оправдываешь себя тем, что твой опыт позволит тебе устроится на работу в заветный геймдев? Ок, это возможно. Но в 99% ты будешь делать раковые игры для деточек. Ведь твой босс будет хотеть лишь заработать денег, и поэтому ты будешь как конвейер клепать то, что заходит современным школьникам. Лучше в офисе бумажки перебирать, ей богу, тот же онанизм, но без умственных напрягов.

Я скажу тебе, когда стоит быть в gd. Когда у тебя есть единомышленники и у вас у всех есть идея игры, которая привнесет что-то новое, которая захватит сердца и потрясёт ум игрока. Когда вы по настоящему одержимы идеей и готовы идти до конца. Вот, он истинный геймдев. Все остальное рак, духота, дроч.

Вот что тебе не хватает. Именно в твоём подсознании мучает тебя - ты делаешь не то, ты делаешь зря, у тебя нет идеи и смысла.

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

Бросай геймдев. Освободи гигантское количество умственной энергии и свободного времени.
311 854308
>>4103
В гитхабе, там показывает прямо какой язык преобладает в проекте. И из-за ТМР там шейдерлаб этот ебучий. А тк я в шарпе практикуюсь я хочу чтобы проект и отображался шарповым
aZYw-aPSmgc.jpg223 Кб, 760x1027
312 854309
>>4255
Полгода назад именно так бы и сделал.
313 854311
>>4308
ебать проблема. поменяй ручками в настройках репозитория
314 854314
>>4311
Что поменять? Облазил все настройки, а так нихуя и не понял
315 854322
>>4314
ладно наебал, вроде раньше была такая настройка
https://stackoverflow.com/questions/13597892/how-can-i-change-the-language-of-a-repository-on-github
второй пост. пометь папку с тмпро как внешнюю либу, что бы он её не учитывал
316 854323
>>4317 (Del)
Так я ее и сделал епта, даже три по сути, тебе мой гитхаб кинуть?

Лучше я тебе итч скину, зацени, правда там только одна игра

https://rk800-1.itch.io/pong

>>4322
Я через гит-атрибуты настроил выдал все файлы с .shader расширением как шарповые
image81 Кб, 1000x667
317 854326
>>4278
Неосилятор, спокуха.
318 854367
Я видел что в vs как-то делают так, что при кодинге вылазят подсказки от юнити, типа какие встроенные методы, переменные, типы есть. А это как-то можно включить в vs code?
319 854408
ЕЦСбоги здесь?
как вы работаете с иерархией?
допустимо ли чтобы в компоненте был например лист из других компонентов, а система бы потом брала этот лист и по нему работала?
320 854431
Можно ли на Android использовать файлы для сохранения прогресса игрока? Или лучше PlayerPrefs? Просто слышал, что могут возникать проблемы с файлами (могут всплывать разрешения или срабатывать ошибки).
321 854473
>>4431
Если надо хранить мало данных, то конечно playerprefs.
322 854474
>>4241
Балдеж жи есть
Стикер312 Кб, 500x500
323 854475
>>4408
ну ва первых лист там быть не могет в принципе.
динамикбуффер имеет ограниченный размер и тут нада балансировать между ожидаемой максимальной вместимостью и производительностью. ну и очень хуево паралелится на запись
если нужно прям МНОГО энтитей то лучше уж сделать лукап или формировать что-то типа нативхешмепа предварительно

воопшем давай конкретный юзкейс
324 854478
>>4474
Не следует множить сущее без необходимости.
325 854480
>>4474
Вот тут пацаны карочи тоже есть вопросы. Например - группа хранит список персонажей, добавляет и удаляет. Мне кажется это норм класс, он делает свое дело. Селектор принимает инпуты с хоткеев или щелчок по иконке персонажа в гуи и вот тут у меня сомнения. Получается, что это по сути контроллер, и вроде как он не должен хранить данные. но мне надо сохранить где-то индекс текущего персонажа. Такое ощущение, что мне нужен еще один класс, который будет хранить этот индекс и содержать в себе эвенты завязанные на изменение выбранного персонажа.

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

Еще есть вопросы по селектору. Он по уму не должен знать об устройстве группы. Он должен ей просто систнуть, типа эй, сюда дай персонажа под индексом 6. А в группе их всего три. Она должна сама обработать эту проблему, выдать ему например последнего доступного и селектор уже его переправляет в класс, который непосрдественно дает доступ к интерфейсам персонажа.
inventoryUI.jpg343 Кб, 2564x1500
326 854485
Как-то так. Накидать абстрактно пару классов и будет видно вин или шин. Но я настроен оптимистически.
327 854487
Точнее вот так. инвентарный юй не имеет доступа к селектору.
inventoryUI.jpg338 Кб, 2564x1500
328 854488
329 854489
>>4475
мой короче конкретный юзкейс, я хочу попробовать ецс у меня сейчас все работает на старом подходе
родительский объект-сплайн, у него контрольные точки - трансформы, разнообразные проперти-настройки
к сплайну цепляются другие объекты и по его t высчитывают свою матрицу(ездят по сплайну)
как это дело на ецс перетащить?
330 854494
>>4489
А нах тут ецс лол?
Ецс это конкретно подход к архитектуре, а не решение только одной задачи
331 854504
>>4494
я ж говорю попробовать хочу. сначала посмотреть как это работает на примере одной задачи и если допру то уже все остальное переводить буду
у меня проблема что я тупо не могу понять как это ецс вообще работает
332 854520
кто юзал? выглядит мега годно
https://github.com/YarnSpinnerTool/YarnSpinner-Unity
333 854535
>>4278
заткнулась пидорша
image.png27 Кб, 518x324
334 854561
в unity можно сделать несколько environment lighting color? я нашел только в настройках света, где цвет глобалки на всю сцену задается, а через создание коллайдеров или волюметриков каких-то можно сделать отдельные участки сцены с другим глобальным цветом?
group.jpg105 Кб, 927x714
335 854580
Господа гдачеры. Работа идет, а значит появляются вопросы.

Карочи смотрите, класс отвечающий за хранение данных о группе игрока. Хранит список персонажей, имеет публичный интерфейс для его изменения. Ок. заебись.

Мне надо сделать классическую так сказать панель с портретами, при клике на который выбирается персонаж. Я кавалерийским наскоком делаю контроллер, связываю в нем UI и PlayerGroup и они начинают типа взаимодействовать. Делаю в группе эвент, который в случае изменения состава группы пошлет в контроллер новый состав, контроллер его декомпозирует на портреты и прочую хуйню и скормит в UI.

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

А че делать? Как разрулить?

Какие варианты у меня есть:

1) Сделать структуру, которая будет контейнером нужных данных - портрет, хп, имя и так далее. В конструктор этой структуре скармливается персонаж, она из него дерграет че надо, и уже в контроллер мы передает список структур, а не персонажей. А в группу добавляем нужный метод, который будет эти стрeктуры делать и отправлять.

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

Что думаете?
336 854584
>>4580
А еще в голову пришел вариант передать коллекцию персонажей как ридонли коллекцию.
337 854594
>>4584
ты эти модерские штучки бросай, персонажи ему в ридонли видите ли. Они тебе что, мешают, что ты им ридонлями рот заткаешь?

забань их еще для коллекции! коллекционер епт
hi-hi-hi.webm284 Кб, webm,
1280x720, 0:02
338 854595
>>4580

> и уже в контроллер мы передает список структур, а не персонажей


Чел, это шиза из энтерпрайза. Там это актуально. Не пытайся затащить это в геймдев, иначе шизофрения и седина на волосах тебе обеспечены. Допустим, ещё момент - ты посылаешь список, А ВЕДЬ Я МОГУ ЕГО ИЗМЕНИТЬ ХИ-ХИ-ХИ!!!!

Короче, смотри:
1) Не нужно кидать список в ивент. Просто сообщи, что произошли изменения. Далее UI или класс-посредник самостоятельно через свойство прочитает обновлённый список. Единственное, можно ещё добавить ивенты CharacterAdded(ссылка на char), CharacterRemoved(ссылка на char).

2) Как я уже сказал, лучше вынести список в свойство. Либо сделай из PlayerGroup полноценную коллекцию, реализовав ICollection или IEnumerable. Тогда невозможно будет изменить список извне, но вопрос - а нахуй всё это нужно, если это к геймдеву не относится никак.

3) Хранить можешь интерфейсы, а не сам Character. Например ICharacterInfo. Какой в этом смысл? Так ты сможешь протестировать интерфейс накидав тестовых чарактеров без какой-либо логики. При этом свойства будут ReadOnly - твоя любимая инкапсуляция.

4) В константе нет смысла указывать чарактеров во множественном числе, так как ты уже написал COUNT. Типа characterCount, characterList - правильнее без s.
339 854598
>>4595

>Просто сообщи, что произошли изменения.


интересная мысль

>реализовав ICollection или IEnumerable


хммммм ммммммм хммхмхмхм

3. Вопрос не в чарактерах, а в защите состава группы.

>чарактеров во множественном числе


угу. да.
Безымянный.jpg140 Кб, 839x836
340 854717
В общем сделал без заебов. чиста по геймдевовски, без интрефейсов там хуесов. Слой ниже контролирует уже непосредственно gui персонажа - портрет, хп бар, и прочую залупу, отписки подписки на эвенты.
341 854720
>>4717
Все свои заебы оставлю на пошаговую систему, вот там меня точно разъебет, распидорасит как надо.
342 854775
>>0680 (OP)
Бля, где найти РАБоту/команду? Я сам кодер, у меня опыт даже коммерческой разработки есть. На гитхабе три игры, в итче правда одну только выложил. Английский знаю. Вакансии смотрю - уже даже не от мидла а от сеньора и выше. Где хотя бы мидловские поискать? Ну или на крайний случай адекватную команду найти, может на реддите чего есть? Интересует именно юнити
343 854779
>>4775
Предлагаешь за тебя поискать?
344 854780
>>4779
ага, вообще вдруг вы уже искали и знаете. Ибо я ищу и нихуя не нахожу уже год
345 854786
>>4780

>Вакансии смотрю - уже даже не от мидла а от сеньора и выше


ты мысли сначала выражать свои научись грамотно.
346 854806
>>4786
Душнила спок
347 854966
чем дальше я забуриваюсь в это ваше ецс тем меньше понимаю что творится
вот решил посмотреть а как игоры-то делают на примере популярного фреймворка (leoecs lite) ведь лучший способ разобраться кмк взять уже то что работает и покрутить его в руках
https://github.com/supremestranger/3D-Platformer-Lite/blob/main/Assets/Scripts/Systems/PlayerMoveSystem.cs
он короче в этой системе
и вообще в системах
берет фильтрует компоненты для своей системы
и прогоняет систему по ним
и так все системы каждый тик апдейта
получается что ецс настолько быстра что кешировать не надо ничего?
я не пони
348 855014
Переосмыслил дншнего персонажа. Карочи он вообще не должен предоставлять никакой информации кроме вот прям базы типа класса, уровня и так далее. Все расчеты должны осуществлять статические сервисы на основе данных от персонажа. И походу я нащупал решение с работой эффектов и оно оказалось максимально прям пиздец простое. Тупа нахуй все эффекты являются или наследуют от одного класса, чтобы их можно было забить все в одну коллекцию, которая храниться у персонажа или в каком-то классе, который будет еще и тайминги обрабатывать, но суть не в этом, а в том, что все эффекты через интерфейс разбиваются на типы. И когда, например, сервис по расчету атаки производит расчет он просто прогоняет поиск этой коллекции и ищет нужный интерфейс и все.
349 855016
Типа надел меч +1. Разбиваем его на два интерфейса Iattackbonusprovider и idamagebonusprovider и все нахуй. И его обработает и сервис по подсчету урона и по подсчету атаки все это отдельно и еще и прологировать как-то можно поотдельности.
350 855021
>>4966
Для фильтра там может быть под капотом заведен отдельный массив, где уже в момент добавления/удаления хранятся только нужные сущности.
351 855022
>>5014
>>5016
ECS
C
S
@
Реактивность
352 855023
>>5022
надо екс или это и есть екс?
353 855026
>>5023
Очевидно он на полпути, так как у него уже:

>сервис по расчету атаки производит расчет он просто прогоняет поиск этой коллекции и ищет нужный интерфейс и все.


Осталось всего-то заменить интерфейс->компонент и сервис->система.
354 855081
>>4504
ну поехали.
ва первых иерархия трансформов в ецс уже есть. можешь тупо го построить в иерархию и они так и конвертнутся или сделать вручную. нужно по минимуму
на обооих энтитях LocalTransform, LocalToWorld и на дите Parent. система инициализации добавит(если нужно) DinamicBuffer<Childs> на парента, LocalToParent и PrevParent(для отслеживания смены родителя) на дитё если нужно. далее связанный объект будет следовать за главным повторяя его движения, учитывая вращение и скейл как обычно.
конкретно это делается в SumulationSystemGroup -> TransformSystemGroup -> ParentSystem соответственно все движения объектов желательно проводить до неё, что бы правильно обновились все связанные объекты и пересчитались координаты, а читать данные - после.

дополнительно есть DynamicBuffer<LinkedEntityGroup> который вроде как отвечает за уничтожение связанных объектов при уничтожении главного, но заставить его работать я не смог. почему то первый и последний в списке не учнитожались. в доках ничего не нашел, написал свою реализацию.

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

2. парент имеет какой-то "большой" неизменный кусок данных(и соответственно хранить его в каждом дите кагбы и невыгодно) дети считают все сами. например тот же сплайн общий для всех детей а позицию на нем они считают по каким-то своим данным. BlobAssetsReference - единожды создается сплайн а детям выдается ссылка на него(собственно именно на сплайне или пути обычно примеры с ним и построены)

3. есть еще "средний" вариант с шаред компонентом, но это очень специфичный случай и требует точного понимание что происходит. суть - этот компонент один на чанк, общий для всех его энтитей. но изменять его дорого и муторно, посему нельзя просто так. он обычно используется для объединения однотипных энтитей по какому-то признаку
354 855081
>>4504
ну поехали.
ва первых иерархия трансформов в ецс уже есть. можешь тупо го построить в иерархию и они так и конвертнутся или сделать вручную. нужно по минимуму
на обооих энтитях LocalTransform, LocalToWorld и на дите Parent. система инициализации добавит(если нужно) DinamicBuffer<Childs> на парента, LocalToParent и PrevParent(для отслеживания смены родителя) на дитё если нужно. далее связанный объект будет следовать за главным повторяя его движения, учитывая вращение и скейл как обычно.
конкретно это делается в SumulationSystemGroup -> TransformSystemGroup -> ParentSystem соответственно все движения объектов желательно проводить до неё, что бы правильно обновились все связанные объекты и пересчитались координаты, а читать данные - после.

дополнительно есть DynamicBuffer<LinkedEntityGroup> который вроде как отвечает за уничтожение связанных объектов при уничтожении главного, но заставить его работать я не смог. почему то первый и последний в списке не учнитожались. в доках ничего не нашел, написал свою реализацию.

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

2. парент имеет какой-то "большой" неизменный кусок данных(и соответственно хранить его в каждом дите кагбы и невыгодно) дети считают все сами. например тот же сплайн общий для всех детей а позицию на нем они считают по каким-то своим данным. BlobAssetsReference - единожды создается сплайн а детям выдается ссылка на него(собственно именно на сплайне или пути обычно примеры с ним и построены)

3. есть еще "средний" вариант с шаред компонентом, но это очень специфичный случай и требует точного понимание что происходит. суть - этот компонент один на чанк, общий для всех его энтитей. но изменять его дорого и муторно, посему нельзя просто так. он обычно используется для объединения однотипных энтитей по какому-то признаку
355 855082
>>5014
>>5023
таки ты изобрел экс.

начни с лайтового. Энтитас например. разработчики рейда очень хвалили
356 855084
>>4966
ты пропустил четвертый основной концепт ЭКС, который в название не вошел - запросы(фильтры в терминах лео). заметь что фильтры должны быть объявлены в системах как поля и не создаются на ходу по необходимости(в дотс вроде бы создаются, но стоит открыть автогенерированые исходники и там видно что это наебка - запросы создаются статично, "за кадром", а "динамические" просто их берут). вот на это и ложится большой кусок оптимизации - правильно рассортировать энтити по запросам что бы системы получили именно то что нужно а не лазили по ВСЕМ энтитям в поисках нужных
357 855150
>>0680 (OP)
Бля, подскажите пожалуйста, в юнити есть менее ебанутый способ скрывать/включать отображение UI кроме как оборачивать все в канвас и через GetComponentsInChildren с предварительным пропуском parent-объекта их обрабатывать?

Ну просто это даже звучит дегенеративно, однако гуглеж других способов как не получить при этом NULL Reference exception не подсказал Может вы подскажете...
358 855157
>>5150
Ну самое очевидное - делаешь синглтон, UIManager какой, которому в общем случае говоришь какую менюшку показывать и все такое. у него всегда есть(должны быть иначе он работать не могет) ссылка на корневой канвас и он соответственно может его безболезнено скрывать/показывать целиком. упрощая до минимума - синглтон с ссылкой на корневой канвас, а там уже делай що хочешь
359 855158
>>5157
Так это же литерали то же самое... Ну ладно
360 855161
>>5158
В смысле "литерали то же самое"?

зы. А зачем воопше идти по всем детям? скрываешь корневой канвас и всё..
361 855162
>>5161
Так тогда у меня Null ref будет, тк у меня панель должна появляться только когда геймовер, а по умолчанию она должна быть отключена

Вот код можешь глянуть если хочешь https://github.com/RK800-1/Flappy-Clone/blob/main/Assets/Scripts/GameOverPanel.cs
362 855166
>>5162
так значит смотри. делаешь синглтон гуйменеджер вида
public class UIManager : Singleton<UIManager>
{
public Panel GameOverPanel;
public Panel MainMenuPanel;
public Panel SomeOtherGUI1;
....

private void HideAll()
{
GameOverPanel.GameObject.SetActive(false);
MainMenuPanel.GameObject.SetActive(false);
SomeOtherGUI1.GameObject.SetActive(false);
....
}

public void GameOver()
{
HideAll();
GameOverPanel.GameObject.SetActive(true);
}
}

вешаешь его на основной канвас. назначешь все вложенные менюшки по соответвующим панелям, все отключаешь и включаешь нужные методами типа GameOver()
вполне стандартный способ. как продвинутый вариант - хранишь эти менюшки как префабы создавая по необходимости
363 855168
>>5162
есть причина зачем их искать через таг?
можно поля либо публичными либо сериализированными сделать, перетащить в эдиторе нужные элементы и жить не тужить
364 855169
>>5166
Ну да, идея хорошая, спасибо.

>>5168
Я тут вообще пытаюсь некое подобие солида и в целом "эффективной" разработки сделать, а везде пишут что паблик это хуетень, и Find тоже так что лучше сериалайз и поиск по тагу, мол так безопаснее и быстрее
365 855172
>>5169
ну я же и говорю если не нравится public то есть [SerializeField] private
366 855174
и так-то искать по тагу тоже не безопасно
поменялся таг @ все сломалось @ не знаешь почему
367 855175
>>5172
Бля, а ведь реально, тут сериалайз можно, чет я затупил. Я просто вообще думал чтобы в GUI не настраивать нихуя все тегами пометить и к ним доступ иметь

Можешь мои другие скрипты глянуть если хочешь)
368 855176
>>5169
мне тупо было лень писать сериалайз филд перед каждой панелью, но по хорошему надо.
файнд же юзать следует в очень редкому случаю - какой-то ну прям очень нестандартный путь исполнения, где действительно надо перебирать все что есть что бы найти кто тебе нужен. т.е. все пошло не так как задумывалось и ты пытаешься правильно обработать ошибку
369 855177
>>5176
Да, согласен, надо бы это все исправить, спасибо.

Я еще после этой поделки первую планирую "рефакторить"
370 855179
>>5177
делаешь префабы всех компонентов UI, на старте сцены кор игровой скрипт инициализирует UI, тот подгружает их из ресурсов в приватные переменные. Если тебе прям пиздец приватность надо. Но приватность не приватность по-большому счету к солиду мало относится вообще.

Мимо архитектурный анон.
371 855181
>>5179
Не, мне таких штук не надо, я же просто аналог флеппи берд бля делаю, просто чтобы это совсем колхозно не выглядело.

Я сам на безопасника учусь и у нас есть аксиома что "стоимость защиты не должна превышать стоимости риска"
372 855183
>>5179
Я насчет солида просто пытаюсь каждой фиче свой класс выделять и примерно одни функции туда пихать. Типа игроку свой класс, там только управление игроком, препятствиям свой класс, зоне увеличения очков свой класс и тд. Такой вот солид на минималках

Ну и геттеры с сеттерами использую
373 855241
>>5150
Я даже не понимаю че ты делаешь своим способом.
В чем проблем активировать/деактивировать геймобжект под которым висит юи?
Безымянный.jpg169 Кб, 931x807
374 855247
Посоны нада кому 8 баксов?
16362825318310.mp42 Мб, mp4,
640x360, 0:18
375 855248
376 855249
>>5248
Этот чел приблизительно с таким заходом мне за 2 часа до нового года писал, типа тоже у него на 2 часа работы, либо щас делай либо в 9 утра вставай 1 января)))
Безымянный1.jpg126 Кб, 833x794
377 855251
ПАХпахпхвхахвхп
378 855252
>>5247
И в чём он не прав?
379 855253
>>5252
Хз, я просто не хочу это делать. Хочешь заняться, дай телегу, я ему перекину
380 855259
Походу зря на пацаны наговорил, что он лжец и обманщик. Этот набор моделей на артстейшоне есть. Чиста крутится геймдевелопер, вкладывает бабки в разработку
381 855274
Давно юнити не трогал, скачал свеженькую и тут это. Что за залупа?
Перед отправкой поигрался с окнами и узнал что глитч убирается, если сменить размер любого блока хоть на пиксель. Все равно кину.
382 855278
Подскажите пожалуйста, а если я начну вкатываться в юнити насколько там трудно будет работать с партиклами? Вернее где их придётся делать?
Спрашиваю заранее потому что в игре моей мечты у персонажа и мобов будут скилы. Ну частично магия. По задумке анимация скилов будет не сложнее чем в вове.
Ну и частично эффекты оружия / брони.
383 855282
>>5278
Легко, в Particle System
image1,2 Мб, 1186x1061
384 855317
>>5278
В том-то и дело, что тебе не придётся тратить время на создание партиклов. Лучше игру делай. А партиклы купи на ассет сторе.

https://assetstore.unity.com/?q=particles&orderBy=1
385 855331
>>5317
Я похож на миллионера?
386 855333
>>5331
он имел ввиду купить на трекерах
387 855343
>>5317
>>5333
Это другой человек ответил. Я тоже не миллионер, но у меня свои задумки по эффектам. В игре будет выдуманный язык, а спеллы будут использовать комбинацию рун оттуда, они будут появляться над головой/руками персонажа, и потом будет идти основная анимация умения.
388 855350
>>5343
Нутк подредактировать готовые проще чем с нуля делать.
389 855352
Бля, кто нибудь может объяснить как работать с канвасами? Я когда запихиваю туда объекты, то система координат меняется просто по каким-то неведомым мне законам. Дошло до того что у меня два объекта в одном канвасе имели координаты 0 0 0 и при этом находились в разных местах. Причем я привязку канваса сделал сначала к камере, а потом просто к глобальным координатам. А канвасы внутри канваса мне даже не дает настроить.

Я просто пытаюсь реализовать менеджера объектов, чтобы не создавать кучу сцен, а сделать все в одной - разбил объекты на канвасы которые олицетворяют определенную игровую сцену и их все закинул в "менеджер" канвасов

Короче, как это исправить или сделать нормально?
390 855356
>>5352
Вроде дело в якоре
391 855357
>>5352
там суть в том что координаты зависят от анчора/пивота/стретча.
т.е. начальная точка. в какую сторону от неё считать координаты и как их считать относительно анкора

задается кликанием по квадратикам с зажатым альт/шифт/контролом. там в принципе все довольно интуитивно(я даже не запоминаю какой шифт за что отвечает) - поискперементируй.
392 855361
>>5357
>>5356
Работал с ними, от центра все сделал - полная хуйня, ничего особо не изменилось. С 0 0 0 координатами у меня был один объект и один префаб, может в этом дело?
393 855374
И еще один вопрос. Тут есть люди с LTSC версией винды? У вас юнити стабильно работает или он с этой версией системы не совсем совместим/нужно ставить что то еще?
394 855383
>>5374
Попробуй поставить обычную версию винды.
395 855409
>>5383
С виндой разобрался, еще про юнити похожий вопрос.

Обязательно ли ставить хаб или лучше скачивать отдельно LTS? Будет ли в таком случае доступна загрузка из ассет стора?
396 855415
>>5409
Хаб удобнее
397 855418
Все, неактуально. Без хаба никак для нуба. >>5409
image74 Кб, 906x618
398 855420
Нужно ли выбирать при установке модули, если максимум что мне будет нужно при обучении это сборка проекта в экзешник?
399 855421
>>5420
P.S. И стоит ли ставить движок на ссд?
400 855426
>>5420
Ниче не нужно

>>5421
Да. И проекты тоже хранить на ссд в идеале. Ну, если нету желания сидеть афк ждать пока оно прогрузится долго
401 855442
>>5426

>Ну, если нету желания сидеть афк ждать пока оно прогрузится долго


у меня они на м2 и все равно грузятся по 300 лет
старые юники так не грузились даже на ждд
402 855450
>>5442

> у меня они на м2 и все равно грузятся по 300 лет


Ну вот и представь ебало чела с хдд, там 3000 лет будет.

И еще включи параллельный импорт в настройках
403 855454
>>5450
не представлю потому что я и на хдд перетаскивал и знаешь что
разницы нет
404 855471
Как и предполагалось, первой болью в моем днд приключении будет кодинг боя. Даже его поверхностная часть. На первом этапе ввел классы Combat, хотя наверное правильнее Battle, и класc Round. Согласно правилам, последний считается законченным, когда сходит последний участник. Соответственно чем он занимается приблизительно можно понять. По ниточке оттуда отсюда надеюсь клубок этот растащить.

Отдельную боль доставляет тот момент, что надо тоже самое имплементировать еще и реалтайм режиме. Во-первых, потому что наложенные заклинания должны как-то обсчитываться, во вторых я планирую походовую и реалтайм систему боя. Типа как в меджике.

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

Такие дела, маслятки.
405 855475
>>5471
Была еще проблема, типа я накидал общую идею и пару конкретизирующих строк, и наткнулся на такой момент. Как определить, что бой окончен? Все участвующие в бою являются одним классом с одним набором данных. Т.е. я не могу их отсортировать. Вводить в класс Character какой-то флаг - нпс не нпс, ну это слабенькое решение. И тут пришла в голову идея, что бой должны начинать отряды, тут соответственно достаточно легко понять идет бой или нет. Сразу встала проблема, как формировать отряды. Наверное придется таки вводить какие-метки, типо отношение к игроку и засовывать это все в нпс контейнер.
406 855500
Разобрался с установкой, проверил что работает. Появились другие вопросы.
Из неоднозначного: не нашел доступа в ассет стор. Как правильно им пользоваться? В самом движке будет окно с ним и выбором ассетов, или же это в браузере делать надо?

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

И третье - с чего начать? Может есть ютуб канал/курсы которые в уроках трогают самое необходимое для нуба? Когда я изучал майю, то в курсах videosmile прямо выжимку дали, что я без проблем мог уходить уже в английские туториалы.
407 855507
>>5500

>Как правильно им пользоваться?


через браузер, руками и ногами

>визуал скриптинг


хуета bolt

>с чего начать?


с делания игры
408 855523
>>5500
через браузер покупаешь или добавляешь бесплатные ассеты в сторе
после чего в пакет менеджере - мои ассетсы - добавляешь их в игру

болт выкуплен юнитеками и входит в стандартные ассеты(пакет менеджер - юнити регистр) под названием visual scripting. не помню установлен ли по дефолту

ну и если из россии - готовь впн, в не пускает.
409 855544
https://github.com/MargaritaLomova/

Говорит что 3.5 года работы в юнити из них 2.7 в команде. Верим?
410 855550
>>5545 (Del)
или таймаут или 403
пакменеджер пишет что не можут загрузить список пакетов.

через впн ессно все работает
411 855551
>>5544
Хз. Судя по гитхабу она джуниорский джун. В коде чувствует себя очень неуверенно. Не представляю, чем она занималась 3 года в команде. Приносила кофе красноглазикам?
412 855554
>>5550
Это видимо тот долбоеб, который пару дней назад прибегал со скрином с ньюсача о том, что у кого-то стим не грузанулся и полилася перемога лол.

Конченный хуесос настолько тупой, что пытается напиздеть там, где каждый может проверить нажал одну кнопку лол.
image991 Кб, 1614x727
413 855577
Извините, а есть такая штука но подешевле, примерно за 0 рублей?
414 855590
>>5577
Есть
sage 415 855591
>>5577
у меня есть этот кал, если ты ждёшь, что там будет красивенький редактор и кнопка сделать пиздато - то можешь забыть
416 855593
>>5591
Там есть готовая система скилов насколько я понял по скринам, а нубу такое воссоздать будет трудно.
1675259330436.jpg340 Кб, 958x1225
418 855618
>>5544
Ну смотря в какой команде, типа с друзьями собраться и учиться делать игру - это ж тоже "работа в команде"
419 855620
>>5603
Импортировал. Все сцены с ошибками. Гора чужого кода. В мейн меню на камере весит анкноун скрипт.
И типа серьезно, покуешь за 200 баксов и сидишь ебешься чтоли?
420 855633
>>5620
добро пожаловать в юнитимир.
421 855636
>>5620
и кстати если ты думал что отзывы могут хоть как-то помочь не купить кусок говна то нет, негативные отзывы можно тупо удалять чем хуесосы вроде автора odin inspector занимаются с огромным удовольствием
422 855638
Мне бы вообще хватило подробного тутора по рпг где водят за ручку и все показывают.
Запросы по реализации у меня небольшие. Помните Lineage 2 или первые версии вова? Вот геймплейно в этом духе, только без онлайн составляющей и сложных штук вроде инстансов:
-глобальная система статов и пассивных/активных умений (одна и та же для игрока, нпс, моба)
-реализация квестов с простейшими сценариями
-дроп предметов, где статы экипировки генерируются в зависимости от уровня персонажа
-инвентарь

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

>>5603
Благодарю, попробую разобраться или что нибудь за основу взять
423 855639
>>5638

>-глобальная система статов и пассивных/активных умений (одна и та же для игрока, нпс, моба)


>-реализация квестов с простейшими сценариями


>-дроп предметов, где статы экипировки генерируются в зависимости от уровня персонажа


>-инвентарь


это не сложно, проблема только с визуалом, если ты не умеешь рисовать или моделить это я
image1,1 Мб, 1280x559
424 855641
>>5639
Я начал изучать моделирование за 7 мес. до установки юнити. В реализм не могу, и не стремлюсь (моего железа на это просто не хватит). Текстуры на граф планшете планирую отрисовывать.
Стремится буду примерно к такой же стилистике как на пике (естественно выйдет хуже).

У меня проблема с кодингом, придется учить эти скрипты так или иначе. Ну и звук, откуда то придется брать саунд. В качестве затычки на первое время будет нейрогенерация с AIVA
425 855643
>>5641

>Стремится буду примерно к такой же стилистике как на пике


не знаю как остальным, но мне такое по кайфу, только светлее и побольше солнца

>У меня проблема с кодингом, придется учить эти скрипты


можно пиздить из чужих игр
426 855655
>>5643
Единственное я не знаю как с растительностью быть. Вероятно в юнити есть инструмент, чтобы загрузить туда вариации растительности, какого то мелкого окружения (обломки, вещи) чтобы потом мазать это по террейну.
427 855670
>>5636

> если ты думал что отзы


К кому ты вообще обращаешься, ебанушка? Это ссылка с цгперсии
428 855706
>>5636
У меня даже рендер из коробки срет. Все кроме террейна маджента.
429 855712
Микровопрос. А нелинейное замедление времени для всех кроме персонажа при активации умения это сложная механика?
Грубо говоря после прожатия кнопки время только начинает замедлятся, через 3 секунды достигает своего пика (полная остановка) и после снова уходит на ускорение.
430 855713
>>5712

>это сложная механика?


нет
431 855718
>>5712
"просто" все затронутые замедлением объекты должны использовать в апдейте вместо Time.DeltaTime какой-то условный MyTime.DeltaTime с которым в начале фрейма производятся все необходимые искажения относительно обычного течения времени.
432 855958
>>0680 (OP)
Сап аноны, сделал вторую игру, вот репозиторий если хотите можете заценить/разъебать/поддержать

https://github.com/RK800-1/Flappy-Clone/
433 855960
Сап аноны, сделал вторую игру, вот репозиторий если хотите можете заценить/разъебать/поддержать

https://github.com/RK800-1/Flappy-Clone/
image5 Кб, 223x234
434 855991
>>5960
У тебя верстка поплыла.
435 855998
>>5958
Давно юнити изучаешь?

Вот несколько советов, они не прям критичны тут, но в будущем могут пригодиться:

Пик 1. Лучше не делай GameObject поля. Вот нупример у тебя есть player, и ты ниже из него получаешь PlayerController гет компонентом. Лучше сразу пусть будет PlayerController player. Почему? Потому что есть риск что ты перетащишь туда что-то не то, в процессе игры вылезет ошибка и ты потом долго будешь искать в чем дело. Конечно в такой маленькой игре ты быстро найдешь, а представь игра больше будет.

Пик 2. Есть атрибут RequireComponent. Советую его повесить на этот класс, чтобы не было такого, что скрипт ты повесил, а ригидбади забыл.

Пик 3. Вот у тебя есть private KeyCodeButton. И этот геймобжект где-то лежит на сцене. Чтобы это поменять тебе надо открыть сцену, найти его и там менять. Ты мог бы использовать ScriptableObject с этим кей кодом и запихнуть его сюда в качестве параметра, а его уже положить в папку настроек какую-нибудь. Когда у тебя будет много таких настроек(особенно которые нужны сразу нескольким объектом и должны быть одинаковыми), то будет сложна перебирать сцену и искать там всё, поэтому лучше заранее подобные вещи с СО делать.

Пик 4. Чтобы не мучаться с this и не добаалять везде pub, можешь просто на поля класса добавлять префикс _. Будет у тебя не protected float speed, а protected float _speed, зато больше никаких this и никаких pub
436 855999
>>5991
Я не виноват... Меня подставили
437 856005
Что есть открытый мир в игре на юнити? Правда ли что новичку в эту сторону лучше не смотреть и обходить стороной?
Что если будет псевдо открытый мир с условными переходами которые обусловлены геймплеем?
438 856008
>>5998
Ну как давно, может несколько месяцев. Я скорее не изучаю а гуглю в процессе. Изучал шарп.

За советы спасибо, а насчет this, я просто на РАБоте с похожим на шарп ЯП работаю и уже привык.

Вообще задумка была максимально по солиду сделать и чтобы ориентироваться и поддерживать было относительно просто. Понимаю что хуйня но тем не менее, я пытался. Завтра начну рерайтить первую игру Понг, можешь тоже глянуть если хочешь)
439 856009
>>5998
Вот насчет настроек кстати не знал. Я тоже думал мол как сделать так чтобы например имена сейвов сохранить в одно место и там их доставать, или вот то что ты описал. Гуглил - не нашел ничего
440 856011
>>6008

>несколько месяцев

441 856014
>>6011
А что не так то? Расскажи как сделать лучше
442 856032
>>5998

>просто на поля класса добавлять префикс _


а я считаю это крестобесовщиной и визуальным мусором хотя конечно зис еще хуже мне проще в аргументы newX передать чем видеть эту хуйню во все поля
16752330490840.mp4804 Кб, mp4,
360x642, 0:26
443 856038
>>6032
Тоже когда-то так думал. Пока не стал возвращаться к старому коду. И когда его читал, то понял, что мне приходится тратить время (пускай секунды) на то, чтобы понять является переменная локальной или же это поле класса. Поэтому теперь использую "_". Да и в целом следую современному коде-стайлу команды .NET

https://github.com/dotnet/runtime/blob/main/docs/coding-guidelines/coding-style.md
1675361614673.jpg266 Кб, 1065x941
444 856050
>>6008
Норм, так и надо

> Вообще задумка была максимально по солиду сделать и чтобы ориентироваться и поддерживать было относительно просто. Понимаю что хуйня но тем не менее, я пытался. Завтра начну рерайтить первую игру Понг, можешь тоже глянуть если хочешь)


Ну обязанности ты кое-как разделил, но с поддержкой тут еще много работы. Пикрил например. Короче основной совет, что вот прям супер сильно и заметно прям щас можно улучшить - пытайся сделать так, чтобы у тебя было как можно меньше GetComponent(за исключением когда у тебя висит RequireComponent или когда ну это реалльно надо, в твоем случае с обстаклами по идее - но сделай отдельныц гемобжект, повесь их под него, и на нем делай GetComponentsInChildren тогда уж) или его аналогов - пусть ты сделаешь новый класс, пусть ты добавишь поля куда надо мышкой будет перетащить потом значения, это всё лучше чем работать с GetComponent и надеяться что нужный компонент действительно есть на нужном месте.

>>6011
Ой да подумаешь, для нескольких месяцев это ок

>>6014
Ну, FindObjectsWithTag это очень тяжелый метод, а ты его ебошишь каждый тик фиксед апдейта. Его ток иногда можно юзать.

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

По второму пику - получается у тебя текстовое поле хранит рекорд. Во-первых из этого вытекает ебанина с parseInt, а во-вторых это как бы не его обязанность - текстовое поле должно отображать информацию а не хранить число.
Т.е. тебе надо сделать класс для управления рекордом, который будет чекать сейв(это лишняя обязанность если прям поехать на солиде, но по здрааому смыслу это ок) и сохранять его по необходимости, и через него все остальные будут получать рекорд в виде int, и дальше нужен класс отобразительРекорда который будет чекать рекорд и заносить его в текстовое поле(но не каждый тик апдейта, а когда пришло событие что рекорд обновлен - гугли пока что в сторону c# events и UnityEvent, ну и если хочешь базу то это называется паттерн обсервер)
1675361614673.jpg266 Кб, 1065x941
444 856050
>>6008
Норм, так и надо

> Вообще задумка была максимально по солиду сделать и чтобы ориентироваться и поддерживать было относительно просто. Понимаю что хуйня но тем не менее, я пытался. Завтра начну рерайтить первую игру Понг, можешь тоже глянуть если хочешь)


Ну обязанности ты кое-как разделил, но с поддержкой тут еще много работы. Пикрил например. Короче основной совет, что вот прям супер сильно и заметно прям щас можно улучшить - пытайся сделать так, чтобы у тебя было как можно меньше GetComponent(за исключением когда у тебя висит RequireComponent или когда ну это реалльно надо, в твоем случае с обстаклами по идее - но сделай отдельныц гемобжект, повесь их под него, и на нем делай GetComponentsInChildren тогда уж) или его аналогов - пусть ты сделаешь новый класс, пусть ты добавишь поля куда надо мышкой будет перетащить потом значения, это всё лучше чем работать с GetComponent и надеяться что нужный компонент действительно есть на нужном месте.

>>6011
Ой да подумаешь, для нескольких месяцев это ок

>>6014
Ну, FindObjectsWithTag это очень тяжелый метод, а ты его ебошишь каждый тик фиксед апдейта. Его ток иногда можно юзать.

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

По второму пику - получается у тебя текстовое поле хранит рекорд. Во-первых из этого вытекает ебанина с parseInt, а во-вторых это как бы не его обязанность - текстовое поле должно отображать информацию а не хранить число.
Т.е. тебе надо сделать класс для управления рекордом, который будет чекать сейв(это лишняя обязанность если прям поехать на солиде, но по здрааому смыслу это ок) и сохранять его по необходимости, и через него все остальные будут получать рекорд в виде int, и дальше нужен класс отобразительРекорда который будет чекать рекорд и заносить его в текстовое поле(но не каждый тик апдейта, а когда пришло событие что рекорд обновлен - гугли пока что в сторону c# events и UnityEvent, ну и если хочешь базу то это называется паттерн обсервер)
445 856052
>>6050

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


Или вот так

> в твоем случае с обстаклами по идее - но сделай отдельныц гемобжект, повесь их под него, и на нем делай GetComponentsInChildren тогда уж

446 856054
>>6050
Просто других вариантов не нашел. С поиском по тэгу слышал что тяжелый метод, пытался просто сравнение объектов, а там хуйня получилась тк объект который я цепляю уничтожается хоть и префаб, а это нульреференс вызывало насколько помню. А так спасибо, буду иметь ввиду.
447 856064
Там wwise сделали бесплатным
448 856084
>>6064
А что из подобного вообще стоит новичку "покупать"/брать по бесплатной лицензии?
Или же это профессиональный софт, и для нуба не будет разницы между audacity с десятком плагинов и этим wwise?
449 856104
По другому спрошу >>6084
Какой софт посоветуете для общих задач по звуку начинающему?
Задач несколько:
1. Обработка звуков записанных с микрофона - шаги, лязг, звуки оружия, столкновений либо взятых с стоков
2. Синтез с нуля чего нибудь необычного, что нельзя изобразить в домашних условиях

3. (необязательно) Обработка фраз для озвучки персонажей
image.png56 Кб, 771x434
450 856254
ебало представили?
451 856500
>>6254

>гугл транслейт


Ты совсем конченный?
452 856527
>>6050
Я начал исправлять другую игру, там сделал по другому, можешь глянуть если хочешь. Надеюсь это получше. По крайней мере теперь там геткомпонент один и при добавлении новых объектов не надо добавлять их в коде

https://github.com/RK800-1/Pong/blob/main/Assets/Scripts/Main%20menu/SceneLoader.cs
453 856591
>>6050
>>6527 Правда у меня такая хуйня что мне надо и переменным присваивать гейм объект и массиву гейм объектов то же самое делать. Я пока не понял как сделать так чтобы избавиться от такого дублирования
454 856595
>>6591
Разделять ответственность офк

мимо даже код не смотрел
455 856609
>>6595
А вот ты посмотри, я пытался это сделать вроде как
456 856610
>>6595
Там у меня есть переменные геймобжектов чтобы их использовать в качестве аргумента для переключения а в массиве нужно чтобы их запарсить и закинуть в словарь чтобы менеджмент панелей работал
Безымянный.jpg52 Кб, 854x368
457 856884
Качал сегодня на йоте ебаной 65 гигов балдуры третьей, чтобы посмотреть как там сделано. А она сука на стим режет скорость до мб/с. Плюнул, пока качалось, сделал по памяти из нвн. Теперь у персонажа в статах будет как общий фит, так и фиты его составляющих. Кодить днд конечно это ебаный ад, особенно 5ую редакцию, там какой только залупы не добавили я ебал его мамы рот. Там тупа 300 страниц правил еще выучить надо пиздец. А правила написаны не сказать чтобы там прям изложено все четко тоже вникать надо. Параллельно еще троелсена 1700 страниц читаю.

Кстати насчет вакансий джунов. Я в одну гк залупу на похуй закинул, отказ пришел спустя 20 дней только. Вот такой там конкурс на место походу.
458 856889
Посоветуйте ру коммьюнити по юнити, желательно такое, основательное, не новое. Мне для того чтобы поискать очевидные вопросы которые задает каждый второй нуб.
459 856903
>>6884
А в балдуре все переделали воообще ни разу не нвн лол.
460 856924
>>6884
Пацаны, советуйте. Карочи у файтера, паладина, ренджера, варвара и может еще у кого-то точно такая же профа по оружию. Я пока ебанул просто для каждого отдельный класс с повторяющимся кодом, но это офк не правильно. Есть другой вариант, взять класс файтера, отнаследовать всем остальным от него и просто переопределить в нем описание. Но этот подход, я полагаю, тоже не правильный, потому что они все в горизонтальной зависимости. Т.е. получается мне нужно сделать абстрактный класс AllWeaponProficiency, а уже от него каждый класс с такой профой будет наследовать и переопределять дескрипшен под себя.

Эм ай райт?
461 856974
>>6924
Какой смысл тебе советовать, если ты совет тупо игноришь? Ецс.
462 856982
>>6884
Ты в курсе что у днд есть бесплатная версия, где всего один фит, и всего по одному архетипу класса, а есть платная, по которой ты игру делать не можешь? Ну то есть можешь, только потом никуда выложить не выйдет.
463 856985
да что бля такое днд и фиты?
464 856992
>>6982
Да, я в курсе, спасибо за заботу.
465 857014
Какоие ецс и мультиплеер фреймворки лучше юзать?
466 857403
>>0680 (OP)
А у вас было такое. Целый день хуячишь жёстко, под конец к ночи/вечеру пиздецки устаешь. А на следующий день мозг работает намного хуже, вяло, и кодинг вызывает раздражение и даже простые вещи идут тяжело
467 857416
Аноны, стоит ли заюзать базу данных какую-нибудь. Чтобы там вставки, удаления, обновления делать.

Например, если бы я пилил Майнкрафт.
1. Таблица материал:
id|name
1|wood
2|gold
3|diamond
....
2. Таблица инструмент
id|name
1|лопата
2|кирка
...

3. Инвентарь
Инструмент_id|материал_id
2|3 (алмазная кирка)
468 857439
>>7416
Выглядит не очень
469 857458
>>7403
было, решил
ходи
гуляй
я серьезно
минимум 5 км в день проходи ногами
иначе пиздец
470 857467
>>7416

> Например, если бы я пилил Майнкрафт


Ночт все предметы объявил в статических полях и ему было заебись.
471 857486
>>7467
Ты так каждый раз об этом говоришь с придыханием лол. Майнкрафт то хоть купил?
472 857508
>>7458
В последнее время я так не люблю гулять. Что я там не видел. Подумываю купить беговую дорожку. Открою форточку, закрою глаза и буду представлять что иду/гуляю по парку
image413 Кб, 812x1024
473 857513
>>7508

> беговую дорожку


Лучше эллиптический тренажер, он колени не нагружает.
474 857516
>>7513
спасибо за совет, обязательно куплю, как только сделаю игру и буду получать с нее миллионы
475 857744
А что если делать свою первую игру в режиме спидрана. Пох на код, архитектуру, дизайн и прочее. Просто чтобы был готовый продукт. Просто чтобы лишится gd/евственности.
Естественно первая игра должна быть простенькой,типа floopy birds, поэтому из-за спидрана код все же можно починить, и чтобы в итоге все работало, даже с нарушением всех правил солид и прочего.
476 857755
>>7744

>типа floopy birds


Ну сделай, че там делать то, работы на полчаса? И чем тебе поможет, такая игра? Вон в геймджеме любом поучаствуй там такой уровень и будет.
477 857758
Возможно на Юньке написать подобное (без VR-управления)
https://store.steampowered.com/app/754150/Rolling_Line/
начинающему программисту?
image.png7 Кб, 523x43
478 857765
>>7758
ну скачай да посмотри исходники (если она в моно), по скринам параша какая-то
479 857769
>>7765
Что за тулза?
3.jpg18 Кб, 352x172
480 857776
>>0680 (OP)

Добавьте тоже потом в шапку, документация по Unity на русском
https://unityhub.ru/manual/index
481 857779
>>7776
https://unityhub.ru - портал для всех юнити разработчиков
Что сделано за 2022 год:
1. Был создан раздел "Документация" со всей официальной документацией (почти 25к страниц). И вся эта документация полностью переведена на русский язык.
2. Было написано 90 гайдов.
3. Был создан новый раздел "Магазин Ассетов", и загружено 300 ассетов.
4. Был создан новый раздел "Игры", и загружено 85 игр.
5. Был создан личный блог для пользователей, с возможностью оставлять посты и подписываться на интересующего Пользователя.

Что планируется сделать в 2023 году?
1. Возможность загружать на сайт игры формата WebGL.
2. Возможность подписки на загруженные игры/ассеты, чтобы следить за последними обновлениями данной игры/ассета.
3. Создание нового многофункционального раздела GameJam.
image203 Кб, 478x270
482 857809
>>7776

>документация по Unity на русском

483 857822
думаю стоит выдать бан нацистской свинье, которая агрится на кириллицу уже не в первый раз
image6 Кб, 161x67
484 857865
Вверх вниз.jpg237 Кб, 1892x1492
Смена скелетов 485 857914
Делаю 2д топ даун поделие, нужно реализовать на одном враге несколько скелетных моделей для разных поз. Типо как пикрил, одна модель когда персонаж двигается вниз, другая когда вниз.
Как лучше это сделать, создать в одном скелете/рисунке кучу слоев сразу на все позы, и выключать не нужные слои/кости в каждой конкретной анимации
Или же создать несколько скелетов и как-то хитровыебано переключать их, чтобы на каждую позу включался свой скелет?
Надеюсь понятно спросил
486 858024
Тест
487 858025
Допустим, я создал namespace Player.
Какое тут соглашение по наименованиям
А)
PlayerMovement.cs:
namespace Player
{
class PlayerMovement {}
}

Или же

Б)
Movement.cs
namespace Player
{
class Movement {}
}

Если не заметили, то во втором варианте я опустил слово Player из названия файла класса, и самого класса.

Вообще, у меня такая идея. Если файлы по Player находятся в одноименной папке Player, то как-то странно, что внутри этой папки, где и так ясно, что там все по Player-у, в названии файлов дублируется Player. То есть, в этом случае, если есть папка, то подходит вариант А).

А вот если файлы по игроку находятся в общей куче с другими файлами, то логично, чтобы отделить друг от друга, надо писать PlayerMovement. Ведь там может так же быть EnemyMovement.

Короче, я безыгорная чмоня, как вы поняли, но мне все равно это интересно.
488 858030
>>8025
Неймспейсы хуйня.
А кидать классы с одинаковыми названиями в разные неймспейсы типа потому что один для ишрока другоц для врага - и того хуже, это вообще кошмар, ни в коем случае так не делай.
489 858033
>>8030

>Неймспейсы хуйня


Дальше не читал
490 858058
>>8033
Назови хоть 1 объективный профит от использование неймспейса в твоем проекте

Неймспейсы нужны только когда над проетком работает несколько человек, при этом в проекте есть явное разделение на отдельные наборы модулей. Тогда неймспейсы будут выполнять 1)поисковую функцию - человек сможет сразу посмотреть что есть в каком-то неймспейсе 2)возможность быстро понять где идут зависимости между разными наборами модулей
491 858068
>>8058
Сцук, ты конечно молодец, что попытался представить, что у меня за проект, но вопрос был чисто про нейминг, а то что я описал выше это взятые с рандома примеры.
system.windows.markup.xamlparseexception - не нужен?
492 858073
>>8058
Неймспейсы вообще не имеют отношения к тому, сколько человек работает, шиз. Или по твоему Вася может писать только в Render.Drawing, а Коля - в Input.Gamepad?
493 858093
>>8068
Пчел, ты чо рофлишь? Ты спрашиваешь какое решение подойдет к рандомному проекту(ответ - рандомное, можешь хоть монетку подбросить, правда не жди с этого пользы) или всё таки конкретно твоему? Абсолютно любое решение делается исходя из проекта и его особенностей с какой-то конкретной целью - т.е приняв это решение ты должен получить какой-то профит с этого.

Если ты собираешься делать неймспейс Player и Enemy и в обоих делать Movement - то я тебе сразу говорю это надо совсем долбоебом надо быть чтобы не видеть какие из этого вытекут проблемы, поэтому я тебя сразу предостерегаю - не надо так делать, и лучше вообще свои неймспейсы не определяй с такими вопросами раз ты не понимаешь зачем они нужны(если бы у тебя был проект, где они нужны - ты бы сразу это понял скорее всего и даже ни у кого ничего спрашивать бы не стал)

Вот пара подсказок:
1. Название Movement скорее всего никак не отражает что конкретно оно будет делать
2. Куча веселья в едиторе если они монобехи
3. Еще больше веселья в иде, надо постоянно чекать тот ли у тебя неймспейс подключен(особенно актуально если у тебя нормальная архитектура и оба мувмента один и тот де интерфейс реализуют), а если нужны оба то еще и юзингом переименовывать придется, и спрашивается а зачем ты их вообще одинаково назвал.

Короче ты в результате либо экран кулаком разобьёшь, либо переделаешь.

> но вопрос был чисто про нейминг


Ну так нейминг сразу 2 проблемы затрагивает - понятность того что делает класс и конфликты имён.

>system.windows.markup.xamlparseexception - не нужен?


Нужен. Во всяких бибилиотеках обязательно должен быть хотя ды корневой неймспецс. А десятки неймспейсов тебе в проекте скорее всего не нужны.
using Infrastructure.Game.Entitites.Player;
using Infrastructure.Game.Entites.Enemy
и так нахуй целая простыня а в каждом по паре классов. Ебало представил своё от этого? А профиты хоть малейшие?

И абсолютно другое дело, когда проект большой или над ним работает много людей.

>>8073

> сколько человек работает, шиз.


> Или по твоему Вася может писать только в Render.Drawing, а Коля - в Input.Gamepad?


Ну конечно же нет бля. Вася говорит Коле - еба я сделал сервисы для прогресса игрока, давай ка в ui мне отобрази его. У нас там уровень, статы, деньги, дохуя всего ну разберешься короч. И коля такой пишет Game.Services.PlayerData. и ему иде сразу показывает че там есть и ему не надо ни по каким там папкам копаться и разбираться что ему нужно. Вот сразу понятный и конкретный профит который даже в небольшой команде будет.
А если проект очень большой, то там будет еще и разделение кто над какими модулями работает поэтому могут быть конфликты имен, т.е. потребность в неймспейсах еще больше.

А сидеть в соло хихикать и отделять игрока от врага разными неймспейсами - ну это же безумие.
493 858093
>>8068
Пчел, ты чо рофлишь? Ты спрашиваешь какое решение подойдет к рандомному проекту(ответ - рандомное, можешь хоть монетку подбросить, правда не жди с этого пользы) или всё таки конкретно твоему? Абсолютно любое решение делается исходя из проекта и его особенностей с какой-то конкретной целью - т.е приняв это решение ты должен получить какой-то профит с этого.

Если ты собираешься делать неймспейс Player и Enemy и в обоих делать Movement - то я тебе сразу говорю это надо совсем долбоебом надо быть чтобы не видеть какие из этого вытекут проблемы, поэтому я тебя сразу предостерегаю - не надо так делать, и лучше вообще свои неймспейсы не определяй с такими вопросами раз ты не понимаешь зачем они нужны(если бы у тебя был проект, где они нужны - ты бы сразу это понял скорее всего и даже ни у кого ничего спрашивать бы не стал)

Вот пара подсказок:
1. Название Movement скорее всего никак не отражает что конкретно оно будет делать
2. Куча веселья в едиторе если они монобехи
3. Еще больше веселья в иде, надо постоянно чекать тот ли у тебя неймспейс подключен(особенно актуально если у тебя нормальная архитектура и оба мувмента один и тот де интерфейс реализуют), а если нужны оба то еще и юзингом переименовывать придется, и спрашивается а зачем ты их вообще одинаково назвал.

Короче ты в результате либо экран кулаком разобьёшь, либо переделаешь.

> но вопрос был чисто про нейминг


Ну так нейминг сразу 2 проблемы затрагивает - понятность того что делает класс и конфликты имён.

>system.windows.markup.xamlparseexception - не нужен?


Нужен. Во всяких бибилиотеках обязательно должен быть хотя ды корневой неймспецс. А десятки неймспейсов тебе в проекте скорее всего не нужны.
using Infrastructure.Game.Entitites.Player;
using Infrastructure.Game.Entites.Enemy
и так нахуй целая простыня а в каждом по паре классов. Ебало представил своё от этого? А профиты хоть малейшие?

И абсолютно другое дело, когда проект большой или над ним работает много людей.

>>8073

> сколько человек работает, шиз.


> Или по твоему Вася может писать только в Render.Drawing, а Коля - в Input.Gamepad?


Ну конечно же нет бля. Вася говорит Коле - еба я сделал сервисы для прогресса игрока, давай ка в ui мне отобрази его. У нас там уровень, статы, деньги, дохуя всего ну разберешься короч. И коля такой пишет Game.Services.PlayerData. и ему иде сразу показывает че там есть и ему не надо ни по каким там папкам копаться и разбираться что ему нужно. Вот сразу понятный и конкретный профит который даже в небольшой команде будет.
А если проект очень большой, то там будет еще и разделение кто над какими модулями работает поэтому могут быть конфликты имен, т.е. потребность в неймспейсах еще больше.

А сидеть в соло хихикать и отделять игрока от врага разными неймспейсами - ну это же безумие.
494 858097
ну мне неймспейсы например хороши тем что когда вижу дохуя юзингов сверху сразу понятно класс много на себя берет
495 858098
в какой-то версии сиси завезли global using, было бы заебись прописать в какой-нибудь Globals.cs всю возможную хуйню и просто забыть об этом
496 858105
как выпилить френель из стандартного шейдера?
497 858141
Не реклама, просто сделал две игры, если хотите, можете поиграть/порадоваться/разъебать/посоветовать чего нибудь

Сами игры: https://rk800-1.itch.io/

Репозитории: https://github.com/RK800-1/Flappy-Clone
https://github.com/RK800-1/Pong
498 858143
Не реклама, просто сделал две игры, если хотите, можете поиграть/порадоваться/разъебать/посоветовать чего нибудь

Сами игры: https://rk800-1.itch.io/

Репозитории: https://github.com/RK800-1/Flappy-Clone
https://github.com/RK800-1/Pong


Отвечайте лучше под этим постом, предыдущий чет не отображается как мой
499 858150
>>8143
молодец, красава, код чистенький, приятный.
для портфолио сделал?
image.png10 Кб, 369x217
500 858151
Я не автор, вопрошаю: мусорит ли new WaitForSecondsRealtime(1f) в циклах? Может стоить в private занести
private wait = new WaitForSecondsRealtime(1f)
501 858153
>>8143
1.вроде бы сейв манагер, но зачем-то текст
2. итт кто-то парсит из текста переменные?
короче всё хуйня
502 858154
>>8151
так профайлер для чего
можешь его закешировать если охота на спичках поэкономить
503 858156
>>8150
Спасибо)

Ну типа. Все равно нахуй никому не нужен.

За советы спасибо анону который выше помогал

>>8153
Бля, тут "по старинке" работал, в понге я эту тему получше (на мой взгляд) сделал. Я во флеппи клоне исправил менеджер панелей, если выше посмотришь там литерали треш был. До этого чет не дошел
504 858350
>>8151
да мусорит
505 858364
В юнити есть аналог анриловских decals?
506 858410
doublepantsu.JPG25 Кб, 639x472
507 858429
Аноны, что делать, Каори внезапно одела двое трусиков!
Я ее об этом не просил. Две отдельные текстуры тела с белыми и черными трусиками. Скрипт просто меняет текстурные карты материала:

public void SetTexture(int _material_id, int _texture_id)
{
for (int i = 0; i < property_names.Length; i++)
{ target.materials[_material_id].SetTexture(property_names, textures[_texture_id]);
}
}

При этом в редакторе все отлично работает, эффект наблюдается только в окне игры.
Версия Юнити древняя: 2018.4 LTS. Шейдер: https://github.com/Santarh/MToon
508 858514
>>8429
Я чет нихуя не понял, это же цикл, он же их тупо переберет, не в этом ли причина?
510 858608
Сап юнитач, что используете для анимации UI?
Сейчас смотрю/трогаю dotween и никак не соображу как сделать отложенный запуск секвенции анимаций. Вызывается метод, добавляющий ui элемент в очередь на анимацию(типо чтобы потом каскадом всё красиво сделать) и после добавления последнего элемента вызывается коллбек, котороый запускает каскад. Насколько я понял, то секвенция запускается сразу после того как она заполнится, что мне не совсем подходит, т.к. между добавлениями элементов могут быть большие временные промежутки. Помогите идиоту :(
511 858653
>>8514
Цикл перебирает просто массив строк property_names, ну то есть параметры шейдера где хранится ссылки на текстуры. Ну, так чтобы не только _MainTex изменить, но и карту для теней.
Материал и текстура только одна в данном случае, так что вряд ли это связано.
512 858668
>>8653
Я в шейдерах не шарю, честно. Просто я это вижу так, что он тупо назначает каждый элемент пока не дойдет до указанного тобой. Даже если по итогу остается только требуемый, я почему-то считаю что сам цикл какой-то странный и можно сделать эффективнее если ты просто вызовешь нужный тебе элемент
513 858753
Сап, костытялчик. Подскажи.

Делаю простенький лифт для 2д платформера. Пустой геймобжект лифта и платформа лифта в дочернем объекте с коллайдером(так надо)

Вопрос: можно ли как то подсосать методом OnTriggerEnter2D из родительского объекта контактирует ли игрок с дочерним объектом?
Есть конечно вариант повесить скрипт еще и на платформу который бы определял стоит ли на ней игрок и сигналил об этом в скрипт лифта, но хочется все одним скриптом.
514 858817
>>8753
получить ссылку на дочерний коллайдер и прописать в родительском скрипте событие с определением, что произошло ли событие именно с дочерним коллайдером? Но на мой дилетантский взгляд - достаточно костыльно
515 858827
Опа, тут перекат надо делать, а я в кровать уже лег. Ну ладно, завтра встану и перекачу. Надо только над картинкой подумать, чтобы не хуже чем в этом треде была.
516 858828
Анончики, дайте совет, пожалуйста. Стоит ли покупать курс у Сак^тина, чтобы заиметь опыта в разработке, и к нему на стажировку попасть?
517 858832
>>8828
Врядле, у инфоциган будешь самым хуевым, а для того чтобы стать как Ссакутин надо ещё курсов навалить за шекели, ну ты понял.
Лучше ментора поищи, сделай портфолио и тыкай вакансии.
518 858841
>>8827
Оставишь упоминание UnityScript и я тебе кадык сука вырву!
520 858861
Тред утонул или удален.
Это копия, сохраненная 5 сентября в 23:04.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /gd/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски