На 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х полноценных игр на движке, обязательно нужно скачать код проектов, так как в книге он местами уже устарел.)
>>846842 (OP) Знаешь хотел написать что этот движок проклят и никогда не сделают нормальную шапку, но посмотрев вебм мне стало тепло и приятно, я прощаю тебя.
>>846849 Старое, не актуально, дермище. Больше толку если убрать всё, оставив ссылку на офф сайты и надпись: На этом движке вы можете сделать игру мечты.
>>846861 Да никак не фильтрую. Я либо запоминаю структуру классов с которыми работаю, либо открываю код класса и смотрю, что там есть, а потом использую. А этот помощник помогает лишь быстрее название конкретного метода набрать.
Самый смех в том, что этот компонентный долбоеб еще буквально месяца 3 назад кукарекал, что я необучаемый долбоеб. Теперь выясняется, что этот долбоеб сам даже в солид не может лол и солид для него это буквально понятные названия переменных и разбивка на классы. пахпха ох лол
Мне надо чтобы объект сохранял своё положение относительно другого объекта, включая угол. Это легко делается если сделать его детским объектом. У трансформа даже есть метод SetParent, это норм практика?
>>847003 можешь использовать либо вот это: https://docs.unity3d.com/Manual/class-ParentConstraint.html либо накостылять свое он как раз емнип был сделан чтобы избежать самой распространенной проблемы с setparent(внезапный вырвиглаз при изменении размера родительского объекта)
>>847003 Палю самое простое решение. Делаешь дубликат объекта и ставишь в родители кому надо. И когда приходит время, просто берешь трансформ дубликата на оригинал. Т.е у тебя одна пустышка находящиеся детём у нужного обекта, и 1 нужный гейм обджект сам по себе.
Анонасы. Допустим есть объект на сцене с неким набором данных, ну допустим с классическим набором статов из рпг. С одной стороны очень удобно сделать скриптаблобжект и его править, или накинуть на него монобех со статами, упаковать в префаб и править в префабе, например. Вроде все удобно наглядно заебись. А ну ка надо декоратора накинуть? че как быть? Сриптабл отпадает сразу. Монобех - аддкомпонент(тайпофДекоратор) этож пиздец кек. Есть какие-то вменяемые техники? Или дату лучше всетаки паковать в чистый сишарп и плодить кучу скриптов под каждого персонажа или свитч?
>>847044 У меня рпг игра тоже. Данные храню так. На каждом объекте висят наборы компонентов и скриптов. Когда идет сэйв просто эти данные сливаю в одну базу и сэйвлю джони. Когда загрузка инстансю и загружаю, изи-пизи.
>>847052 https://youtu.be/gpMKt1lqTW0?t=107 я про такое при условии, что дата класс монобех. Получается, надо либо плодить монобехи и добавлять компоненты, либо делать какой-то адаптер, который по сути будет повторять функционал монобеха и наследовать уже от него. карочи залупа иными словами.
>>847071 >хуйняВектор = трансформ.позишен - хуйня.позишен Этот вектор я так понимаю надо высчитать один раз и сохранить, а не высчитывать каждый раз когда родитель двигается?
>>847090 Дай человеку рыбу и он будет сыт один день. Блядь, ну совсем простые вещи же, возьми и сам подумай. Или поэкспериментируй (хотя думать полезнее).
поясните тупому. наколхозил шейжео под простенький текстурный атлас(для тайлов и спрайтов в экс, но не суть) - вот то что на скрине минус красное. логика элементарная ху бордера - верхний левый угол zw - нижний правый. вычитаем первое из второго умножаем на uv и добавляем первое. все работает, я доволен. далее решил сделать крутой пиупиу лазер, наколхозил же опять лайнрендерер на экс(тот же квад, но скейлится и крутится что бы тянутся между двумя точками) ессно хочется что бы не просто тянулось а еще тайлилось (и анимировалось). добавил красный кусок(ну еще зависимость от времени, но пока не суть потому убрал) для тайлинга. логика опять же элементарная - умножаем u на количество "тайлов" и берем дробную часть. v не трогаем. и опять работает. но вылезли непонятные артефакты на границе "тайлов" текстура в этом месте прозрачная, сглаживания от соседей(обычная проблема) взяться неоткуда. что я блядь делаю не так?
>>847048 Это не будет работать как родитель. При смене угла родителя хуйня будет поворачиваться вокруг своей оси, а ребёнок будет крутиться вокруг оси родителя.
>>847106 >>847105 отключение мипмапов спасло отца русской демократии! заодно узнал что есть нода "тайл и офсет" которая делает вот это самое без лишней ебли
>>847133 >принцип работы вейта интересует Там зеленым по черному принцип работы написан. Ждать конца кадра (когда все скрипты отработали). По идее у тебя там зависнуть всё нахуй должно в вечном цикле.
>>847134 >По идее у тебя там зависнуть всё нахуй должно в вечном цикле. Если он не вызывает новую корутину каждый кадр, то ничего не зависнет, от одного цикла юнити не загнётся.
>>847128 если тебе не важно в каком порядке yield будет происходить то можешь упростить endofframe на null, тогда он вызовется каждый фрейм как и endofframe, но в начале апдейта у корутин т.е. сразу после апдейта монобехов
Я совсем новичок. Прохожу официальные туториалы по юнити. Сделал сцену: Коробка и земля - добавил бокс коллайдер 2Д и Rigidbody2D, а к шарам добавил SphereCollider2D и тоже RigidBody2D, а еще в Circle Collider2D добавил физический материал 2D и в нём подкрутил Bounciness.
Как шары проходят сквозь стену, я не понимаю? Коллайдер 2Д должен же их останавливать.
Аноны, делаю класс инкапсулирующий аниматор, чтобы внешний код мог запрашивать AnimatorHandler.DeathAnimation(), например. Но у разных сущностей разный набор анимаций. Делать в хендлере методы для всех возможных анимаций для всех сущностей - хуйня. Делать в хендлере метод, который принимает стринг параметр с названием транзишена анимации тоже хуйня. Делать для каждого вида сущностей отдельный контроллер аниматора чтоли?
Всё-таки переделать с нуля заебатая тема. Использовал новую инпут систему, заюезал синемашину, подчистил код, заодно исправив баги старого, код стал читабельнее и проще.
В общем решил отказаться от идеи закладывания расширительного потенциала в игру заранее, тяжело чет, Оставил в башнях только автоатаку и постараюсь под это дело написать боле менее нормальный код.
Ящитаю, что пока ты не выпустил минимум две игры, то про архитектуру, ООП, паттерны, чистоту кода думать не надо. Дело в том что пока ты на практике не увидит важность и смысл вышеперечисленого, у него будет получаться полная хуйня. А увидеть это можно только когда у тебя есть опыт
>>847337 >Я считаю что пока ты не заблудился в тайге и тебя не выебал в жопу медведь, то про карты, навигацию, охоту, собирательство и выживание в тайге думать не надо
>>847337 Двачую, люди тупо забывают что дрочь без игры без смысла. Просто сделай хотябы одну небольшую игру, не для стима, а для гд например, но она должна быть законченной. И ты прямо увидишь в конце какие траблы есть, и уже потом сразу станет видно что надо учить и делать.
>>847343 Ты не можешь их видеть кроме самых очевидных которые просто не компилятся. Чтобы увидеть картину в целом нужно сделать законченный продукт и на основание разработки вынести нужные выводы.
>>847346 вопрос не в механиках, а в коде. Долбоебы утверждают, что чтобы понять важность хорошего кода, нужно делать игры, в которых хороший код не требуется. Из чего становится сразу понятно, почему они долбоебы.
>>847348 > Из чего становится сразу понятно, почему они долбоебы Без опыта ты не поймёшь проблемы, которые призван решать "хороший" код. Только закончив 1-2 проекта ты уже можешь прочувствовать на себе проблемы топорного подхода к написанию архитектуры. Челы, у которых нет опыта, насмотрятся и начинаются всякой хероборы, и начинают бездумно плодить абстракции, в РАЗЫ усложняя простой код.
>>847337 >Ящитаю, что пока ты не выпустил минимум две игры, то про архитектуру, ООП, паттерны, чистоту кода думать не надо. Какая архитектура, какое ооп? Юнити дали тебе DOTS и кучу ECS фреймворков, но всё равно про какие-то OOП думают.
>>847353 Значит, чтобы понять проблемы, нужно сделать законченную игру? так? Т.е. в процессе создания игры, проблемы этой нету, так? тогда как она появится в законченной игре, если ее нет в незаконченной?
>Челы, у которых нет опыта, насмотрятся и начинаются всякой хероборы, и начинают бездумно плодить абстракции, в РАЗЫ усложняя простой код.
Никак вообще не относится к обсуждаемому вопросу и решается нихуя не двумя играми.
>>847354 >Юнити дали тебе DOTS и кучу ECS фреймворков, но всё равно про какие-то OOП думают. Которые чел у которого нет завершенных проектов не осилит ибо просто не поймет . Либо будет клепать по инструкции, но будет жалкое зрелище ибо понимания и видения нет
>>847375 Понимание и не нужно, ты с юнити работаешь. Нужно всего лишь правила использования ецс фреймворка знать, ентт там или ещё какой, не важно, они все хороши. Просто делаешь сущности, просто пердолишь системы, просто запускаешь готовую топовую игру с приемлемым кол-вом говнокода. Всё. Можно ещё акторы накинуть или ещё чего реактивное, пох впринципе.
Архитектуры и паттерны знать нужно чтобы свой игровой движок делать. А ООП нужно знать чтобы не писать в ООП стиле.
>>847384 Зачем ты мне напиздел сейчас? Ты считаешь что пиздеть выгодно? Или как? Аффтор прямым текстом пишет что у него не ООП и не чистый ECS и не компонентность как в юньке. У него там модульный слабосвязанный дизайн, епты.
>>847385 > Архитектуры и паттерны знать нужно чтобы свой игровой движок делать Идеальный пример использования паттернов в игре - Майнкрафт. Например, там интенсивно использовался паттерн Flyweight.
>>847388 Там написано прямым текстом что он сделал новую парадигму, в попытках связать ооп с екс. Т.е. он не считает это нужным, а считает что нужно сделать что-то кроме ООП, чтобы начать нормально жить.
>>847389 Не знаю что это за кал, это какие-то классы и наследования с сотней иерархий? Не читал.
>>847396 >я к тому что в юнити дохуя ассетов сделано чисто в ооп стиле А ещё больше ассетов сделано с компонентным подходом. Вопщем-то вся юнити это компонентный подход. Что бы это ни значило. >сам все не накостыляешь да и зачем если уже есть Тебе ничего не нужно костылять. Типичная система в ецс - 10-20 строчек с бойлерпринтом. Типичный обсервер/актор - 50-100 строчек со всей логикой. Чё ты тут костылять вообще собрался, тут не нужны костыли впринципе. > и что-то придется женить с ecs Женить придётся анимацию с гпу, я слышал с этим всё плохо. Гпу анимации. Звучит страшна, не спорю. Ну хуле, так бывает. Больше костылять вообще ничего не нужно, работает искоропки.
>>847398 Пиздят. Работает охуенно. Но там не только УСЫ, ещё и другие паттерны нужны чтобы всякие сервисы делать И но на ооп всё равно никакие интерфейсы не пишут, MVVM, компонетная хуйня, реактивные push обсерверы, итераторы, вот эта всякая хуйня, топчик нах
>>847407 короче нихуя не понял но интересно где изучать этот ваш ECS? игродельцам зарабатывальщикам прошу спокнуться, у меня профессия хорошо оплачиваемая есть я для души как хобби
ECS, паттерны, ООП... Нахуя вы учите вещи, которые должны знать только серьезные дяди, которые работают над АА,ААА проектами, и которые получают минимум 100 000 зелёных в год? Вы там не лопаетесь от напряжения?
Инди вроде нас должны знать только один паттерн. Он называется - паттерн одного конкретного приложения над которым ты работаешь. Это значит, что перед тем как писать код, ты должен видеть чёткую картину, как все должно работать конкретно в твоёй игре. И только тогда приступать.
Вся эта ООП папаша в основном делается с упором на то, что в будущем можно было бы безболезненно править и масштабировать. Но это подразумевает тот факт, что ты тупой и не можешь увидеть целую картину архитектуры целиком, и потому подготавливаешь к себя неожиданным поворотам. И все эти ради таких приятных моментов: вау, я хотел сделать так, но в итоге надо было так (я тупой и не смог предвидеть), но благодаря моему ООП 99лвл коду я смог безболезненно сделать правки, я такой молодец, месяцы изучения и написания этого кода наконец оправдались, сосите, безмозглые макаки!
Зы: у тебя нет игр не потому, что ты выбрал не тот стиль написания кода, а потому что у тебя нет интересных идей для игорей, потому что это требует более серьезных творческих способностей.
>>847463 хуйню пронес полную. это в ААА-геймдеве есть отдельные люди на каждый чих и все действительно продумывается заранее. в инди ты придумываешь в процессе работы над игрой и в этом блядь весь кайф.
и у тебя ДОЛЖЕН быть код на котором легко и быстро прототипировать и отбрасывать идеи. это единственное сраное преимущество сраного инди по сравнению со сраными студиями - перепробовать на коленке 100500 вариантов и оставить то что понравилось. если ты сразу не закладываешь возможность прикручивать и откручивать к коду что угодно - ты просто не будет ловить каеф, ебнешся и полезешь на двач ныть как все заебало.
>>847463 Много игр сделал? Ты можешь и сплошняком в одном классе писать код, не проблема, но зачем, когда можно упростить себе жизнь? Лично я очередным яндере дев становиться не хочу
>>847463 >Это значит, что перед тем как писать код, ты должен видеть чёткую картину, как все должно работать конкретно в твоёй игре. И только тогда приступать. Ну вот я видел четкую картинку, но как реализовать не знал. Первое что я сделал это нахуярил монструозную иф-конструкцию, в которой запутался и наловил багов. Некоторое время гуглинга спустя я узнал про паттерн состояний и переделал иф-конструкцию в свитч с Ienumurator, и конструкция стала читабельнее. Но по мере роста числа состояний я понял что пришло время реализовать всё через классы.
В будущем я сразу буду юзать паттерн и писать как надо, чтобы не тратить кучу времени на переписывание.
>>847343 > Охуеть, а если я не умственно отсталый и уже сейчас вижу траблы? >>847346 > Ну вот я вижу что механика, которую я реализовал - калыч, мне даже противно на неё смотреть, и чё мне на похуй идти дальше и доделывать игру? Емли ты звметил на этом этапе - вообще здорово
>>847505 А как это можно не заметить? пишешь пишешь пишешь, какую-от хуйню надо поменять, из-за этого меняешь код в 3-4 классах. Незаметил, пошел дальше писать?
>>847532 Не слушай шизика/шизиков про екс и прочие ооп, они лишь пиздят, а игры не делают. Для того чтобы сделать игру берешь юньку и делаешь, без всякой сторонней хуиты.
>>847515 Можно писать не только хуйню, но и что-то умное, что в итоге окажется не самым лучшим решением и тогда для тебя будет стоять вопрос о рефакторинге.
>>847588 Ну очевидно чем больше опыта тем лучше. Если ты впервые игру пишешь, то скорее всего не все проблемы сможешь осознать. Если ты конечно не переписывал ее уже 10 раз.
>>847824 В зависимости от одной настройки иногда выпадает НаН. Когда она включена, надо делать стоп нан. В ином случае стоп нан мне не нужен. И вообще тебе какая разница?
>>847826 >И вообще тебе какая разница? Нихуя себе. Ты тут такой залетаешь и требуешь от людей тратить их время на помощь тебе. На дополнительные вопросы отвечаешь "А ТИБЯ ЕБЕТ???" Вруби ебаную галку и забудь про нее, игру делай а не занимайся хуйней, дебил ты малолетний. А теперь пошел нахуй.
чекаю исходники одной игры и такое ощущение, что разрабы делали всё, чтобы поменьше связываться с редактором, есть скрипт GameInitialize, который на старте вызывает во всех остальных важных скриптах метод инициализации, а все референсы подрубаются через GameObject.Find, очень много статичных методов и переменных, кто-то делал подобное? плюсы и минусы такого подхода?
>>847907 >GameObject.Find Избегай этого рака всеми силами. ВСЕГДА. Тут проблема даже не в том что это лишняя нагрузка на цп и перебирания всех объектов в сцене, а то что это занимает кучу времени и не поддаётся чеку прогресса. Референсы либо подключаешь напрямую, либо через передачу ссылки на них, чтобы всё было под контролем.
>очень много статичных методов и переменных Зависит от подхода и размера игры, не сказал бы что против или за. Скорее если хочешь и можешь, то делаешь так. Тут важно еще понимать что ты делаешь.
>>847585 Работа сыпется как из рога изобилия нынче. Теперь какой-то кабанидзе придлагает поработать на энтузиазме. А вы говорите работы нет для юнити девелоперов)))))) Гибкий график еще говорит!!!!!!!! нихуясебе.
На галере сказали в тз получить и сохранить "onInstallConversionData" в Appsflyer SDK. SDK поставил, но не понимаю через что получить onInstallConversionData, в API аппфлаера такой метрики нет https://github.com/AppsFlyerSDK/appsflyer-unity-plugin/blob/master/docs/API.md#initsdk , в рекомендованных внутренних событиях https://support.appsflyer.com/hc/ru/articles/4410481112081 тоже. Не понимаю, нужно самому создавать внутреннее событие и вызывать его когда игра запущена впервые или под "onInstallConversionData" имеют ввиду обычную метрику конверсии и достаточно поставить одну галку в настройках?
Да, я напиздел в резюме что умею в сдк, а сам ни тютю, сами понимаете, времена в гейдеве такие, джунов никуда не берут, шишки набивать негде, а в гугле/на ютубе на тему разных SDK нихуя нет, максимум установка наглядно показывается, а остальное ток в мануалах читать.
>>848110 На этом моменте случается дроп разработки в 100% случаях. Единственный вариант не потерять игру это забить на всю хурму и продолжать разработку до релиза.
Я дошёл до почти готового прототипа и я каким-то образом магически обошёл кучу проблем, с которыми столкнулся сейчас когда решил воссоздать свою йоба-систему, чтобы понимать как она работает. Я прихуел с того числа проблем, с которыми я НЕ столкнулся, потому что не пытался мыслить структурно, а двигался хаотично и находил решения случайно.
Возвращаюсь в свой говнокод чтобы понять как я обошёл эти проблемы и охуеваю от невероятной удачи, которая сократила мне время разработки на хуй знает сколько месяцев, ибо хуй я бы так быстро пришёл к этим решениям еслиб я пытался осознанно строить архитектуру.
>>848139 Уже. Я потому и решил его с нуля сделать, ибо понял что моё поверхностное понимание системы, которую я сам и сделал, не даёт мне двигаться дальше. Сейчас просто охуеваю как далеко можно на голом энтузиазме без системы уйти.
>>848208 Разоришься на покупке гугл акка + не возможность перевода в россию, т.к мин коммисия за один перевод 300$. Как опыт не плохо, но без рекламы и продвижения у тебя будет <10 установок.
>>848208 > Попутно вкатываюсь в пиксельарт и музыку Тем самым усложнись себе жизнь в 100 раз. Не становись человеком оркестром. Выбери что-то одно. Или ты пишешь код, или ты рисуешь. А музыку можешь найти бесплатную, либо можешь заказать. Если создашь интересный прототип, то без проблем найдёшь хорошего артиста в команду. В целом мобилки - это клондайк.
Что думаете насчёт второго способа записи логгов? Увидел на одном стриме этот финт. Он позволяет сократить запись логов до 1 строки. При этом код не будет создавать мусор из-за интерполяции строк.
>>848240 Правда второй вариант неправильный стектрейс выдаёт. И если из редактора кликнуть на ошибку, то откроется метод Write, откуда был вызван лог юнити. Хотя в релизном билде на это уже пофигу.
> Мы добавили новый атрибут HideInCallstackAttribute, который можно использовать для исключения метода из трассировки стека консоли Бля, спасибо конечно, но почему нельзя было сделать так, чтобы клик по ошибке тоже правильно отрабатывал.
>Проверка на нул кстати тоже. это лог должен делать, а невызывающий класс.
>Так вот и проблема. Тогда у тебя будет происходить интерполяция строк и ты засрёшь память.
ясно понятно.. Я не говорю не делать проверку на нул, я говорю, что она нарушает инкапсуляцию и делать ее должен класс лог и если он этого не делает, то надо делать обертку, которая будет это делать. смекаешь?
>>848284 Есть ещё вариант использовать атрибут Conditional, который будет вырезать метод из кода, если не будет объявлен указанный define. Минус в том, что нельзя менять уровень логирования в рантайме и нужно возиться с дефайнами перед каждым созданием билда.
Макконнелл - если вы передаете в качестве параметра тип, из которого потом придется получать данные через его интерфейс - хуйвая тема, передавайте распакованные параметры.
Мартин - если вы передаете больше двух аргументов пробуйте упаковать хоть что-то в класс.
>>848338 > Макконнелл - если вы передаете в качестве параметра тип, из которого потом придется получать данные через его интерфейс - хуйвая тема, передавайте распакованные параметры. В этом есть смысл, потому что таким образом метод будет более общим, так как отпадёт зависимость от конкретного класса/интерфейса. Чем меньше зависимостей и чем меньше код знает, тем лучше.
> Мартин - если вы передаете больше двух аргументов пробуйте упаковать хоть что-то в класс. Ну, хуй знает. Такой себе совет.
Начальной точкой навигации является спавнер врагов, конечной - база игрока. По навигационным точкам я вычисляю длину всего пути. Когда враг продвигает, это число уменьшается на длину вектора движения. Башня опрашивает врагов в радиусе действия на предмет - сколько тебе до базы игрока и атакует того, кто ближе всех. В общем начитался мартинов и маккконнелов, думаю, что класс надо разбить на 2 части и вынести просчет длины пути в отдельный. Шо думаете?
Пизда каких героических трудов мне стоило этот попыт из гексагонов собрать. Я с ним несколько дней ебса, пересмотрел гору гайдов, как из блендера импортирововать в юнити. Потом как ПРАВИЛЬНО из блендера импортировать в юнити. Матан гексов. Нихуя не получалось. Наконец дошел до того, что придумал на гексе отметить кубом один угол, чтобы проследить, правильно ли он направлен по оси Z, оказалось неправильно, он был направлен по X. Я бля раскрасил их по строчкам, оказалось они по столбцам строились, а все потому что у меня не так камера была повернута.
>>848515 На будущее советую избегать спавна обьектов а использовать один меш. У тебя будет точно такая же сетка с текстурами, но как один объект и один материал. Это +99999% к производительности нежели чем спавн десяток или сотен отдельным объектов.
>>848533 Интересно, попробую. Спасибо. Я как раз начинал уже думать, а что начнется, когда я создам карту на пару тысяч гексов, причем они будут высокополигональными - с лесом, водой и тд.
Моча что ли мои посты охуевания с юнити удалила? Я короче наебался с багом, и понял что его вызывает синемашина ебаная. Я до этого её хвалил, забираю свои слова обратно. Проблема ушла когда я взял тупо камеру и написал скрипт следования за объектом.
В общем я второй раз понял, что лучше заранее не ебаться с переусложнением кода наперед, а делать под текущую задачу. Просто стараться делать так, чтобы потенциально не сильно ебано было переделывать. Переделал класс енеми, отказался от лишних заебов с абстракциями, просто наметил. Во всей конструкции из монобехов только центральный класс, который через корутину крутит задания для остальных подсистем (пока одной). Глубина кода +1 слой от центра. Вроде не так уж и плохо.
>>848817 > лучше заранее не ебаться с переусложнением кода наперед, а делать под текущую задачу Правильно! Правда, меня всё равно иногда кидает в крайности и я могу несколько часов думать над названиями для методов и классов.
Сап анон. Я не понимаю, как работает вхилл коллайдер? У меня машинка не хочет никак трогаться с места, просто вперед наклоняется и всё. Помогает только сильно задрать силу воздействия, но это не то, тут какая-то проблема с взаимодействием с дорогой. Я всячески дрочил настройки forward friction, но это вообще ничего не изменило. Машинка просто вперед наклоняется и колеса совсем чуть-чуть крутятся.
>>848821 Я вот думаю, стоит ли для нанесения урона сделать отдельный метод в классе хелс, который сам будет проставлять минус к цифре урона? Слишком уж ебано выглядит, ручное проставление минуса каждый раз, когда передаю в метод ChangeHealth урон в качестве аргумента. Мне кажется достаточно разумно.
>>848823 Я уже не помню, но может быть, я даже хуй знает так оно или нет, что там делали пустой объект, который центром приложения сил выступал, чтобы телега не накренялась носом вперед.
>>847098 Больше не поддерживается разработчиком. Да и сами авторы "фреймворка" в своей последней игре наебались с этим говном, можно почитать их дискорд для косвенных пруфов. Из-за проёба в архитектуре уже год пилят обнову с исправлениями (ну либо просто хуй пинают), значит есть подводные. Короче, не рекомендую.
Говорят MonoBehaviour нагружает систему, поэтому надо избегать ситуации, когда в сцене несколько тысяч объектов с MonoBehaviour. Но если в этом моно используется только метод Start() - это ведь не будет нагружать систему? Если я буквально сотру метод Update, то получается, монобехи выполнятся только один раз для старта, но в процессе игры нагрузки не будет?
Я это краем уха слышал, но хз, как это работает на нижних уровнях.
Собственно, что я хочу сделать. В самом начале игры создадутся несколько тысяч кубиков, но они должны быть с рандомным цветом, поэтому я сделал префаб куба скриптом: Start () { GetComponent<Renderer>.material.SetColor...... }
>>848838 > стоит ли для нанесения урона сделать отдельный метод в классе хелс, который сам будет проставлять минус к цифре урона Я так всегда делаю. И в самом методе проверка, что число положительное.
>>846842 (OP) Чуваки, кто готов запилить небольшой прототип RTS на unity за $$$? Нужен чисто проект+код, графен можно спиздить. Суть такова: В ютубе есть тутор по RTS, гуглится по Control Units and Give Orders! (Unity RTS Tutorial) от codemonkey. Можно сделать по нему + некоторые доработки: 1) Переделать в изометрию, вид как в древнем стронгхолде 2) 8-позиционный персонаж с анимацией, вместо милитари мусора из видоса 3) Переделать управление: а) Подсвечивать выбранных сразу при выделении (в туторе выделяются только после того как отпустили кнопку мыши) б) Выделять левой кнопкой (уже сделано), давать команду на перемещение левой (переделать), сбрасывать правой кнопкой (переделать). + должно все запускаться в бесплатной юньке без про.
Кто запилит? Работы реально на 1-2 дня. Бабло через биржу типо воркзиллы или любой другой популярной, или сразу на карту в ру банк.
>>848961 Мне, как человеку, который юнити 2 раза открывал, гемор. Нарезка спрайшитов, настройка анимации, ебля с камерой. Уйдет минимум 2-3 недели на просмотр ютуба после работы. Проще 2-3к закинуть шарящему челу.
>>848934 >Работы реально на 1-2 дня. Ахаха орнул как свинья. У тебя уйдет минимум неделя если есть готовые механики, чтоб их совместить оттестить и все работало без багов. С нуля же это пару недель работы.
Это при условии не фулл тайма, но и не проёба.
>2-3к Челидзе, сразу видно залётного который ничего сложнее туторов не делал.
За такие бабки и время, ты максимум получишь обрубки которые будут багаться и глючить сделай шаг в лево, шаг в право, и самое веселое бонусом полную не расширяемость и не модификацию.
>>849023 >написать игру и найти для нее визуал Ты дурак? Прототип по тутору =/= игра. На графон похуй. О готовой игре речи не идет. >3500 рублей минимум Погнали хе-хе
>У тебя уйдет минимум неделя если есть готовые механики Какие механики, глянь видос на ютубе, сделать по нему + пару доработок. >Челидзе, сразу видно залётного который ничего сложнее туторов не делал. Так я и туторы не делал. Зато готов заплатит шарящему, который сделает по тутору.
>За такие бабки и время, ты максимум получишь обрубки которые будут багаться и глючить В видосе весь код есть. Даже готовый проект есть, но он с кучей мусора.
>>849027 Не понял, если ты не планируешь использовать это для игра, а лишь надо сделать по тутору, то в чем смысл? Чтобы что? Иметь пару мех которые не сможешь куда либо вставить и править в случаи модификации? Если как ты пишешь тупо сделать по тутору + вычистить то да дело другое, но это бред.
>>849028 >а лишь надо сделать по тутору, то в чем смысл? Тутор + мелкие доработки. Смысл с том что я сэкономлю 3 недели своей жизни. Чувак, можно самому убраться в квартире, а можно вызвать клининг. Можно приготовить еду, а можно заказать доставку. Надеюсь аналогию ты понял.
>>849026 >>849023 Я тоже сначала охуел, а потом глянул тутор который он скинул, на самом деле там нереальная примитивщина и все просто и внатуре можно даже за пол дня сделать, да он бы и сам бля сделал без знаний юнити, но
1. Не дан визуал 2. Это будет чисто прототип механики 3. Без полишинга, все делается в одну итерацию(т.е. без "а вот тут еще вот так сделать, а нет нужно еще вот это подправить")
Ну и я сразу скажу, что игру он из этого не соберет, потому что повторюсь, там примитивщина бесполезная, а основная трудоемкость проекта это поиск визуала и подгон его в нужный формат
Тем кто еще только юнити изучает можно заняться чисто в образовательных целях
>>849030 Забей и сделай сам. Если ты планируешь это как-то развивать дальше, а не просто гонять в прототипе кругами, то тебе в любом случае придется юнити изучать и в итоге абсолютно всё из того тутора переделывать дальше.
Я тебе точно говорю, если ты думаешь, что на той основе которую тебе сделают ты сможешь что-то собрать - не выйдет, там всё переделать придется.
>>849030 >+ мелкие доработки. Ты же в курсе что возможно твои доработки и тестинг может обойтись затратнее по временем и средствам эдак раз в 10х? Особенно когда ты это дело запустишь на разных платформах или разрешениях, или еще с чем.
>>849034 > Лень это хуйней заниматься если честно. Но, если никто за неделю не напишет, видимо придется разбираться самому. Так а зачем оно тебе? Как ты это дальше планируешь использоват
Если ты еще не понял, все охуели потому что думали что тебе нужен полноценный прототип. Просто потому что это странно, что кому-то может понадобиться перепечатывание пары скриптов без какого-либо задела под будущую архитектуру игры.
>>848969 у того же кодемонкей или турбо мейкинг геймс(хотя у них в плане ворлдспейс интерфейса на примере канвас хпбаров с привязкой к юнитам которые "чистые" экс)
вкратцее.. используя менеджед компоненты. если от IComponentData унаследовать класс то его можно использовать в системах(только SystemBase, ISystem не катит) как обычный компонент но отпадает все "профиты" производительности - нельзя бурст, джобы и т.д. но и отпадают ограничения тоже. хранишь в менеджед компонент ссылку на нужный объект(в данном случае кусок интерфейса), и "простые" компоненты. одна система собирает нужные данные и кладет в анменеджед компоненты в "экс" вторая уже раскладывает по менеджед компонентам(в тривиальных случаях можно обойтись только второй) так как она "медленная" можно запихнуть в фиксед апдейт а то и в вариадик с апдейтом раз 10-20 в секунду.
>>849030 Не знаю как у тебя, а у меня лучше получиться убраться в квартире чем постороннему (щас бы рисковать что клинер понаех украдет или испортит что то), с готовкой тоже не все так однозначно, доставку я вообще никогда не заказывал, но пельмени и котлеты домашние точно лучше магазинных.
>>849038 Тут скорее не во вкусе дело, а в том, что долбоеб это в абсолют все возводит. Дурачок придумал себе максиму какую-то, еще 100% ее друзьям втирает типа ебать я концептуальный весь такой, только услуги заказываю, мае время дарахое, я в мацкву зарабатывать приехал ебать.
мимо хуй он где пирог из рыжиков с белыми купит, который я летом делал.
>>849036 >Так а зачем оно тебе? Как ты это дальше планируешь использоват Мне надо понять как это выглядит. Если все как я думаю, то напишу полноценное ТЗ.
>>849038 >щас бы рисковать что клинер понаех украдет или испортит что то Да не трясись ты. >доставку я вообще никогда не заказывал Это как у девственника спрашивать мнение о сексе. >пельмени и котлеты домашние точно лучше магазинных Речь про доставки из рестиков, а не хрючево из магаза. А если захочется домашних котлеток, всегда можно попросить жену.
>>849044 Дело не во времени и деньгах, а в лени. И какие друзья, мы на сосаче сидим.
>>849048 >Соглы, при этом тратит время на дваче. Это святое.
>>849055 >Речь про доставки из рестиков Доставка из рестиков просто не имеет смысла, нафига тебе остывшая и растрясшаяся за 15 минут езды по колдобинам еда? Ее надо есть на месте, когда тебе официант свежую подает прямо из под ножа шеф повара.
>>849089 Не жиза. Называю функции и переменные просто рандомно по типу dfjkgh2362, a1, a2, b1, j8484, F_ff и т.д, идешка сама подскажет если где-то проеб. Зато если спиздят проект не смогут ничего сделать, вин.
>>848756 Я там йоба-систему замутил, когда есть игрок, за ним следует камера типа вид из глаз, из камеры выстреливает луч и на расстоянии N находится пустой объект. Процедурная анимация должна заставлять голову всегда смотреть на объект, а мы помним что камера двигается строго за башкой. Скрипт передвижения поврачивает башку по вертикали, соотвественно угол камеры меняется.
Если делать это через синемашину начинаются вертолёты, если делать через скрипт всё норм.
@ Придумал наконец-то неплохой стиль написания кода, архитектура, все дела @ Сносишь весь проект, пишешь с нуля, зато теперь то точно все красивенько и чистенько, гибко и масштабируемо
>>849148 через полгода разработки по несколько дней разбираешься за что отвечает йоба-метод @ боишься что-то менять @ если меняешь то всё ломается @ дебаггером так и не умеешь пользоваться
Антуанны, опишите ваш оптимальный путь вката в Unity, с какими знаниями оптимально приходить, каких ошибок не совершать.
Как я понял для полноценного вкатунства лучше начать играться с интерфейсом, поизучать и почитать что за что отвечает, параллельно/в первую очередь изучать C#, ну и дальше траить что-либо сделать с помощью кода с примитивами/ассетами. В чём не прав?
>>849158 Ну в целом чем скорее ты откроешь юнити и просто начнешь там что-то тыкать - тем лучше. На ютубе и на unitylearn(там еще и по сложности отсортированы, по крайней мере раньше были) полно гайдов для новичков и я щитаю можешь открывать любой какой тебе просто с виду покажется прикольней.
Не важно насколько там правильно все объясняют и насколько гайд годный - главное чтобы ты освоился с интерфейсом и примерно понял как оно вообще работает.
Но есть одна проблема - желателтно уже уметь хоть немного программировать. Открываешь это https://metanit.com/sharp/tutorial/ и читаешь 2, 3 и 4 главу(про "библиотеку классов" и нугет не надо) и с этим ваще без проблем уже будешь понимать что происходит. Не обязательно это прям всё сразу читать, просто если ковыряешь юнити и чувствуешь что чот непонятное в скриптах делается - тогда продолжай читать эти главы.
>>849335 Юнити развивается. Не зря они кучу сил и денег вложили в DOTS. Он всё ближе к релизу. Там всё новое, все системы, физика, сеть, частицы, рендер. И UI новый считай под него сделан.
>>849339 > воопше никак не связаны А как же работа с уй элементами через код по айдишникам? Это же под дотс, потому что дотс на старую систему уй не рассчитан.
>>849341 это именно веб хуйня. с дотсом тут никакой связи. дотсу надо все также дергать элементы через менеджед компоненты однохуйственно новый гуй или новый новый гуй там. разве что старый гуй (это который OnGUI()) подружить с дотсом воопше ебануться задача выходит. фича именно в флекс интерфейсе и стилях
даже хуже - что бы получить ссылки на элементы по айдишникам(предпологая что они хранятся в дотсе) надо из анменеджед стрингов конвертировать в менеджед, потому уже искать элемент по айди и уже потом с ним что-то делать. (но это самый тупой вариант - "правильно" будет сразу получить ссылку в инициализации и по ней уже работать. но это опять же ничем не отличается от старого гуя)
>>849148 вспомнилась история с открытием исходников, емнип, Celeste - где оказалось, что почти вся игровая логика запихнута в огроменный класс на овер9000 строк
>>849545 Террария была построена на год-классах. И работала при этом хорошо.
Надо как-то уметь останавливать себя и не дрочить код без смысла. Просто сделай так, чтобы это работало. Но договориться с самим собой порой очень тяжело.
>>849545 Две крайности, обе хуевые. Делать один класс на 9к строк это дрочь и гемор. Но в тоже время делать сотню скриптов по 100 строк, дрочь не меньше. Нужно держаться примерно середины.
>>849547 Игрокам похуй насколько выдрочен код. Работает, и хуй с ним. Многие не знают, потому что безыгорные чмохи, но поясняю приоритетность: 1) Скорость разработки Похуй какой код, похуй какая графика, похуй на ошибки. Если у большинства игроков работает - ахуенно. Сюда входит покупка ассетов, вместо дроча велосипеда. 2) Пиар Всем поебать какой у тебя код, если никто не знает про твою игру. Но и пиарить будет нечего, если у тебя нет игры. Хотя в некоторыз сферах игростроя этот пункт идет на первом месте. Сначала создаем хайп, потом быстро разрабатываем. 3) Общение с сообществом Если ты тихий чмоня иди нахуй, геймдев не для тебя. Будешь пилить в стол и сосать бибу с $11 с игры. 4) Архитектура, код, графика, геймплей Одно из самых наименее важных факторов в разработке игр для заработка бабла. Вспомни картриджи от денди с картинками. Где были нарисованны ахуенные бравые ребята из контры, а на деле это был 2д сайд платформер.
Если делаешь игру для себя, то выкини первые 3 пункта. Чистыми 6кк с игр в 2022 году
Посоны, нихуя не понимаю как пилить террейн, допустим есть два холма, их надо соединить мостиком из земли. Это возможно сделать силами юнити? Видел такую фичу в ассете Диг про
>>849568 Прислушивался бы к советам умных людей, зарабатывал бы столько же. Я когда зарабатывал 100к рублей, работая на дядю, сидел в зарплата-тредах, и думал что вокруг одни пиздаболы с зп 300-400к. Но оказалось что все так, пиздеть на анонимной борде не имеет смысла.
>>849569 Зачем нужны 6кк, если тебе оторвет жопу в окопе?
>>849571 >Зачем нужны 6кк, если тебе оторвет жопу в окопе? Зачем нужны 300-400к в месяц, если ты сам себе не принадлежишь? Куда деньги девать-то? Новый айфон каждый месяц покупать? Тугосере откладывать на обучение? Да в нынешние времена деньги могут сгореть в любой момент. Мне лично удобнее сидеть на вахте за 16 тысяч рублей и капчевать с утра до вечера. А кому-то лучше в окопе, да.
>>849588 >сидеть на вахте >А кому-то лучше в окопе, да. Как насчет просто чиллить дома на пассивный доход, или любую не пыльную работку раз в неделю? Или обязательно Почти все время быть на работке?
>>849559 На меня другое проклятие сработало. Кое-как через жопу выпустил игру. Она стала очень популярной. Выпустил несколько апдейтов. Потом понял, что нужно переделать игру и вот уже больше года не могу нормально переделать код, чтобы его можно было расширять.
Вроде и старый не могу больше расширять под новые задачи, и вроде как новый написать не могу. А нужно было изначально нанять опытного кодеров и они бы сделали.
>>849559 Из этого верно можно сказать лишь п.2 Графика точно важна, для того же пиара. п.3 вообще не рекомендовал бы инди разрабам. Ограничиться п.2, то есть анонсами, новостями, вот таким. Остально работает если у тебя флаппи берд. Проблема в том, что сложно выстрелить игре только на одной простой механике, это как выиграть в лотерею. Поэтому игру придется делать сложнее, а значит, системы начнут взаимодействовать друг с другом, а это уже архитектура. Самый худший вариант если окажется что отношения все со всеми, т.е. тебе придется переписать все системы при добавлении новой. Ассеты это тоже отчасти риск, там может не оказаться нужной вещи, что выяснится в процессе, или будут неисправляемые баги. В менеджменте это называется технический долг. Потому что переносишь стоимость дальше, на момент исправлений багов или добавлений фич. Да, конечно, такой момент может и не настать, тогда тебе повезло. Может быть, тебе не понадобиться выпускать DLC, и следующую игру ты будешь делать совсем новую с нуля. (Но даже тут встает вопрос о переиспользовании кода). Но я видел некоторые игры, загнувшиеся по такой схеме. Оригинальные разработчики уже ушли, уволились, сделав свою часть работы. Нанятые контентмейкеры могли добавлять только примитивные уровни, и кристалики в магазин. Любые попытки делать новые механики заканчивались страшными костылями, багами, тормозами, читерами. Что приводило к еще большему оттоку игроков.
>>849559 > 1) Скорость разработки > Похуй какой код Нет, не похуй. Если код говно то ты будешь вечность его писать. А если все четко-модульно то добавить новую фичу будет быстрым делом.
Зачем безыгорные хуеплеты говорят, что надо писать говно но быстро, если любой гамедевелопер буквально почти сразу понимает как хуево работать на хуевом коде?
ГК залупы спок, вы не игры делаете, а потребителей рекламы
>>849635 Потому что чтобы писать код нормально - этому надо учиться, думать, смотреть разные подходы. А это конечно же всем впадлу делать, ишь чё удумали тут, код учиться писать, вообще охуели!
>>849595 Чувак, если ты больше года тратишь на то чтобы переделать код, у меня плохие новости. Ты плохой и маркетолух и программист.
>>849626 >Нет, не похуй. Если код говно то ты будешь вечность его писать. Взаимоисключающие параграфы. Если тебе нужна новая фича, из-за которой надо переделывать весь код, значит тебе не нужна эта фича.
>>849635 > вы не игры делаете, а потребителей рекламы Кто вы то блять? Я здесь один. И нет, петух, ты не угадал, это не гиперказуалки, и не мобильные игры для дебилов.
>>849640 В чем проблема писать нормальный код быстро? Все приходит с опытом. Просто не надо запариваться над излишней оптимизацией, и не вылизывать те части, которые не влияют на коргеймплей.
>И нет, петух, ты не угадал, это не гиперказуалки, и не мобильные игры для дебилов.
Но название игры мы никогда не узнаем, эс южиал.
И даже если ты не пиздабол, хоть и петух, однозначно, то твой единичный пример вообще нихуя не стоит. Потому что сегодня твоя залупа стрельнула, а завтра стрелять будет только поясница, только об этом ты не побежишь сюда рассказывать о том, как твоя говностратегия и залупопозиция отсосали и советовать так не делать. Хуеплет.
>>849647 >В чем проблема писать нормальный код быстро? пришел советы бывалых дать. вы пацаны говорит игры делайте быстро, но код надо заебись писать. Платина нахуй из палаты мер и весов.
В разрезе того, что одни говорят писать качественно, а другие - на похуй лишьбы работало))
>>849657 Хули вы все ноете, просто быстро пишете топовый код, ахуенно быстро моделите все запихуваете в движок, игра в топе миллионы на счетах, хули сложного
>>849647 > В чем проблема писать нормальный код быстро? Все приходит с опытом. Просто не надо запариваться над излишней оптимизацией, и не вылизывать те части, которые не влияют на коргеймплей. Я об этом и говорю. Итт некоторые принципиально отвергают любые практики нормального кода, потому что якобы "долго писать", хотя надо просто этому научиться и продуктивность возрастет в разы.
Зделол слоу эффект модно молодежно через декоратор. Вот думаю, а если бы я делал что-нибудь типа днд, что бы я заварганил. На ум приходит только енум со всеми эффектами и перебор коллекции.
>Но название игры мы никогда не узнаем, эс южиал. А нахуя мне устраивать деанон?
>>И нет, петух >И даже если ты не пиздабол, хоть и петух >петух Ты даже оскорбление придумать не можешь. Без игр, еще и как человек бесполезный. >как твоя говностратегия и залупопозиция отсосали и советовать так не делать Отсосал здесь только ты.
>Потому что сегодня твоя залупа стрельнула Стрельнула одна, стрельнет и вторая, схема уже отработана
>игры делайте быстро, но код надо заебись писать Будешь с этим спорить?
>>849673 >GetComponent нельзя сразу ссылку прокинуть, без поиска по компонентам? >if(armor < 0) сделать EnemyStats.Armor как класс, там переопределить операторы -, + и возвращать Mathf.Max(0, value). Не нужно будет везде проверку ставить. Думаю что у тебя есть типы брони или же другие св-ва, их туда же запихнуть. C дамагом можно так же поступить. После этого работать с ними как объектами передавая туда "модификаторы", мержить, сравнивать и т.д. (но тогда уже оверайд операторовов не подойдет и нужно будет делать методы)
>>849692 >нельзя сразу ссылку прокинуть, без поиска по компонентам? можно, но мне жалко под них сериалайзд филды делать.
>сделать EnemyStats.Armor как класс я думал о таком, но честно жидюсь на отдельный класс, тем более у меня не планируется резистов других пока или типов атаки. Но наверное расчет стоит куда-то вынести, глаз мозолит беспезды.
Я отказался от некоторых идей в пользу ускорения выпуска рабочего билда, только реализую апгрейды башен наверное и все, будет все максимально просто.
>>849696 Как прототип пойдет, иногда тоже заморачиваюсь в масштабируемость которую потом не использую. Но это проблема сугубо в том что надо представлять конечный результат, зафиксировать его и строить уже архитектуру без оверхедов.
>>849733 Не он, но теоретически может путать в инспекторе или захламлять его. У меня по этой же причине на куче переменных стоит хайд ин инспектор. Тому что переключаться всё время между нормальным модом и дебагом лень.
>>849740 >>849733 >>849696 > можно, но мне жалко под них сериалайзд филды делать. Я тоже мимо, и я бы сказал, что вот тут >>849673 100% нужны сериалайзед филды, чтобы не вешать всё на один геймобжект. Особенно это критично из-за того, что эти компонентв отвечают за грфон, и вполне может потом понадоюится их в какой-то дополнительный геймоюжект запихать чтобы добавить каких-то анимаций дотвином не трогая основу - типа моделька там прыгает а коллайдер стоит или типа того.
Посоны, помогите, нихуя не понимаю. У террейна есть настройки ветра для травы и есть отдельные Wind Zones. Wind zones на траву не действуют? Как вообще заставить траву реагировать хоть на какой-то ветер?
Допустим я запилил модельку травы в блендере, как мне заставить работать нормально с террейном?
>>849779 Добавляешь 2д спрайт в коллекцию травы террэйна, там указываешь нужные свойства, потом пустому гейм обджекту на сцене даешь компонент винд зоне и в нём крутишь ползунки, не забывая запустить сцену для лицезрения.
>>849795 Хз, траву делал год назад, для тестов и прототипов сойдёт, но как конечное решение не годится, слишком не красиво смотрится, да и по оптимизации бьет. Самое лучшее решение это шейдором, гайды на ютубчике. Но изи не будет, шейдер это не просто.
>>849807 Нажимаешь на объект у него материалы, кликаешь на материал, тебе переносит в папку где он лежит, и уже жмякнув на материал можешь сделать дубль для тестов или же оригинал начать править.
>>849809 Спасибо, я долбаеб с текстурами-то проебался. Теперь не пойму как эти деревья на ветер реагируют, поставил WindZone оно начало двигаться, кручу верчу значения ветра, один хуй движения не меняются. Это в SpeedTree отдельно настраивать надо?
>>846842 (OP) В общем, я хочу сделать несколько плейнов (ну десять, например), на которые повешу текстурки с мемами. И хочу сделать два кубика, которые будут кнопками вперед и назад. И хочу чтобы при нажатии на них у меня менялись мои плейны.
Я понимаю, что надо сделать массив, куда я добавлю свои плейны. И кнопки вперед и назад будут просто выводить в видимость по индексу один из плейнов из этого массива.
Но как это реализовать в Юнити? А тем более на Udon Sharp? Мне надо создать какой-то файл скрипта, видимо. Прямо в движке можно? А как мне добавить в массив свои плейны? Это надо сперва создать их и поместить в какой-то объект, наверное, в виде детей. А потом обратиться к объекту, взять всех его детей — это и будет массив плейнов. Хорошо, и теперь я могу сделать кнопки: левая кнопка будет при нажатии на нее отнимать один от переменной, но не больше 0. А правая кнопка будет прибавлять к переменной единицу, но не больше длины массива плейнов. И надо сделать вывод: я отключу все плейны, а включать их будет переменная по индексу.
Ладно, иногда ответ на вопрос приходит, когда его задаешь
>>849971 Там еще есть нодовый редактор, в нем и буду делать. Не хочется изучать текстовые языки. Но должен признать, в UE блюпринты на голову выше этих нод
>>849976 Что нет-то? Эти ноды очень примитивные, они как текстовый код, только в виде нод с ограниченным функционалом. А блюпринты это настоящий тюринг полный язык
>>849987 Ну и что из этого даст мне массив чилдренов объекта? В блюпринтах так охуенно, все интуитивно: думаешь, что надо взять детей и просто пишешь "взять детей" и берешь детей и крутишь их вертишь как угодно потом, а тут блядь нельзя просто взять детей, функции либо нет вообще, либо она называется непонятно как
>>849988 Сишарп в сто раз круче сблевпринтов и к нему есть няша райдер. Еще преимущество сисярпы в том что 99.9% того что по нему можно спросить в инетике уже спрошено и отвечено. Просто тебе нужно повзрослеть, ноды это ошибка от которой анриал скоро откажется с новым скриптом
>>849988 > и крутишь их вертишь как угодно потом это все до момента когда тебе надо наверчивать логику и ОТЛАЖИВАТЬ. и еще и баги ловить в логике.
это и со скриптами не тривиально, а на лапше из нод... ощущение что ты "делаешь игру" пропадает где-то через неделю ковыряния с багами в нодах. особый цимес если баг вылазит не сразу, а когда ты перешел дальше и уже забыл чего там нахуеверчено было
>>849993 Мы здесь не обсуждаем охуенные и удобные блюпринты, на которых легко пишется любая игра. Мы обсуждаем обосанный неудобный юнити, в котором приходится делать два часа слайдер с переключателями — то, что за 5 минут я бы уже сделал в анриле на бп
>>849995 Мы обсуждаем не ноды, а то, что чилдренов объекта нельзя взять (нет такой функции) и надо циклом это делать (и при чем тут трансформ вообще). Это хоть текстом, хоть нодой нелогичная хренька
>>849993 >няша райдер Миллион раз о нем слышал и даже вроде как пытался поставить, но заебался. Как и где можно в один клик скачать и чтобы всё само работало из коробки? Я заебусь каждый месяц ебаться с ним. Мне даже старой версии хватит, лишь бы один раз поставил и всё работало хотябы бы пол годика.
>>850004 >Как и где можно в один клик скачать Пориджи уже инсталлер с офсайта не могут скачать и установить, при этом хотят игры делать каким то образом, я хуею.
>>849996 >Мы здесь не обсуждаем охуенные и удобные блюпринты, на которых легко пишется любая игра. Ну так пошла нахуй с юнититреда, крыса > чилдренов объекта нельзя взять (нет такой функции) и надо циклом это делать Что несешь, животное дебильное, по чему ты циклом проходишь, если их нельзя взять?
>>849996 >Мы обсуждаем не ноды, а то, что чилдренов объекта нельзя взять (нет такой функции) и надо циклом это делать (и при чем тут трансформ вообще). Это хоть текстом, хоть нодой нелогичная хренька
>>850020 >детей каких-то зачем... Потому что так проще всего создать массив не прописывая имена объектов в код (параметрическое программирование, знаете ли)
Где-нибудь есть таблица со сравнением железа при работе с юнити? Например, таблица сколько какая видяха выдаёт при запекании света. И влияет ли РТХ на запекашку?
Сижу на вебинар собесе в гк залупе с сотней работяг. Хпахпха. Зарплата - процент с прибыли. Если проект длительный, то для поддержания штанов дают 100к на команду за прохождение этапов разработки.
>>850058 зарплаты нет, обучения нет, сиди карочи клепай залупу за 30%. При этом все строго, дедлайны, митапы, сиди 9 часов в день перди, ответственный подход к работе и все такое. Заработаете денях говорит.
>>850070 Если не привязан к движку, то лучше Анрил. Юнити говно и сишарп говно (вместо обучения в процессе, обучаться надо по видосикам с ютуба и чтению мануалов - пиздец вообще; еще и коммьюнити токсичное пизда)
>>850076 Челище работаю на юньки уже 3 года, реально не чувствую минусов. Можно сделать абсолютно что угодно. Да раз в пол года можно словить краша, или еще какую хуйню, но комьюнити гигантское, решается любая проблема, или находится решение её обойти.
>>850079 >зубрёжка без практики = потеря времени Долбоеб тупой, я и написал, что практика решает, а в вашем поганом юнити и сисярпе только и нужно, что зубрить. Читай не жопой, уебище токсичное
>>850083 >Открыл сцену и делай что хочешь, вот нахуя ты пиздишь тварь? Сисярп надо учить. И не просто сисярп, а юнитивский сисярп. А еще если под виарчат, то надо еще учить удон-сисярп
>>850085 Так я тот на чей пост вы сраться начали. Я ненавижу кодить, это уныло. Блюпринт смотрелся идеальной альтернативой изучению ЯП. Честно говоря я настолько не хочу в C# что проебываю тут время лишь бы курс не идти дрочить
Без вашей помощи всё сделал. Правда пока только на одну кнопку, потому что в сисярпе неизвестно как делать ссылки на другие объекты в сцене, кастов-то нету
Я целый день учил сисярп, чтобы сделать то, что на БП делается за пять минут. Сколько же вони было от компилятора из-за всяких кавычек и точек не там поставленных, мда
Что движет людьми, которые вкатываются в айти, но не хотят пару часов посмотреть, что такое сисярп? Это не сложно. Нет, надо усраться, потратить те-же пару часов на срач на дваче, но не вкатиться в сисярп, а потом пердолиться с лапшой. Лапша это говно для даунов по сравнению с нормальным ЯП. Ты легко вкатишься в сисярп на достаточном уровне, если просто не прогуливал уроки паскаля в школке. А если прогуливал, ну, повторяй по видосам, пока не поймёшь, это тоже не займёт много времени. Из-за таких даунов, как вы, в айти процветает этот гной в виде богомерзких блюпринтов и прочих костылей для гуманитариев тупорылых. Идите крестиком вышивайте или картины рисуйте, раз такие снежинки, боящиеся БУКАВ
>>850101 >пердолиться с лапшой Так в юнити нет нодовых редакторов, только убогое подобие. А БП интуитивен, можно ниче не смотреть пару часов, а сразу делать игры. Алсо, в школе на уроках информатики мы играли в варкрафт 2, червячков и детматч халфы.
Просто тебя как собачку науськали на дрочку с текстом, и тебе свобода и простота Блюпринтов кажется чем-то нечестным. Не обижайся, скриптосисярь, скоро ИИ тебя заменит, а мы - блюпринтовые-художники останемся творить игры
>>850111 >Переключатель мемов сделал за пять минут Это твой максимум. То же самое как современный "репер" хвалится, что новый трек он напердел за пять минут не стараясь, хотя понятно, что если бы старался вышло бы то же самое
>>850114 не звезди. вот это >>850020 сделано на шарпе пусть за минуту. еще пару минут накидать интерфейс и привязать кнопки. а ты тут полдня уже гундишь про преимущества визуального програмирования
>>850127 >сделано на шарпе пусть за минуту Так это анрилейтед ерунда, которая никак задачу не помогает решить. Я вот прямо сейчас гуглю как передавать значения переменных на сисярпе в юнити из класса в класс и там такая хуетень в ответах, будто я единственный кто задумался об этом за все время существования юнити.
В любимом анриле можно создать блюпринт интерфейса и через него передавать ивенты в два клика, а можно еще проще: в классе гейммода создать переменную и ее подтягивать, изменять, перезаписывать из любого другого класса потом.
>>850128 Ты гуглишь на русском, ты спрашиваешь про какой-то импорт переменной, ты же реально дурачок смешной, ты это понимаешь? Куда ты лезешь в программирование, чушкан
>>850130 Ты похож на злого деда, которые играл в деревянные игрушки прибитые к полу, а потом подрос и стал считать великим достижением, что научился пользоваться старинным телефоном с барабаном. Но прогресс не стоит на месте, теперь ты не можешь в блюпринты и ворчишь на всех, кому не всрался твой телефон с барабаном
Какой движок, такой и вопрос
>>850131 Это не я спрашиваю. Этот вопрос задали в 2019 году
>>850132 >Это не я спрашиваю. Этот вопрос задали в 2019 году Нахуй ты тогда это запостил сюда. >>850134 >Ну что за бред Там ответ на твой вопрос, что не нравится, школота?
>>850138 >налапшевал Нодовый редактор также требователен к аккуратному коду, как и текстовый. У меня глаза вытекают от того, как текстовики работают с нодами превращая всё в нечитабельное месиво.
>>850141 >В юнити есть Это плагин, которому до бп как до луны. Плюс если посмотреть тесты, он заметно медленее блюпринятов и тем более сисярпа
А почему просто нет главного класса игры, в котором можно хранить и менять такие переменные... Почему эпики догадались сделать такое удобство, а тут мозги ебут сисярперы
Хочу заново вкатиться в движок (есть пара незавершённых проектов). Есть ли шансы хоть что-то заработать с какой-нибудь мобильной дрочильни с парой механик? И вообще, среди вас кто-нибудь зарабатывал на собственных проектах?
>>850128 >как передавать значения переменных на сисярпе в юнити из класса в класс
Если у тебя есть какой то объект на сцене(класс от монобех) то ты должен получить ссылку на этот объект. Для этого у тебя есть множество путей, если он у тебя всегда находится на сцене, а ссылка нужна другому объекту то можно просто указать её в инспекторе этого объекта создав поле с типом нужной ссылки.
[SerializeField] private TargetType _targetComponent = null; //это ты пишешь где собственно нужно тебе взаимодействовать
После этого берешь свой объект и сюда перетягиваешь.
Если же у тебя объект не всегда находится на сцене, то тут уже лучшем решение будет сохранять ссылку на него в классе кто его инстантирует на сцену(если класс монобех) или создает инстанс(не монобех) и запрашивать уже у этой "фабрики". Плохие решения это поиски по сцене, по компонентам - их стоит избегать.
Есть известные, глобальные решения: На больших/средних проектах используют zenject, service locator etc. На мелких можно обходиться синглтоном на сцене который будет создавать твои "сервисы"(LoadConntroller, AudioController, ElementsManager etc) хранить на них публичные ссылки и раздавать их всем желающим.
>>850183 Не поленился чекнул, не качает только в хроме, в душе не чаю почему. Через древний эксплоер качается. По ридеру можешь пояснить в кратце? Со студией 2019 разница в чем? 2022 лагага по какой то причине, пришлось откатываться.
Двачую >>850190 В мобилки без издателя или личного способо продвижения делать нехуй. Есть конечно вариант для упорных это лично продвигать и социоблядствовать, но это хардкор в чистом виде, нужно будет везде спамить и общаться с людьми.
>>850146 наху мне сторонняя писька? я думал там юнитеки сами выкатили >>850147 пока эти ноды тудасюда теребить будешь шопкрасива я уже три идеи проверю и мне похуй как оно выглядеть будет если идея годная я ее и перепишу и выдрочу а если нет то нахуя париться с кодом/графом который пойдет в мусорку
>>850157 > Есть ли шансы хоть что-то заработать с какой-нибудь мобильной дрочильни с парой механик? Есть. Ты можешь получить трафик за счёт поисковой оптимизации. Тебе нужно грамотно подобрать название и грамотно составить описание. Со временем ты даже сможешь попасть в подборки, что даст большой трафик.
Зарабатывают сейчас в основном с рекламы. Некоторые начинают клепать много мелких игрушек, чтобы с рекламы получать весомый доход. А кому-то удаётся и на одной игре прилично зарабатывать, если она удерживает игрока.
>>850202 P.S. Старайся делать 3D игры, они сейчас лучше заходят. Особенно с мультиплеером. Смотри, что сейчас популярно у школьников, можешь смотреть популярные моды в Roblox.
Накидал систему апгрейдов. Пока достаточно негибко, но надо с чего то начинать. Башни будут стучаться по статическим методам, а для UI будет паблик интерфейс ну и MVC накину. Что порадовало, то что я особо не пердел над ней, сел и накидал.
>>850205 А почему ты не хранишь upgradesLevel в самом классе TowerUpgrades?
Я для удобства именую словари следующим образом: {value}By{Key}. Допустим, upgradesByTowerType.
Рассмотри вариант отделения Логики от Данных. Судя по всему, ты уже это хочешь сделать. Логику можно переместить в ScriptableObject. Тогда у тебя будет очень гибкая архитектура, при этом без лишних абстракций. На ютубе поищи видосы от юнитеков про архитектуру на ScriptableObject.
>>850208 >юнитеков про архитектуру на ScriptableObject обоссали уже эту архитектуру все кому не лень, даже на ютубе есть масса роликов почему не стоит этого делать
>>850208 >А почему ты не хранишь upgradesLevel в самом классе TowerUpgrades?
Да, стоит перенести. Согласен.
>Логику можно переместить в ScriptableObject. Хмм. Возможно стоит. Но!!! не через СО, а просто реализовать флайвейт паттерн на шарпе. Покручу помучу, подумаю еще.
>>850214 > Но!!! не через СО А ты попробуй. Под твою задача должно зайти. Главное не храни там рантайм данные. Там должна быть только логика и данные, которые через редактор задаются. Потом создашь папку, поместишь туда все апгрейды, ими удобно будет управлять.
>>850205 В общем позавтракал и все переделываю, потому что полную залупу сделал))) У меня TowerUpgrades возвращает декораторы, хотя должен возвращать уже готовые данные.
>>850276 В начале скрипта под массивов заккоменчиваю таблицы на такой случай по типу: 1 - Boss_1, 2 - Boss_2... 22 - Enemy_4. Также сама функция принимает string запрос который потом преобразуется в инт и возвращает нужный элемент.
Нейронка меня жестко наебала. Если что, на пикчах ее несвязный бред. Она пишет нечто похожее на осмысленную информацию и код, но с реальностью он никак не соотносится метода InvokeOn не существует, например. Ей просто слово понравилось
>>850296 Теперь работают обе кнопочки и мемы листаются в обе стороны. Но что мне не нравится, это то, что надо в каждую кнопку вручную перетаскивать объект. Через блюпринты я бы сделал красивее и параметричнее, ручками бы вообще ничего не пришлось трогать и выбирать пипеткой
>>850308 В чем проблема загрузить все картинки в массив, сделать ссылку на текстуру, также int текущего индекса и просто гонять по нему делая ++ или -- ? Что ты там ебёшься не понятно?
>>850308 Набрасал по фасту что имею в виду, 5 мин делов.
[SerializeField] private Image PlaneImg; // Место куда отображаем картинки/текстуры
// private Sprite[] mImages; // Сборник контента
public int CurrentID; // Текущий выбранный индекс
private void StartInicialization() // Вызываем когда угодно, обычно при старте сцены в главном менеджере { CurrentID = 0;
Object[] _tOb = Resources.LoadAll("MyImages", typeof(GameObject)); // Место откуда загружаем картинки mImages = new Image[_tOb.Length]; // Делаем массив размером с общего кол-во картинок for(int i=0;i< mImages.Length; i++) { mImages= _tOb as Sprite; } // Сохраняем
_updView(); }
public void _clickButton(int command) // Нажатие на кнопку - У кнопок ставить можно как 1 и -1, так и любые числа { CurrentID += command;
>>850325 >Что ты там ебёшься не понятно? 1. Я всё уже сделал и не ебусь, просто в продвинутом-движке юнити ничего нельзя сделать без перетаскивания вручную объектов в ссылку (в блюпринтах можно через каст прямо в коде); 2. Картинки разного размера, поэтому будучи текстурой в одном и том же материале они растягиваются по-разному, поэтому у меня просто 7 плейнов. 3. Кнопка Вперед и Назад это интерактивные объекты и они не должны содержать в себе массива с мемами. Они просто посылают сигнал в главных по мемам объект о выполнении кастомного ивента по плюсованию или минусованию индекса
>>850388 >>таскает блюпринты ногами ну не, речь о том, что мой код в блюпринте довольно абстрактен и подхватывают объект нужного класса просто по факту его спавна или помещения на сцену, без необходимости из иерархии перетаскивать его в поле у компонента
Как я понял, в юнити поинт лайт не имеет области затухания? В настройках компонента нет. В анриле это по умолчанию, конечно, есть у любого света. Ну там и еще куча настроек сразу доступна, мда уж
>>846842 (OP) Добрый день! У меня есть несколько вопросов к местным специалистам. Я пытаюсь собирать игру на вашем любимом движке. У меня установлено две версии - 2019 и 5.6. На данный момент я ещё не решил, на которой из них остановиться (да, последняя версия для меня - неочевидное решение). Если что, мои знания крайне фрагментарны, и я не программист. Расскажите, пожалуйста:
1) Почему в обоих версиях не работает Ambient Occlusion? Т.е. формально там есть галочка в настройках освещения, но она ровным счетом ни на что не влияет. В документации сказано, что для 2019 можно загрузить какой-то там пакет пост-эффектов и через него настроить, либо использовать URP или HDRP. Мне лично не верится, что графика в unity настолько плоха, что там нельзя просто из коробки установить AO. Это же базовая вещь, без неё графика выглядит просто ужасно. Все эти переотражения и прочее нахуй просто не нужны, если нет возможно сделать AO. Как вариант, я нашел скрипт для генерации AO, подходящий для 2019: https://github.com/MaxwellGengYF/Unity-Ground-Truth-Ambient-Occlusion На 2019 он прекрасно работает - добавляешь в камеру, и вуаля, всё как надо. В 5.6 он не работает, выдает ошибку. Но совершенно не понятно: во-первых, как сделать возможным запекание этого сгенерированного АО для всей сцены, во-вторых - какой минимальный DirectX нужен для работы этого скрипта. Есть ли возможность наиболее простым способом сгенерировать АО для всех объектов на сцене и сохранить/запечь его?
2) Мне хотелось бы обеспечить поддержку старых систем, в частности с Windows XP и DirectX 9. В конечном счете, я делаю не продукт на продажу, а занимаюсь творчеством. Каким настройкам и в каких частях движка нужно уделить внимание, чтобы обеспечить такие требования? Например, будет шейдер стандартного материала работать со старыми системами? А освещение? Например, в движке есть возможность выставить что-то вроде эмуляции старых систем - tier 1-3, но, как я понял, их нужно настраивать самому. Как именно - неясно.
>>850480 >>850488 >>850495 Зачем ты три раза прокомментировал мой пост? Твой совет - поставить новую версию - нерелевантен. Установка новой версии проблему поддержки старых систем автоматически не решит, а мне дополнительное количество мусора и анальной коммерции, которых становится в юнити всё больше с каждой новой версией, не нужны.
>>850514 >Зачем ты три раза прокомментировал мой пост? Чини детектор маня. Твоя проблема как раз решится. Никаких доп проблем не появится, спокойно всё лишнее и не нужные модули отключаются. Ты удивишься но чем новее юня тем шустрее и лучше она работает. Всё таки иногда нужно прислушиваться к советам опытных дядь.
>>850518 Твоя "новая юня" поддержку directx9 мне обеспечит? А вот 5.6 точно обеспечит. По делу отвечай. Нечего ответить - не надо срать тут своими "скачай новую версию". Я конкретные вопросы задал, а не срач сюда разводить пришёл.
Пока реализация апгрейдов чутка повисла, достал си шарп ин депф и сходу пригодилось. Сделал класс комперер и причесал поиск целей. Пока делал скрин нашел еще место, где походу придется подкрутить.
Почему свет запекается вот так плохо? Белые столы превращаются в черные. Это как-то связано с uv самих объектов? Или просто нужно повышать разрешение лайтмапы до приемлемого результата?
>>850514 Откуда ты знаешь решит или не решит? Тебе все говорят ставь новую версию, а ты с высоты своего шизового ничем не подкрепленного мнения пишешь что там что-то поддерживаться не будет, лол.
Какими средствами лога и дебага вы используете? Я бы хотел, например, чтобы прямо на экране отображались значения нужных мне переменных из определенного класса. Например, в классе LohMonobehaviour есть private float pidr, и я бы хотел ее мониторить прямо на экране в игре в runtime. Также, когда переменная меняет значение, я бы хотел, чтобы она например подсветилась временно, чтобы я заметил. Есть готовые решения с кучей полезных прибамбасов? Вроде можно отобразить все все поля в инспекторе, но мне я бы хотелось чтобы именно на экране, чтобы сразу все было видно