Сохранен 1146
https://2ch.hk/gd/res/766778.html
24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

Unity3D #16

 Аноним 29/08/21 Вск 19:27:23 #1 №766778 
unity-mwu-black.png
Добро пожаловать в тред Unity - лучшего 3D и 2D игрового движка современности!

Прошлый тред: https://2ch.hk/gd/res/752458.html

Официальный сайт: 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# можно узнать на интерактивных курсах здесь:
https://dotnetcademy.net/CSharp/Beginner
или в текстовом туториале здесь:
https://www.tutorialspoint.com/csharp/csharp_quick_guide.htm
Для изучения основ UnityScript выучи вначале основы JavaScript:
https://learn.javascript.ru/
Помни, что далеко не все элементы JS есть в US. Чтобы понять, в чём разница между этими двумя языками, прочти эту статью:
http://wiki.unity3d.com/index.php/UnityScript_versus_JavaScript
Помни, что тебе достаточно одного языка из двух и учить их оба одновременно не нужно.

- Движок
Если ты уже умеешь использовать язык, то можно приступать непосредственно к изучению движка. Крайне рекомендется купить/скачать книгу Unity in action (Unity в действии). В ней подробно описываются множество возможностей движка.
http://www.ozon.ru/context/detail/id/34792570/
Также посмотри на видеотуториалы с официального сайта:
https://unity3d.com/learn/tutorials
Если же ты не любишь видеотуториалы (или не понимаешь разговорный английский) и предпочитаешь текст, то посмотри здесь:
http://catlikecoding.com/unity/tutorials/
Тут крайне подробно описан процесс разработки и приведены примеры кода. Эти туториалы универсальны и описывают множество различных частей игры, от работы с текстурами до генерации карты мира. А вот в этом туториале описыватся разработка двухмерной игры с видом сверху:
https://www.raywenderlich.com/61532/unity-2d-tutorial-getting-started
Это будет полезно, даже если ты планируешь разрабатывать трёхмерную игру. Ни в коем случае нельзя обойти вниманием этот сборник туториалов:
https://noobtuts.com/unity
В нём подробно описывается процесс пошагового создания разных игр - двухмерных и трёхмерных.

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

Шапка: https://www.writeurl.com/publish/qzgktisltkskaitem6aa
Аноним 29/08/21 Вск 19:27:55 #2 №766779 
Есть где скачать простой CRT (эффект CRT монитора) шейдер/скрип для камеры, который работает c URP? Все интернеты облазил, нихуя простого/рабочего нет.
Аноним 30/08/21 Пнд 12:35:20 #3 №766981 
Аноны, что думаете о ork framework? Выгляди как топ ассет для создания РПГ. Но сел на нем данжен кравлер делать и что то все там как то через жопу работает.
И вот думаю стоит ли его дальше изучать или пойти по хардкору все кодить с нуля, без всяких этих визуальных программирований.
Есть аноны с опытом работы в нем? Стоит ли его изучать или дело гиблое?
Аноним 30/08/21 Пнд 20:23:49 #4 №767111 
image.png
Как можно улучшить данный код?
Как правильно сгруппировать эти переменные векторов и булевых значения?

Что-то мне подсказывает, что я говнокод лютый пишу.
Аноним 30/08/21 Пнд 21:22:58 #5 №767126 
>>767111
Если чтобы визуально улучшить то массив/лист. Если структурно то функцию/структуру. Если работает и тебе понятно, то лучше не трогай.
Аноним 30/08/21 Пнд 22:20:11 #6 №767156 
>>766778 (OP)
Книги по Unity:
https://disk.yandex.ru/i/w6rvZojJ-afx6Q

https://drive.google.com/drive/folders/1ZXAmGfpWHAV4Nw3HNje2UMWrXCgR5Xlm
https://disk.yandex.ru/d/GGKCL4mAn7I-QQ
Аноним 30/08/21 Пнд 22:24:04 #7 №767158 
>>766778 (OP)
Курсы по Unity:
https://cloud.mail.ru/public/bhgB/njL7vNc4U/

https://cloud.mail.ru/public/4AYw/4jGNfLw3b/
Аноним 31/08/21 Втр 02:29:04 #8 №767192 
>>766778 (OP)
Разрабатываю я, значицца, игру и иногда анал.
И вот такой у меня вопрос возник. Хочу текст (цвет, шрифт и пр.) всей игры менять где-то в одном месте и чтобы изменения происходили везде. Это делается только через префабы? Или еще как-то можно?
Аноним 31/08/21 Втр 02:31:05 #9 №767193 
>>767192
создай настройку в одном месте
из других префабов читай ее
Аноним 31/08/21 Втр 02:36:36 #10 №767194 
>>767193
Имеешь ввиду создать статичный класс с данными?
Аноним 31/08/21 Втр 02:38:18 #11 №767195 
>>767194
К примеру да
Аноним 31/08/21 Втр 08:20:25 #12 №767198 

Аноны поясните за префабы.
Я сделал босса, прикрепил к нему скрипт с условием если босс умер то дверь дальше открывается, на двери так же скрипт открывающий дверь только тогда, когда босс мёртв, но когда я делаю префаб босса и удаляю со сцены босса, чтобы он не просто стоял, а вызывался из кода, как префаб внезапно у него теряется связь между его скриптом и скритом даери и заново в ручную нужно назначать ссылку на скрит двери.
У меня есть подозрение, что я фундаментально неправильно прописываю вызов префаба.
Аноним 31/08/21 Втр 08:33:59 #13 №767200 
11.jpg
22.jpg
>>767198
Первый пик это то что я сделан на сцене и связал, второй пик это то что я имею в префабе когда вызываю его из кода и естественно такой префаб не работает.
Аноним 31/08/21 Втр 09:18:00 #14 №767201 
>>767198
в префабе нельзя сохранить ссылку на объект на сцене
Аноним 31/08/21 Втр 09:21:11 #15 №767203 
Как лучше сохранять данные между сценами, допустим, в РПГ?

Пока я думаю создать один объект DontDestroyOnLoad, и там хранить все переменные: характеристики и инвентарь героя, пройденные квесты, результаты диалогов и т.д.

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

PS. Перенес вопрос с мертвого треда..
Аноним 31/08/21 Втр 09:30:55 #16 №767205 
>>767203
>характеристики и инвентарь героя, пройденные квесты, результаты диалогов и т.д.
игрока не надо удалять при смене сцены, и т.д. ты просто переключаешь декорации, а все основные объекты остаются неизменными. проще всего это сделать аддитивной загрузкой сцены с картой.

чтобы сохранять состояние объектов на сцене и загружать его обратно при загрузке сцены, надо сериализовать объекты. это просто так не сделать.
Аноним 31/08/21 Втр 12:45:20 #17 №767229 
>>767203
Самый простой вариант иметь обьект который не будет удаляться при переносе сцен и в себе он имеет скрипты с данными. + Всегда можно их читать/менять. - Весьма примитивно.
Аноним 01/09/21 Срд 19:07:25 #18 №767581 
Посоветуйте пожалуйста какую-нибудь книгу или видео, по которому можно понять принципы SOLID и подобное. Хочется понять как правильно писать красивый и поддерживаемый код
Аноним 01/09/21 Срд 19:47:47 #19 №767587 
>>767581
По книге не поймешь. Устройся в любую контору и тебя там быстро научат писать код.
Аноним 01/09/21 Срд 19:55:19 #20 №767590 
>>767587
Так чтобы устроиться в нормальную желательно уже знать
Аноним 01/09/21 Срд 21:20:40 #21 №767612 
Чем может похвастаться данный тред?
Аноним 01/09/21 Срд 21:51:48 #22 №767615 
Video2021-09-01214157.webm
Не понимаю почему освещение луча дрожит при движении. Памагите.
Аноним 01/09/21 Срд 22:28:07 #23 №767620 
>>767615
У тебя луч это спрайт же?
Аноним 02/09/21 Чтв 01:31:53 #24 №767634 
>>767620
Это Line.
Аноним 02/09/21 Чтв 03:30:22 #25 №767640 
>>767615
Это блум альясит. Вообще не стоит всякие лазерные мечи делать блумом, сделай просто текстуру с размытием по краям.
Аноним 02/09/21 Чтв 12:33:09 #26 №767655 
>>767640
А как потом избежать, что оно заблумит эту текстуру? Со слоями ебаться?

мимо
Аноним 04/09/21 Суб 13:28:58 #27 №767853 
Спрошу еще раз, мб кто ответит. Есть какая-нибудь книжка или еще чего, чтобы изучить принципы SOLID и т.д
Аноним 04/09/21 Суб 16:21:23 #28 №767892 DELETED
>>767853
В pr нету что ли? Это база.
Аноним 05/09/21 Вск 10:58:38 #29 №767998 
Как быть, если нужно хранить в объекте одного и того же типа функционал и данные разных типов. Например, есть класс Modifier - модификатор характеристики. В простом случае он просто добавляет или отнимает число от характеристики перса. Но целью модификатора может служить не только персонаж, а, скажем, другие вещи, надетые на персонажа, например +1 к защите для всей железной брони. В этом случае при применении модификатора получать нужно уже не набор характеристик перса, а надетые на него вещи (персонаж и вещь разные типы, очевидно), среди них искать подходящие, и вешать модификаторы уже на них. Тут сам собой напрашивается сделать у модификатора target общего или интерфейсного типа, но юнити не умеет такие типы сериализовать, и в инспекторе этой переменной не будет, а что тогда делать то ебаный ебоманый. Кто-нибудь сталкивался с такой архитектурной задачей?
Аноним 05/09/21 Вск 11:22:09 #30 №767999 
>>767998
Так при чём здесь юнити? Меняй/изменяй архитектуру хранения и взаимодействия, видно же что какую-то хрень придумал. Не зря же пограммист, вот решай задачу.
Такие задачи ты можешь решить на любом языке, разница лишь в твоём складе ума и подходе к реализации.
Аноним 05/09/21 Вск 13:03:53 #31 №768007 
>>767998
SendMessage
Аноним 05/09/21 Вск 15:24:41 #32 №768039 
>>767998
А ты поменяй подход к реализации. Например, тебе нужно +1 к защите для всей железной брони. Сделай для перса скрытую характеристику, которая будет называться как-то "ironArmor". Каждый елемент брони будет увеличивать ironArmor, также как и другие характеристики. Ну и твой модификатор будет увеличивать скрытый стат у перса, и не нужно будет навешивать ничего на другие вещи.
Аноним 05/09/21 Вск 16:26:12 #33 №768057 DELETED
>>767998
Модификатору не надо знать тип target. Это может быть просто некий фильтр, правило, которое уже потом в коде применяется только к надетым железным вещам.
Грубо говоря, когда у тебя в браузере на сайте выпадающий список опций, это не значит что кто-то завел реально такой тип данных.
Аноним 05/09/21 Вск 17:21:54 #34 №768078 
>>768039
Так в том то и смысл ебли, чтобы за каждый элемент давали +1. Одна железка надета - +1, две - +2 и т.д. В любом случае надо знать, сколько вещей надето. Это не говоря о том, что если модификатор будет процентный, тогда нужно знать еще и сколько каждая штука дает, чтобы процент высчитать.
Аноним 05/09/21 Вск 17:58:17 #35 №768090 
cbcbb8938190bd6df996dc9571687048.jpg
>>767998
>Как быть, если нужно хранить в объекте одного и того же типа функционал и данные разных типов
https://ru.wikipedia.org/wiki/Полиморфизм_(информатика)
Аноним 05/09/21 Вск 21:05:47 #36 №768132 
1a0d2abf2c11edf5f7c0a391f586c97ee77382f3.jpg
>>766778 (OP)
Сап аноны, я застрял на одном неприятном баге, который не могу исправить вот уже неделю.
Есть бот игрока который охотится за врагом, отлично охотится, находит и уничтожает его в то же время и враг отлично воюет против бота это всё если я префаб врага перетаскиваю на сцену, но как только я создаю здание которое будет респавнить врагов, то тут же бот перестаёт видеть врага, я проверял, були не срабатывают. При том враги продолжают видеть игрока и бота.
Аноним 05/09/21 Вск 21:10:28 #37 №768138 
>>768132
Копай в сторону скриптабле обьектов, проверку ссылок при спавне и типы передачи. Это фишка юнити.
Аноним 06/09/21 Пнд 03:15:58 #38 №768202 
image.png
Блядь, посоны, наверняка ПЛАТИНА, но хуле юнити микрофризит?
Делаю тестовую гиперказуалку, при клике машинка должна менять направление. Но ПОРОЙ, клики тупо не проходят. Вообще не ебу в чём дело, профайлер пики никак внятно не расшифровывает. Грит эдитор луп.
Объекты создаю в пуле, хуле ему ещё нужно-то сука тварь?
Аноним 06/09/21 Пнд 08:41:54 #39 №768208 
13823771043231.jpg
>МОНОБИХУВИУР
Аноним 06/09/21 Пнд 09:11:09 #40 №768209 
>>768202
>профайлер пики никак внятно не расшифровывает
Как ты себе это представляешь?
Копай свои скрипты если фризит всегда в одни и теже моменты чекай и пытайся понять что может происходит в эти моменты. Если в разные, то надо копать в сторону циклов и подобной хрени. И если используешь инстансы и чекай Не забывай заместо инстансов юзать простое включение/выключение. Одним словом, скорее всего лапша говнокода. А и последнее сделай билд и чекни вне редактора, возможно это только в редакторе.
Аноним 06/09/21 Пнд 13:16:45 #41 №768243 
>>768202
>ПОРОЙ, клики тупо не проходят
В каком месте у тебя чекаются клики?
Аноним 08/09/21 Срд 07:39:12 #42 №768613 
вопрос - в мануале по Unity Ads несколько раз наткнулся на упоминание файла app-ads.txt типа его нужно внести на свой сайт и тд

это сильно нужно для работы рекламы?
у меня простая аркада на телефоны с короткими баннерами раз в 10-15 минут и, судя по дэшборду, по несколько центов там капает с юзера, хотя у меня этого файла нет (и даже в профиле Гуглплея как оффсайт указана страничка на itch)
Аноним 10/09/21 Птн 16:15:20 #43 №769017 
>>768613
Не сильно, реклама и без него будет работать.
Аноним 10/09/21 Птн 21:16:18 #44 №769086 
Screenshot20210910-210907Telegram.png
смотрю уроки по юнити и чет не совсем понял нахуя так делать и как это работает
именно строчка
body = GetComponent<RigidBody>();
Аноним 10/09/21 Птн 21:28:41 #45 №769088 
>>769086
Эта строчка делает ровно то, чем является. Просто читаешь - добавить компонент ригидбоди. Что сложного? У тебя двойка по английскому?
Аноним 10/09/21 Птн 23:02:11 #46 №769102 
>>769088
>GetComponent
>добавить компонент
>У тебя двойка по английскому?
Аноним 10/09/21 Птн 23:06:10 #47 №769103 
>>769102
Добавить компонент в переменную. А чтобы её добавить - нужно получить ссылку из геткомпонента. Здесь даже разжёвывать нечего было.
Аноним 10/09/21 Птн 23:09:03 #48 №769104 
>>769103
>Здесь даже разжёвывать нечего было
Дела в том что есть метод AddComponent который действительно добавляет компонент а не вертит сракой как ты.
Аноним 10/09/21 Птн 23:13:51 #49 №769105 
>>769104
Кроме добавления он ещё и возвращает ссылку. Пиздец, лучше даже не вникай в эту тему, сразу видно - не твоё.
Аноним 10/09/21 Птн 23:18:22 #50 №769107 DELETED
>>769105
>обдриставшийся даун пытается сохранить лицо
Ты такой смешной, мог бы по тихому слиться но решил еще мочи в ротеш принять.
Аноним 10/09/21 Птн 23:37:41 #51 №769113 DELETED
>>769107
И нахуя ты вопрос задавал, когда ответ осознать извилин не хватает? С кем сижу на одной борде, охуеть просто.
Аноним 10/09/21 Птн 23:47:42 #52 №769114 DELETED
>>769113
>И нахуя ты вопрос задавал, когда ответ осознать извилин не хватает?
Я никаких вопросов не задавал. Зашел в тред для того чтоб обоссать тебя, т.к. такие дауны как ты путают ньюфагов, а те потом пишут что юнити говно.
Своим разорванным очком ты больше можешь не трясти, в этом нет смысла, любой кто мало мальски разбирается в юнити давно понял кто прав, а кто нет. А если ты сам не понял то поймешь когда на собеседовании расскажешь что GETCOMPONENT ЭТО ДОБАВИТЬ КОМПОНЕНТ В ПЕРЕМЕННУЮ и увидишь реакцию на сей высер.

>С кем сижу на одной борде, охуеть просто
С теми с кем не получается хуйню спиздануть с умным видом? Ну в /б пиздуй, там с остальными пориджами тебе комфортнее будет.
Аноним 11/09/21 Суб 00:00:08 #53 №769118 DELETED
>>769114
>Нихуя не понял, но влез
Ясно. Больше не влезай.
Аноним 11/09/21 Суб 00:02:50 #54 №769120 DELETED
>>769118
Да зачем мне, не хочу влезать между геткомпонентом и переменной, чтоб меня тоже в неё не добавило.
Аноним 11/09/21 Суб 02:52:07 #55 №769135 
>>767201
Разве? В старте вызвать Find и полученную ссылку присвоить куда надо, или я не понял?
Аноним 11/09/21 Суб 04:19:48 #56 №769137 DELETED
>>769107
Аноним 11/09/21 Суб 09:04:31 #57 №769149 
>>769135
Ты при инстансировании префаба заполни все переменные, иначе работать не будет. А ещё лучше напиши логику в одном скрипте, где будут ссылки на босса, двери и всю эту хуйню. Так не придётся передавать ссылки туда-сюда, всё будет сразу под рукой, так сказать.
>>769107
Хуя ты тупой.
Аноним 11/09/21 Суб 11:21:23 #58 №769160 
В тайлмапах все тайлы одного типа это не отдельные инстансы, а ссылки на один и тот же объект? Хотел было прицепить к отдельным тайлам функционал, а хуй там плавал по ходу. Есть какой-то способ это обойти?
Аноним 11/09/21 Суб 16:44:26 #59 №769210 
Посоветуйте курсы/лекции для вката с нуля. Можно и ру, и англ.
>>767156
Эти видел, но вижу там даты 15-16 годов, не устрарело ли?
Что стоит учить сначала, c# или сперва разобраться в ООП?
Аноним 11/09/21 Суб 17:10:06 #60 №769212 
>>769210
Для начала стоит понять ты хочешь делать игры или смотреть туторы/читать миллионы гайдов, но ничего не делать.
Как только с этим определишься дальше сам поймёшь.
Подсказка - Если собрался делать игры, то открываешь тутор на оф сайте и делаешь по примеру, следом делаешь любую простую игру которая приходит на ум одновременно гуглишь все возникающие трудности. Поздравляю, вы научились делать игры. Теперь дело за малым, научится делать контент к ним.
Аноним 11/09/21 Суб 17:50:26 #61 №769214 
>>769212
Я хочу, возможно, в перспективе, работать в этой сфере.
Не просто поделки для себя делать, короче
Аноним 11/09/21 Суб 19:25:49 #62 №769219 
>>769214
>Я хочу, возможно, в перспективе, работать в этой сфере
На собеседовании тебя не будут спрашивать какие ты курсы смотрел. Берешь и делаешь игру, че непонятно гуглишь.
Аноним 11/09/21 Суб 19:39:03 #63 №769221 
icevideo20210911-090653.webm
До чего же юнити любит делать больно. Накинул такой инверсную кинематику, всё отлично. Ограничить скручивание на конкретных суставах? Накинь отдельный компонент и настрой. Ограничить вращение? Ахахах! АХАХАХ! АХАХАХАХ! Разве что импортировать файлы и редактировать их вручную самому. Люто, конечно, добавить корекшн твистов, но не добавить корекшн ротейшонов. Пора забрасывать этот проект с домиками.
Аноним 11/09/21 Суб 20:58:29 #64 №769231 
>>769219
Да понятно, но теория то нужна, и, как я понял, не мало. Берешь и делаешь, че непонятно гуглишь приведет к пробелам в теории, в любом случае, какое-то поэтапное структурированное обучение в этом плане лучше, разве нет?
Аноним 11/09/21 Суб 21:08:45 #65 №769233 
>>769231
Уже миллиарды раз везде обосывали, что 'обучение' заканчивается на просмотре видосиков и читке текста.
Если ты хочешь как написал научится, лучше чем делать сразу ты ничего не найдёшь. Если же ты ищешь оправдания делать что угодно лишь бы не заходить в проект и писать код/таскать ассеты, то дальше туторов ты никогда не уедешь.
Пробелы ты будешь встречать на всём пути разработки, даже с опытом сто лет всегда что-то новое, что-то меняется, еще что-то ломается, гуглить/смотреть видосики всегда прийдётся.

Итог TLDR: Берёшь и делаешь. Хочешь 2Д? Сделай простую игру где у игрока меню, смена сцены, кликать по картинкам. Хочешь 3Д? Тоже самое, менюшка, сцены, двигать кубы физикой, делать камерой облёт вокруг куба.
Уже то что я написал затронет большой спектр основных механик к любой игре.

Единственное куда не лезь никогда и даже не думай, это в сетевые взаимодействия.
Аноним 11/09/21 Суб 21:14:07 #66 №769235 
>>769233
Я не говорил о том, что не хочу писать код, лол. Совмещение теории с практикой и всё. Большинство "курсов", что на торрентах лежат в том и заключаются, из того, что видел, на выходе пара тройка проектов будет. Просто спросил, чтобы случайно не нахвататься неправильной инфы от хуевых людей
Аноним 11/09/21 Суб 21:30:06 #67 №769237 
>>769235
Еще раз повторю. Если ты реально хочешь заняться юнити, то единственное что тебе это надо - скачать хаб -> скачать последнею версию юнити вместе со студией -> создать проект 'New project 0' -> Запустить его и начать делать то что у тебя в голове.
Не знаешь что нажать? Не знаешь как реализовать что-то? Заходишь в гугл и пишешь 'Unity3D chto-to' пытаешься сформулировать свою мысль на англюсике. И я тебе гарантирую, после пары вечеров ты уже сможешь сделать простую игру, да, вот так просто, всего то надо блять зайти и начать делать а не пиздеть.
Аноним 11/09/21 Суб 21:35:56 #68 №769238 
>>769235
>чтобы случайно не нахвататься неправильной инфы от хуевых людей
То есть ты намеренно решил нахвататься хуйни от хуёвых людей? Проверь строку адреса и спроси себя, понимаешь ли ты, что это за сайт.
Аноним 11/09/21 Суб 21:49:35 #69 №769239 
>>769235
>чтобы случайно не нахвататься неправильной инфы от хуевых людей
>полез за инфой в гд
Аноним 11/09/21 Суб 23:11:52 #70 №769248 
149432713511106650.jpg
>>769210
> Что стоит учить сначала, c# или сперва разобраться в ООП?
ООП — это парадигма, C# — это язык, инструмент.
В чём ты хочешь в первую очередь разобраться? Вот в этом и разбирайся.
Но если ты с головой залезешь в теорию, то 99% что ты очень быстро заебёшься и забьёшь сколько я таких повидал, ты охуеешь, так как не видишь живого результата и эту самую теорию не закрепляешь.
Не строй себе графиков, типа "в понедельник ООП, во вторник C#, в среду гоняю капсулу по террейну", ты так очень быстро сгоришь.
Правильно тебе анон говорит, создаёшь проект и делаешь то, что хочешь. По языку есть MSDN, по юнити — документация. Что непонятно — смотришь.
Попляшешь на граблях, набьёшь шишки, построишь пару десятков башен из говна и костылей, после этого поймёшь где у тебя узкие места, поймёшь нахуя нужны абстракции, паттерны, солид, грасп и прочие штуки, выведенные за десятилетия мучений и страданий. Научишься строить грамотную архитектуру, тогда и попрёт.

мимо сеньор-помидор
Аноним 11/09/21 Суб 23:25:12 #71 №769250 
>>769248
>поймёшь нахуя нужны абстракции, паттерны, солид, грасп и прочие штуки, выведенные за десятилетия мучений и страданий.
Забавно, лет 5 ебашу в юньке, и в душе не ебу что эти понятия значат лишь образно представляю о чём речь, и что самое смешное за плечами имею две игры в стиме и десяток в маркете.
Проще описать весь процесс создания игры, чем даже гуглить и читать эти слова от которых в сон бросает.
Алсо, за качество говно-кода не выёбываюсь, но главное что работает и без лагов
Аноним 11/09/21 Суб 23:28:41 #72 №769251 
>>769250
> в душе не ебу что эти понятия значат
Это нормально. У нас есть один в отделе, как два года назад пришёл джуном, так до сих пор джуном и остался. Ему это просто не интересно. Сидит себе пилит что дают, ему норм. Ну и мне норм, такие тоже нужны.
Аноним 11/09/21 Суб 23:43:54 #73 №769255 
>>769251
>как два года назад пришёл джуном, так до сих пор джуном и остался
Это называется галеры. Но больше похоже на выдумку, как за два года активной разработки не апнуться выше? Прохладная история.
Аноним 11/09/21 Суб 23:47:28 #74 №769256 
>>769251
У нас тоже такой был когда я пришел в контору. Посмотрел что и как он пилит, ну и сказал чтоб его пидорнули т.к. пользы от него не было. Начальство не всегда понимает что такие люди типа >>769250 просто не нужны и поэтому не западло им подсказывать.
Аноним 11/09/21 Суб 23:48:20 #75 №769257 
>>769255
> как за два года активной разработки не апнуться выше?
Ему это просто не нужно. Отсидел от звонка до звонка, получил аванс, через 2 недели получил ЗП, смыть, повторить.
Да, код уже совсем не такой говёный, как был когда он пришёл, но он не хочет сам что-то решать а именно это отличает джуна от миддла, он хочет чтобы ему ставили простые задачи и он их делал.
Аноним 11/09/21 Суб 23:55:48 #76 №769258 
>>769256
> такие люди типа просто не нужны
Тут нужно смотреть что за контора, какие проекты и задачи и т.д.
Иногда такие нужны, иногда — нет.
Если он тянет команду на дно, то да, его надо увольнять. Либо перевести в другую команду. Тут надо, опять же, смотреть по ситуации.
Аноним 12/09/21 Вск 00:07:04 #77 №769259 
>>769256
https://www.youtube.com/watch?v=MFe_rZS55Ys
Аноним 12/09/21 Вск 00:17:06 #78 №769260 
>>769250
А надо ли оно? По факту из всех этих парадигм только ецс имеет смысл освоить, улучшает производительность. Хотя и ценой лютого запутывания кода. Солид - говно собаки. Кисс пытается подтереть собачье, и не только, говно. Навязывая очередные принципы, которые должны нивелировать навязанные ранее принципы. Как и yagni. Чтобы пользоваться dry нужно просто быть ленивым, но, что самое смешное, он применим в настолько редких случаях, что, можно сказать, не существует в природе. Вообще в юньке базовая парадигма это КОП, вот и пишите КОП. А когда залагает, тогда вам пизда и переделаете.
Аноним 12/09/21 Вск 00:23:44 #79 №769261 
>>769260
> А надо ли оно?
Если ты сидишь дома и пилишь что-то для себя, то, возможно, и не надо. Ты можешь и в маркете выпускаться и в стиме. Но ты сам по себе.
А в большой разработке — надо, да. Оно не просто так придумано. Оно как раз нацелено на решение кучи однотипных проблем, возникающих при масштабировании проекта, при изменении его курса и прочих факторах, которые неизбежны, если ты на рынке.
Аноним 12/09/21 Вск 01:07:25 #80 №769262 
>>769261
>нацелено на решение кучи однотипных проблем
Но игроделание это специфическая проблема и много хуйни просто неприменимо. Я вот нахуярил много-много опп-кода и вижу, что пора его разделывать на фабрики и менеджеры, которые 15 лет подряд называли плохим кодом.
>А в большой разработке
Ну я последний коммерческий код писал не для игр и там чаще требовали сделать быстро, чем сделать правильно. Да, просто срать в файлы нежелательно, но если на первый взгляд прилично и работает, то похуй. А что у тебя в приложении интерфейсов вообще ни одного - никого не ебёт. Всегда ненавидел это говно, лол, бесполезное засирание пустотой. А потом приходит начальник и говорит, что нужна какая-то фича, крайний срок вчера и вообще. А ты такой, ой знаете, её реализация нарушит принципы open-closed, так что нет.
Аноним 12/09/21 Вск 01:17:34 #81 №769263 DELETED
>>769260
>Солид - говно собаки
Чому? Солид - это просто здравый смысл. Не плодить в классе лапшу, не относящуюся к его роли. Не лазить менять реализацию базового класса. Не ломать в наследуемом классе общую логику базового. Не плодить в интерфейсах лапшу [x2]. Не создавать зависимые объекты там, где не надо, а передавать их извне.
Дри это тупо экономия времени, если ты скопипастил что-то, то ты 100% наебнешься когда будешь что-то менять и забудешь исправить во всех местах, и получишь веселые баги, проверено тысячекратно.
Аноним 12/09/21 Вск 08:46:45 #82 №769266 
>>769256
Конечно если челик работает в конторке, то и требования к нему другие, тут правильно.

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

>>769260
Как уже писали конечно надо, но в другой области разработки, и в больших проектах где просто если дать каждому право делать как хочет, всё наебнётся. Раньше думал что единственное место где эта дрочь может понадобится это в net фраемворках, но после того как сделал игру с реализацией сервер-клиенты понял что и там в пизду это не надо.
Ну и если лагает да, значит ты явно обосрался и иди апать скилл и всё переделывать, тут 100% виноват проггер Если конечно это не 3д где моделист обосрался тоже, сделав ебучие модели по 100к и обвесив их десятками материалов.
Аноним 12/09/21 Вск 11:31:16 #83 №769272 
>>769262
>А что у тебя в приложении интерфейсов вообще ни одного - никого не ебёт. Всегда ненавидел это говно, лол, бесполезное засирание пустотой
Понятно что тут все свои и стесняться некого, но сообщать что ты отсталый долбоеб не обязательно.
Аноним 12/09/21 Вск 11:50:46 #84 №769279 
>>769263
Я не против здравого смысла, но запрещать самому себе модифицировать базовый класс, когда требования к нему уже изменились? Ну такое, ты по сути, пишешь код, который с первого дня - легаси.

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

>>769272
Смешнее всего, что если следовать тому же ягни, то интерфейсы это как раз тот код, который вам не нужен и не должен быть написан никогда.
Аноним 12/09/21 Вск 11:51:59 #85 №769280 
Освятил тред альфа-кабанчиком:

https://www.youtube.com/watch?v=Y9QWCQq3B00
Аноним 12/09/21 Вск 11:55:47 #86 №769283 
>>769279

Если у тебя изменились требования к базовому классу, значить что то ты делаешь не так. Они не могут измекниться.
Аноним 12/09/21 Вск 11:58:42 #87 №769284 DELETED
>>769279
>запрещать самому себе модифицировать базовый класс, когда требования к нему уже изменились?
Если требования изменились, то изменились, но тут речь идет о том, что если ты поменяешь поведение базового класса, то тебе надо во всей программе исправить использование базового и всех его наследников.
Какой-нибудь банальный пример, ну, у тебя класс возвращал в length() длину в байтах, а ты делаешь свой подкласс и такой буду в нем возвращать длину в символах, и где-то в программе начали грустить оверфловнутые буфера.
Аноним 12/09/21 Вск 12:07:50 #88 №769290 
>>769279
>тому же ягни
Кто это, ебырь твой?
Аноним 12/09/21 Вск 12:21:09 #89 №769291 
>>769283
Так у меня процесс разработки идёт, я не могу заранее предсказать требования к классу.

>>769284
Окей, класс возвращает длину в байтах. Но 99 классов из ста используют метод расширения базового класса, который возвращает длину в символах. И, собственно, длина в байтах больше не нужна.
Хотя если на основе какого-то класса массово создаются буфера, то проще сделать фабрику.
Аноним 12/09/21 Вск 12:33:45 #90 №769292 
Вы ебанулись, что вы обсуждаете? Тут тред блять про разработку игр на юнити блять а не шарп под винду.
Всё ваше говно сводится просто к использованию готового ассета и написанию кода по тутору.
Аноним 12/09/21 Вск 12:42:03 #91 №769293 
>>769292
>Тут тред блять про разработку игр на юнити блять а не шарп под
винду

Альфа-кабанчик Роман >>769280 Сакутин тебя обоссал.

Писать праильно только EnterpriseFizzBuzz.

Иначе чмоня, олень и быдлокод.
Аноним 12/09/21 Вск 13:52:36 #92 №769305 
>>769280
>>769293
Он что, запрещает нам срать? Он что, Джейсон Стетхем?
Аноним 12/09/21 Вск 15:33:54 #93 №769331 
image
>>769293
>>769305
Сила в ассетах брат.
Аноним 12/09/21 Вск 17:05:44 #94 №769342 
Использует ли кто-нибудь goto в шарпе? Удобно же.
Аноним 12/09/21 Вск 17:57:09 #95 №769357 
image
Юниторы, может вы поможете?
В общем у меня вылетает одна игра во время загрузки. На полсекунды вылезает окошко как на пикрил (пик взят из интернетов, игра не вальхейм) и потом вылезает ошибка от Виндоуза.
Я смог записать код ошибки, Unity 2019.4.20f1_6dd1c08eedfa.

Что делать? Играю я на ноуте, драйвер своей встроенной видеокарты обновил. Может что-то установить надо?

Игра точно будет работать на моём некроноуте, так как версия игры на питоне запустилась сразу и без проблем.
Аноним 12/09/21 Вск 18:01:09 #96 №769359 
>>769357
Копай в сторону того что использует юнька, и чекай установлено ли это в системе.
Аноним 12/09/21 Вск 18:07:40 #97 №769360 DELETED
>>769359
https://www.dependencywalker.com/ вот такой прогой например
Аноним 12/09/21 Вск 18:10:54 #98 №769361 
>>769357
>Unity 2019.4.20f1_6dd1c08eedfa
Это не код ошибки, это идентификатор билда движка. Можешь поискать логи в аппдате. А лучше обратись в поддержку твоей конкретной игры.

>C:\Users\%USERNAME%\AppData\LocalLow\%ФИРМА%\%ИГРА%
Аноним 12/09/21 Вск 18:42:26 #99 №769364 
>>769359
>>769361
В общем я и программу поюзал и в логе поковырялся. У меня только один вопрос: вот это

ERROR: Shader Hidden/PostProcessing/ScreenSpaceReflections shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
ERROR: Shader Hidden/PostProcessing/Debug/Waveform shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
ERROR: Shader Hidden/PostProcessing/MultiScaleVO shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
ERROR: Shader Hidden/PostProcessing/Debug/Histogram shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
ERROR: Shader Hidden/PostProcessing/Debug/Vectorscope shader is not supported on this GPU (none of subshaders/fallbacks are suitable)
ERROR: Shader Hidden/PostProcessing/Debug/LightMeter shader is not supported on this GPU (none of subshaders/fallbacks are suitable)


означает что я соснул и мне не судьба поиграть на своём ноуте?
Аноним 12/09/21 Вск 18:49:56 #100 №769365 
>>769364
Шейдеры не может запустить на твоей видяхе. Странно, что пытается грузить дебаг шейдеры. Если есть возможность, выключи полностью все пост эффекты в настройках игры. Главным образом отражения. Вообще похоже что у тебя нет DX11.
Аноним 12/09/21 Вск 19:07:23 #101 №769370 
>>769365
Возможности нет, так как я в саму игру зайти не могу.
DirectX11 есть.
Ладно, не буду вам тут мозги ебать. Это уже выходит за рамки треда про Юнити. А тут уже полезли хардварные траблы.
Спасибо вам, юниторы.

За меня не переживайте, я через 10 дней наконец вернусь домой и попробую поиграть уже на своей игровой пекарне.
Аноним 12/09/21 Вск 19:32:23 #102 №769373 
>>769370
>За меня не переживайте, я через 10 дней наконец вернусь домой и попробую поиграть уже на своей игровой пекарне.
Фух, слава богу
Аноним 12/09/21 Вск 20:40:37 #103 №769381 
Анонсы, подскажите нормальный туториал по созданию full body fps контроллера.
Аноним 13/09/21 Пнд 13:55:39 #104 №769451 
pepe-rage.gif
Редактор работает отлично, ни единой ошибки. Собрал проект. Краш. Логи? В логах хуета, по факту нуллпоинтер, но где, откуда? Где-то в цпп. Ага, переключим бекенд на моно, чтобы найти где ошибка. Переключил, пересобрал. Всё работает, ошибок нет, краша нет. В редакторе всё работает. Скопировал манифест в пустой проект, собрал il2cpp. Все работает, ошибок нет. Охуительно.
Аноним 13/09/21 Пнд 14:03:02 #105 №769452 
изображение.png
изображение.png
Сап Кирилляч. Как можно реализовать следующее?

Есть персонаж и его коллайдер, есть мелкий монстрик(мышь) бегающий туда-сюда и его коллайдер.

Как реализовать что бы мышь могла пробегать через персонажа не утыкаясь в его коллайдер , но персонаж все еще мог с ней взаимодейстововать(задавать)?
Аноним 13/09/21 Пнд 14:37:36 #106 №769455 
>>769452
https://habr.com/ru/post/149721/
Аноним 13/09/21 Пнд 15:22:17 #107 №769464 
Начал делать анимации атаки через DOTween и появился вопрос. Предположим у меня сложная анимация, состоящая из около 30 точек, это нормальная практика все 30 точек руками вписывать в метод и потом этот метод вызывать? Может как-то импортировать данные из Animation Clip'oв? Знаю что можно пользоваться анимационными кривыми, но какой способ конвенционально лучший?
Аноним 13/09/21 Пнд 15:34:15 #108 №769465 
>>769464
> какой способ конвенционально лучший
spine
Аноним 13/09/21 Пнд 16:22:43 #109 №769468 
изображение.png
изображение.png
Продолжаю подможите с кодом. Выдает ошибку object reference not set to an instance of an object
Аноним 13/09/21 Пнд 16:23:14 #110 №769469 
изображение.png
изображение.png
Продолжаю подможите с кодом. Выдает ошибку object reference not set to an instance of an object
Аноним 13/09/21 Пнд 16:31:13 #111 №769470 
>>769468
>>769469
А где ты плеер.инстанс назначаешь?
Аноним 13/09/21 Пнд 16:43:14 #112 №769472 
>>769470
В скрипте персонажа
Аноним 13/09/21 Пнд 16:48:15 #113 №769473 
>>769472
Не вижу. Скорее всего, не назначаешь.
Аноним 13/09/21 Пнд 16:54:26 #114 №769474 
изображение.png
>>769473
Аа. все заработало. Держи котика
Аноним 14/09/21 Втр 16:34:00 #115 №769558 
Хочу перекатиться в юнити, думаю сделать что-нибудь вроде дюны или какой-нибудь тд, но не как в мобилках, где на нужные точки башни ставишь, а как аналог в варкрафте замок скиби. Какие подводные?
Аноним 14/09/21 Втр 18:10:55 #116 №769563 
>>769558
Никаких, бери и делай.
Аноним 14/09/21 Втр 18:33:18 #117 №769566 
o5wgz86u6eu21.jpg
>>769558
Рантайм генерация навмешей, соснёшь. Так что советую делать, как в богоугодном варкрафте 3, разбиение на квадраты, а потом уж а-стар справится без навмешей. Но ты всё равно соснёшь.
Аноним 14/09/21 Втр 22:07:01 #118 №769601 
image.png
2.jpg
Что можно почитать/посмотреть о процедурной генерации комнат? Инглиш не проблема, если что
Аноним 15/09/21 Срд 02:06:54 #119 №769632 
>>769566
Нафига для тд вообще пасфайндинг? Поставил себе вейпоинты и двигаеш юнитов между ними.
Аноним 15/09/21 Срд 07:04:04 #120 №769636 
>>769601
тут разжевали, как это работает в Исааке (судя по пикам, у тебя нечто похожее планируется в плане карты)
https://www.boristhebrave.com/2020/09/12/dungeon-generation-in-binding-of-isaac/
Аноним 15/09/21 Срд 10:10:28 #121 №769644 
wintermaul-guide.jpg
>>769632
А игрок строит из башен лабиринт и мобы не могут найти путь. Всё, рефанд, игра говно.
Аноним 15/09/21 Срд 12:07:30 #122 №769652 
>>769558
Перекатывайся, есть навмеш из коробки, есть ассеты, юзал и на 3д и на 2д, если не дорабатывать работает, но смотрится не очень красиво. Пару дней допилить и почти идеал и то что ты хочешь.
Аноним 15/09/21 Срд 13:06:57 #123 №769656 DELETED
>>769644
Тебе надо верифицировать проходимость пути перед сохранением уровня.
Аноним 15/09/21 Срд 13:45:35 #124 №769659 
>>769656
Перед каким сохранением? Ты в товер дефенс не играл чтоли?
sageАноним 15/09/21 Срд 13:54:33 #125 №769660 DELETED
>>769659
В тавер дефенсах башни строят на отведенных приподнятых зонах, а не на поле.
Аноним 15/09/21 Срд 13:55:33 #126 №769661 
>>769660
Это в хуёвых тавер дефенсах так. Поиграй в хорошие.
Аноним 15/09/21 Срд 14:11:00 #127 №769662 DELETED
>>769659
Смотри, допустим игрок посторил коридор, в него зашли мобы. Игрок застроил туннель с обоих концов тупиками. Все, никакой пасфаиндинг тебе не поможет.
Твоя проблема не в пасфайндинге, а в том, что ты не проверяешь возможность строить башни создавая непроходимые пути.
я уж молчу про то, что нормальный пасфайндинг изначально не пойдет под вражеские башни, а обойдет за километр.
Аноним 15/09/21 Срд 14:15:14 #128 №769663 
>>769662
>Все, никакой пасфаиндинг тебе не поможет.
В этом случае мобы начинают атаковать и ломать башни.

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

Поэтому со временем ТД эволюционировала до заранее проложенных путей мобов, на которых башни строить нельзя, позволяя в остальных местах ставить башни как вздумается.
Собственно современные ТД на ПК до сих пор работают по этому принципу.

На мобилочках же для упрощения планирования ца - казуалы, им думать слишком сложно оставили только избранные точки, куда можно ставить башни.
Аноним 15/09/21 Срд 14:33:10 #129 №769666 
>>766778 (OP)
Как экспортировать большие анимационные сцены из блендера? Есть персонажи с индивидуальными анимациями (ходьба, атака...), каждый в своем бленд файле. А есть сцена, где много персов друг с другом взаимодействуют. Могу создать еще один бленд файл для этой сцены, импортнуть туда персов, анимировать их. Потом из этой сцены обратно импортнуть анимации в персональный файл каждого перса, потом все это экспортировать в юнити. Есть способ лучше?
Аноним 15/09/21 Срд 14:39:46 #130 №769667 
>>769662
Ты вообще в ТД не играл, там всё это решено давно. Иногда по-тупому, не позволяя игроку строить башни на дороге, это явно хуёвые тд, потому что не позволяют тебе реализовывать весь потенциал как башни, так и творческий.
>Твоя проблема не в пасфайндинге
Но у меня нет проблемы, я не делаю тд, мне хватило их ещё в нулевых. Хороших, годных тд.
>изначально не пойдет под вражеские башни
Только вот у него точка назначения непосредственно указана и он не может туда не пойти.
Но да, если ты делаешь максимально херовую т.д, то можно даже заранее захаркодить мест 10 под вышки, кликать по ним и жать "поставить вышку". В идеале ещё совместить с каким-нибудь кликером, потому что экстремально скучно получается. Хотя и казуально, для игроков жопой в сортире сойдёт.
Аноним 15/09/21 Срд 15:07:56 #131 №769671 
>>769666
Есть несколько подход.
Самый простой, но и рабочий это есть модельки персонажей с обычными анимация, и дополнительными анимациями по типу: получил урон, прыгнул, использовал. Для отдельных сцен или редкий вариаций используются дубликаты модели, но с нужными анимациями. Подменяется модель персонажа игрока на дубликат при проигрывании нужной, редкой анимации.
Второй метод, хранить все анимации в персонаже, но как понимаешь тут сразу есть и явные минусы, особенно если анимацией и их вариацией под сотню и более, но зато удобное хранение всего в одном месте.

Для твоей же задачи подходит первый вариант. Сложно сказать не глядя. Тут нужно смотреть по гемору, что быстрее и удобнее, анимировать сцену с кучей персонажей в блендере и переносить один ассет, или каждого персонажа по отдельности.
Аноним 15/09/21 Срд 16:42:01 #132 №769683 
>>769671
Неужели в юнити так сложно добавить искаробочный риггинг и сложную анимацию с констрейнами, ИК и драйверами как в блендере? Вот была бы действительно полезная фича, чтобы основной контент можно было пилить непосредственно в самой юнити, а не сторонних прогах, чтобы юнити стал самодостаточным инструментом как флеш. Флеш умер, а его убийцу так никто и не сделал.
Аноним 16/09/21 Чтв 08:40:07 #133 №769760 
>>766778 (OP)
Почему юнити превратился в тяжёлое лагающее говно с лежащими в разных местах фичами и ебанутым интерфейсом?

Аноним 16/09/21 Чтв 16:10:18 #134 №769810 
изображение.png
изображение.png
Труден и тернист путь Кирилла.
Может кто то подсказать? Как запихать методы OnCollider2D/OnTrigger2D в другой метод что бы тот запускался по нажатию кнопки?
Поясню. Нужно включать\выключать лампу. Однако , с моим уровнем знаний после включения лампы из ее коллайдер-триггера нужно выйти и снова войти что бы выключить.
Аноним 16/09/21 Чтв 16:28:24 #135 №769813 
>>769810
Хз что там за лапша у тебя, но проще всего сделать либо массив доступных объектов вблизи, либо чекать коллайдер на нахождением в нём.
Аноним 16/09/21 Чтв 16:35:54 #136 №769814 
>>769813
Как чекать постоянно на нахождение в коллайдере\триггере? OnTriggerStay 2D чекает только в течение нескольких секунд
Аноним 16/09/21 Чтв 16:42:38 #137 №769815 
>>769810
>что бы тот запускался по нажатию кнопки?
Здесь нужно понимать, что весь старый инпут говно собаки. И чтобы без боли в заднем проходе пилить инпут - нужно импортировать и настроить пакадж с новым инпутом. Однако, если его нет..


void Update()
{
if (Input.GetKey("a");)
{
Debug.Log("A!");
//Можешь добавить сюда чё хочешь
}


}

Аноним 16/09/21 Чтв 16:45:48 #138 №769817 
>>769814
https://docs.unity3d.com/ScriptReference/Collider2D.html
OnTriggerStay2D Sent each frame where another object is within a trigger collider attached to this object (2D physics only).
OnCollisionStay2D Sent each frame where a collider on another object is touching this object's collider (2D physics only).

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

Если сможешь описать что ты хочешь я напишу код.
Аноним 16/09/21 Чтв 16:48:03 #139 №769819 
>>769815
>что весь старый инпут говно собаки
Огорчу тебя, новый еще хуже, к тому же наполовину не рабочий. Единственная фича которая мне зашла из нового это возможность менять координаты курсора мыши.
Аноним 16/09/21 Чтв 16:59:39 #140 №769823 
изображение.png
изображение.png
>>769815

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

То есть. Мне нужно что бы или чекалось постоянно (для чего нужно в метод Апдейт запихать метод OnTrigger или запихать этотже метод на if (Input.GetKey("a");). Но он нехрена не работает в обеих этих случаях
Аноним 16/09/21 Чтв 17:06:17 #141 №769824 DELETED
>>769810
Тебе надо поискать в юнити функцию, которая возвращает список того, с кем сейчас collided.
Аноним 16/09/21 Чтв 17:07:31 #142 №769825 
>>769823
Чел, монокласс тебе не надо запихивать в функции или апдейт, просто оставь его как одиночную функцию в скрипте.
Аноним 16/09/21 Чтв 17:08:39 #143 №769826 
>>769824
Спойлер: Такой функции нету, нужно самому реализовывать.
Аноним 16/09/21 Чтв 17:09:02 #144 №769827 
>>769817
Может я что то делаю не так , но у меня OnTriggerStay2D дрочит проверку только несколько секунд после захода в коллайдер цели и при смене позиции внутри него.

Что нужно :
Что бы коррекно работало
void Update()
{ if (GetButtonDown("Knopka")) NajatKnopku();
...
private void OnTriggerStay2D(Collider2D collision)
{
if (collision.gameObject == Lamp.Instance.gameObject&&NajatKnopkeu)

Lamp.Instance.Fire();

}

Аноним 16/09/21 Чтв 17:17:33 #145 №769828 
>>769827
void Fire ()
{ if (On) lampOff(),On=false
else if(!On) lampOn() On=true
}
Аноним 16/09/21 Чтв 17:22:31 #146 №769830 
image
>>769827
Вот рабочий пример. Но лучше конечно реализовывать это по другому.
Аноним 16/09/21 Чтв 17:31:50 #147 №769831 
>>769830
Думал сделать так как один из вариантов. А по выходу из зоны коллайдера флажок InArea сменится с true на false?
Аноним 16/09/21 Чтв 17:35:09 #148 №769832 
>>769831
Там всего два положения - Если объект рядом то истина, если же нет, то ложь. Пограничного состояния, или не известного нет. Это идёт по сотне проверок в секунду, дрочь.
Аноним 16/09/21 Чтв 17:52:15 #149 №769837 
изображение.png
изображение.png
>>769832
Та же проблема что и была, но с другой стороны . При выходе из зоны триггера флажок не меняется на false. По итогу персонаж-телепат и включает лампочки на расстоянии
Что я делаю не так?
Аноним 16/09/21 Чтв 17:58:03 #150 №769839 
>>769837
Где то проёб либо в компонентах, или самих объёктах, что-то упускаешь.
Сделай для теста c OnTriggerEnter и OnTriggerExit, и чекай где у тебя может проёбываться.
Аноним 16/09/21 Чтв 18:13:26 #151 №769843 DELETED
>>769837
>On Trigger Stay
>пребывание на триггере
>функция вызывается только тогда, когда объект находится внутри триггера
Аноним 16/09/21 Чтв 18:22:25 #152 №769848 DELETED
>>769837
1. by lamp стнает false, если в триггер попадет другой объект, хотя лампа все еще останется в триггере
2. если лампа выйдет из триггера, else не выполнится, потому что функция больше не вызовется.

короче, переделывай.
Аноним 16/09/21 Чтв 18:42:13 #153 №769853 
Безымянный.png
>>769819
Полностью отказался от старого инпута, всё делаю на новом, вообще ни одной проблемы не заметил пока что.

>>769823
Ояебу. Я бы на твоём месте вообще нахуй послал коллайдеры. Ну или вот так, наговнякаем лишь бы работало. Пара нюансов, лампам нужен тег, сам нагуглишь и нельзя, чтобы коллайдеры ламп были внахлёст.
Аноним 16/09/21 Чтв 18:45:56 #154 №769854 
>>769853
>GetKey
Это поебота будет прожиматься стро раз за фрейм, нужен down.
Аноним 16/09/21 Чтв 19:25:38 #155 №769855 DELETED
>>769854
О, заебись, стробоскоп.
Аноним 16/09/21 Чтв 20:02:21 #156 №769856 DELETED
>>769854
>GetKey
>Это поебота будет прожиматься стро раз за фрейм
Аноним 16/09/21 Чтв 20:15:51 #157 №769857 
>>769855
>>769856
>>769848
>>769843
Не пойму, это бот отвечает или в чём прикол?
Аноним 16/09/21 Чтв 20:24:46 #158 №769859 
>>769857
Нет, просто рофл с дурачков. Какие сто раз за фрейм, ебанушки
Аноним 18/09/21 Суб 12:18:58 #159 №769975 
Приветствую вас, господа разра/b/отчики.

Пишу небольшую мультиплеерную игру для WebGL и думаю, как реализовать Authority.

Хотел спросить(сам никогда с WebGL до этого не работал),
лучше сделать всё как надо и считать большую часть логики на сервере, чтобы даже при вторжении в код игры извне проект был защищен от читерства
или забить и считать все это на клиенте?

Защищен ли WebGL билд от вторжения, если он крутится на моем сервере?
Аноним 18/09/21 Суб 12:51:46 #160 №769978 
>>769975
>или забить и считать все это на клиенте?
На данном этапе да, в твою игру всё равно никто не будет играть - это первое, логику на сервере ты не осилишь - это второе, но лучше сидеть с игрой в которую никто не играет чем быть безыгорным.
Аноним 18/09/21 Суб 13:18:26 #161 №769979 
>>769975
Палю самый простой и эффективный вариант. Делай всё на клиенте, и не запаривайся насчёт защиты.
Как только ты сделаешь что-то похожее на игру, что можно будет тестово запустить в несколько окон и протестить, только тогда ты поймёшь какие значения и данные следует прятать и не показывать игроку. Потом просто переносишь все связанные с этим вычисления на сервер и всё. Ну и авто логи которые чекают значения в пределах нормы, если нет дисконект.
Аноним 18/09/21 Суб 13:36:27 #162 №769981 
>>769978
>>769979
Благодарю за дельный совет. Я расчитал объем работ, сопряженный с реализацией логики на сервере и действительно, это силно затянет разработку.

Два самых лучших чая вам, Аноны!
Код, который должен выполняться при прерывании корутины Аноним 18/09/21 Суб 17:52:24 #163 №769995 
код1.PNG
Для выполнения атак/передвижения противников использую корутины, но хочется чтобы любую атаку противника можно было остановить, застанив врага.

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

Я исправил это тем, что копировал финальную часть кода (не выполняемую из-за прерывания корутины) и вставлял её в кусок кода, который прерывал корутину. Какое есть лучшее решение этой проблемы? Может как-то можно указать корутине, что определенный кусок кода должен обязательно исполниться
Аноним 18/09/21 Суб 18:15:54 #164 №769998 
>>769995
Сделай в цикле корутины проверку на переменную bool stopped какую-нибудь, while(!stopped && time < AttackDashTime), когда надо закончить корутину делаешь stopped = true.
Аноним 20/09/21 Пнд 14:24:06 #165 №770153 
image.png
>>766778 (OP)
нужна помощь скачал ассет карты
добавил игрока
игрока
контролер
прописал скрипт

в результате игрок проваливается и падает
что делать
Аноним 20/09/21 Пнд 14:58:48 #166 №770156 
>>770153
Давай погадаем.
1. У террэйна или обьектов по которым ходит игрок нет коллайдера.
2. В скрипте игрока в месте с гравитацией указан тэг, или тип который используется для проверки работает ли она, так этот моментик нужно указать объектам по котором игрок ходит.
3. Спав игрока происходит под или ниже средней линии террэйна.
4. Скорость или механизм гравитации слишком высок, что делает игрок не восприимчивым к любым коллизиям.

Пробуй боец.
Аноним 20/09/21 Пнд 15:18:19 #167 №770161 
>>770153
первое
спс
Аноним 20/09/21 Пнд 15:36:03 #168 №770162 
Новый проект на URP

При движении строго влево-вправо или строго прямо-назад все вроде нормально.
При движении по двум осям сразу, да если еще и крутить камеру пытаясь удержать объект, вокруг которого ты идешь, в центре экрана - получается вырвиглазный пиздец с дерганьем камеры/геометрии и остаточными контурами (ghosting?).

Капсюль со стандартным rigidbody.
Код движения:
rb = transform.GetComponent<Rigidbody>();
void Update()
{
float x = Input.GetAxisRaw("Horizontal");
float z = Input.GetAxisRaw("Vertical");
Vector3 moveBy = transform.right x + transform.forward z;
rb.MovePosition(transform.position + moveBy.normalized speed Time.deltaTime);
}

Код камеры:
Vector2 mouseLook;
Vector2 smoothV;
public float sensitivity = 2.0f;
public float smoothing = 1.0f;
GameObject character;

public void Update()
{
var md = new Vector2(Input.GetAxisRaw("Mouse X"), Input.GetAxisRaw("Mouse Y"));

md = Vector2.Scale(md, new Vector2(sensitivity smoothing, sensitivity smoothing));
smoothV.x = Mathf.Lerp(smoothV.x, md.x, 1f / smoothing);
smoothV.y = Mathf.Lerp(smoothV.y, md.y, 1f / smoothing);
mouseLook += smoothV;
mouseLook.y = Mathf.Clamp(mouseLook.y, -90f, 90f);

transform.localRotation = Quaternion.AngleAxis(-mouseLook.y, Vector3.right);
character.transform.localRotation = Quaternion.AngleAxis(mouseLook.x, character.transform.up);
}
Аноним 20/09/21 Пнд 23:49:18 #169 №770238 
Где искать работку вкатышу? Судя по вакансиям для джунов(hh), много где нужен опыт 1-2 года + проект
Аноним 21/09/21 Втр 00:00:18 #170 №770240 
>>770238
Что-то не то ищешь, джуном не требуется опыт. 1-2 года кек, "джун с опытом" - оксюморон какой-то. Таких надо стороной обходить.
Аноним 21/09/21 Втр 00:06:10 #171 №770242 
>>770240
Кабанчикам HR-ам подавай с опытом, да побольше.
Поэтому и спрашиваю, где искать?
Аноним 21/09/21 Втр 00:29:54 #172 №770243 
>>770242
Сроки опыта пишут для отпугивания бесхребетных чуханов, просто в резюме кидаешь ссылки на свои игори (пару демок надо иметь в портфолио) и ты принят.
Аноним 21/09/21 Втр 00:33:33 #173 №770244 
>>770243
Примерно так и думал. А по сайтам поиска подсказать не можешь?
Аноним 21/09/21 Втр 00:38:02 #174 №770248 
>>770243
Ищу вакансии на удалёнке, но их очень мало. Всё-таки нужно в ДС-ы перекатываться для начала?
Аноним 21/09/21 Втр 09:51:38 #175 №770276 
как обьеденить train-ы
в один
нашел только это
http://gamesetup.ru/topic/259.html
но по мне это какойто костыль

Аноним 21/09/21 Втр 11:10:03 #176 №770284 
>>770276
>и программное ограничение кол-ва кадров. Последнее, к слову говоря, можно смело ставить на 30-40, человеческий глаз все равно больше не увидит
Статью годотя писала? Дальше не читал.
Аноним 21/09/21 Втр 11:25:14 #177 №770285 
>>770284
>>770276
>Последнее, к слову говоря, можно смело ставить на 30-40, человеческий глаз все равно больше не увидит
Не читал что там, но это же бред. Как такие люди живут на свете? Всё что ниже 300 кадров, 144гхц грязь.
Аноним 21/09/21 Втр 11:49:25 #178 №770292 
сука все сношу винду
это невозможно
ридер
10 вкладок хрома
и юнити
и все вылетает лагает
где мои 8 гигов оперативки fx 6100
надо сносить винду
Аноним 21/09/21 Втр 12:07:31 #179 №770296 
>>770292
У меня на ноуте 4гб, и работать в юнити боль. 8 конечно лучше, но минимум сейчас надо 16 для комфорта, чтоб и музычку слушать и двачик скроллить во время разработки.
Аноним 21/09/21 Втр 12:51:36 #180 №770298 
image.png
>>766778 (OP)
Как же так, Blasphemous не упомянут в шапке.
Аноним 21/09/21 Втр 15:07:39 #181 №770310 
>>766778 (OP)
Всем привет. Хотел бы задать простой вопрос.
Как вы двигаете transform если объект должен двигаться только когда он активирован?

Мой вариант примерно такой

void FixedUpdate()
{
if(!isActive)
return;
transform.position += moveDirectiorn * speed;
}

И все отлично. Но проблема если таких предметов много ( >1000). И я уже начинаю думать что надо было использовать корутины при активации.
Аноним 21/09/21 Втр 15:55:16 #182 №770318 
>>770310
>Но проблема если таких предметов много ( >1000)
В чём проблема? И почему ты юзаешь FixedUpdate?
Аноним 21/09/21 Втр 16:08:13 #183 №770320 
>>770318
Как сделать лучше?
Вначале мне было его удобнее использовать чтобы двигался объект в независимости от фпс
Аноним 21/09/21 Втр 16:22:25 #184 №770323 
>>770320
В апдейте с умножением на тайм.дельтатайм
Аноним 21/09/21 Втр 16:53:01 #185 №770326 
>>770323
Да. Но проблема того что он будет это делать каждый кадр остаётся.
Вот и думаю о корутинах
Аноним 21/09/21 Втр 17:56:00 #186 №770339 
>>770326
Ну будет у тебя тысяча ифов чекаться, дальше что? Тормозит что ли? Ну при активации стартуй корутину тогда
Аноним 21/09/21 Втр 17:56:17 #187 №770340 
>>770326
Не стоит думать об оптимизации того, что оптимизировать не надо и обусловлено самим движком. Не засовый в апдейт кучу кода и всё. Нужные вещи вызываются одноразово. В апдейте только всякое говно с вычислением при необходимости которое выключается когда не надо.
Аноним 21/09/21 Втр 18:11:03 #188 №770344 
>>770339
>тысяча ифов чекаться
Блин, сделал три миллиона ифов в скрипте, райдер завис. Вырубил. Юнити при запуске упал нахуй, слабаки
Аноним 21/09/21 Втр 18:23:37 #189 №770345 
image.png
>>770344
Эх райдер, как не стыдно
Аноним 21/09/21 Втр 18:26:38 #190 №770347 
>>770345
>>770344
Опа, поясните за райдер. Всё планирую перекатиться на него со студии, т.к заебало что она большая и лагучая и куча лишнего функционала. На сколько он удобнее и быстрее? Триал раз в месяц батником и всё, траблов во время работы нет?
Аноним 21/09/21 Втр 18:38:41 #191 №770352 
>>770347
Да
Аноним 21/09/21 Втр 18:40:56 #192 №770357 
image
>>770352
>...
..

Подробности где?
Аноним 21/09/21 Втр 18:47:12 #193 №770361 
>>770357
Мне райдер больше нравится. Но я не профи, не знаю всех тонкостей. Для себя пришлось немного цвета в теме менять, плагин скачал для скролла средней кнопкой мыши, всё заебись, он за меня код пишет, я просто наблюдаю и радуюсь
Аноним 21/09/21 Втр 18:56:33 #194 №770366 
>>770361
Проблемы с установкой, или во время работы не возникало из-за отсутствия лицензии? Всякие там вылезающие окошки с регой и т.п?
Аноним 21/09/21 Втр 18:58:35 #195 №770367 
>>770366
Не было проблем, но окошко немного бесит, когда включаешь, оно вылазит и нужно три клика сделать, невыносимо, знают на что давить.
Аноним 21/09/21 Втр 19:04:51 #196 №770369 
>>770367
Мда, как раз бесит такое, особенно если во время написания внезапно какое нибудь говно вылезет.
Наверное тогда всё таки попробую его завтра поставить, слишком уж его хвалят все, что он удобнее и быстрее студии, пора трайнуть.
Аноним 21/09/21 Втр 19:16:51 #197 №770371 DELETED
>>770347
VS code же есть.
Аноним 21/09/21 Втр 19:21:10 #198 №770373 
>>770369
Оно вылазит только при старте один раз
Аноним 21/09/21 Втр 19:29:26 #199 №770377 
image
>>770371
Кстати про него забыл, как то давно ставил, и что то он не хотел доки с юньки подтягивать и я забил.
Ща поставил, вроде шустро, единственное комменты кирилики не отображает.
Аноним 21/09/21 Втр 19:33:00 #200 №770379 
>>770347
В райдере редактор вин формочек багнутый. В остальном райдер лучше студии при наличии волшебного батника конечно
Аноним 21/09/21 Втр 19:50:32 #201 №770389 DELETED
>>770377
В правом нижнем углу чекни
Аноним 21/09/21 Втр 20:01:27 #202 №770401 
>>770389
Да уже гуглил, переставлял, даже установил русский пак, старые комменты вопросики, но если новые писать на ру то ок, думаю чито поделать.
Аноним 21/09/21 Втр 20:06:27 #203 №770404 
Бляяяя оно файл перезаписало, теперь и в студии эта херота, сука....
Аноним 21/09/21 Втр 20:10:20 #204 №770409 
>>770404
Зато теперь будешь знать какая кодировка должна быть в документах.
Аноним 21/09/21 Втр 20:18:04 #205 №770420 
>>770409
Зачем я на ночь глядя решил заняться этим, мде... Теперь ебаться и вспоминать что где было.
Аноним 21/09/21 Втр 20:22:36 #206 №770424 
>>770420
Вообще райдер автоматом конвертирует кракозябры в UTF-8 когда открываешь файл, так что это ты сам что-то сломал.
Аноним 22/09/21 Срд 11:07:04 #207 №770522 
You must include a demo scene (.unity file) in order to be approved. You must include a .unity file within your submission that shows your asset working. If your contents are 3D models, there need to be prefabs placed within the scene in an appealing way that shows all of the contents of the package. Please include 3-point lighting set up and a floor plane with a flat color material to set up your 3D models on. If there are animations included within the package, you must display those in the demo scene. For information on attractive lighting setups, please go to this link: https://unity3d.com/learn/tutorials/topics/graphics/introduction-lighting-and-rendering (https://unity3d.com/asset-store/sell-assets/submission-guidelines, Section 3.3.a)

Какое демо? Если там пропсы обычные, меш и текстуры
Аноним 22/09/21 Срд 13:17:56 #208 №770536 
>>770522
А если ты нахуячил где-то 100500 тыщ полигонов в скрытой геометрии, из-за которой сцена с твоим ассетом будет выдавать 5 фпс? Это же нужно проверить. Ну и сделай презентабельно, чтобы купить захотели и проблем подобной выше не было. Или иди на цгтрейдер какой-нибудь.
Аноним 22/09/21 Срд 15:02:04 #209 №770554 
>>770536
А чем тебе так цгтрейдер презрителен. Треш ты конечно можешь там выставить, но его никто не купит. Юнити куча правил, ничего не объясняет,комментарии не дают хотя там исправить пару кликов, ждешь месяцами.
Аноним 23/09/21 Чтв 16:34:20 #210 №770732 
изображение.png
Чому не работает такая конструкция в связке с ...Input.GetKeyDown("space")
Аноним 23/09/21 Чтв 17:35:58 #211 №770737 
>>770732
Вместо "space" надо KeyCode.Space
Если у тебя визуал студия то она должна была подсказать автокомплитом что вводить.
Аноним 23/09/21 Чтв 23:11:47 #212 №770766 
2.png
3.png
4.png
1.png
суп гдач, на связи мамкин праграмизд плохо секущий в ооп

Допустим есть класс, BeizerMover, он перемещает годаунов по кривой безье, но в моём проекте разные типы годаунов, одни сосут хуй Хуанатм (SimpleMover), другие на нём прыгают (SimplePhysicMover), и чтобы не было конфликтов, то все годауны которых можно двигать реализуют интерфейс IMove, что гарантирует что они все будут идти по кривой безье к хую Хуанатм.

Но встаёт проблема, как вызывать движение годаунов через интерфейс, ведь я же не стану проверять каждого годотю через какой скрипт его нужно двигать, заражусь ещё. Если просто объявить поле с типом IMover в качестве годоти, то его не видно в редакторе, и вообще ему не присваивается значение, что приводит к ошибке.
Как же Даше-Путешественнице заставить годоть присесть на хуй Хуанатм и при этом не зашквариться?
Аноним 23/09/21 Чтв 23:17:48 #213 №770767 
>>770766
Создаешь все объекты IMover через манагер который сохраняет созданные объекты в список и он же Move у IMoveров будет вызывать в цикле. Интерфейс через sozdanniyImover.GetComponent<IMover> можно достать.
Аноним 23/09/21 Чтв 23:19:14 #214 №770768 
изображение.png
>>770737
Та же херня. Без ...&& Input.GetKeyDown(KeyCode.Space) работает , с ней нет. Где проебываюсь?
Аноним 24/09/21 Птн 01:09:18 #215 №770773 
>>770767
Спасибо, через getComponent<IMover>().Move() работает, но всё равно не могу понять, почему я могу присвоить значение полю с типом GameObject, из которого потом достать интерфейс, а присвоить значению полю с типом интерфейса - нет, с остальными компонентами же всё так и работает, интерфейс что, особенный? Хотя вроде догадываюсь, интерфейс же нельзя инстанировать, хотя по идее присвоение значения полю это не создание нового интерфейса, или всё таки создание?
Аноним 24/09/21 Птн 01:18:19 #216 №770775 
5.png
изображение.png
>>770773
Проще говоря, почему пик1 работает, а пик2 даже не отображает IMover, а если через костыли и отображает, то не работает?
Аноним 24/09/21 Птн 01:36:31 #217 №770776 
>>770768
OnTriggerEnter срабатывет в момент когда объект залезает в триггер. У тебя код "если в момент захода в триггер надавить на пробел..." - ты никогда не сможешь тыкнуть пробел именно в момент срабатывания триггера. Юзай OnTriggerStay, он вызывается пока объект находится в триггере.
Аноним 25/09/21 Суб 00:32:03 #218 №770835 
image.png
>>770776
так какого хуя
у меня функция закрывается внутри цикла
Аноним 25/09/21 Суб 01:55:56 #219 №770836 
>>770835
И что ты хотел показать этим скрином?
Аноним 25/09/21 Суб 02:25:57 #220 №770838 
>>770836
>>770836
табуляция
Аноним 25/09/21 Суб 02:30:27 #221 №770839 
Продукты, опубликованные с этой лицензией, не могут быть проданы, переданы или переданы другому физическому или юридическому лицу в том виде, в каком они загружены с сайта, но могут быть использованы в ваших коммерческих проектах несколько раз после оплаты только один раз.

так я не понял использовать в комерции можно или нет
Аноним 25/09/21 Суб 03:12:03 #222 №770842 
Почитал в треде советуют начинать делать свою игру по примерам сразу же и тем самым обучаться.
Я уже начал c# учить по курсам с ютуба, с нуля буквально, стоит закончить обучение хотя бы базовым вещам языка или можно сразу переходить к практике с юнити?
Аноним 25/09/21 Суб 08:42:32 #223 №770844 
014856172693465.jpg
>>770842
Можно, разрешаю
Аноним 25/09/21 Суб 09:08:58 #224 №770847 
>>770839
Купил ассет, не можешь его выложить в маркет от своего имени. Но можешь вставить ассет в проект и зарелизить, получая с проекта денежный профит.
Аноним 25/09/21 Суб 09:16:24 #225 №770848 
15321585564540.jpg
>>770839
>могут быть использованы в ваших коммерческих проектах несколько раз после оплаты только один раз.

Аноним 25/09/21 Суб 13:07:08 #226 №770873 
>>770842
Основу посмотри от самих юников на ютабе, это около 2 часов ирл времени, и далее только практиковаться в юньку, не надо тратить время и силы на чтения всякое устаревшей залупы, главное опыт.
Ну и второе по значимости, если что-то не получается реализовать, идёшь в гугл гуглишь примерно что представляешь на инглише, также ошибки сразу туда же гуглить.
Аноним 25/09/21 Суб 13:54:37 #227 №770896 
>>770873
Спасибо за ответ.
Аноним 25/09/21 Суб 15:43:45 #228 №770915 
изображение.png
Вопрос по аниматору. Как проще сделать что бы анимация не зацикливалась?

То есть что бы при определенном условии анимация начинала проигрываться и останавливалась на последнем фрейме?
Аноним 25/09/21 Суб 16:24:53 #229 №770918 
fy
Аноним 25/09/21 Суб 18:29:38 #230 №770932 
Что лучше, в одном классе иметь ссылки на все компоненты и получать доступ к копонентам через этот класс или по необходимости вызывать GetComponent там, где он нужен, даже если этот компонент уже хранится в другом классе, к которому есть доступ?
Аноним 25/09/21 Суб 18:42:12 #231 №770935 
>>770932
Делай так как удобно, единственное не вызывай этотгет в апдейте или каждый фрейм.
Аноним 26/09/21 Вск 01:44:00 #232 №770986 
>>770935
>в апдейте или каждый фрейм
Масло масляное
Аноним 26/09/21 Вск 01:53:02 #233 №770987 
Существует ли вообще нормальный классический FPS контроллер? Чтобы не прилипал к стенам, поднимался по ступенькам, пинал ящики, отскакивал от прилетевших ящиков, переносился и вращался движущимися платформами?
Аноним 26/09/21 Вск 08:50:10 #234 №770993 
>>770987
>Чтобы не прилипал к стенам
???

>поднимался по ступенькам
Делаются просто пологими.

>пинал ящики
Отдельно в скрипте.

>отскакивал от прилетевших ящиков
Отдельно скрипт.

>переносился и вращался движущимися платформами
Отдельно скриптом.
Аноним 26/09/21 Вск 12:56:55 #235 №771010 
>>770993
Там вроде как есть Rigbody для физики. Хотя при попытке использовать его в качестве контроллера он начинает вести себя как говно, и всё равно приходится писать куту скриптов.
Аноним 26/09/21 Вск 15:33:58 #236 №771023 
>>770987
Наверняка существует, но ты можешь сам найти на гитхабе сорсы квейка и посмотреть, как там это сделано, и сделать так же.
Аноним 26/09/21 Вск 15:37:23 #237 №771025 
>>771023
Как раз сейчас и копаюсь в них. Но почему так? Я же использую целый движок! Почему там нет готовых встроенных решений?!?!
Аноним 26/09/21 Вск 15:40:32 #238 №771026 
>>771025
Есть шаблон проекта FPS Microgame, можешь оттуда контроллер вытащить.
Аноним 27/09/21 Пнд 20:15:26 #239 №771126 
TileJungle2-6.png
TileJungle2-5NE-E-SE-SW-W.png
TileJungle2-3NW-NE-E.png
TileJungle2.png
В который раз сажусь пилить свои корованы, вот дошел до этапа, на котором требуется работа с графонием. Больше всего, как я сейчас вижу, мне подходят тайлмапы. Суть игры в том, что можно отправлять корованы, и они быстрее едут по тайлам, соединенным дорогами, и мне кажется, здесь-то я и ебанусь. Я планировал 6 типов природы: луга, леса, жунгли, пустыня, болота, снега. На каждый тип по три варианта тайла. Для каждого тайла надо нарисовать все возможные конфигурации дорог, их всего 40... И еще я планировал разное качество дорог, 3 уровня. Итого, 6 3 40 * 3 = 2160 тайлов... Я не беру в расчет особые тайлы - города, деревни, важные места, и т.д., их не так много относительно общих, но в итоге все равно выйдет где-то 2500. И тут закономерный вопрос, как теперь жить то блядь? Не, я понимаю, что работа так-то умственного труда не требует, можно навалиться и за один день все запилить, просто надо засесть. Но может подскажете более простой способ, как с такой задачей разобраться?

Еще проблема в том, что отдельным тайлам нельзя настроить собственную логику, они не инстансы, а ссылки на один и тот же библиотечный объект в палитре. Начал смотреть в сторону объектовых тайлов, чтобы каждый тайл был объектом и ему можно было в инспекторе накидать логику - в каких направлениях дороги, какого качества, и какой вид он в связи с этим должен принять, но это надо в 3д вкатываться, в блендеры хуендеры, я в этом вообще не шарю. Помогите советом, братва.
Аноним 27/09/21 Пнд 21:05:13 #240 №771131 
>>771126
Пчел, не надо не каких тысяч разных объектов, реализовывай логику которая позволит смешивать и изменять графику. В твоей же случаи точно стоит это делать по другому, никаких сотен вариаций, всё намного проще.
Первый слой это графика лес/луг и т.д.
Второй слой это дорога, и в него же входит улучшение по средством уровня.
Еще раз напишу, что всё намного проще, не надо мудрить.
Аноним 27/09/21 Пнд 21:17:22 #241 №771132 DELETED
>>771126
Ты же понимаешь что на твоих картинках никаких 2500 нет? У тебя деревья одинаковые. Разница только в трех желтых полосках.
Аноним 27/09/21 Пнд 21:45:21 #242 №771137 
>>771131
Да, я это понимаю, было бы здорово рисовать на тайле в несколько уровней. Нижний - нетронутая природа, средний (или несколько их) - уровень дорог, верхний - природа со стертыми по маске линиями под дороги. Но только готового решения под такую задачу нет, а я уже говорил, я не так силен в графике, чтобы запилить собственный компонент.

>>771132
Начал сейчас считать и понял, что их даже больше, чем 40. Я не посчитал все тройные дороги.

На каждом тайле могут быть следующие варианты конфигураций дорог. Дорогой я называю путь от края до центра тайла. Итак. 1 - нет дорог, 1 - все дороги, 6 - одна дорога с каждого направления с тупиком в центре, 6 - две дороги под 45 градусов, 6 - две дороги под 60 градусов, 3 - две дороги под 180 градусов (напрямую), 6 - три дороги под 45, 12 - три дороги (из них 2 под 45 и одна под 60), 2 - три дороги под 60 (трехконечная звезда), 6 - четыре дороги под 45 градусов, 6 - 5 дорог под 45 градусов. Итого - 55. На один вариант тайла. Короче, это точно не вариант так ебаться.
Аноним 27/09/21 Пнд 21:48:19 #243 №771138 DELETED
>>771137
Ты же понимаешь, что это всего ШЕСТЬ вариантов? Что дорога состоит из 6 линий, каждая из которых вкл/выкл? Ну семь от силы, если еще центр нарисовать.
Аноним 27/09/21 Пнд 21:50:32 #244 №771139 
>>771138
Не так, дели на два. Или даже четыре, лень думать. Потому что половина случаев - просто зеркальное отображение другой половины.
Аноним 27/09/21 Пнд 21:55:37 #245 №771141 
>>771138
Да, это шесть вариантов, если рисовать дороги отдельным слоем. Если ты знаешь, как это сделать, то я рад буду послушать.
Аноним 27/09/21 Пнд 21:56:00 #246 №771142 
image.png
Я указал, чтобы игнорировался слой номер 2. И тем не менее, он вполне себе хитится, в дебаге выдает: layer = 2 (это я свой класс дебага написал).
ЧЗХ, как мне заставить, что луч пролетал мимо layer 2
Аноним 27/09/21 Пнд 21:56:19 #247 №771143 
preview890 (2).png
sample66.png
>>771126
Возьми бесплатный ассет, попробуй с ним поработать. Понравиться поменяешь на более красивое.
Аноним 27/09/21 Пнд 22:07:11 #248 №771147 DELETED
>>771141
Способов так много, что их перечисление тут будет слишком утомительно и излишне. Можно, например, держать 6 картинок с прозрачностью и скрывать их по надобности. А можно раскрашивать шейдером.
Аноним 27/09/21 Пнд 22:09:42 #249 №771148 
image.png
Как такое вообще может быть? По умолчанию, если не передать layerMask в physic.raycast, игнорироваться будет IgnoreRaycast. Так почему же он не игнорится, аааа
Аноним 27/09/21 Пнд 23:55:05 #250 №771153 
>>771148
Разобрался.
Проблема уже несколько лет существует (https://forum.unity.com/threads/raycast-on-child-gives-parent-name-in-hit-transform-name.57172/), а юнитя не может добавить пофиксить это, или добавить разъяснение в документацию, что, если луч ударил в дочерний обжект, то raycastHit.transform ссылается на родителя. Поэтому, если нужно получить именно тот обжект, куда реально стукнул луч, надо писать raycastHit.collider.transform.
Пиздец, как же я блять до того не додумался-то, это же блять так очевидно. Вот из-за таких странных багов, на которые тратишь по пол дня, мне прям очень хочется дропнуть юнити. Но потом осознаю, что в других движках тоже могут быть проблемы, да и изучать что-то новое времени нет, поэтому продолжаю страдать
Аноним 28/09/21 Втр 00:45:08 #251 №771155 DELETED
>>771153
>мне прям очень хочется дропнуть юнити
Так дропай, хули ты разнылся, думаешь тебя утешать кто-то тут будет? Полдня потратил, на тебя мамаша 15 лет потратила а всё равно вырос долбоеб.
Аноним 28/09/21 Втр 06:33:10 #252 №771170 
>>771153
>Вот из-за таких странных багов,
Это не баг, а особенность, у меня тоже несколько таких случаев было. Юнити хорош тем, что уже всё сто раз обсосано, нужно усиленно гуглировать
Аноним 28/09/21 Втр 11:18:20 #253 №771189 
>>771153
Физоний в юнити от нвидии, так что это не проблема юнити и пофиксить они её вряд ли могут. Если вообще хотят, сейчас-то на подходе два новых физона, все силы туда кинуты. Я надеюсь.
>очень хочется дропнуть юнити
Если тебе хочется дропнуть юнити из-за проблем, которые решаются за полминуты, то лучше дропай.
Аноним 28/09/21 Втр 11:35:46 #254 №771193 
>>771189
>решаются за полминуты
хм, и как бы ты за полминуты решил этот вопрос, не зная, что hit.transform.gamoeobject это не всегда hit.collider.transform.gamoeobject
Разве что на форум пошел спросить, где мне и помогли
Аноним 28/09/21 Втр 11:39:25 #255 №771194 
>>771193
Во всех туторах и примерах по рейкасту юзают hit.collider.transform а не hit.transform. Это уже ты навыдумывал что-то.
Аноним 28/09/21 Втр 11:46:17 #256 №771196 
>>771193
В гугл вбиваешь и читаешь десятки постов. На ансверхабе таких, как ты, очень много. Буквально с такой же "проблемой".
Хотя сначала я думал, что ты долбоёб из-за длины луча.
Аноним 28/09/21 Втр 11:54:52 #257 №771197 
>>767111
Ну, если работает нормально, то лучше не трогать. Если визуально, я бы вместо построчного повторения перменных, сделал бы всё в одну строку, соответствуя типу. Например:
public Vector3 Up, Down, Left, Right;
Код будет более компактным, а работать будет так же.
Аноним 28/09/21 Втр 12:02:56 #258 №771198 
>>771196
гуглил, у всех проблема - неправильно маску прописали или типо того. я все делал по их коду тем не менее, не получалось. ах да, писали везде raycastHit.transform а не raycastHit.collider. Но я на это особо и не предавал этому значения. С чего бы? Я же не знал, что проблема именно в этом. знал бы - тогда и проблемы бы не было.
у меня же была проблема:
есть parent с layer Raycast Ignore, и есть дочерний объект, который мне и нужно ловить лучом, минуя родителя. Но ловился всегда родитель
Аноним 28/09/21 Втр 12:03:16 #259 №771199 
>>771196
гуглил, у всех проблема - неправильно маску прописали или типо того. я все делал по их коду тем не менее, не получалось. ах да, писали везде raycastHit.transform а не raycastHit.collider. Но я на это особо и не предавал этому значения. С чего бы? Я же не знал, что проблема именно в этом. знал бы - тогда и проблемы бы не было.
у меня же была проблема:
есть parent с layer Raycast Ignore, и есть дочерний объект, который мне и нужно ловить лучом, минуя родителя. Но ловился всегда родитель
Аноним 28/09/21 Втр 13:03:02 #260 №771205 
>>766778 (OP)
Котятки, я уже давно задался идеей реализовать управление через систему событий в юнити. Идея такая: есть скрипт, который отслеживает определённый ввод по нажатию кнопки/движению стика/етц, а затем запускает определённое событие, на которое подписаны объекты. Цель данной затеи в том, чтобы не отслеживать нажатие кнопок в апдейте для каждого объекта, как учат во всех туторах по юнити. В общем, мне такой подход кажется более целесообразным и красивым, но я не надеюсь на какой-то большой прирост производительности, а просто хочу повыёбываться. Подскажите пж, как это можно грамотно реализовать/что почитать/готовые решения, а то я новичок и лох. Заранее спасибо.
Аноним 28/09/21 Втр 13:08:08 #261 №771206 
>>771205
Грамотнее всего это реализовывается так.
Жмёшь Window, там выбираешь Package Manager. Там жмёшь import from git url. Туда вводишь com.unity.inputsystem.
Аноним 28/09/21 Втр 13:11:44 #262 №771207 
>>771206
Это та самая новая система инпута от юнити?
Аноним 28/09/21 Втр 13:12:02 #263 №771208 
>>771205
public enum KeyType { A, B, C, ... и т.п. }
...
public event Action<KeyType> OnKeyDown;
public event Action<KeyType> OnKeyUp;
...
void Update()
{
if(Input.GetKeyDown(KeyCode.A)) OnKeyDown?.Invoke(KeyType .A);
... и т.д.
}
Аноним 28/09/21 Втр 13:12:09 #264 №771209 
>>771207
Запятые не нужны, бтв)
Аноним 28/09/21 Втр 13:13:41 #265 №771210 
>>771208
Ну ты предлагаешь всё равно через апдейт отслеживать нажатие клавиш, а я как раз хотел бы уйти от этого. Хотя я не представляю, как это можно сделать и можно ли вообще.
Аноним 28/09/21 Втр 13:16:10 #266 №771211 
>>771210
В одном скрипте будешь отслеживать, во всех остальных скриптах будешь подписываться на эвенты этого скрипта.
Аноним 28/09/21 Втр 13:17:53 #267 №771213 
>>771207
Она уже не новая.
Аноним 28/09/21 Втр 13:19:41 #268 №771214 
image.png
>>771211
Это фасад или god object?
>>771213
А какая тогда новая? Тоже чекну по пути
Аноним 28/09/21 Втр 13:27:17 #269 №771215 
>>771214
Есть Input Manager и Input System, никакой "новой" нет. Новой была input package, но сейчас она уже просто актуальная.
Аноним 28/09/21 Втр 13:38:20 #270 №771216 
image.png
>>771206
>Жмёшь Window, там выбираешь Package Manager
Жмешь Project Settings, там выбираешь Other Settings
Аноним 28/09/21 Втр 13:47:50 #271 №771217 
>>771216
Там дальше ещё схемы создавать и т.д. Не буду же я всё разжовывать, когда всё и так понятно.
Аноним 28/09/21 Втр 14:07:46 #272 №771218 
Можно ли запихнуть массив предметов в массив более широкого класса (например юнитов в геймобжект)?
Аноним 28/09/21 Втр 14:21:37 #273 №771219 
>>771218
Можно что угодно, можно хоть массив в массив и на массив, всё зависит от потребностей, скилла кодера который всё это пропишет и сам себя не наебёт где-то при передачи ссылки, и не создаст парадигму феллера.
Аноним 28/09/21 Втр 14:54:03 #274 №771221 
>>771217
Окей, спасибочки. На ютабе уже нашёл туторы. Цмок в пупок
Аноним 28/09/21 Втр 14:57:15 #275 №771222 
>>771219
>парадигму феллера
Я такую не смогу. Могу только парадигму вафлёра создать
Аноним 28/09/21 Втр 15:05:59 #276 №771223 
1.png
2.png
А вот такую хуйню я вижу впервые. У куба и плейна один и тот же материал, но куб это GameObject, а плейн это entity. Это, конечно, не ошибка, просто плейн не получает информации об освещении, но в итоге задумался. Чтобы плейн с кубом рендерились одинаково, я уже добавил на плейн 15 компонентов. Это причём просто плейн, без логики никакой. Будет ли вообще хоть какой-то прирост перформанса-то, лол. Кто вскрывал эту тему, давайте советов мудрых.
Аноним 28/09/21 Втр 15:33:05 #277 №771227 
>>771222
Пчел, борда 18+, с вкшэчкой не перепутал? А ну брысь отсюда.
Аноним 28/09/21 Втр 15:41:47 #278 №771229 
>>771227
Ты чего разверещался то, пердикс?
Аноним 28/09/21 Втр 16:37:42 #279 №771260 
Снимок.PNG
Юнити грузит материалы в память.
Даже если на сцене нет ни одной модели которая бы использовала / ссылалась на материал.

Создаю новый материал (не в папке Resources) получаю + 3мб к расходу памяти (графа Textures).

Так же не должно быть, чяднт?
Аноним 28/09/21 Втр 18:06:49 #280 №771275 
Юнитеки выложили в самом деле полезную статью
https://blog.unity.com/technology/speed-up-your-programmer-workflows
Я не ньюфаг, но некоторых вещей не знал..
Аноним 28/09/21 Втр 18:24:21 #281 №771281 
>>771275
К сожалению ничего нового или интересного не увидел. Ньюфагам да, будет пара вещей полезна, особенно взять за привычку делать кастомный юи.
Аноним 28/09/21 Втр 19:58:36 #282 №771286 
>>771205
Как сказали выше - InputSystem.
С одной стороны удобно что оно за ьебя разруливает штуки типо "удерживай Е 5 секунд чтоб открыть ящик". С другой - GodObject 99% гаррантирован. И всё равно половину инпута прихлдится получать в апдэйте.
Аноним 28/09/21 Втр 20:07:11 #283 №771287 
>>771286
Ньюфани досихпор не научились в менеджеры? В чём сложность сделать уникальную обработку нажатий всего лишь в одном скрипте, не разнося это дело по миллионам других?
Это я если что про старый импут, новый адская параша.
Аноним 28/09/21 Втр 23:21:35 #284 №771299 
>>771287
Что блять?
>В чём сложность сделать уникальную обработку нажатий всего лишь в одном скрипте
SRP может быть?
>>771286
Ну вот это и смущает. Правда везде написано, что это по перфомансу не должно сильно бить, но чисто архитектурно выглядит по-еблански, кмк
Аноним 30/09/21 Чтв 02:00:33 #285 №771417 
Анон, подскажи. Допустим, есть простой раннер. Как генерировать дорогу с поворотами, как это было в ретро гоночках? Попробовал сам додумать, но в итоге при перспективном виде дорога быстро заканчиватся.
Аноним 30/09/21 Чтв 12:19:41 #286 №771436 
>>771417
Либо ассетом, либо префабом, что тут думать?
Аноним 30/09/21 Чтв 12:36:53 #287 №771439 
>>771417
На ютубе был урок по сабвей серферсу там шейдером легко гнулись дороги
Аноним 30/09/21 Чтв 15:45:20 #288 №771453 
Как лучше реализовать контакт одного объекта без RigidBody c другим?

OnTriggerEnter2D не работает без RigidBody на одном из них а в OnCollisionEnter2D не работают теги объектов
Аноним 30/09/21 Чтв 17:44:30 #289 №771461 
>>771436
Каким ассетом?
Аноним 30/09/21 Чтв 17:45:40 #290 №771462 
>>771453
Либо ассетом, либо префабом, что тут думать?
Аноним 30/09/21 Чтв 18:22:51 #291 №771464 
изображение.png
изображение.png
изображение.png
>>771462
Может я неверно выразился. Вобщем. Есть некий объект(без Rigidbody) который должен дойти до определенной точки и повернуть обратно. Пытался реализовать это через ОnTrigger и через OnCollision. Оба одинаково не работают. Что я делаю не так?
Аноним 30/09/21 Чтв 19:35:09 #292 №771470 
Как сделать с ригидбади нормальный лифт? Когда персонаж становится на платформу и едет вверх, еще более-менее, но когда лифт едет вниз, игрок не держится ней, тупо остается в воздухе а потом падает на платформу, и так пока платформа не достигнет дна.
Вариант с заменой родителя игрока не работает.
Аноним 30/09/21 Чтв 20:00:20 #293 №771471 
>>771470
Делается скриптом, отдельно.
Аноним 30/09/21 Чтв 20:45:04 #294 №771476 
>>771470
Проверяй, если перс на лифте и едет вниз приклеивай или добавляй силу вниз
Аноним 30/09/21 Чтв 22:08:29 #295 №771479 
Короче летом залетел в юнити, нарисовал графония для проекта, в анимацию даже вьехал, но скрипты совсем никак не даются. На них мой запал потух. Я ещё очень слаб в английском языке, поэтому туторы из шапки мне не помогли.
А с русских уроках с ютуба во мне как-то очень плохо все усваивается, и четкой картины не составляется.
Подскажите какие-то русские книги мб или уроки, чтобы прям даже тугой понял
Аноним 30/09/21 Чтв 22:22:20 #296 №771480 
>>771476
Звучит как нормальный костыль, попробую.
Аноним 30/09/21 Чтв 22:47:49 #297 №771482 
>>771470
Делай, как отцы делали. Перемещай не игрока, а весь уровень.
Аноним 01/10/21 Птн 06:55:25 #298 №771499 
image.png
>>766778 (OP)
не ну че юнити три дэ меня породило а убьет распутный образ жизни который я виду на деньги с треша в стиме

https://store.steampowered.com/app/1588160/Putin_VS_Zombies/

шо думаете достойно таким заниматься или надо идти на завод?
Аноним 01/10/21 Птн 08:08:39 #299 №771500 
>>771499
Данный шедевр игровой индустрии помог мне вылечить артрит, склероз и геморрой. Всем очень. Сюжет захватывающий, дизайн сногсшибательный, геймплей мощный.
Аноним 01/10/21 Птн 09:18:41 #300 №771506 
>>771499
Чел, если ты сумел не то что сделать игру, а её еще и выпустить в стим, поздравляю, ты успешнее 99% разработчиков из гэдэ, моё почтение, продолжай.
[mailto:Sage] Аноним 01/10/21 Птн 12:03:25 #301 №771509 
>>771499
>мама я покакал
Аноним 01/10/21 Птн 15:40:36 #302 №771525 
Вот допустим у меня есть на сцене какое-то количество объектов X и Y. И объекты X должны высчитывать значения на основе состояния всех объектов Y. Допустим X суммирует все координаты объектов Y и на этой основе решает куда ему пойти. Как это все грамотно организовать в unity, чтобы я мог взять все объекты Y, высчитать какое-то значение и передать всем объектам X, чтобы они уже что-то свое посчитали?
Аноним 01/10/21 Птн 16:49:27 #303 №771528 
>>771525
Только через главный менеджер на который у каждого обьекта X и Y появляется ссылка при спавне. Не вздумай дрочить апдейт в каждом из этих обьектов.
Аноним 01/10/21 Птн 18:30:46 #304 №771534 
Клал ли кто то Bolt на C# и пробовал кириллить через болт?
Сложнее или проще через него кириллить и можно ли им полностью заменить погромирование?
Аноним 01/10/21 Птн 18:31:18 #305 №771535 
изображение.png
>>771534
*отклеилось
Аноним 02/10/21 Суб 03:13:22 #306 №771601 
image.png
image.png
Задача на 5 минут, пиздец блять
Скачал блендер и сделал модельку (пик 1)
Закинул в юнити и сколько я не ебался то выходит пик 2, какого блять хуя, как эту хуету убрать, у меня жопа горит, работы на 5 минут что бы минимально блендер узнать и простую модель сделать, а я мозги себе ебу всю ночь
Аноним 02/10/21 Суб 06:06:28 #307 №771602 
>>771601
Выложи модельку
Аноним 02/10/21 Суб 09:50:55 #308 №771610 
>>771601
Юзай пробилдер и прогрид, блендер не нужон
Аноним 02/10/21 Суб 11:43:26 #309 №771629 
изображение.png
изображение.png
Сделал в блендере гекс, а он подтягивается со своим светом и камерой. Камеру я убрал, а вот если без света в блендере пересохранить, то происходит пик 2 - моделька какого-то хуя поворачивается на 90. Что за хуйня?
Аноним 02/10/21 Суб 11:53:38 #310 №771631 
>>771629
>моделька какого-то хуя поворачивается на 90
Сколько тебя еще ждет открытий чудных
Аноним 02/10/21 Суб 11:59:24 #311 №771635 
изображение.png
>>771631
Че делать то?
Аноним 02/10/21 Суб 12:08:26 #312 №771638 
>>771635
Ты каждый мизерный вопрос будешь в треде писать и ждать ответа? Тысячи человек импортит из блендера в юнити, может кто-то уже задавал такой вопрос, гугли
Аноним 02/10/21 Суб 12:16:51 #313 №771640 
>>771629
>Сделал в блендере гекс, а он подтягивается со своим светом и камерой
Так в блендере на сцене удали источник света и камеры, омг.

>Камеру я убрал, а вот если без света в блендере пересохранить, то происходит пик 2 - моделька какого-то хуя поворачивается на 90.
Во первых после изменения модели делай апплай в блендере.
Во вторых, у блендера по другому ось идёт, нежели чем в юнити, и ты эту траблу решаешь либо питоновским скриптом при импорте, либо же сменой в конце координаты(Гугли, там 30 сек делов). Так-же влияет формат импорта фбх или сам бленд.

>Что за хуйня?
Первое что пробуй это всегда самому гуглить, смотреть туторы а ютубе, и лишь если не помогло беги на двачик спрашивать.
Аноним 02/10/21 Суб 12:58:27 #314 №771650 
>>771640
Спасибо, анон, сорян за тупость, я блендер открыл третий с половиной раз. Обещаю что тоже объясню все по порядку следующему такому как я.
Аноним 02/10/21 Суб 18:45:46 #315 №771688 
Аноны, поделитесь, кто в чем рисует спрайты для своих игор? в чем удобнее рисовать здания?
Аноним 02/10/21 Суб 18:51:55 #316 №771692 
>>771688
Страшный секрет, только никому! Работать надо в инструменте удобным для тебя. Скачиваешь тройку самых популярных, юзаешь и думаешь
Аноним 02/10/21 Суб 18:56:32 #317 №771696 
>>771692
А вот интересно, в чем тебе, анон, удобно рисовать? расскажи, пожалуйста
Аноним 02/10/21 Суб 19:31:48 #318 №771709 
>>771696
Асерспрайт для пиксельарта, крита для попыток в нормальнвй арт, гимп для пережемания фоток в текстуры.
Аноним 02/10/21 Суб 20:05:28 #319 №771711 
>>771688
Фотошоп. Для иконок иллюстратор
Аноним 02/10/21 Суб 21:37:22 #320 №771714 
>>771696
Фигма ван лав
Аноним 03/10/21 Вск 15:12:49 #321 №771741 
>>771601
Триангулируй полигоны в плендере
Аноним 03/10/21 Вск 15:14:27 #322 №771742 
>>770915
Через код реализуй анимацию, а эту паутину в помойку выкинь
Аноним 03/10/21 Вск 16:47:19 #323 №771754 
Как создать префаб какого-нибудь объекта типо спрайта вместе с UI элементами? Обязательно ли тогда каждому объекту на сцене иметь свой канвас? Просто получается, что при паре десятков таких объектов едитор люто засирается этими километровыми канвасами, хотя мне надо просто маленькую кнопку и текст под объектом отобразить.
Почему юнитеки еще не придумали? Аноним 03/10/21 Вск 16:50:36 #324 №771755 
Префабы аниматора. От которого делаем префаб варианты для всех нужных персонажей, и если надо как-нибудь изменить логику анимаций - меняем в префабе, что меняет сразу для всех дочерних аниматоров. Почему такого еще нет, или я о чем то не знаю?
Аноним 03/10/21 Вск 21:45:18 #325 №771783 
>>770915
Галочку looping убрать?
И не делать никаких переходов после анимации.
Должна просто зависнуть на последнем фрейме.
Аноним 03/10/21 Вск 21:55:04 #326 №771784 
>>771783
Рофлишь? Как только заканчивается анимация, происходит стандартный переход на самую первую от входа, если её нет, то ставится начальное состояние модели. Заморозить на последнем фрейме анимацию в юнити нельзя.
Аноним 03/10/21 Вск 22:23:39 #327 №771788 
>>771755
Не уверен, что то что нужно, но есть компонент Animator Override Controller
Аноним 04/10/21 Пнд 00:08:44 #328 №771795 
>>771788
Забавно, это именно то, что нужно. Хорошо, что такая штука есть.
Аноним 04/10/21 Пнд 06:42:17 #329 №771807 
>>770915
Animator.Play() и стейт сделай без переходов, чтобы граф дальше никуда не уходил.

>>771784
Я хоть и другой чел, но тот анон дело говорит, а ты ошибаешься.

Аноним 04/10/21 Пнд 06:47:01 #330 №771808 
>>771754
Берешь и создаешь. Канвас таскать не обязательно, но помни, что любой объект, который таскает на себе CanvasRenderer не будет рисоваться, если на каком-нибудь из парентов не висит канвас. То бишь, ты можешь сделать 100500 префабов кнопок с текстом/спрайтами, но обязан их всех спавнить в любом из чилдов канваса.
Аноним 04/10/21 Пнд 22:04:40 #331 №771847 
привет.

я сейчас делаю игру по вот этому туториалу в рамках освоения юнити:https://noobtuts.com/unity/2d-pong-game
Я сделал функционал описанный в туториале и помимо этого я хочу добавить следующее:
-главное меню
-счет
-возвращение положения ракеток и мячика в исходную позицию после того как кто-то из игроков забьет мяч.
у меня есть несколько вопросов по этим пунктам.
1.Правильно ли я понимаю что главное меню реализуется отдельной сценой/набором сцен?
2.Счет можно реализовать при помощи объекта UI а шрифт добавить при помощи Text Mesh?
3.Как реализовать третий пункт? Я пробовал менять позицию мяча и ракеток через присвоение значения полям position в классе Transform (возможно немного криво пишу, извините.) но visual studio ругается и говорит что "Не удалось изменить возвращаемое значение Transform.position так как оно не явлется переменной.
Заранее спасибо за помощь.



Аноним 04/10/21 Пнд 22:08:22 #332 №771848 
>>771847
>Unity 2018.3.14f1
Едрать ты откопал тутор древнее чем чьято мамка! Чем тебя современные видео туторы от самих юников не устраивают? Куча всего меняется и используется по другому, лишь засоряешь голосу сторой не нужной инфой.
Аноним 04/10/21 Пнд 22:24:03 #333 №771849 
>>771848
ок, я поищу актуальные туторы, но старые типа вообще бесполезны?
Аноним 04/10/21 Пнд 22:38:41 #334 №771850 
>>771849
не слушай больного, в 2018 все тоже самое
делал спокойно офф тутор для 2020 сидя на 2018, все было идентично
Аноним 04/10/21 Пнд 22:40:19 #335 №771851 
>>771849
Вот тут https://learn.unity.com/, самые актуальные туториалы. Смотришь видосик, делаешь по аналогии, всё расписано и понятно. И что главное от самих юников.

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

Актуальная версия юнити сейчас чтоб ты понимал Unity 2021.1.23. Думаю улавливаешь на сколько большая разница уже.
Аноним 04/10/21 Пнд 22:51:54 #336 №771852 
>>771851
так, у меня сейчас стоит 2020.1.5f1f. как обновиться до актуальной версии? в хабе удалить текущую и установить последнюю (2021.1.23f1)?
sage[mailto:sage] Аноним 04/10/21 Пнд 22:55:03 #337 №771853 
>>771852
Не надо ставить последнюю, сиди на последней LTS.
Аноним 04/10/21 Пнд 23:07:37 #338 №771855 
>>771853
>>771850
Чел, зачем ты траллируешь ньюфага? Яж не предлагаю альфу или бету ставить, а лишь последнею стабильную версу.

>>771852
Там в списке выбираешь и скачиваешь, можешь удалять или нет без разницы.
Аноним 04/10/21 Пнд 23:13:08 #339 №771856 
>>771853
последняя LTS - это 2020.1.5f1 которая у меня и стоит. получается это самая стабильная версия на данный момент?
Аноним 04/10/21 Пнд 23:14:50 #340 №771857 
да, и что по основам.
я правильно в итоге понимаю что в Юнити все строится на сценах?
главное меню - это отдельная сцена, первый уровень - это отдельная сцена и т.д., так?
Аноним 04/10/21 Пнд 23:25:22 #341 №771859 
>>771855
Я те говорю что в 2020 ничего существенного по сравнению с 2018 не заметил. (на черную тему похуй)
А, ну 2020 запускается медленнее и тормозит, да.
Аноним 05/10/21 Втр 01:03:23 #342 №771861 
>>771859
Чел ты ради прикола пробывал читать чейндж логи? Там туеву кучу всего фиксят каждый мини патч, а теперь подумай.
Аноним 05/10/21 Втр 05:44:17 #343 №771869 
>>771847
>Я пробовал менять позицию мяча и ракеток через присвоение значения полям position в классе Transform
Как ты это делаешь?
Аноним 05/10/21 Втр 14:46:59 #344 №771878 
Два rigidbody, boxcollision ящика. У обоих метод коллизии Discrete
Один стоит на втором.
Если удалить нижний ящик через Destroy(); то верхний будет висеть в воздухе пока его чем-нибудь не стукнуть.

Как заставить верхний ящик падать после удаления нижнего без изменения метода коллизии на Continuous?
Аноним 05/10/21 Втр 16:32:32 #345 №771889 
>>771878
У меня верхний норм падает после удаления, ты что-то не то делаешь
Аноним 05/10/21 Втр 19:08:57 #346 №771908 
>>771869
вот весь код скрипта для мячика. подчеркнут тот код, которым я пытаюсь реализовать возвращение мяча в изначальную позицию.

public class Ball : MonoBehaviour
{
public AudioSource Sound;
public Transform positon;


public float speed = 50;
// Start is called before the first frame update
void Start()
{
//Initial velocity
GetComponent<Rigidbody2D>().velocity = Vector2.right speed;


}
static float hitFactor(Vector2 ballPos, Vector2 racketPos,float RacketHeight)
{
return (ballPos.y - racketPos.y) / RacketHeight;


}



private void OnCollisionEnter2D(Collision2D collision)
{
if (collision.gameObject.name == "RacketLeft")
{

Sound.Play();
//Calculate hit factor
float y = hitFactor(transform.position, collision.transform.position, collision.collider.bounds.size.y);

Vector2 dir = new Vector2(1, y).normalized;
GetComponent<Rigidbody2D>().velocity = dir
speed;



}
if (collision.gameObject.name == "RacketRight")
{

Sound.Play();
float y = hitFactor(transform.position, collision.transform.position, collision.collider.bounds.size.y);

Vector2 dir = new Vector2(-1, y).normalized;
GetComponent<Rigidbody2D>().velocity = dir * speed;


}
if (collision.gameObject.name == "WallLeft" || collision.gameObject.name == "WallRight")
{

positon.position.y = 0.0429;
positon.position.x = -2.6;

}



}




}
Аноним 05/10/21 Втр 20:44:24 #347 №771911 
213241.jpg
Новый логотип юнити. ВАУ!
https://blog.unity.com/news/say-hello-to-our-new-logo-and-product-identity-system?utm_source=twitter&utm_medium=social&utm_campaign=company_global_generalpromo_2021-10-05_brand-blog-twitter
Аноним 05/10/21 Втр 20:45:43 #348 №771912 
>>771911
Лям баксов точно стоил, может и десять, подписчики уплатят за всё
Аноним 05/10/21 Втр 20:50:22 #349 №771913 
>>771911
Важными делами занимаются.
Аноним 05/10/21 Втр 20:50:50 #350 №771914 
>>771847
>"Не удалось изменить возвращаемое значение Transform.position так как оно не явлется переменной.

Transform.position это property а не field, там сеттер сразу весь вектор3 ждет
пиши не
positon.position.y = 0.0429;
positon.position.x = -2.6;
а
positon.position = new Vector3 (-2.6, 0.0429, 0);
Аноним 05/10/21 Втр 20:55:53 #351 №771915 
image.png
>>771911
Надпись нравится, куб не нравится. Понятно, что сменить или кардинально изменить его невозможно, но бля, он конченный
Аноним 05/10/21 Втр 22:30:51 #352 №771929 
>>771914
ох, анон, спасибо тебе! добра тебе, счастья, здоровья!
заработало!
плюс я сразу добавил и возврат ракеток на свое место.
Аноним 05/10/21 Втр 23:34:53 #353 №771931 
>>771911
интересно, дизайнер хотя бы гей-ниггер, чтобы такое выдавать?
Аноним 05/10/21 Втр 23:46:04 #354 №771932 
>>771499
Где отзывы заказывал? Или срал по форумам и накопилось?
Аноним 06/10/21 Срд 01:46:04 #355 №771935 
Посоны спасайте!!!11!1!

Как анимировать List<>? Анимировать можно переменные, всякие GameObject поля, вектора и прочую хуйню, а листы и вроде как массивы нельзя. Какие же есть варианты, если очень нужно? Корутины? Неудобно и долго, заебёшься катсцены делать. Создать методы, меняющие массив и их вызывать через анимацию? Не практично.

Какие ещё есть способы? Мб асеты какие, или встроенные приколы? Нужна в первую очередь практичность.

Да, гуглил и яндексил, по запросу "how animate list/massive/collection unity" выдаёт максимум туторы по анимациям.
Аноним 06/10/21 Срд 06:55:12 #356 №771942 
>>771935
Под анимацией ты понимаешь методы Move или Interpolate?Обработай каждый элемент списка по отдельности в цикле. Вообще не понял проблему твою.
Аноним 06/10/21 Срд 07:46:28 #357 №771945 
>>771942
Под анимациями имею ввиду компонент Animation. Он просто физически не даёт анимировать списки.
Аноним 06/10/21 Срд 08:27:28 #358 №771946 
>>771945
Приделай Animation всем элементам списка по отдельности. Вообще опиши задачу нормально, что ты хочешь анимировать и зачем.
Аноним 06/10/21 Срд 16:11:52 #359 №771984 
изображение.png
изображение.png
Юнитач. Какое твое мнение по поводу Bolt'a? Кириллит ли кто то через него и насколько им можно заменить погром?
Аноним 06/10/21 Срд 17:57:42 #360 №771999 
>>771984
Ни насколько, болт это то же самое программирование, только с лапшой дрочиться неудобно и поэтому все кто юзает болт сосут болт
Аноним 06/10/21 Срд 18:05:16 #361 №772001 
>>771946
> Вообще опиши задачу нормально, что ты хочешь анимировать
Постараюсь описать понятнее

Абстрактно:
Есть List<GameObject>, задача изменять его содержимое во время катсцен, удалять, добавлять элементы по заранее заготовленному шаблону.
Изначально планировалось делать это через компонент Animation, но он не позволяет анимировать List<>, поэтому требуется найти другой метод это делать, не уступающий по простоте использования компоненту Animation.

Более конкретный пример использования:
Есть объект "группа рабов 1", на нём висит скрипт "управление рабами", с полем типа List<GameObject>, содержащем ссылки на каждого раба, формально принадлежащего этой группе.
Задача: "освободить" половину рабов из группы, то есть удалить из списка, причём "освобождение" является частью катсцены, то есть должно быть заранее заготовлено и вызываться анимацией.
Ограничения: тк групп рабов будет много, катсцен будет много, прописывать каждое изменение List<> вручную непрактично, нужно упростить процесс.

Надеюсь понятно расписал, если нужно, могу скинуть скрипты

> и зачем.
На днях Аллах явился ко мне (он тоже использует юнити) и сказал что я должен написать ему продвинутую систему управления муслимами, он хочет чтоб можно было в два клика мышкой создавать их группы, разделять их, автоматизировать, анимировать всё это и не париться с каждым муслимом вручную.
Рефлект от стены в 3D Аноним 07/10/21 Чтв 17:35:52 #362 №772156 
2021-10-07 17-06-54 (online-video-cutter.com).gif
2021-10-07 17-12-59 (online-video-cutter.com).gif
123.PNG
фы.PNG
Захотел перенести 2D прототип игры в 3D, столкнулся с проблемой в физике. Если запустить игрока в стену, то он не отрефлектит под тем же углом, а отлетит перпендикулярно поверхности.

Не хочется писать скрипт рефлекта через Vector3.Reflect, есть какой-то способ это пофиксить через параметры физики или как-то ещё?

пик1 - рефлект в 2Д проекте (как должно работать)
пик 2 - рефлект в 3Д проекте (как НЕ должно работать)
пик 3, 4 - параметры Physic Material для 2D и 3D соответственно, которые применялись для объектов
Аноним 07/10/21 Чтв 17:51:08 #363 №772159 
>>772156

Если что рефлект в 2D делал просто через Physics Material 2D, игроку давал скорость через rigidbody.velocity, тоже самое делал и в 3D, только использовал обычный Physics Material
Аноним 07/10/21 Чтв 18:14:49 #364 №772162 
>>772159
У тебя тут 3д физика не нужна. Используй 3д рендер но 2д физику.
Аноним 07/10/21 Чтв 18:27:13 #365 №772164 
>>772162

А так можно? Использовать 2D компоненты в 3D рендер пайплайне? Не знал что так можно, спасибо
Аноним 07/10/21 Чтв 18:31:34 #366 №772165 
>>772164
Конечно, можно - берёшь и вешаешь 2Д компонент, только убедись, что всё в правильной плоскости. 2Д физике нельзя оси повернуть.
Аноним 07/10/21 Чтв 23:53:32 #367 №772190 
14095121513960.jpg
Бродяги, платина конечно, но всё же спросить негде.
Хочу запилить кликер на юнити
да, да, я знаю, иди нахуй
В общем суть - хочу иметь панель вкладок (порядка 10), если видели в глаза хоть раз idle игру для десктопа, то понимаете о чем речь.
И не совсем врубаюсь как его реализовать чтобы пооптимальнее.
Туториалы везде опираются на меню из 3х кнопок, и там ссылки на сцены, как то слишком ресурсоемко, имхо
Думал о чем то вроде 10 панелей и панель с кнопками, каждая из которых делает setVisible (не нашёл кстати в unity мда) определенную панель(или поднимает её поверх остальных)
setActive не подходит если что.

Какие будут идеи, как лучше это реализовать?
Аноним 07/10/21 Чтв 23:59:27 #368 №772191 
>>772190
>setActive не подходит если что
Почему? Всегда через него делал и не выёбывался.
Аноним 08/10/21 Птн 01:49:49 #369 №772199 
image.png
image.png
Аноны, подскажите плс. Сел ковырять юнити, но происходит пикрилю Как можно пофиксить?
Аноним 08/10/21 Птн 02:24:23 #370 №772200 
>>772199
Tranform с ошибкой написано. Скачай визуал студию чтоб ошибки выделялись.
Аноним 08/10/21 Птн 02:40:21 #371 №772201 
image.png
В чем разница?
Аноним 08/10/21 Птн 02:42:23 #372 №772202 
image.png
image.png
>>772200
Пофиксил, спасибо, но все равно нихуя не работает. Как советовали в одном из гайдов - поставил пик 2. Перезапустил юнити и VSC. В визуалке появились две страницы с кодом, на несколько кусков которых ругалась визуалка. Я попробовал их удалить, В VSC ошибки пропали, но теперь вылезло говно как на пике 1.
Аноним 08/10/21 Птн 02:45:09 #373 №772203 
>>772202
Тыкни на ошибку 2 раза, поменяй все GUIText на UI.Text.
Аноним 08/10/21 Птн 02:48:41 #374 №772204 
image.png
>>772203
Поменял, все ошибки пропали, но теперь пишет пикрил.
Аноним 08/10/21 Птн 02:51:27 #375 №772205 
>>772204
Напиши сверху скрипта
using UnityEngine.UI;

А лучше выдели пару неделек на изучение C#, поймешь основы, и такие вопросы отпадут сразу.
Аноним 08/10/21 Птн 02:57:15 #376 №772206 
image.png
>>772205
>using UnityEngine.UI;
Написал, один хуй.
>выдели пару неделек на изучение C#
А каким образом лучше учить по твоему? Я когда курс по юнити на тытруба искал, так там все друг друга хуесосят и обвиняют в криворукости.
Аноним 08/10/21 Птн 05:42:22 #377 №772208 
>>772206
Блять, я рот ебал этого юнити. Оказывается, не надо было ебаться в каком-то стороннем файле с библиотеками, качать ассеты, етс, надо было тупо делитнуть старый проект и создать новый.
Аноним 08/10/21 Птн 10:22:42 #378 №772212 
>>772190
Если на канвасе, то
Через енейбл/дисэйбл компонент Canvasrenderer-a

Если у тебя панели не в УИ, то через енейбл/дисейбл мешрендерера. Это с т.з. производительности дешевле, чем сетактив.
Аноним 08/10/21 Птн 10:30:01 #379 №772213 
>>772001
Нахуй вы лезете в макакинг игр, когда не знаете основ макакинга общего назначения? Твоя задача решается через стек корутин которые задают сценарии поведения объектов заданного типа.

Вот есть у тебя лист рабов. Ты создаешь клас раьменеджер, пишешь в нем корутину, в которую передаешь массив ссылок/индексов на рабов из листа и сам лист. Корутина представляет собой сценарий событий, например запускает анимацию плюс выводит рабов из листа который ты в нее передал. Эта корутина универсальна для любых листов с объектами типа "раб".
Аноним 08/10/21 Птн 10:34:59 #380 №772215 
>>771260
Это в или чисио в редакторе потому, или у тебя в каком-то объекте есть скрип со ссылкой на материал, даже в эмпти.
Аноним 08/10/21 Птн 11:10:23 #381 №772219 
>>771889
Да, оказывается я сначала делал

gameObject.GetComponent<Renderer>().enabled = false;
gameObject.GetComponent<Rigidbody>().isKinematic = true;
gameObject.GetComponent<BoxCollider>().enabled = false;

И только потом дестроил, в другой функции. Похоже на какой-то баг.
Аноним 08/10/21 Птн 16:10:46 #382 №772238 
Кто пользуется ui toolkit? Как гуй делаете? Я вот делал через создание гуя полностью через посторонний код, то есть вот точка входа, которая на основании загруженной сцены выбирает нужный класс, который уже спавнит гуи елементы. При этом никакого наследования от VisualElement нет. В целом работало нефигово. Но потом решил сделать правильно, как это задумывалось разработчиком. Наследуемся от VisualElement, добавляем обязательные UxmlFactory, UxmlTraits и переопределяем войд Init. Вуаля, наш класс появляется в списке доступных контроллов в Ui builder и можно начинать таскать мышкой. Окей. Пусть это будет "базовый" класс, поверх которого я создам разные гуи элементы. Ну, чтобы не создавать каждый раз однотипные классы с одинаковым функционалом. Создаю новый класс, наследуюсь от предыдущего и его Ui builder не видит. Потому что в нём нет UxmlFactory, UxmlTraits и так далее. Отлично, то есть мне нужно копипастить хуйню из класса в класс. Что несколько неудобно. Во втором подходе в принципе код выглядит как-то неприятно. Так вот - как сами делаете? Есть ли профит в мышкотягании? Пока что выглядит менее удобным, потому что отпадает возможность просто скопировать папку Ui в новый проект и получить готовый гуй.
Аноним 08/10/21 Птн 17:43:03 #383 №772245 
>>772215
А есть простой понятный гайд как точно профайлить без помех от редактора?
Аноним 08/10/21 Птн 19:02:21 #384 №772258 
14095121513971.jpg
>>772191
щас вот подумал и вроде бы неплохая идея, все расчеты просто с дуру клал на панели, ща понял что это хуйня и лучше скрипты работающие фоном держать отдельно.

>>772212
Благодарочка тебе, братишка
Аноним 08/10/21 Птн 21:54:07 #385 №772266 
1.png
>>772238
Не, нахуй, делать "правильно" физически больно. И очень большие проблемы в прикручивании контроллера к отображению.
Аноним 09/10/21 Суб 17:44:10 #386 №772305 
Вечер в хату юнитаны, вопрос не из простых для меня хочу пощупать как верстаются интерфейсы в ngui, сам до этого с юнити почти не работал, вопрос - как то его ngui можно посмотреть-поверстать не покупая? Или если покупать, есть ли место где это можно сделать дешевле чем в ассетсторе?
Аноним 09/10/21 Суб 18:41:30 #387 №772313 
>>772305
Нахера, а главное - зачем? Есть тот же uGui бесплатно, который не хуже nGui.
Аноним 09/10/21 Суб 19:11:46 #388 №772317 
Кого из кириллов на ютубе можете посоветовать для обучения ? В приоритете 2Д .
Аноним 09/10/21 Суб 19:12:15 #389 №772318 
>>772313
в месте где я работаю юзают его, я хочу научиться, чел
Аноним 09/10/21 Суб 19:58:12 #390 №772321 
>>772317
Рекомендую посмотреть сливы курсов на рутрекере.
Аноним 09/10/21 Суб 22:50:59 #391 №772346 
>>772317
Jason Weimann, Максим Крюков. Если полный ноль - Brackeys. Но нет никакого смысла смотреть всё подряд, ищи то, что интересует и не понятно. Для развлечения и вдохновения - Sebastian Lague. Все остальные - только во вред или нудные, за редким исключением.
Аноним 10/10/21 Вск 01:38:28 #392 №772357 
Кто-нибудь сталкивался с задержкой при лупе Audio Source? Есть правильно зацикленный кусок мп3 на 2 минуты, при окончании он стартует с самого начала с небольшой задержкой(0.1 секунды да, я проверял) что довольно заметно, так как музыка идет плотной стеной. Лупнул просто поставив галку Loop в инспекторе. Есть что с этим сделать? Вроде банальная вещь ведь.
Аноним 10/10/21 Вск 11:23:10 #393 №772381 
image.png
image.png
Господа, я нид хелп.
1)Какого-то хуя у генерируемого объекта не работает физика. Риджибоди подключен.
2)Без цикла после создания объекта сцена вылетает. С циклом происходит пикрил 2. Чому так? Ведь при каждом нажатии должен создаваться всего один объект.
Аноним 10/10/21 Вск 13:02:36 #394 №772389 
>>772381
>Ведь при каждом нажатии должен создаваться всего один объект.
Да, но у тебя другое условие
Аноним 10/10/21 Вск 14:27:13 #395 №772395 
image.png
image.png
image.png
image.png
>>772389
Я вообщем-то нахуй в цикл полез - писал генерацию объекта по гайду с ютуба, написал слово в слово, но у меня нихуя не работает. Создает один куб и вылетает из сцены. Для примера поставил сферу, которая с тем же реджибади падает
Где я проебался и как это можно пофиксить?
Аноним 10/10/21 Вск 14:43:09 #396 №772397 
15321585564540.jpg
>>772395
Черт его знает, как ты умудрился в такой простоте запутаться
Аноним 10/10/21 Вск 14:44:39 #397 №772398 
>>772397
>как ты умудрился в такой простоте запутаться
Тут скорее интересно, как один и тот же код умудряется работать на одной системе и не работать на второй.
Аноним 10/10/21 Вск 14:50:25 #398 №772402 
>>772398
По своему опыту скажу, накосячил ты. Я уже тыщу раз проклинал юнити в разных затыках, и всегда оказывалось что тупанул я или просто не знал как устроено. Судя по тому куда ты цикл воткнул ты вообще нулевый. Попробуй еще раз повторить урок
Аноним 10/10/21 Вск 14:50:55 #399 №772403 
>>772398
>Тут скорее интересно, как один и тот же код умудряется работать на одной системе и не работать на второй.
На всякий напомню, что код исполняется одинаково где угодно, на то он и код, а не что-то выдуманное или мысленное.
Если что-то не работает, или не то что ты ожидаешь, то единственный вывод - ты говнокодишь не понимая что делать. Есть супер редкие случаи багов самой юньки, но с вероятностью 99.9% ты их никогда не встретишь.
Аноним 10/10/21 Вск 14:57:09 #400 №772408 
>>772402
>>772403
Ну а можете подсказать, в чем именно я накосячил? Я все делал по алгоритму в гайде:
1)Создал объект, повесил на него рб
2)Сделал его префаб, изначальный объект удалил
3)Написал скрипт слово в слово
Аноним 10/10/21 Вск 15:28:09 #401 №772414 
>>772408
И что ты хочешь? Спавнить обьект? Ты его спавнишь. Хочешь свойства обьекта? Меняешь свойства. Что сложного? Я в душе не чаю чего ты хочешь, и что в твоём гайде. Может он старое гавно на старой версии и уже не работает.
Единственный путь это понять что ты хочешь, следом понять какой код написать.
Аноним 10/10/21 Вск 15:31:14 #402 №772415 
>>772414
>И что ты хочешь?
Хочу по нажатию кнопки спавнить объект N раз, и чтобы после спавна он падал.
Аноним 10/10/21 Вск 15:33:43 #403 №772417 
>>772415
Ща катка закончится, зайду в юньку и скажу точно где ты проёбываешься.
Аноним 10/10/21 Вск 16:00:57 #404 №772425 
image
>>772415
Только что зашёл, потратил минуту, всё работает, что у тебя не так?
Аноним 10/10/21 Вск 16:04:32 #405 №772427 
>>772415
https://dropmefiles.com/KiDzB юнити пакет просто открой и посмотри, всё я ушёл.
Аноним 10/10/21 Вск 19:27:12 #406 №772447 
>>772381
https://www.youtube.com/watch?v=N-8jkDqR58U

Во долбаёб! У тебя ГетКейДаун обновляется кадый кадр и в каждом таком кадре спавнится физический хуй. Сколько кадров выдаёт легаси сцена? Ну скажем тыщу, на кнопку ты допустим нажимаешь пол секунды, то есть у тебя друг в друге создастся 1000/2=500 кубов. А теперь умножь это число на свой цикл for, и получишь 50000 полностью физических объектов в один тык. Сколько миллионов лет потребуется чтобы посчитать все коллизии между твоими кубами? А потом этот долбаёб спрашивает почему у него юнька вылетает. Съеби нахуй из треда учить матчасть.
Аноним 10/10/21 Вск 19:38:19 #407 №772450 
>>772447
>А теперь умножь это число на свой цикл for
Я цикл попробовал написать, потому что спавнился всего один куб

А хули у него миллиард кубов не спавниться? Он так же в юпдате пишет
https://www.youtube.com/watch?v=YuahY7ZSXJA&ab_channel=Zemlia
>почему у него юнька вылетает
А где я, блять, говорил, что у меня сам юнити вылетает? Я про сцену говорил.
Аноним 10/10/21 Вск 19:39:12 #408 №772451 
>>772447
> на кнопку ты допустим нажимаешь пол секунды
Да не, у него же геткейдовн, а не геткей, довн
Аноним 10/10/21 Вск 23:29:19 #409 №772464 
16327447366730.jpg
>>766778 (OP)
Где воровать платные ассеты?

Меня больше шаблоны интересуют, посмотреть как там что сделано, чисто для примера.
Аноним 11/10/21 Пнд 05:26:31 #410 №772479 
>>772464
forum.cgpersia.com
Аноним 11/10/21 Пнд 09:31:45 #411 №772482 
>>772479
Спасибо
Аноним 11/10/21 Пнд 09:49:45 #412 №772483 
>>772381
1. Убери цикл в апдейте.
2. Проверь что в ригидбоди префаба стоит галка на юзгравити и снята с кинематик. Либо ресетни компонент
Аноним 11/10/21 Пнд 09:58:33 #413 №772484 
>>772479
Осталось получить инвайт.
Аноним 11/10/21 Пнд 11:48:37 #414 №772488 
>>772484
И не забудь, что эти сиджипирс помойки регулярно удаляют аккаунты.
Аноним 11/10/21 Пнд 13:44:42 #415 №772499 
>>772488
Нужно хоть изредко проявлять активность, написать хоть пару комментов, лайки ставить
Аноним 11/10/21 Пнд 15:03:45 #416 №772508 
>>772499
Я просто предупредил анона, что если ему что-то надо - пусть скачивает сразу и не рассчитывает на свой аккаунт.
>изредко проявлять активность
А смысл заходить на эту помойку, если всё равно аккаунты стабильно стираются? Зарегался, взял что надо и забыл, что они вообще существуют. А ещё лучше - нагуглил что надо на любом другом сайте. Абсолютно теряется смысл заводить аккаунт, когда чуть что и его удаляют. Тем более этот сайт не несёт какой-то ценности, просто помойка, каких много.
Аноним 11/10/21 Пнд 15:15:40 #417 №772510 
>>772464
Двачую вопрос. Неужели кроме каких-то древних форумов нет больше мест где люди обмениваются взломанным\ворованными ассетами?

Сообщества в тг\дискорде какие?
Аноним 11/10/21 Пнд 15:50:15 #418 №772512 
>>772508
Не преувеличивай, я туда один раз год не заходил, аккаунт целый. Может нулевых без сообщений удалили и все
Аноним 11/10/21 Пнд 16:12:28 #419 №772515 
>>772510
Да таких помоек тысячи. Вбиваешь в гугл Unity Asset Collection и вот уже одна. В тг тоже скорее всего есть, но в тг в принципе крайне неудобная навигация, хуй найдёшь что.

>>772512
Ну повезло значит. Проверь ещё раз, вдруг удалили, пока ты пост писал. У меня до бреда доходило, когда я раздаю, а аккаунт уже удалён. Так на эту парашу и забил.
Аноним 11/10/21 Пнд 16:28:27 #420 №772518 
>>772515
>Проверь ещё раз, вдруг удалили, пока ты пост писал
Нет, всё хорошо. И cgpeers.to тоже цел, хотя там вообще ни разу не писал
Разница в повороте предметов в 2D и 3D Аноним 11/10/21 Пнд 17:52:29 #421 №772523 
1.mp4
Обратил внимание, что повороты происходят по разному в 2D и 3D проектах. В 2D они как будто вращаются вокруг какой-то оси, я предположил, что это зависит от родителя, но потом я вынес меч из родителя и ничего не изменилось.

С чем это может быть связано?
Аноним 11/10/21 Пнд 18:11:45 #422 №772526 
>>772523
У тебя в 2д офсеты детей относительно родителя 0 равны, в 3д нет, поэтому когда ты вращаешь родителя ты вращаешь и вектор офсета в 3д
Аноним 11/10/21 Пнд 18:29:29 #423 №772529 
>>772395
Больше смотри таких же дегенератов на ютубе. Пиздец, хуею. Не разбираются и смотрят каких-то придурков, чтобы ещё тупее становиться.
Гугли Jason Unity и нахуй год не вылазь с его канала, ни дай бог что-то другое посмотришь - анус отвалится, и разумеется после этого уже никогда не будешь разработчиком.
Аноним 11/10/21 Пнд 18:51:55 #424 №772536 
>>772526
Спасибо!
Аноним 11/10/21 Пнд 19:39:15 #425 №772545 
>>772529
>Не смотри этих дегенератов в ютубе
>Смотри другого дегенерата в ютубе
Серьёзно? И это при наличии пачки официальных-то уроков.
Аноним 11/10/21 Пнд 20:25:31 #426 №772551 
>>772545
Ещё одна нюфаня? Официальные уроки такое же дерьмо, в них очень много плохого кода. И они безумно затянутые к тому же. Не знаю как можно было так обосраться. Если смотреть что-то от Юнити, то только презентации, но это уже не начальный уровень.

А Джейсон профессионал с многолетним стажем, всегда отмечает, что этот кусок кода нежелателен и как его можно оптимизировать, если показывает какой-то быстрый пример. Человек отлично понимает как Юнити, так и программирование в целом.
Аноним 11/10/21 Пнд 20:44:16 #427 №772553 
>>772551
Если человек пилит видосы про программирование это автоматически значит, что он вообще не шарит. Так что смысла его смотреть никакого.
Аноним 11/10/21 Пнд 20:48:21 #428 №772554 
>>772553
Слова гения. Те, кто шарят, кидают ассеты и молча воруют код со стаковерфлоу и видосов на ютубе. Как ты. Потому что не в состоянии отличить хорошего программиста от плохого.
Аноним 11/10/21 Пнд 21:10:46 #429 №772559 
1.png
>>772554
Вот, у тебя в голове не сказать, чтобы дельные мысли, но проблески бывают. Стаковерфлоу, там есть код. Заметь, тебе на ум пришел не ютуб. Потому что уроки в целом не должны быть видосами, это должен быть текст, а не бесконечно экание и бэкание на фоне пустого экрана. Видос про кодинг это автоматически сблёв, который не стоит смотреть. Да, я знаю, что большинство юнити-уроков это видосы, но они прилагают ещё и код, который можно почитать. Не то, чтобы я его читал. Можешь бесконечно защищать бесталанного ноунейма с ютабчика, но это ничего не меняет. Спасибо, хоть не с твича. Но я его даже загуглил, какая-то реклама unity3d.college с патреона. Мда. Ну ладно, никто не говорил, что уроки должны быть бесплатными. И вишенка на торте, я открыл его рандомный видос с ютуба. Во-первых, while в апдейте. Никогда так не делайте, потому что это может вызвать краш юнити. Во-вторых, геткомпонент в апдейте. Геткомпонент это довольно дорогая операция и делать его в апдейте не рекомендовано. Кешируйте ссылку на компонент.
Аноним 11/10/21 Пнд 22:11:52 #430 №772570 
>>772559
https://youtu.be/YdERlPfwUb0?t=396
Как и говорю, всегда отмечает такие моменты. Но мне тоже не нравится, что он в принципе так оставляет, не понимающие люди всё равно начнут втупую копировать. В целом, хорошо описывает паттерны и другие штуки, когда нужно быстро вникнуть в тебе и дальше самому разобраться какое решение применить.
Аноним 12/10/21 Втр 13:06:29 #431 №772634 
Пытаюсь сделать slow-mo через Time.timeScale = 0.3f;
Но все объекты с rigidbody начинают перемещаться рывками.
Решается это через установку им интерполяции в окне настроек rigidbody.
Но юнити пишет про такую практику:
>It is recommended to turn on interpolation for the main character but disable it for everything else.

Какие подводные камни если на сцене будет сотня или больше rigidbody?
Аноним 12/10/21 Втр 22:12:34 #432 №772684 
>>772570
Ну и зачем делать заведомо неверно, чтобы другие копировали?
Хотя я тоже его смотрю, чего уж там.
инвентарь  Аноним 12/10/21 Втр 23:12:19 #433 №772700 
изображение.png
Где зеленому Кириллу подсмотреть годный и универсальный код на инвентарь?
Пытался слепить что то с ютуба но там все из разряда "5 роликов пишем тонны кода, вот наш инвентарь, можно в нем вещи перетаскивать и стакать" . При этом так и не понятно как в такой инвентарь пихать вещи из сторонних контейнеров. Кирилл удручен и просит о помощи
Аноним 12/10/21 Втр 23:15:07 #434 №772703 
>>772684
Потому что привычка. Он сам привык так делать и тебя учить делать неправильно. А как правильно он уже и сам не помнит, если знал вообще.
Аноним 13/10/21 Срд 01:58:32 #435 №772711 
>>772700
Отталкивайся от задач, Кирилушка. Универсальный инвентарь, возможно и существует но это будет платный ассет за 100 баксов предусматривающий все случаи жизни и ты такой никогда не напишешь.

Определись с тем что тебе нужно. В просто случае это информация которую ты хранишь в какой-то структуре данных состоящая из айди и класса вещи например, и рисование окошка.
Аноним 13/10/21 Срд 11:31:17 #436 №772734 
1.png
>>772700
>как в такой инвентарь пихать вещи из сторонних контейнеров
У тебя же есть драг-н-дроп, в функции стопа драга проверяй, над чем был стоп. Если это условный другой контейнер - перемещай предмет из одного инвентаря в другой.

Но вообще я пришёл к выводу, что инвентарь невозможно написать "правильно", в нём в любом случае будет куча каких-то ебанутых хаков. Вот берём мы перетаскиваем окошко, а юнити рисует все окна с соблюдением иерархии, что в югуи, что в юиэлементс. То есть нам надо перетащить это окно поверх всего, что уже как бы некрасиво.
А ещё асмдефы. Решил такой писать код "как положено". Есть "сборка" персонаж, есть "сборка" инвентарь, есть "сборка" гуи. Окей. Персонаж создаёт инвентарь, инвентарь создаёт гуи. Звучит логично. А теперь берём в гуи и взаимодействуем с инвентарём. Только вот гуи не может ничего знать про инвентарь и про персонажа. В общем, не советую асмдеф использовать.
Аноним 13/10/21 Срд 12:25:56 #437 №772741 
>>772529
Джейсон хорошие видео снимает, но ты какая-то его оголтелая фандырка походу. Помимо него есть заеюись и кэтдайк.кодинг и кодманки.
Аноним 13/10/21 Срд 20:45:03 #438 №772870 
>>772741
Нет, мне похуй на него, но пока один из самых адекватный из всех, кто делает ролики на все темы, поэтому последнее время стал включать его видео в поисковой выдаче. Несколько месяцев назад попал на какое-то очередное видео Кодманки и окончательно закрепилось мнение, что они - это что-то вроде зарубежного фламинго или как там его. Максимально уебанский код и ентри-левел туториалы.
Аноним 14/10/21 Чтв 10:42:38 #439 №772927 
>>766778 (OP)
https://www.reddit.com/r/Unity3D/comments/q3wy59/you_can_open_up_portals_on_any_surface_and_it/
Аноним 14/10/21 Чтв 12:03:51 #440 №772933 
>>772741
Код манки делает как-будто для детей. На нормальный продукт его код не похож.
мимохуй
Аноним 14/10/21 Чтв 12:05:25 #441 №772934 
>>772634
Перфоманс сделает пике покруче рубля и будет 0,002 фпс
Аноним 14/10/21 Чтв 13:32:38 #442 №772946 
>>772934
Проверил на 200 коробках, стоящих друг на друге в ряд по 10 штук и падающих. Лок в 250 фпс держался, но сцена была пустая. Поэтому и не понимаю что не так.
Аноним 14/10/21 Чтв 16:20:20 #443 №772966 
image.png
Есть у меня такой дом-каркас, где происходит игра, он что-то типа дебажного объекта, чтобы мне не приходилось сначала создавать модели всего мира. Это не игровой объект, я его текстурить не собираюсь - когда игра будет готова, я на него отдельными объектами наложу пол, стены, обои и все остальные объекты. А сам объект я хотел удалить. Но потом решил оставить и использовать его как огромный коллайдер дома (Mesh коллайдер).
Вопрос: не слишком ли сильно отобразится это на производительности? У него 1244 вершин/1939 граней/660 плоскостей.

И еще вопрос: как можно определить, что производительность хромает, если у меня железо хорошее? Вот я бы хотел узнать, например, сколько будет fps в i3 8100 +1050.
Аноним 14/10/21 Чтв 16:22:13 #444 №772967 
>>772966
зы делаю на pc, но потом планирую на ведро, хотелось бы, чтобы можно было играть на мобилках от 13К рублей хотя бы, так что производительность да, важна
Аноним 14/10/21 Чтв 16:23:44 #445 №772968 
>>772966
Я конечно нуб, но с дивана мне кажется что куча квадратных примитивов в качестве коллайдеров будет лучше чем один здоровенный дом.
Подкрепить фактами не могу.
Аноним 14/10/21 Чтв 17:41:40 #446 №772988 
XYZ Logo.jpg
>>766778 (OP)
Курс XYZ School - Алексей Малороссиянов - "Unity" (2021)
https://t.me/ue4ru/47
Цель курса: Научить тебя работать с Unity — движком, на котором создают 90% мобильных игр. На курсе ты сделаешь прототип простого 2D-платформера и с каждым уроком будешь добавлять в него новые механики: от перемещения по уровню и диалогов до чекпойнтов и босса с несколькими фазами боя.
Продолжительность: 74:56:27

Содержание:
Блок 1. Пазл-платформер
Лекция 1. Знакомство с Unity
Unity HUB и версия, IDE, создание пустого проекта, обзор интерфейса (scene, game, hierarchy, inpector, console). Трехмерное пространство сцены. Разбор GameObject и компонентов: Transform, Camera. Концепция Prefab.
1.Настраиваем окружения для работы:
• получаем Unity Id
• скачиваем Unity Hub
• договариваемся о версии Unity
2.Создание нового проекта:
• выбор необходимого темплейта
• обзор интерфейса (Scene, Game, Hierarchy, Inspector, Console)
3.Базовые сущности:
• пространство сцены
• unit
• Game Object
• Transform
• Camera

Лекция 2. Создание сцены и ее наполнение
Объяснение объекта .unitypackage и импорт необходимых ассетов. Сборка игровой сцены из префабов. Объяснение понятия текстур и Sprite. SpriteRenderer. Настройка камеры (инструменты редактора по алигну камеры). Запуск проекта.
1.Импорт ассетов:
• импорт ресурсов через unitypackage
• импорт сырых текстур
2.Настройка текстур:
• обзор возможных настроек текстуры
• настройка текстур под пиксель-артный проект
3.Grid & Snap Settings
4.Создание объектов на сцене:
• компонент SpriteRenderer и его свойства
• взаимосвязь настроек текстур с SpriteRenderer
5.Камера и её свойства
6.Пакет 2d Pixel Perfect

Лекция 3. Оживляем сцену
Понятие MonoBehaviour. Создание Player.cs базовый цикл жизни бихэйва (Awake, Start, Update, OnDestroy). Разбираем методы, переменные, базовые типы, условные операторы, модификаторы доступа. SerializedField и то как это влияет на GameObject (посмотреть на изменение сериализованных данных). Разбор класса Input, реализация базового передвижения игрока по сцене.
1.Первый скрипт:
• Обзор MonoBehaviour
• Жизненный цикл скрипта
• Создание контроллера игрока Player.cs
2.Вспомним теорию:
• переменные
• базовые типы
• условные операторы
• методы
3.Пользовательский ввод:
• Разбор класса Input
• Обработка ввода через Input
• Обзор нового пакета Input System
• Создание контролов и привязка методов из Player.cs
4.Перемещение объекта по сцене

Лекция 4. Физика и коллизии
Рассказ о физике: гравитация, rigid body, импульсы, статические объекты. Размещение на сцене необходимых компонентов пола и привязка физики к GO игрока. Переделываем управление на импульсы. Рассказ детекции коллизий, компоненты
Colider. Методы колизий в компоненте игрока. Создаем новый компонент коина и добавляем механику собирания монеток.
1.Физическая модель Unity
2.Разбор Rigidbody:
• типы физических тел
• масса
• гравитация
• ограничители
3.Разбор Collider:
• виды коллайдеров
• обзор параметров компонента
4.Переписываем управление персонажем на физическую модель:
• Velocity, AddForce
• Добавляем возможность прыгать
• Ground Check и его различные реализации
5.Делаем управление более отзывчивым:
• управление высотой прыжка
• safe jump
6.Реализуем детекцию коллизий на примере монеток.

Лекция 5. Тайлсеты и камера
Работа со спрайтами и тайлами. Настройки и свойства Sprite, SpriteRenderer. Обзор встроенных инструментов для тайлсетов и грида. Создание тайлсета для уровня. Расстановка тайлов из палитры на сцену. Расширения и кастомные тайлы.
Что такое тайлсет и зачем он нужен?
1.Импорт ресурсов:
• настройка спрайта
• нарезка текстуры.
2.Создание уровня с помощью Tile Palette
• Обзор интерфейса и возможностей
• Grid и TileMap
3.Простой скрипт слежения за передвижением игрока:
• Интерполяция: зачем нужна и как применить?
4.Пакет Cinemachine и реализация слежения через VirtualCamera:
• обзор технологии
• разбор параметров камеры
• настройка камеры под проект

Лекция 6. Анимация
Рассказываем о покадровой анимации, знакомимся с интерфейсами Animator/Animation. Создаём аниматор для героя с набором состояний передвижения. Рассказываем о переходах и параметрах анимации. Программируем контроллер для анимации.
1.Анимация в пиксель-арт играх:
• Покадровая анимация.
• Спрайтшиты.
• Настройка и нарезка ресурсов.
2.Интерфейсы Animator/Animation
3.Анимирование героя:
• Добавление аниматора и состояний.
• Создание анимаций и привязка к состояниям.
• Условные переходы между состояниями и проброс параметров.
• Привязка к коду.
4.Программная покадровая анимация:
• зачем может понадобиться
• реализация компонента

Лекция 7. Программирование игровых механик
Рассматриваем компонентный подход в разработке. Пишем компоненты для лестницы, переключателя (открывалки дверей), передвижной платформы, разрушающихся платформ. Компонент для слежения камеры за игроком.
1.Разбираем компонентный подход в разработке.
2.Немного теории о делегатах и разбор UnityEvent.
3.Создаём интерактивные компоненты и связываем их между собой:
• переключатель
• дверь
4.Опасные предметы:
• Добавляем пики и обработку их взаимодействия с героем
• Добавляем анимацию урона и связываем с кодом.

Лекция 8. Партиклы и инстанциирование
Рассказываем о Particle System. Создаём партиклы для прыжка, резкого разворота, сбора монет. Программно привязываем всё это.
1.Частицы, какие бывают и зачем нужны:
• Particle System
• Спрайтовая анимация частиц.
2.GameObject.Instaniate зачем нужен, как применять
3.Пыль под ногами:
• Настраиваем точки спавна для частиц и реализуем компонент
• Ивенты в анимации и связывание с кодом.
4.Реворк монеток:
• Новые ивенты в покадровом аниматоре
• Добавляем эффекты исчезновения монеток.

Блок 2. Боёвка и NPC
1.Melee и разрушаемые объекты.
• Реализуем механику холодного оружия. Дополняем код и соответствующие контейнеры в префабе персонажа. Реализуем механику разрушаемых пропсов.
2.Модель данных игрока и текущей сессии.
• Рассказываем о ScriptableObject как о хранилище данных и настроек. Проектируем и реализуем модель данных игрока, привязываем эти данные к игре. Реализуем бочку со взрывчаткой, которая ранит персонажа при ее взрыве. Дополнительное задание: на основе материалов с этой и предыдущей лекции реализовать механику аптечки.
3.Мобы и базовый AI.
• Рассказываем о неигровых персонажах и добавляем простой контроллер моба который который ранит персонажа при приближении. Рассказываем об агро рэнже и базовых поведениях.
4.Range атаки.
• Рассказываем что такое проджектайл и настройки Bullet в разрезе физики и детекции коллизий. Реализуем рэнж оружие игрока (пистолет). Доп. задание: реализовать дробовик.
5.Стреляющие противники и стратегии ИИ.
• На основе компонентов и предыдущей лекции реализуем стреляющего моба. Рассказываем о стратегиях и стэйт машинах для AI. Реализуем простую модель поведения моба.
• Дополнительное задание: реализовать такое поведение моба, чтобы стреляющий переходил в рукопашную при приближении персонажа.
6.Инвентарь. Модель данных и связывание.
• Создаем модель данных инвентаря и ячеек быстрого доступа. Реализуем собирабельные ресурсы и механики патронов, ключей.
• Доп. задание: собирабельная аптечка.
7.Звук.
• Обзор звуковой подсистемы Unity, реализация эмбиента уровня, программное воспроизведение звуков, компонент воспроизведения звука.
8.Чистый код, связность, зацепление.
• Лекция на тему хорошего кода: какие есть признаки, чего нужно придерживаться. Рефакторим созданные классы.
• Дополнительное задание: отрефакторить один из старых классов.

Блок 3. UI и новые игровые механики
1.Введение в UI.
2.Скрины и HUD.
3.Диалоговые NPC. UI диалога.
4.Локализация.
5.Загрузка новых уровней.
6.Чекпоинты. Красивости (паралакс).
7.Продвинутые механики: способности и прокачка.
8.Прокачка персонажа.

Блок 4. Продвинутые игровые механики и «красивости»
1.Освещение.
2.Эффекты камеры.
3.Coroutines.
4.Сражение с боссом.
5.Сражение с боссом-2.

Блок 5. Оптимизация, аналитика, сборки
1.Инструменты анализа производительности.
2.Память, атласы, пулы объектов.
3.Сборки под разные платформы, на что смотреть в параметрах. 4.Unity Analytics. Ивенты, воронки.
Аноним 14/10/21 Чтв 17:43:11 #447 №772989 
>>772966
Во-первых, твой "каркас" обычно делается из небольших примитивов, это буквально называется грейбоксинг. Мне кажется, так проще и тебе, и движку. Теперь к вопросу о коллайдерах. Большой коллайдер это плоховато, но ты вряд ли заметишь разницу. Просто если у тебя в одной из комнат дома будет падать условная чашка на пол, физика будет просчитывать, не может ли эта чашка контактировать с любым объектом в любой из комнат, ну и не только, захватится ещё лишнее пространство вокруг всего дома. Ну и по классике - меш коллайдер это дорого, используй составной из примитивов. Хотя разницы в 90% случаев ты просто не увидишь.
Аноним 14/10/21 Чтв 17:47:48 #448 №772993 
>>772734
>Персонаж создаёт инвентарь, инвентарь создаёт гуи. Звучит логично.
Блин, тут подумал, что если заюзать MVC из вебмакакинга? Каждый объект состоит из трёх частей, модель, отображение и контроллер. Так я смогу связать логику и отображение объекта вместе. А условная сборка "гуи" будет содержать в себе только примитивные типы и сама гуй создавать не будет. Вообще заметил, что в гдаче по вопросам архитектуры даже срачей нет.
Аноним 14/10/21 Чтв 18:15:15 #449 №772999 
>>772988
Нахуй постить курс по юнити в чатик уеча-дебилов?
Аноним 15/10/21 Птн 10:38:41 #450 №773097 
image.png
>>772999
>Нахуй постить курс по юнити в чатик уеча-дебилов?
Аноним 15/10/21 Птн 12:29:21 #451 №773107 
У меня, по сути, пустой билд на мобилу весит 86мб. Это почти все игры выходят такого размера и, скажем, 15мб никак не добиться?
Аноним 15/10/21 Птн 13:05:53 #452 №773114 DELETED
>>772993
Слишком специфично, слишком абстрактно чтобы об этом сраться. Допустим опишу я архитектуру своего рогалика на ECS+MVC , половина не поймет, половина начнет доказывать что надо делать на ООП+лапше.
А вообще SOLID. Тогда персонажу и не захочется создавать инвентарь, ведь это не его зона ответственности, а менеджера уровнем выше.
Аноним 15/10/21 Птн 14:02:42 #453 №773134 
>>773107
Пчел у тебя проёбаны настройки. Пустой билд под андрюшу весит +-25 мб.
Аноним 15/10/21 Птн 14:35:14 #454 №773140 
>>773134
APK весит 18, установленная игра 85.
А что и где мне менять в настройках?
Аноним 15/10/21 Птн 15:14:16 #455 №773148 
>>773114
>половина начнет доказывать что надо делать на ООП+лапше.
В споре как-то проще добраться до нужных решений. Даже если не принимаешь точку зрения оппонента, всё равно как-то задумываешься над разными вещами. Как там с ецс-то дела, скинмеши прикрутили уже?
>менеджера уровнем выше.
Менеджеры это в принципе идея так себе. Но допустим. Есть какой-то менеджер, который создаёт персонажа, инвентарь и гуи к нему. И это ведь тот же mvc, только с прикрученным сбоку менеджером-фабрикой. В этот момент пытаемся взаимодействовать с инвентарём. Гуи инвентаря как это должен обрабатывать? Обращаться в менеджер он не может. Допустим, гуи может обратиться в сам инвентарь. А теперь гуи нужно перерисовать. И из инвентаря мы его перерисовать не можем, только из менеджера. Мне тут два момента не нравится, что персонажи со своими инвентарями не связаны и что менеджер получает очень большую зону ответственности. Наверное, переделаю сейчас на этот подход, а то из предыдущего невозможно передать ссылку на инвентарь персонажа в глобальном "гуи-менеджере", который рисует панели быстрого доступа.
Аноним 15/10/21 Птн 18:46:48 #456 №773168 
>>773097
Пройди по ссылке там группа под названием "Unreal Еngine на Русском"
Аноним 16/10/21 Суб 12:01:05 #457 №773264 
Скоро 2022, а в юнити все еще нет стандартного средства для декалей от выстрелов.

Кто как решил эту проблему?
Нашел вот https://github.com/Anatta336/driven-decals.git
Но хз что там в теории с производительностью.
Аноним 16/10/21 Суб 12:28:49 #458 №773271 
>>773264
Лепи спрайты да и всё
Аноним 16/10/21 Суб 14:20:15 #459 №773280 
>>773271
Поподробней можешь рассказать?
Просто plane/quad с текстурой?
Тогда на неровных поверхностях хуита получится.

Как кстати дырки на подвижные неровные модели лепить?
На персонажей и все такое.
Аноним 16/10/21 Суб 14:50:34 #460 №773283 
>>773264
>driven-decals
Поехавшие декали?
Аноним 16/10/21 Суб 15:25:50 #461 №773285 
>>773280
>Тогда на неровных поверхностях хуита получится.
Ну и что, всем похуй на эти дырки, инди простят
Аноним 17/10/21 Вск 17:05:05 #462 №773450 
Короче.
Объект создается через GameObject.Instantiate под объектом, который задизебленен.
Таким образом. Start и Awake не будут дернуты для созданного объекта, пока его родитель (и он сам) не буду раздизейбленыны. Есть какой-то способ (или другие методы), которые можно использовать в данной ситуации?
Аноним 17/10/21 Вск 17:28:29 #463 №773458 
>>773450
>создается под объектом
Чайлдом или что? Пиши нормально
Аноним 17/10/21 Вск 19:04:46 #464 №773483 
>>773458
Да, чайлдом. В GameObject.Instantiate в здается transform объекта
Аноним 17/10/21 Вск 19:45:36 #465 №773486 
>>773450
Ага. Пишешь нужный код в свой кастомный метод и дёргаешь его после инстансирования.
Аноним 17/10/21 Вск 20:03:01 #466 №773488 
>>773486
проблема в том, что это ряд компонентов, который может быть, а может не быть у игрового объекта.
Т.к. компоненты нельзя получать по интерфейсу, придется для каждого отдельное условие писать, если у каждого свой базовый класс уже есть.
Аноним 17/10/21 Вск 20:46:26 #467 №773503 
>>773486
>>773488
Решил через базовый класс, в итоге. Но, мне кажется, это может быть потенциально проблемой.
Аноним 17/10/21 Вск 23:18:36 #468 №773516 
image.png
ньюфаг на связи
посмотрел гайд и озадачен
почему нельзя сразу написать ghost.transform.position = ghost.home.inside.position?
автор что-то про это сказал но я не могу разобрать что именно на ангельском + съел окончания
Аноним 17/10/21 Вск 23:29:46 #469 №773518 DELETED
>>773516
Потому что тут написано: возьми позицию из дома, а Z для этой позиции - от призрака.
Аноним 18/10/21 Пнд 10:47:57 #470 №773542 
>>773488
>Т.к. компоненты нельзя получать по интерфейсу
Откуда такая инфа?
Аноним 18/10/21 Пнд 14:02:03 #471 №773563 
Заебался настраивать navmeshagent с animator-ом с включенным apply root motion. Адекватного движения так и не смог достигнуть.

Собственно, проблема, моб может ходить с переменной скоростью, от точки А до Б скорость может варьироваться от 1 до 2, например, если он хромает. Если использоваться скорость как константу, то местами он будет скользить, или на месте топтаться.

Поэтому анимация сама должна толкать моба.

Сейчас решил убрать нахуй компонент navmeshagent, и использовать только статичную функцию calculatepath. Еще не использовал, но, думаю, сделаю так. Получаю все углы, и просто поворачиваю объект от одного угла к другому по мере достижения. А анимация сама его будет двигать, то есть, позицию мне обновлять не надо.

С какими подводными могу столкнуться?
Аноним 18/10/21 Пнд 15:46:16 #472 №773587 
>>773563
>С какими подводными могу столкнуться?

Анимация двигает трансформом. Если ты двигаешь трансформом - значит что объект будет проходить сквозь коллайдеры, стены и т.п. Двигай через rigidbody.addforce или character controller.
Аноним 18/10/21 Пнд 16:13:49 #473 №773593 
>>773587
> значит что объект будет проходить сквозь коллайдеры

В основном у моба анимации ходьбы и бега - при запуске моб тупо бежит вперед, куда повернут его rotation.
Поэтому, все, что мне нужно, это изменять его rotation от одного угла к другому
Аноним 18/10/21 Пнд 16:20:24 #474 №773594 
>>773542
На форуме юнити говорили.
Аноним 18/10/21 Пнд 16:21:29 #475 №773595 
насколько я понял, NavMesh.CalculatePath возвращает позиции, по которым надо двигать персонажа, чтобы он дошел до указанной точки, не сталкиваясь с препятствиями.
при этом надо чтобы была навигационная сетка была запечена.
То есть, чтобы заставить двигаться анимированного персонажа, я должен его повернуть к ближайшей такой точки. анимация сама доведет его до нее. Когда он до нее дойдет - повернуть к следующей и тд, пока не дойдет конечную точку.
Потом его можно будет стопарнуть анимацией идлинга.
Аноним 19/10/21 Втр 12:05:34 #476 №773720 DELETED
Не знаю с чего начать делать игры, да и надо ли. Вроде, есть какое-то небольшое желание что-то делать, а что конкретно - не понятно, и идей нет. С таким настроем, наверное, и вкатываться бесполезно, а?
Аноним 19/10/21 Втр 12:21:12 #477 №773725 
>>773720
Сделай змейку, три в ряд, тетрис.
Можешь сам попытаться, можешь по туторам.
Как сделаешь поймешь, надо ли оно.
Аноним 19/10/21 Втр 14:03:26 #478 №773743 
Не думал, что когда-нибудь забреду на это доску, но...
С инженерной вакансии вдруг прислали задание реализовать в Unity3d емкость с жидкостью и изменение уровня жидкости.
Это сложно для человека, который Unity и ему подобные среды разработки в глаза не видел?
Аноним 19/10/21 Втр 16:41:04 #479 №773783 
Вы довольны тем, фактом, что умеете делать игры?
Аноним 19/10/21 Втр 16:45:13 #480 №773785 
>>773783
Делаю игры на юнити около 5 лет, 2 последних года как главный. Очень доволен.
Аноним 19/10/21 Втр 16:53:35 #481 №773786 
Почему у меня Ruby adventure по официальному тутору занимает 400мб? Что там занимает столько места? И как, если можно, это вычищать?
Аноним 19/10/21 Втр 16:54:30 #482 №773787 
>>766778 (OP)
На дворе 2022 год почти а в шапке до сих пор втирают про unityscript
Аноним 19/10/21 Втр 16:55:39 #483 №773788 
>>773743
Емеость в 3д или как? Напиши подробнее.
Аноним 19/10/21 Втр 16:58:57 #484 №773790 
изображение.png
>>773788
Да, 3Д. По ютубу сделал емкость через ProBuilder и скачал плагин Zibra liquids.
Аноним 19/10/21 Втр 19:16:26 #485 №773832 
>>773790
kek
Аноним 19/10/21 Втр 19:20:57 #486 №773835 
>>773832
Ну, вода льется, только вот за границы выходит и если куб вращать на месте стоит.
[mailto:[email protected]Аноним 19/10/21 Втр 20:07:00 #487 №773839 
>>768132
прописывай объекту в Старте FindObjectOfAType<Нужный Тип>();
Аноним 20/10/21 Срд 05:46:41 #488 №773861 
Screenshot (654).png
Screenshot (659).png
Есть разные объекты и они ходят по поверхности, на которую я наложил SurfaceShader, который меняет высоту поверхности по y.

Вид меняется, но не физические свойства. Как сделать так, чтобы физическая высота поврехности соответствовала визуальной? Хочу чтобы объекты пиздячили вверх-вниз по волнам поверхности, а пока они игнорируют ее, им похуй. Как это сделать?

я из webgl пришел, мимоахуеваю
Аноним 20/10/21 Срд 06:06:28 #489 №773862 
>>773861
бля неужели я должен каждый раз рисовать HeightMap?
Аноним 20/10/21 Срд 11:44:05 #490 №773878 
>>773861
подскажи пожалуйста, что за цветовая схема на втором скрине?
Аноним 20/10/21 Срд 16:33:51 #491 №773920 
>>773878
minuit soft
Аноним 20/10/21 Срд 17:47:45 #492 №773931 
>>773920
спасибо. тема топчик
Аноним 20/10/21 Срд 17:53:32 #493 №773933 
T6SPO7UlEv.gif
Пытаюсь заставить персонажа патрулировать между двумя точками. Вычисляю путь с помощью CalculatePath и гоняю это персонажа по этим точкам. Точнее, гоняет его анимация (включен Apply Root Motion), я лишь его поворачиваю от точки к точке по мере достижения. Проблема в том, что анимация бега включает в себя вращение влево-вправо спины и его потомков. Поэтому, на поворотах я бы хотел ее отключить, а то эти вращения иногда выглядят очень широкими.
Как лучше ее сделать? Я пытался в LateUpdate transform.rotation = nextCorner. Не помогло, пытался залочить всю спину - спина-то залочилась, а вот руки, и все остальное по-прежнему крутились, несмотря на то, что спина - их родительский элемент.
Аноним 20/10/21 Срд 23:13:52 #494 №773962 
>>773861
Шейдером никак.
Аноним 20/10/21 Срд 23:28:48 #495 №773963 
>>773933
Какой то велосипед - велосипедов делаешь, до тебя уже миллион раз делали. Загугли примерное решение и посмотри, всё делается намного проще и быстрее.
Аноним 21/10/21 Чтв 17:24:13 #496 №774038 
>>773963
Этот способ требует несколько строчек код, и он простой, никакого агента. Он отлично работает, тут чисто косметику навести надо. А именно чтобы телом не вилял в определенных местах. Например, при приближении к углу.
Все решения в инете, где нужно подружить агента с навигацией, были сложнее, и требовали допила, чтобы корректно работали. Или вообще предлагали новые библиотеки.
Ну, в любом случае может возникнуть такая ситуация, что анимацию нужно подкорректировать с учетом местности. Не делать же мне отдельную анимацию "RunInCorner". Хотя уже думаю, что просто скачаю другую анимацию, где чел при беге не виляет, а прямо бежит.
Аноним 21/10/21 Чтв 18:16:33 #497 №774039 
Впрочем, зачем тут что то спрашивать? Есть же https://forum.unity.com/forums
Хотя и там могут молчать. Со вчерашнего дня оба моих треда без ответа
Аноним 21/10/21 Чтв 18:45:34 #498 №774047 
>>774039
А ты чего ждал? У тебя крайне специфический случай, никто рутмоушном не пользуется, так у тебя ещё и гоняешь персонажа непонятно как.
Аноним 21/10/21 Чтв 19:20:51 #499 №774054 
9k2MNXZOMm.gif
>>774047
>У тебя крайне специфический случай, никто рутмоушном не пользуется
Ну ладно. Пусть чела гоняет навмешагент. Но это значит, у персонажа будет постоянная скорость. А есть анимации с переменной, например хромота. В итоге чел скользит по полу
Аноним 21/10/21 Чтв 19:34:25 #500 №774061 
>>774054
Не приходилось этого делать, но думаю в скрипте, который отвечает у тебя за ии моба можешь в апдейт закинуть условие, изменяющее velocity агента при условии хромоты.

https://docs.unity3d.com/540/Documentation/ScriptReference/NavMeshAgent-velocity.html
Аноним 21/10/21 Чтв 19:34:37 #501 №774062 
5qab6a7nyN.gif
А с рутмушн все четко
Аноним 21/10/21 Чтв 21:46:43 #502 №774085 
>>774062
При повороте скользит
Аноним 22/10/21 Птн 11:45:26 #503 №774146 
image.png
ёбаный рот этого движка блядь
Аноним 22/10/21 Птн 14:37:40 #504 №774178 
image.png
давно у них новое лого?
Аноним 22/10/21 Птн 16:25:46 #505 №774193 
>>774146
че дебил час ждать
Аноним 22/10/21 Птн 16:33:50 #506 №774195 
>>774193
тя ебёт?
Аноним 22/10/21 Птн 19:38:38 #507 №774224 
>>774178
недавно
Аноним 22/10/21 Птн 20:25:03 #508 №774233 
Такой вопрос, допустим я хочу сделать небольшую 3д игру, бюджет нулевой, где брать на нее ресурсы (ибо в магазине из бесплатного нихуя нет), и где их берут аноны, неужели все сами делают?
Аноним 22/10/21 Птн 20:45:38 #509 №774237 
>>774233
В чем проблема? Анимации есть на mixamo, бесплатные базовые модели тоже можно найти, если нет, то сделать лоуполи. Даже скрипты и тех куча.

создатель 3Д игры только из кубов
Аноним 23/10/21 Суб 10:44:00 #510 №774316 
>>774233
Воруй и переделывай.
Аноним 23/10/21 Суб 14:59:27 #511 №774348 
Хочу все ассеты делать вручную в Блендере, какие подводные?
Аноним 23/10/21 Суб 15:45:32 #512 №774356 
>>774348
Никаких. Проблема появится на моделях сложнее куба, которым надо будет делать развёртку, рисовать текстуры, и анимировать.
Аноним 23/10/21 Суб 19:21:36 #513 №774383 
Аноны, посоветуйте как быть.
Недавно начал искать работу джуном, вакансий норм очень мало (без опыта чтобы и без сверх. скиллов). Написал один челик, ищут типа джунов и готовы меня рассмотреть после тестового. Тестовое я сделал, после оценки сказали хорошее и готовы (внезапно) давать пробовать пилить прототипы ГК. Собеса даже и не было. Но то хуй с ним. Но вот цена это пиздец. Начальная ставка аж 2$ в час.
Я конечно понимаю что геймдев это не ВЕБ какой-то, да и я зеленый джун. Но блять, это же крохи пиздец.
Вот и думаю соглашаться или нет. С одной стороны я готов пойти чтобы опыт капал какой-то. Но с другой, это же ебаные прототипы ГК (даже не фул игры), и ебаная галера раз платят так мало. Там не ревью, не менторства не будет. Так какой опыт я там заработаю я хз. Проще уже самому идею взять с ютуба и пилить ее периодически подсматривая решения. И в спину никто не давит дедлайнами.
В общем, хз как поступить. Есть тут братья работающие?
Аноним 23/10/21 Суб 23:19:02 #514 №774409 
>>774383
Во-первых, делать гиперказуалки на самом деле труднее, чем сидеть месяцами на большом проекте. Поэтому опыта будет нового предостаточно.
Во-вторых 350$ / мес для зеленого джуна, вполне норм.
Но ты, скорее всего быстро выгоришь (а.к.а. заебешься), потому что, опять таки, делать гиперказуалки это на самом деле трудно, а тебе придется выпускать примерно одну в неделю.
Аноним 23/10/21 Суб 23:38:49 #515 №774410 
>>774383
Если хочешь больше, сделай себе красивой портфолио в виде дев. аккаунта на гугл плей и/или гит.
Аноним 24/10/21 Вск 00:24:14 #516 №774411 
>>774409
Я не говорю что их делать легко, они разные бывают. Некоторые механики вообще хуй пойми как сделаны. Я говорю про то, что меня будут заставлять делать прототипы ГК на отъебись, без ревью и прочего. И вот стоит оно того или можно еще работу поискать а пока ищу, самому пилить прототипы и без переработок и заебок свыше.

Вообще, я в ахуе видеть что в айти 350 норм. Даже джуну. Ну правда, смешно. Или это геймдев такой где нет норм зп. Пока не понял.

>>774410
Гит есть, нахуй никому не нужен. Ну судя по игнору от хрюшек. В плей маркет хз че лить. Точно не прототипы недоигр. А заканчивать такое это не один месяц может уйти. И опять же, вдруг похуй будет и снова не кто не глянет.

Блять, в шапке надо еще писать, что хуй устроишься на работу если вдруг решили сюда вкатываться.
Аноним 24/10/21 Вск 00:52:43 #517 №774412 
>>774411
>Вообще, я в ахуе видеть что в айти 350 норм. Даже джуну. Ну правда, смешно. Или это геймдев такой где нет норм зп. Пока не понял.
А ты поверил в сказки про 300к / сек? На самом деле это не сказки, просто нужно годик - два поРАБотать за "копейки"
Аноним 24/10/21 Вск 02:28:22 #518 №774415 
>>774411
>делать прототипы ГК на отъебись
Ну так-то ты на ревшару обычно претендуешь, нет смысла делать на отъебись. Так-то если есть возможность не работать то делай сам, можешь даже в издательство отсылать на тесты.
Аноним 24/10/21 Вск 08:32:56 #519 №774421 
есть какой-то смысл явно указывать gameObject?
например gameObject.transform
Аноним 24/10/21 Вск 10:43:10 #520 №774432 
Анонасы, хочу сделать 3д порнушную адвенчуру от третьего лица где в приоритете будут катсцены, это лучше делать на Unity или на Unreal? Я графон в модели пытаюсь максимально сильный выкрутить
Аноним 24/10/21 Вск 11:15:28 #521 №774436 
>>774432
Где удобнее, и что понятнее там и делай. Разницы в этих двух движках давно уже почти нет. Что-то лучше там, где-то проще там. Вкусовщина.
Сам юзаю юньку около 5 лет, и паралельно анрил 2 года.
Аноним 24/10/21 Вск 11:19:31 #522 №774438 
почему Camera.main не видит камеру? ошибку выкидывает, камера у меня если что в персонаже запрятана
Аноним 24/10/21 Вск 12:16:05 #523 №774446 
>>774412
Ну в санном фронте так и есть. Джуны по 80к+ зашибают. Печальненько все тут.
Аноним 24/10/21 Вск 13:27:12 #524 №774453 
>>774438
Потому что камера мейн это поиск по тегу MainCamera. Проверяй тег.


Олсо, аноны, а кто как раелизует базу данных? Я пока что придумал только создавать под каждый объект скриптейбл и плюс-минус организовывать через другие скриптейблы. Но выглядит не слишком гибко.
Аноним 24/10/21 Вск 14:04:25 #525 №774461 
>>774453
Пиздец. Везде всё прокликал и не заметил этой очевидной штуки, выручил
Аноним 24/10/21 Вск 14:50:54 #526 №774466 
>>774453
Свою реляционную базу данных хочешь написать, нахуя? https://habr.com/ru/post/442954/
Аноним 24/10/21 Вск 15:36:09 #527 №774471 
>>774466
Мне не нравится sqlite. Чтобы использовать пароль нужно отдать два вечнозелёных килорубля. Это много. Можно запаковать базу, а не хранить её в streaming assets, но тогда нужно будет её всю загружать в память. Это плохо. Меня не интересует какая-то серьёзная защита, но когда база лежит в открытом виде и редактируется за полсекунды это как-то хуёво.
Аноним 24/10/21 Вск 16:36:46 #528 №774475 
>>774471
Зачем тебе вообще база данных?
Аноним 24/10/21 Вск 18:06:40 #529 №774485 
>>774475
Предметы хранить, параметры, вот это всё. Для рпг-лайк игры. Сейчас пилю расширение редактора, чтобы не утонуть в файлах и никогда не заглядывать в папку с ними. Получается не слишком гибко, но лучше, чем ничего.
Аноним 24/10/21 Вск 19:01:39 #530 №774496 
>>774471
Может тебе монга сгодится? https://www.mongodb.com/developer/how-to/sending-requesting-data-mongodb-unity-game/
Аноним 24/10/21 Вск 19:11:56 #531 №774499 
>>774485
Не знаю, если нормально организовать данные это буквально пару словарей. Не могу представить ни одной ситуации, когда нужно подкручивать полноценную бд.
Аноним 24/10/21 Вск 19:51:40 #532 №774512 
image.png
image.png
image.png
image.png
>>774446
Кул стори
Аноним 24/10/21 Вск 20:38:34 #533 №774520 
>>774512
>IQ Dev
Подпекает с таких названий, ну типа iq, ну вы поняли, мы тута умные все сидим, интеллектуалы короче.
Аноним 24/10/21 Вск 21:29:01 #534 №774529 
image.png
Как быть, если у персонажа 10 анимаций, и должна быть возможность плавно перейти из одной анимации в любую другую?
Как убрать этот пиздец, как на пике? (хотя в боевых условиях работает он все же хорошо)
Я слыхал про blendrtee, но он годится для объединения одного типа анимации (бег влево, бег вправо и тд).
Ну, допустим я могу запихать в blendtree анимации:
1) стоять (x=0)
2) оглядываться (x=0.5)
3) бежать (x=1)

Допустим, чел стоит, я и хочу чтобы бежал.
Я могу с 0 поменять до 1, он побежит, но это будет без плавного перехода от анимации "стоять" до "бежать".
А если я буду плавно менять 0, 0.05, 0.1,0.15 .... 1, то это коснется и анимации "оглядываться ". В итоге весь этот переход будет выглядеть странно.
Аноним 24/10/21 Вск 21:54:12 #535 №774531 
>>774496
>finding yourself needing to make use of a database in the cloud?
Явно не то, что мне нужно. Хотя традиционную sql базу делать всё равно надо, но там уже просто парсинг файлов и заливка куда-то в постгрес.

>>774499
БД это в принципе удобно. Тем более дальше я захочу добавить квесты, ещё какие-то параметры, так бы создал таблицу и погнал. Скриптейблы не слишком удобны, делать свою бд на основе жсона или xml это шиза. Адекватная поддержка mysql была бы кстати.
>буквально пару словарей
Да пока списками обошёлся, номер списка в качестве ключа сгодится.На сколько я помню, юнити не умеет сериализовать словари. Но всё равно не нравится создавать по файлу на каждый предмет, надо как-то оптимизировать. Либо делать массивы в скриптебле, который играет роль таблицы, но тут меня пугает добавление новых полей, не проебётся ли вся старая информация.
Аноним 25/10/21 Пнд 00:56:02 #536 №774537 
Посоны, тупой вопрос наверное, но все же. Нихуя не пойму как адекватно сделать анимацию приземления, типа облака пыли. Сделал через collision 2d, но анимация срабатывает когда персонаж подходит к краю земли и резко поворачивает обратно.
Аноним 25/10/21 Пнд 07:43:39 #537 №774545 
>>774529
Там чето типа ноды энистейт надо исполтзовать, а на транзишены от нее ставить условия перезода от этого энистейта в анимацию.
Аноним 25/10/21 Пнд 12:19:00 #538 №774562 
Как лучше и правильнее всего передвигать 2д персонажа? Велосити, аддфорс или еще что? Использую капсульный коллайдер чтобы не застревал нигде, но персонаж постоянно скользит с уступов вниз, как пофиксить?
Аноним 25/10/21 Пнд 13:43:34 #539 №774565 
Как делать игры на Айфоны? Можно ли обойтись без Мака? Это придется всё делать через виртуальную машину?
Аноним 25/10/21 Пнд 14:42:55 #540 №774570 
>>774565
в vmware заблочена возможность установки макоси, но есть кряк под 15 версию (вроде)
но учти что и 15 версия уязвима и есть способ заражения зондами основную ОС
Аноним 25/10/21 Пнд 16:02:09 #541 №774585 
>>774570
>есть способ заражения зондами
Какая разница если использовать только для билда?

Эпл стор пропустит?
Аноним 25/10/21 Пнд 17:17:18 #542 №774598 
>>774545
спасибо за наводочку, то что мне нужно
Аноним 25/10/21 Пнд 17:45:42 #543 №774605 
image.png
заебала эта ошибка уже, проебал где-то референс и как его теперь найти? дабл клик не работает
Аноним 25/10/21 Пнд 18:05:41 #544 №774606 
>>774529
>Как убрать этот пиздец, как на пике?
Вы таки антисемит?
Аноним 25/10/21 Пнд 18:11:01 #545 №774607 
>>774606
вот как оно в жизни бывает.
Пишешь код абы как. Похуй, лишь бы доделать и лишь бы работало. Все равно скачает от силы 5 человек.
А потом тебе становится похуй на свое желание "лишь бы доделать", и появляется чувство прекрасного, и ты начинаешь править свой код, шоб было красиво и правильно.
А потом, уставши, осознаешь свою никчемность, и снова пишешь код абы как.
колесо сансары
Аноним 25/10/21 Пнд 20:50:26 #546 №774647 
cyclesskinnode.JPG
Аноны, у меня статические объекты пропадают если сначала смотреть в стену, а потом резко развернуть камеру. Зуб даю, что они "куллятся" некорректно.

Настройки запекания Occlusion culling такие:
Smallest occluder - 0.5
Smallest hole - 0.4
Backface - 20

Использую Юнити 2018 LTS.
Аноним 25/10/21 Пнд 21:47:05 #547 №774656 
image.png
XvRRBpOhBX.gif
>>774545
спасибо, анон, сейчас выглядит более-менее, как на скриншотах от других челиков. давно терзался этой проблемой
Аноним 26/10/21 Втр 08:58:00 #548 №774696 
А можно ли для 3д объектов использовать нарезку из SpriteSheet, как в 2д, или для каждой текстуры отдельный файл? Мне нужно на каждый куб написать номер. И так получится, что нужно импортировать 30 картинок.
Аноним 26/10/21 Втр 15:52:33 #549 №774783 
16345799828820.jpg
>>766778 (OP)
Сап аноны, такое дело пилю АИ противника на навмеше всё ничего, быстро, дёшево и сердито, но один косяк, КАК УПРАВЛЯТЬ МОДЕЛЬЮ В НАВМЕШЕ? Короче когда охранник теряет игрока то возвращается на стартовую точку, но стоит при это условно лицом к двери, а мне нужно чтобы это даун стоял спиной к двери.
Как обычно, вытягивают информацию о положении модели из навмеша АИ, чтобы я мог её развернуть?
Аноним 26/10/21 Втр 22:42:13 #550 №774874 
>>774783
Насколько я помню, навмешагенты можно поворачивать через transform.rotation без подводных камней.
Аноним 27/10/21 Срд 10:09:08 #551 №774902 
1.jpg
До меня только дошло, причём тут веб к uiElements. Это злоебучие таблицы буквально со всеми их недостатками. Сам-то я всегда верстал на дивах, потому пытался найти тот же функционал в элементах. А он не про дивы, а про таблицы. Очень неудобно.
Аноним 27/10/21 Срд 11:31:25 #552 №774905 
Обновился до 2021.2.0f1
В чём я не прав?
Аноним 27/10/21 Срд 11:39:38 #553 №774906 
image41.png
>>774905
А надо было сразу на 2022
Аноним 27/10/21 Срд 11:50:23 #554 №774907 
>>774906
ну нахуй, она же в альфе
Аноним 27/10/21 Срд 11:52:08 #555 №774908 
1.png
>>774905
Тормозишь. Кстати, 16 бета имеет баги, в 15 не было.
Аноним 27/10/21 Срд 15:29:08 #556 №774933 
image.png
Где найти этот ассет? Или как его хотя бы накинуть на объект
пишет что он снаружи проекта
Аноним 27/10/21 Срд 16:50:15 #557 №774939 
LustFromBeyondpHUc9XSTsp.jpg
LustFromBeyondmoj0Ec1wEY.jpg
Пока что самая графонистая игра на юнити, что я играл, lust from beyond 2021
Аноним 27/10/21 Срд 19:24:20 #558 №774962 
Сап вечерний. Может кто дать скрипты к tpc и заделом под аниматора (playercontroller буквально прыжок, ходьба и если есть возможность атаки). Пытался написать сам камеру с контроллером, но соснул хуйца, камера как шальная крутиться и пофиксить после нескольких дней дрочи нонстоп не смог. Гуглить пытался, везде не рабочее говно либо я не так гуглю.
Аноним 27/10/21 Срд 21:52:32 #559 №774975 
>>774962
Стандартный пробовал?
https://assetstore.unity.com/packages/tools/game-toolkits/third-person-controller-basic-locomotion-free-82048
Аноним 28/10/21 Чтв 10:39:36 #560 №775013 
>>774783
Отслеживай дистанцию до двери или состояние охранника двигается-стоит и как только он подходит к двери или останавливается, пусть отворачивает хлебальник.
Аноним 28/10/21 Чтв 11:35:22 #561 №775024 
>>774975
Спасибо за ответ, я уже на бугорном ютубе нашел немного другой ассет. Слушай, а как минимально по времени перебить ассетные анимации на свои?
Аноним 28/10/21 Чтв 13:55:02 #562 №775041 
da311.mp4
изображение.png
изображение.png
изображение.png
Вкатываюсь с тупым вопросом. Есть кольца. На них, на костях, которые идут внутри модели (не юнитивские Динамик Бонс, а то, что из Maya экспортировалось, jointы). Я на них повесил по бокс коллайдеру, и всё было бы хорошо: колечки вешаются друг на друга, врезаются в стены и пол и вообще прекрасно себя чувствуют, но если запустить анимацию, то с радостным свистом коллайдеры пролетают друг через друга. Почему и как это пофиксить?
1 - кольцо
2 - каждый джоинт в нём
3 - физика.
Аноним 28/10/21 Чтв 14:41:38 #563 №775055 
16299872068970.jpg
>>766778 (OP)
Посоветуйте годных слитых курсов на русском в фоне послушать.

Желательно с более углубленным разбором физики и/или шейдеров, да и вообще нормальный разбор рендер-пайплайна и что мне из него нужно знать, а что ни в коем случае не трогать.
Аноним 28/10/21 Чтв 16:47:51 #564 №775114 
>>775055
>в фоне послушать
Группу хлеб фоном послушай или сердючку, для тебя больше пользы
Аноним 28/10/21 Чтв 18:41:26 #565 №775164 
Xyли ЮНЬКА такая необъятная?
Уже полгода пытаюсь сделать свою игру, но вечно упираюсь в одну проблему Я НИЧЕРТА НЕ ПОНИМАЮ! Смотришь гайд, где вроде как все понятно объяснят, так в коментах его засрут и скажут, что все не так используя кучу непонятных слов и букаф, пытаешься смотреть прокачанных ребят, так они сами говорят какими-то непонятными словами и бууквами. Однако сколько курсов я не смотрел нигде не было видевоурока в котором бы произошел этот момент перехода с базы, на сложные буквы и слова. Кароч я в отчаянии анонче, кажется что я мегатупой валенок который ничерта не способен понять в этой жизни(
Аноним 28/10/21 Чтв 18:51:50 #566 №775165 
16256821540130.mp4
>>775164
Делай базу, потом преисполнишься в познании и перейдешь на сложные буквы.
Аноним 28/10/21 Чтв 18:55:52 #567 №775167 
>>775165
Как? По мановению волшебной палочки, однажды проснусь всезнающим существом?
Аноним 28/10/21 Чтв 20:02:45 #568 №775182 
>>775167
Сделаешь как в туториале
@
Обнаружишь, что чего-то не хватает (универсальности/производительности/фичи, которая задумана в твоем проекте и тд)
@
Бля, а как сделать получше
@
Так вот зачем эти сложные буквы

Короче практикуй и всё получится.
Аноним 28/10/21 Чтв 20:08:41 #569 №775184 
>>775164
>засрут и скажут, что все не так используя кучу непонятных слов и букаф
Это дрочеры на корпоративные стандарты. Им необходимо, чтобы каждый использовал KISS, SOLID, синглтоны и прочую херню. Потому что их на работе заставляет это делать менеджер, который даже не знает, что все эти слова значат. По факту ты можешь уже использовать все эти буквы, не зная, что они на самом деле значат. Сделал статик класс? СИНГЛТОН. Сделал класс, который спавнит кубы? ФАБРИКА. Разделил гуи и данные? MVC. Не совсем так разделил? MCVV или MVCC или хуй моржа. Можешь загуглить все эти буквы, короче. Сейчас тренд один, архитектура, ориентированная на данные, это единственное, что тебе не мешало бы знать и использовать.
Аноним 28/10/21 Чтв 20:18:08 #570 №775186 
>>775184
>>775182
Спасибо анонче, словил лютый дизмораль, но ваши слова согрели мою душу, и мир уже не таким серым кажется
Аноним 28/10/21 Чтв 20:37:20 #571 №775189 
>>775114
Любая информация - информация, лол. То что тебе печет с инфоцыган не значит, что там не рассказывают полезные нюансы.
Аноним 28/10/21 Чтв 23:13:45 #572 №775205 
>>775024
Признаю долбоеб, немного поебал шары и понял.
>>775055
>>775114 - этот правду рубит, без визуала, аудио в чистом виде больше запутает чем научит, как ты собираешься запоминать всякие графики и остальные хитросплетения?
>>775164
Изучи вобще тему тему программирования, сначала простое, потом ООП и забудь (судя по специфике кодинга на юни), но все равное пойдет понимание как гуглить и что тебе надо.
>>775184
А вобще этот говорит правду. У тебя есть в голове игра делай любыми способами, главное чтоб фпс не падал и проект не весил терабайт за 2 минуты гейплея
Аноним 29/10/21 Птн 10:13:40 #573 №775225 
В GTA SA все интерьеры зданий находятся высоко в небесах и в одном мире, насколько целесообразно делать так же в юнити? Хочу так же, но очкую что нужны какие-то скрипты отдельные для этого
Аноним 29/10/21 Птн 10:29:59 #574 №775226 
>>775225
В принципе можно, но я бы не советовал. Чем больше Go в сцене, тем больше мс займёт сортировка окклюжн куллинга. Лучше посмотри в сторону аддитивной загрузки сцен в рантайме.
Аноним 29/10/21 Птн 12:45:25 #575 №775247 
>>774453
Как понять, что ты конченный? Написать около 2к строк кода, которые ничего не делают. Упоролся в эту ёбаную базу данных, в какой-то момент решил, что ну всё равно же связывать это с инвентарём. Так что создавать автоматически атласы и класть туда спрайты для инвентаря это хорошая идея. А ещё все ГО можно паковать в адресейбл ассеты.
Аноним 29/10/21 Птн 19:45:13 #576 №775292 
pasted image 0.gif
pasted image 0 (1).gif
pasted image 0 (2).gif
>>773264
>Скоро 2022, а в юнити все еще нет стандартного средства для декалей от выстрелов.
Декали улучшены и теперь доступны как для URP, так и для HDRP.

В URP были добавлены декали с двумя режимами: экранное пространство или использование DBuffer. Последняя версия менее адаптирована к архитектуре мобильных графических процессоров, но дает доступ к свойствам поверхности для более продвинутого смешивания.

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

В HDRP был добавлен параметр обычного смешивания, улучшающий смешивание неплоских форм, а полный шейдер декалей HDRP теперь доступен из графика визуальных эффектов.
Аноним 29/10/21 Птн 23:58:10 #577 №775345 
а почему когда запускаешь потестить проект, там все текстуры в хуевом разрешении? хотя вроде не сжимал
Аноним 30/10/21 Суб 01:07:27 #578 №775351 
>>775345
Зайди в проджект сеттингс, там найди Quality и выбери Ultra. Ещё проверь, чтобы там же в Texture Quality было выбрано Full Res
Аноним 30/10/21 Суб 04:22:22 #579 №775356 
>>775292
Это откуда такие картинки интересные?
Особенно первая.
Аноним 30/10/21 Суб 05:55:48 #580 №775359 
>>775356
>Это откуда такие картинки интересные?
>Особенно первая.
Как вы геймдевом занимаетесь, не следя за новостями и обновлениями своего движка. Тебе сложно что ли на сайт захаживать или на юнити твиттер подписаться? Лучше в тиктоке сидеть
https://blog.unity.com/technology/whats-new-for-artists-and-designers-in-unity-20212-0
Аноним 30/10/21 Суб 10:29:11 #581 №775361 
>>775359
>October 29, 2021 in
Ты хочешь чтобы я юнитековские новости рефрешил каждый день?
Следить за обновлениями на продакшене смысла мало, больше вероятность похерить все при перекате на новую версию.
Аноним 30/10/21 Суб 11:48:12 #582 №775369 
image.png
image.png
image.png
>>775351
спасибо, но там все нормально включено было. Когда строишь локацию, все текстурки хорошие если приблизить, как надо (пик 2). А как загрузишь в игру там если приблизить то хуево (пик 3).
думаю это как-то с настройками камеры мб связано?
Аноним 30/10/21 Суб 12:17:29 #583 №775372 
>>775369
Во-первых, у тебя не назначен рендер пайплайн ассет. Если не импортировать SRP, то поля вообще не должно быть, а если импортировать и не назначить, то он не работает. Во-вторых, а как ты приближаешь? Если через перемещение камеры и\или FOV и текстуры бесоёбит, то переключи разрешение гейм окна на фиксированное, я обычно всё проверяю на Full HD. Если это не помогает, то проблема в фильтрации текстур. Билинейная фильтрация ок. А вот если ты "приближаешь" через ползунок скейл, то всё так и должно быть.
Аноним 30/10/21 Суб 12:44:02 #584 №775373 
>>775372
да, приближал через ползунок. Про остальное вообще не шарю, но попробую разобраться
Аноним 30/10/21 Суб 12:54:53 #585 №775374 
>>775373
Когда ты в режиме сцены крутишь колёсико, то фактически "камера эдитор мода" перемещается. Когда ты таскаешь скейл, то у тебя просто итоговая картинка растягивается. То есть как бы очевидно, что будет пикселизация, если пикчу растянуть в пять раз. Тебе нужно двигать камеру.
Аноним 30/10/21 Суб 13:14:18 #586 №775375 
>>775374
теперь понял, не догонял что это так работает
Аноним 30/10/21 Суб 14:26:55 #587 №775382 
>>775361
>рефрешил каждый день?
Запостили в твиттер и увидел, не надо не следи
Аноним 30/10/21 Суб 14:34:22 #588 №775384 
Я помню во времена, когда вы ещё не родились, была охуительная технология, которая позволяла смотреть ленту новостей, собранную из избранных тобой сайтов. То есть заголовок новости, картинка 100х100 и буквально две строчки краткой информации. Тебе не требовалось заходить на каждый сайт и смотреть, не запостили ли чего, ты открывал одну страницу в браузере и видел всё сразу. Эта хуйня ещё кое где встречается до сих пор. И ридер этой хуйни был в каждом браузере по умолчанию, иконка в строке адреса была просто обязательной. А сейчас даже хрому нужно устанавливать дополнительное расширение. Блядь, это что, доступ к информации усложнился, хотя самой информации стало больше?
Аноним 30/10/21 Суб 15:47:14 #589 №775400 
>>775384
R S S
S
S

Попробуй еще захочешь, технология старая как говно мамонта. Все ей пользуются, нахуя еще что-то?
Аноним 30/10/21 Суб 16:00:53 #590 №775404 
>>775400
Так я о ней и писал. В хроме из коробке нет поддержки rss фидов, у меня они открываются, как xml просто. В строке адреса нет кнопки rss, нужно долго и нужно искать ссылки на фиды. Короче rss почти умер, все забыли.
> нахуя еще что-то?
Есть ещё Atom.
Аноним 31/10/21 Вск 23:24:41 #591 №775534 
Кириллы ,подскажите по коду.

Один объект можно "сконтачить" с другим множеством способов, к примеру :

Кирилл = GameObject.Find("Кирилл");

Как можно "сконтачиться" с компонентами объекта?
К примеру

private void OnTriggerEnter2D(Collider2D collision)
{
if (collision.tag == "Player")
{
///выключить/включить/передать значение аниматору кирилла///
}


}
Аноним 01/11/21 Пнд 00:10:11 #592 №775539 
>>775534
кирилл.гетКомпонет.аниматор, и дальше что хочешь делай с аниматором кирилла
Аноним 01/11/21 Пнд 02:02:05 #593 №775546 
1.jpg
Посоны, ща с ума сойду, что за хуйня. В анимации есть анимейшн ивент. Если он стоит на 0:45, то все работает. Передвигаю его на 0:50 - не работает. Тупо не вызывается.
Аноним 01/11/21 Пнд 02:03:49 #594 №775547 
>>775546
Блядь, как обычно спросил и понял. Exit Time криво стояла
Аноним 01/11/21 Пнд 02:05:10 #595 №775548 
image.png
Сап юнитач, нужна помощь нубу. Освещенный квадрат содержит 70x70 гексов. Таких квадратов может быть довольно много. Если создается сетка 10 на 10 квадратов, то на это уходит много времени. Комбинирование сеток - не вариант, так как я сталкиваюсь с допустимым пределом для вершин. Как ускорить создание таких квадратов?
Аноним 01/11/21 Пнд 12:23:40 #596 №775569 
image.png
Поставил HDRP, пофиксил ошибки в визарде и конвертнул все материалы, что я делаю не так?
Аноним 01/11/21 Пнд 13:35:38 #597 №775577 
Я правильно понимаю, что вся логика игры должна находится в специальном отдельном классе, а все компоненты игры ничего про игру не знают, в смысле, там нет никаких проверок о текущем состоянии игры, игрока, и прочем?

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

И еще, например, есть компонент "дверь" и есть "ключ". Ключ не должен знать, что он может открыть конкретную дверь, а дверь не может отслеживать, какой именно ключ к нему применили. Компонент "ключ", возможно, вообще может не содержать никакого кода, а дверь может лишь иметь методы Open() и Close(). Вся это логика открывания-закрывания должна лежать именно в отдельном классе. Например, в нем можно указать ссылку на дверь и на ключ, и этот же компонент проверяет, что, если у игрока есть ключ, то он может открыть такую-то дверь.
Аноним 01/11/21 Пнд 14:18:05 #598 №775583 
Пацаны, может кто знает, как сделать так что бы когда я касаюсь экрана двумя пальцами (одним управляю персонажем, вторым жму на кнопки) они не складывались?
Аноним 01/11/21 Пнд 15:33:48 #599 №775588 
>>775577
Хуй знает как пишут всякие студии, но ты можешь писать как хочешь. Вообще твой вариант выглядит логичным и удобным
Аноним 01/11/21 Пнд 15:49:56 #600 №775590 
>>775548
Так получается ты создаёшь 490 000 квадратов. Это будет быстро только с многопотоком. Но комбинировать меши тебе всё равно надо. Лимит вершин огромный, меши у тебя простые, сможешь сократить количество квадратов в сотни раз.

>>775569
Используешь шейдер, который не поддерживает hdrp.
Аноним 01/11/21 Пнд 15:52:40 #601 №775591 
>>775577
Я бы делал по-другому. В двери есть инт айдишника ключа, в ключе есть свой айдишник. Применяешь ключ на дверь, дверь проверяет айдишники и открывается. В отдельном классе заебёшься, тебе придётся создавать списки дверей, ключей и т.д. А если окажется, что один ключ может открыть две двери либо одна дверь может быть открыта двумя-тремя ключами, то можно пиздануться.
Аноним 01/11/21 Пнд 15:56:35 #602 №775592 
>>775577
Ну в целом да, это же принцип SOLID и прочих взрослых букаф.
Но жаль что не всегда так получается писать. По крайней мере у меня. С точки зрения архитектуры проекта это крута. Разделенная логика и т.п. Но когда ты делаешь проект в соло, у тебя таких абстрактных классов не знающих друг о друге может переваливать за еба кол-во в n степени.
Мне вот дают задания делать вонючие ГК и я не могу туда впихнуть эту парашу с единой ответственностью. Поэтому пишу иногда как жмыхи-бородачи с ютуба. Типа, есть мелкий скрипт (объект) который нихуя не знает, а этот мелкий скрипт в свою очередь держит в себе скрипт по крупнее. И т.д. Компонентный подход короче. Хуй знает, правильно или нет, но прототипы делаются.
Аноним 01/11/21 Пнд 16:00:18 #603 №775594 
>>775592
>ГК
?
Аноним 01/11/21 Пнд 16:02:34 #604 №775596 
>>775594
ну гипер казуалки. У нас в снг только ими рынок считай и забит.
Аноним 01/11/21 Пнд 16:07:26 #605 №775597 
>>775596
А, ну да, сколько времени дают на создание прототипа в среднем?
Аноним 01/11/21 Пнд 16:14:56 #606 №775599 
>>775597
Ну смотря какой. Они разные бывают. Но в целом, у меня 2 недели примерно уходит до создания прототипа. В прототипе у нас обычно 1-2 уровня, ну и вся механика игры работает. А потом если тесты проходит, то полировкой и доводкой занимаются уже другие челы еще недели 3-4.
Аноним 01/11/21 Пнд 16:17:14 #607 №775600 
>>775577
Я бы сделал так наверное:
есть ключ у которого есть только идентификатор, который задается в инспекторе, либо в другом классе
есть дверь, у которой тоже также есть идентификатор. И метод который берет идентификатор ключа и сравнивает с ключом, если они совпадают, то дверь открывается
Хуй знает, может я долбаеб, но в моей голове выглядит норм
Аноним 01/11/21 Пнд 17:32:43 #608 №775613 
>>775599
Как стать таким как ты? Запилить себе партфолио из пары игр на гугл плей и стучаться в издательства?
Аноним 02/11/21 Втр 10:00:14 #609 №775697 
Безымянный.png
Кто-то делал инверсную кинематику персонажей? Попробовал animation rigging, не работает с гуманоидами, нужно городить что-то другое.
Аноним 02/11/21 Втр 20:37:39 #610 №775804 
>>775613
Неудачником делающим прототипы ГК за 50к в месяц? Блять, да лучше не надо. Я то на свою шарагу устроился даже без собесов и прочего. Просто в чате пиздел в телеге и написали.
На ХХ было несколько собесов, но там такие кабанчики, думащие что я буду делать их тестовое на 3 дня рассчитанное. Но если у тебя с этим проблем нет, то можешь попробовать.
А вообще, просто сделай резюмехи везде где только можно, социализируйся в деве и думаю найдешь работу. А пока ищешь сделай пару простых ГК игр, подключи сдк и рекламу типа ты еба крут. Думаю ты уже сделаешь больше чем 90% соискателей.
Аноним 03/11/21 Срд 21:23:17 #611 №776014 
Untitled 13.mp4
Как натянуть материал на внутренний объект? Я сделал бутылку у которой внутри есть другой объект типа жидкость. Но материал я могу перетащить только на внешний объект, а редактировать материал выделенного внутреннего объекта никак нельзя. Видимо есть какой-то другой способ?
Аноним 03/11/21 Срд 22:05:01 #612 №776039 
>>776014
Нажми на боттл, в настройках импорта твои материалы. Указываешь там.
Аноним 03/11/21 Срд 22:31:46 #613 №776046 
>>776039
спасибо, получилось
Аноним 04/11/21 Чтв 17:17:38 #614 №776148 
Сап, нюхач. Заебала своя рабская РАБота, хочу делать игры, какие подводные?
Аноним 04/11/21 Чтв 19:13:10 #615 №776171 
>>776148
> какие подводные?
Выпустишь игру, разбогатеешь, всего добьешься и словишь депру и выпилишься
Аноним 05/11/21 Птн 01:40:53 #616 №776201 
image.png
Сап юнитач, суть проблемы, зелёное поле - сгенерированный меш, у которого ВСЕ вершины по y иеют позицию 0. Сами куски дороги - тоже сгенерированы, но у них высота по y по середине - больше нуля. В чём может быть причина по которой идут такие артефакты? Пробовал создать пустой проект где также генерируются эти меши и всё в порядке, наложений нету. Но при переносе - такая срань
Аноним 05/11/21 Птн 06:35:44 #617 №776203 
>>776201
Я перса с анимациями с блендера закидываю в юньку и кости предплечий немного сжатыми получаются, подскажи почему так?
Аноним 05/11/21 Птн 07:17:56 #618 №776205 
>>776203
Я хуй знает, почему ты мне вопрос задаёшь? Я сам в ахуе с того что у меня не получается
Аноним 05/11/21 Птн 08:22:47 #619 №776209 
>>776205
Потому что хуйню какую-то спрашиваешь, тут экстрасенсов нет
Аноним 05/11/21 Птн 14:25:53 #620 №776244 
Может кто-нибудь посоветовать какой-нибудь хороший бесплатный инструмент для редактирования примитивов прямо в юнити? Надоело заходить в блендер каждый раз, когда нужно сделать треугольник или полукруг
Аноним 05/11/21 Птн 14:27:18 #621 №776247 
>>776244
Своруй про-билдер.
Аноним 05/11/21 Птн 14:58:27 #622 №776253 
>>776247

В каком смысле своровать? В ассет сторе не нашёл, скачал через покет менеджер и всё вроде работает. Или это обрезанная версия?
Аноним 05/11/21 Птн 15:21:16 #623 №776256 
>>776247
Спасибо, пробилдер то что и было нужно
Аноним 05/11/21 Птн 22:02:06 #624 №776309 
FPS.png
Начал пилить фёрст персун шутер. Какие подводные?
Аноним 06/11/21 Суб 12:30:47 #625 №776354 
Платиновый вопрос. Как сделать интерфейс или хотябы шрифты самой среды большего размера. На 1440р ломаются глаза. Гуглится только метод менять масштаб винды, что не уперлось.
Аноним 06/11/21 Суб 18:24:29 #626 №776391 
Подскажите по скрипту

У нас есть GameObject Кирилл с прописанной в скрипте
public float speed=0;

Есть триггер-активатор Кирилла который по идее должен заставить кирилла двигаться в сторону компа и таки сделать игру мечты

private void OnTriggerEnter2D(Collider2D collision)
{
if (collision.tag == "Player")
{
///speed Кирилла меняется с 0 на 1///
}
}


что нужно дописать в триггер что бы в скрипте Кирилла поменять переменную speed?



Аноним 06/11/21 Суб 18:38:17 #627 №776392 
>>776391
Типа триггер находится в другом скрипте и ты не знаешь как поменять переменную из другого скрипта или что?

Если да, то просто берешь ссылку на скрипт кирилла, либо через инспектор, либо через:
"hyinya = gameobjectКрилилл.GetComponent(scriptКирилл);"
и потом "hyinya.speed = 1;"
Аноним 06/11/21 Суб 19:30:33 #628 №776395 
image.png
да как так то.mp4
СССССУУУУУУУУУУККААААААААААА
Короче, если запустить StartCoroutine(f1) впервые, то в дебаге выдаст "f1 start".
А если я потом остановлю корутину StopCoroutine(f1), и запущу снова, то этот дебаг больше не выдаст, то есть, код, который вне while, выполняться не будет. Отныне всегда будет выполняться только тот код, который в while.
Можно фиксануть?
Блять, три часа думал, почему все так хуево работает. А оно вон оно как оказалось.
Аноним 06/11/21 Суб 19:49:20 #629 №776398 
>>776395
Гугли как запускать корутины, чтобы можно было надежно останавливать, вообще почитай про корутины, чтобы не быть батхертом
Аноним 06/11/21 Суб 21:23:42 #630 №776408 
>>776395
А в чем была цель такие приколы писать
Аноним 07/11/21 Вск 00:01:49 #631 №776423 
изображение.png
>>776392
Что делаю не так?
Аноним 07/11/21 Вск 00:15:56 #632 №776425 
>>776423
Переменная HorseScript должна быть типа того скрипта, которого ты пытаешься в нее засунуть HorseMove как я понял, а она у тебя GameObject
Аноним 07/11/21 Вск 00:44:29 #633 №776429 
>>776423
>Что делаю не так?
Вообще всё, если по туториалу делаешь глаза из жопы высунь и нормально будет
Аноним 07/11/21 Вск 13:58:07 #634 №776466 
у меня у одного промокод TOOLBOX не работает?
https://assetstore.unity.com/publisher-sale
Аноним 07/11/21 Вск 15:37:11 #635 №776471 
>>776423
https://docs.unity3d.com/ru/2019.4/ScriptReference/GameObject.GetComponent.html
Посмотри примеры.
Аноним 07/11/21 Вск 16:59:52 #636 №776480 
image.png
>>776423
Аноним 07/11/21 Вск 18:26:04 #637 №776492 
>>776466
Только что купил все 3, все работает
Непонятная хуйня с DOTweenом Аноним 07/11/21 Вск 19:50:52 #638 №776520 
2021-11-07 19-27-27 (online-video-cutter.com).mp4
2021-11-07 19-42-34 (online-video-cutter.com).mp4
Использую DOTween для создания эффекта повреждения. Моделька становится красной и обратно синей. Использую сиквенсы. Не знаю с чем это связано, но если в методах, которые вызывают функции DOTween'a не использовать yield return new WaitForFixedUpdate() и не делать функцию IEnumarator'ом, то переход цветов будет слишком быстрым что ли, обрезанным. При этом у меня есть объекты, на которых я тоже использую переход цветов DOTween'ом и они нормально работают и без WaitForFixedUpdate(). Есть идеи с чем такое поведение может быть связано?

На первом видео - неправильная анимация(без WaitForFixedUpdate)
На втором - правильная анимация (с WaitForFixedUpdate)
Аноним 07/11/21 Вск 19:51:54 #639 №776521 
image.png
А вот код
Аноним 07/11/21 Вск 20:37:27 #640 №776550 
>>776520
А почему для этого не использовать аниматор без всяких доттвинов? Что тут такого что нельзя сделать без этого?
Аноним 07/11/21 Вск 20:41:11 #641 №776552 
>>776550
Вообще просто не пробовал, но думал об этом. У меня эффект получения урона может происходить во время любой анимации, а разве можно запустить например поверх анимации атаки анимацию изменения цвета?
Аноним 07/11/21 Вск 21:19:35 #642 №776566 
>>776552
Можно, там в аниматоре есть слои как в фотошопе
Аноним 07/11/21 Вск 23:31:30 #643 №776603 
Где лучше всего освоить работу с шейдером? Взял курс, начал проходить(на 19 юнити), потом узнал, что все это не работает для следующей версии (20 или 21 какая там).
Аноним 07/11/21 Вск 23:40:09 #644 №776605 
>>776566
У меня несколько типов врагов, у всех разные геймобджекты и разная иерархия объектов. Тела, которые должны меняться находятся в разных местах. Мне же придётся создавать отдельную анимацию изменения цвета тела на каждого врага, потому что одну анимацию можно привязать только к одному геймобджекту?
Аноним 07/11/21 Вск 23:53:06 #645 №776607 
Кто-то юзает unity editor под линухом? нормально работает? Много прям критичных багов?

Я тут захотел поиграться с этим вашим юнити, скачал, поставилось, но первый же пример из встроенного в эдитор туториала начал работать всрато - в туториал лейауте написано "выбери объект во вкладке "иерархия"", а этой вкладки нигде нет, лол.
Я так понял, что это лейаут какой-то всратый, потому что при переключении на Layout->Default всё появляется и на первый взгляд работает.
Аноним 08/11/21 Пнд 05:20:39 #646 №776616 
>>776607
Ты поехавший совсем что ли? Одни гдшники свои движки пилят, а ты не можешь окно иерархия открыть?
Аноним 08/11/21 Пнд 05:58:16 #647 №776617 
>>775592
>ГК
Это раннеры, платформеры почти без графики?
Аноним 08/11/21 Пнд 13:03:17 #648 №776666 
>>776616
Ещё раз, в лейауте "туториал" такого окна вообще нет. Даже если я сделаю View->Panel->Hierarchy, то оно ничего не показывает.
Ещё пример: в туториале говорят "нажми play" чтобы начать играть. Я нажимаю, начинается музыка, но играть нигде нельзя, потому что кроме туториала ничего перед глазами не видно. При этом если я переключу лейаут в default, то увижу окошко со сценой и при нажатии на play смогу там что-то потыкать.

Я считаю, что "туториал" забагованный на линуксах.
Аноним 08/11/21 Пнд 14:57:27 #649 №776686 
image.png
Вот надо локализацию делать - хранить данные в файле .csv, который в папке StreamingAssets.
Чтобы добавить новый язык, достаточно открыть файл, и добавить новый столбец, и даже игру заново собирать не нужно. Этот новый язык (берется из первого ряда) появится в dropdown списке.
Аноним 08/11/21 Пнд 14:58:09 #650 №776687 
>>776686
>Вот надо
Вот как надо
Аноним 08/11/21 Пнд 16:44:43 #651 №776737 
>>776686
https://docs.unity3d.com/Packages/[email protected]/manual/index.html
Аноним 08/11/21 Пнд 17:23:06 #652 №776739 
>>776737
им и пользовался сначала. но мой метод лучше, проще и гибче. а с этим пакетом пердолинга больше.
Аноним 08/11/21 Пнд 17:30:53 #653 №776741 
>>776739
ну так что за метод-то бля?
Аноним 08/11/21 Пнд 17:41:34 #654 №776744 
>>776739
У тебя не метод, а просто описание где хранится локализованный текст. Как он подставляется куда нужно? Как локализуются не текстовые штуки, спрайты например? Как в текст добавить переменную, например Привет {player_name}? И тд и тп.
Аноним 08/11/21 Пнд 18:21:35 #655 №776755 
>>776744
>>776741
ой все
Аноним 08/11/21 Пнд 20:42:48 #656 №776766 
>>769221
дебик, мускулы правильно настрой
Аноним 08/11/21 Пнд 21:12:40 #657 №776767 
>>776766
Мускулы у шестиногого домика? Ты совсем ёбу дал?
Аноним 09/11/21 Втр 15:56:57 #658 №776846 
а как делается смена скелетов при анимации? например у меня есть скелетная анимацию челика который идет вверх, соответственно видна его спина. Потом когда я хочу сделать анимацию хождения вниз, мне нужны уже другие спрайты на другом скелете. Есть какие-то примеры как таким образом аниматор делать?
Аноним 09/11/21 Втр 16:44:31 #659 №776851 
Уважаемые юнитиводы, подскажите нубу.

В данный момент выбираю нишу для развития в сфере геймдева (всегда нравилась эта индустрия). И вот у меня выбор стоит между изучением Unity и изучением Blendera.

Понимаю, что это разное но всё же. Насколько востребованны те же джуны в юнити ? Сколько времени требуется на вкат при хардкор обучении ?

Буду рад каждому ответу.
Аноним 09/11/21 Втр 17:05:23 #660 №776856 
>>776851
Не знаю, как там у тридешников, но для вката в юнити джуны тебе потребуется портфолио с готовыми проектами. Так что готовь три в ряд
Аноним 09/11/21 Втр 19:02:04 #661 №776870 
Сегодня после обновы ui интерфейс стал съезжать куда то в сторону, у кого нибудь было? Физически он стоит на месте , но его выделенная рамка(зелёная), будто на треть экрана уехала, и так со всем интерфейсом.
Короче эта хрень следует за камерой, а не стоит на месте с физическим интерфейсом, не смертельно, но гемор конечно прибавился в редактирование. Надеюсь пофиксят.
Аноним 09/11/21 Втр 20:06:15 #662 №776873 
Нужен совет умелого проггера. Наткнулся тут на уроки по состояниям объектов. Создают пустой абстрактный класс, в котором объявляют методы как в монобехэвиор. А описывают эти методы в подклассах для каждого отдельного состояния с оверраид. Потом объект-контроллер, привязанный к объекту переключается, когда надо и выполняет псоответствующие процедуры текущего состояния. Вроде и понятно для чего, и скрипты стройно начинают выглядеть.

Но сам сижу и думаю, насколько целесообразен такой переход в каждом отдельном случае. То, что я делаю через описания состояний, могу также прикрутить парой иф элс и созданием чаилда для своего объекта. Это костыль? Следует себя во всем дисциплинировать или для простых вещей забить?

Или вот еще момент. Будет у объекта скажем несколько состояний. Но есть поведение на апдейте, которое останется единым для них всех. Как с этим быть? Вынести его в объект-контроллер? Тогда нафига создавать все эти классы состояний, раз по мимо них все равно отдельный привязанный к объекту скрипт понадобится. Прописать поведение во все состояния? Выглядит излишне. Дайте советов хороших.
Аноним 09/11/21 Втр 20:19:34 #663 №776874 
>>776873
>Наткнулся тут на уроки по состояниям объектов
Кинь ссылку
Аноним 09/11/21 Втр 20:22:32 #664 №776875 
>>776874
https://www.youtube.com/watch?v=Vt8aZDPzRjI
Я вообще так понял, это в любом случае понадобиться для пришивания большого количества анимаций. Насколько метод необходим глобально?
Аноним 09/11/21 Втр 21:18:13 #665 №776884 
>>776851
нахуй ты кому нужен в юнити без навыков в блендере, это в принципе созависимые вещи. Либо можешь пиздовать за 40к/месяц работать над проектом пердящей тёлки сплошь из купленных ассетов
Аноним 09/11/21 Втр 21:23:52 #666 №776885 
>>776873
В принципе сам себе уже ответил. То, что обновляло четыре ифа изначально с помощью этих состояний теперь обновляет один иф. Получается обязательная хуйня для объектов с хотя бы двумя разными состояниями.
Аноним 09/11/21 Втр 21:38:50 #667 №776887 
>>776873
>Нужен совет умелого проггера
Программирую 2 месяца, но даже я тебе скажу, что ты какую-то хуйню написал, какие у тебя поведения в апдейте?
Паттерн поведения используется для создания, как это не странно, поведения
Если ты хочешь в игру добавить в будущем, допустим, выбор расы или класса, какие-нибудь приколы с idle в афк, берсерк-мод и прочее, то закладывай поведения, а если у тебя линейность во всём, то нахуй надо
>Создают пустой абстрактный класс
насколько я знаю, к состояниям подходят через интерфейсы, а твоё описание больше похоже на дженерик, это другая тема, смотри нормальные уроки, а не майнкрафтеров всяких

Аноним 09/11/21 Втр 21:38:51 #668 №776888 
>>776884
Что несет
Аноним 09/11/21 Втр 21:49:50 #669 №776893 
>>776888
https://www.youtube.com/watch?v=tSQq-s6dvxE
я про подобных миллиардеров
А блендер в любом случае нужно осваивать, банально для IK даже, в юнити охуеешь нормальную анимацию делать
Аноним 09/11/21 Втр 22:07:04 #670 №776895 
>>776887
Видео выше отправил. Он как делает? Ччто такое дженерик и интерфейсы?
Аноним 10/11/21 Срд 00:39:11 #671 №776909 
>>776893
Зачем он такой прыщавый
Аноним 10/11/21 Срд 09:55:32 #672 №776929 
>>776873
У тебя ифы рано или поздно разрастутся до просто невъебенной херни. Так что стейт машина это мастхев.
Аноним 10/11/21 Срд 16:48:11 #673 №776958 
>>776895
Глянул, он делает состояние, да, но делать его через абстрактный класс - хреновая затея в данном случае, так как C# не поддерживает множественное наследование, в отличие от других языков. Представь, что у тебя есть транспорт в игре, ты создаешь дженерик (абстрактный класс) Vechicle от которого наследуются разные типы: авто, самолет, ракета, инвалидная коляска и т.д, и потом ты захочешь ещё добавить поведение: транспорт сломан, нет бензина, улучшен...тогда ты начнешь ебаться через костыли и дубли, а нормальный пацан бы сделал состояние через интерфейсы, а потом добавлял их ещё сколько угодно
Аноним 10/11/21 Срд 17:18:56 #674 №776962 
>>776958
Я туго соображаю. А задача с видами транспорта и состояниями транспорта не решается двумя дженериками vehiclebasetype и vehiclebasestate?

Я только начал, не знаю, что за интерфейсы.
Аноним 10/11/21 Срд 17:40:33 #675 №776965 
>>776962
Интерфейс это такой базовый класс, который содержит в себе только информацию о непосредственно классе. Делаешь ты персонажа, начинаешь с интерфейса ICharacter. Персонаж может ходить, стоять и срать. Значит, в интерфейсе должны быть функции Walk, Stand и Shit. Но это пустые объявления функций, без реализации, интерфейс не может содержать реализацию. И если ты унаследуешь от интерфейса класс Character, то среда разработки тебе выбросит ошибку, что у тебя нет явной реализации заявленных функций ходьбы, стояния и сранья. Сам я агитирую за то, что интерфейсы не нужны. Не тот, кто писал тебе до этого.
Аноним 10/11/21 Срд 17:51:14 #676 №776968 
>>776965
>интерфейс не может содержать реализацию
Нудное напоминание, что с недавних пор может https://docs.microsoft.com/ru-ru/dotnet/csharp/language-reference/proposals/csharp-8.0/default-interface-methods
Аноним 10/11/21 Срд 17:52:16 #677 №776969 
>>776965
Нихуя не понял, ICharacter имеет функции Walk, Stand и Shit, но они пустые? Допустим я создаю еще два класса и наследуюсь от ICharacter - IErohin и ISychev. В них я переопределяю функции Walk, Stand и Shit? Нахуя тогда нужны пустые интерфейсы в ICharacter если мне один хуй их прописывать у ерохина и сычева отдельно?
мимодругойвкатывальщик
Аноним 10/11/21 Срд 17:52:37 #678 №776970 
>>776965
Погуглил. Я правильно понял, что если у абстрактного класса не описан ни один из методов, только объявлены. То это и есть интерфейс?
Аноним 10/11/21 Срд 18:04:52 #679 №776971 
2ch.png
>>776968
Даа, но нет. Восьмой шарп? В юнити?
>>776969
>я переопределяю
Нет, не переопределяешь, просто реализуешь.
>один хуй их прописывать
Потому что тогда ты будешь обязан закодить их реализацию. Да, можешь просто сделать пустой войд или выбрасывать исключение. Интерфейс это своего рода обязательство, что такие-то функции будут реализованы. Не более.
>>776970
Не совсем. Абстрактный класс это же класс, а интерфейс даже объявляется не так.
Аноним 10/11/21 Срд 18:30:19 #680 №776972 
>>776962
два дженерика невозможны, так как
> C# не поддерживает множественное наследование
Интерфейсы - это другой уровень абстракции, их может быть много

> Я туго соображаю
На каких-то рандомных туториалах давно не уедешь, начни с беглого чтения C# для чайников, потом язык программирования Троелсена зачитывай, потом, если захочешь, Рихтера CRL via C# освой, и, наконец, тонкости Скита, тогда ты, скорее всего, будешь знать язык на уровне мидла
Аноним 11/11/21 Чтв 12:26:11 #681 №777054 
Вот я меняю в одном месте громкость и как записывать сразу во все источники звука значение громкости?
Аноним 11/11/21 Чтв 13:47:05 #682 №777056 
>>777054
Делаешь миксер
Во всех audiosourc'ах добавляешь реф на него
Двигаешь каким нибудь способом ползунок в миксере
!???
Профит
Аноним 12/11/21 Птн 04:31:45 #683 №777124 
суп. Нужен шарящий за ВР разработчик, чисто для консультации, плачу почасовку.
Пару вопросов по XR Interactor Toolkit'у
как правильно реализовывать хваты
как работать с UI
и пару вопросов по Skinned Mesh Render'у

Оставляй контакты, и время в которое удобно будет поговорить.
Аноним 12/11/21 Птн 10:21:13 #684 №777131 
>>777056
Алсо, так-же можно сделать для многих механик не требующих просчёты каждый кадр.
Аноним 12/11/21 Птн 12:36:22 #685 №777158 
Посоны, нихуя не пойму, как лучше реализовать. Допустим у меня есть 500 уровней в игре. Перед загрузкой каждого уровня надо вывести какие-то данные этого уровня (количество ходов, время, жизни хз).

Где и как хранить эти данные?
1) Создать к каждому уровню json, а потом, перед загрузкой уровня, парсить его?
2) Создать каждому уровню scriptable objects, а потом подгружать его через Resources.Load?
3) ???
4) Закешировать 500 переменных с ссылками на на хранящиеся scriptable objects это что-то совсем наркомания

Или я хуйню придумываю и есть более очевидные способы?
Аноним 12/11/21 Птн 13:04:11 #686 №777163 
И еще вопрос, как лучше сделать эти 500 уровней? 1 уровень = одна сцена? Или 1 сцена и 500 префабов? Что будет лучше с точки зрения размера приложения и производитльности?
Аноним 12/11/21 Птн 13:59:25 #687 №777170 
Помните, в хф и кс можно было граффити высрать на стену, каким способом можно сделать так же в юнити? Ищу готовый костыль
Аноним 12/11/21 Птн 14:59:52 #688 №777175 
>>777170
Делаешь рейкаст из камеры вперёд
На хит вешаешь декаль
Аноним 12/11/21 Птн 17:33:44 #689 №777180 
>>777175
> декаль

Точно, забыл как эта хуйня называется, напомнил ты
Аноним 12/11/21 Птн 17:43:29 #690 №777183 
>>777158
Ты спрашиваешь как вывести данные по уровню, но твои примеры относятся к сейвам игровых данных, где связь?

Что именно ты хочешь выводить, приведи пример
Аноним 12/11/21 Птн 22:14:44 #691 №777215 
IMG0034.webm
Привет Анон, хочу найти решения по инвентарю. Я гуглил, но ситуация разбилась на два лагеря:
1) Говнокод от школьников, которые могут запихнуть цикл в апдейт.
2) И мидл-код, который сложно переваривается и айтем является скриптом.

Про скриптаблобжэктс я разузнал, но не понимаю реализацию допустим экипировки и оружия.
Вкатился в гейдев недавно, сам по большей части 3дшник, кодил крайний раз года два назад на плюсах и чистом и немного ООП на жаве ,но концепцию шарпа по сути уловил.
С меня тонна нихуя, возможно после нг буду постить инфу или заведу тред.Дропать не собираюсь так, как вчера утвердили диплом и буду ебашить до талого
Аноним 12/11/21 Птн 22:22:12 #692 №777216 
>>777163
Смотря че ты хочешь делать вообще, гиперказуал или типо 3 в ряд или детализированный 3/2д игрулю.
Если каждый лвл отличается по геймдизайну, то 1лвл = 1 сцена.
Если ты просто хочешь дрочь уровней устроить и на геймдиз тебе похуй, то можно обойтись процедурной генерацией и все.
Я конечно хуй с горы и не разбираюсь, но и ты по сути нихуя не описал какие лвл ты хочешь делать
Аноним 12/11/21 Птн 22:34:28 #693 №777218 
На плиту жмут два объекта по ОнТриггерСтэи. Если один из них стоит на плите, а второй ливает, то во время ОнТриггерЭкзит плита моргает и снова нажимается. Есть способ убрать моргание?
Аноним 12/11/21 Птн 22:37:25 #694 №777220 
1.png
>>777215
>но не понимаю реализацию допустим экипировки и оружия.
Тащемта никакого секрета здесь нет - просто без задней мысли делаешь.
Аноним 12/11/21 Птн 22:53:46 #695 №777222 
>>777220
Т.е. даже префаб можно засунуть в скриптобжект?
Аноним 12/11/21 Птн 23:08:43 #696 №777226 
>>777222
Даже небо, даже аллаха. Словари не сериализуются, то есть ты там что-то можешь покрутить, но оно не сохранится. С Go в скриптейблах только одна проблема, когда загружаешь этот скриптейбл - все Го грузятся в память. Тема интересная на самом деле, но как же долго пилить такие системы.
Аноним 12/11/21 Птн 23:35:25 #697 №777229 
>>777226
Половину не понял потому что немного прочитал про скриптобжект и я немного дебил, но грубо говоря скриптобжект - это объект БД скрипта (те пишем скрипт с хар-ками, и на основе него создаются скриптобжект) и мы в инвентаре управляем кол-вом и типами этой грубо говоря БД, ссылаясь на скриптобжект и фасуем все в UI. И для условной еды и экипировки надо будет 2 разных скрипта с характеристиками, а в экипе мы ссылаемся на префаб/модельку. И как могу предположить в инвентаре мы ссылаемся на ID шмотки вызываемой из скриптобжект?

Я правильно понял?
Аноним 12/11/21 Птн 23:38:06 #698 №777230 
>>777218
Разобрался уже сам с этим оверлап коллаидером ебаным бобаным.
Аноним 12/11/21 Птн 23:53:44 #699 №777232 
>>777229
>пишем скрипт с хар-ками, и на основе него создаются скриптобжект
Да.
>в инвентаре мы ссылаемся на ID шмотки вызываемой из скриптобжект
Ага, только ссылки на скриптобджекты тебе тоже надо куда-то сохранить. Для этого неплохо подойдёт ещё один скриптейбл обджект с массивом ссылок.
>Я правильно понял?
Да я хуй знает, лол.
Аноним 13/11/21 Суб 00:56:17 #700 №777236 
>>777232
>Да я хуй знает, лол.
Ну значит вроде разобрался
>Ага, только ссылки на скриптобджекты тебе тоже надо куда-то сохранить. Для этого неплохо подойдёт ещё один скриптейбл обджект с массивом ссылок.
Ну т.е. мы создаем скрипт с датабазой всех обжектов и их айдишников, и в других скриптах с работой айтемов мы обращаемся к этому скрипту с айдиштками обжэектов ?
Спасибо тебе анон
Аноним 13/11/21 Суб 01:23:09 #701 №777237 
>>777236
>мы создаем скрипт
Только не скрипт, а скриптейбл обжект
>public class SomeData: ScriptableObject
Плюс тебе нужен эдитор скрипт, чтобы создать инстанс объекта. Вроде, есть какой-то ещё другой вариант, но я его не помню. Эдитор скрипты работают только из папки эдитора. Ну и потом ещё один скриптейбл с массивом или списком всех Somedata.
Аноним 13/11/21 Суб 01:41:42 #702 №777238 
>>777237
Слушай, а гайда нема по этой теме как ты организовал все? Вникнуть то я вникну, просто боюсь въебать пару дней на ошибки, ведь я даун ебался с нерабочей кнопкой в меню паузы, хотя надо было просто в местах поиграться с видимостью курсора и время у меня подгорает я решил запилить все таки в определенные рамки. А вот хотя бы на что ориентироваться было бы полезно
Аноним 13/11/21 Суб 10:34:19 #703 №777255 
>>777230
нахуя оверлап? Ты мог просто создать лист коллайдеров, в онтриггеринтер засовывать в лист, в экзит высовывать, а, если лист становится пустым - то выключать кнопку. Очевидное и не жрущее каждый кадр память решение, в отличие от оверлап
Аноним 13/11/21 Суб 11:12:55 #704 №777257 
>>777255
Спасибо анон, дошло, что можно stay на enter поменять, чтоб все время не обновляло. А оверлап коллаидер нужен.

Раньше было так:
Мне нужно следить за тем, что на плите объект все еще находится. Для этого использую ontriggerstay. Вот только когда два объекта, например игрок и предмет жмут на плиту вместе, когда игрок сходит с плиты, во время экзита она промаргивается на отжатие и снова нажимается оставшимся объектом. Пофиксил это условием (если колладиеров на кнопке == 0) вырубай. Для этого оверлап коллаидер подошел. Моргать перестало.

Сейчас как раз с этим оверлапом можно поменять stay на enter. Без оверлап коллаидера предмет стоит на кнопке, я с нее сходу, и кнопка ввключается.
Аноним 13/11/21 Суб 11:30:21 #705 №777263 
>>777238
Наверни любой васянский ассет на инвентарь и посмотри как сделан, своруй платных ассетов и разбери их. Лучшие примеры же, можешь и использовать их и когда поймешь, что именно тебя в них не устраивает - напишешь на их основе свое решение. Пока же ты слишком упариваешься в мелочи.
мимо
Аноним 13/11/21 Суб 11:33:16 #706 №777264 
ItemTable.png
GUI.png
Lods.png
>>777238
> а гайда нема по этой теме
В гугле всё есть, очевидно же.
>как ты организовал все?
В мой шизокод ты точно не вникнешь. Радактор накидан на похуях, есть пара багов. Игровая часть накидана слишком сложно. Я использую атласы спрайтов, асинхронную рантайм загрузку ресурсов, автоматическое подсасывание лодов, новый гуй. По факту самый главный мой скриптейбл выглядит как-то так, как на первом пике, лол. Это "таблица" предметов. На каждый тип предмета создаётся новая таблица, в которую сохраняются уже сами предметы. Все таблицы хранятся в основном скриптейбле.
Аноним 13/11/21 Суб 11:49:40 #707 №777265 
>>777257
>Спасибо анон, дошло
не дошло, видимо. Ты в курсе, что OnTriggerEnter срабатывает вне зависимости от того, есть ли на нём уже кто-то или нет?

1) объявляешь в полях private List<Collider> colliders = new List<Collider>();
2) OnTriggerEnter - colliders.Add(other);
3) OnTriggerExit - colliders.Remove(other);
и здесь же проверка if (colliders.Count == 0) то вырубай, страшна

нахуя оверлап?

Аноним 13/11/21 Суб 12:17:40 #708 №777271 
>>777265
Да, ты прав, не дошло. Спасибо еще раз. Как же дохуя элементарных вещей не знаю. Реально что ли пособия по шарпу уже читать.
Аноним 13/11/21 Суб 12:28:00 #709 №777272 
>>777271
Так это к шарпу никакого отношения не имеет.
Аноним 13/11/21 Суб 12:30:29 #710 №777273 
>>777272
Я даже не знал про list<t>
Аноним 13/11/21 Суб 14:03:19 #711 №777279 
image.png
Любой проект на любой версии выглядит вот так.
Помогите, пожалуйста.
Аноним 13/11/21 Суб 14:07:28 #712 №777281 
>>777279
Обнови драйвер и выключи встроенную видеокарту.
Аноним 13/11/21 Суб 14:09:51 #713 №777282 
>>777279
>Любой проект на любой версии
Очевидно, проблема с железом или дровами
https://forum.unity.com/threads/blank-unity-editor-assertion-failed-assertion-failed-on-expression-succeeded-hr.523067/
слишком вариативная проблема, попробуй дрова обновить а дальше по ситуации
Аноним 13/11/21 Суб 15:21:54 #714 №777290 
image.png
Ну и в чём я не прав?
Аноним 13/11/21 Суб 15:35:06 #715 №777291 
Ребята, подскажите что необходимо к изучение, чтобы через пол года+ можно было вкатиться в геймдев.

Ну сам Unity + ЯП (Java или C#) это понятно. Но помимо этого нужно знать ещё какие-то программы. Какие именно стоит учить параллельно ?
Аноним 13/11/21 Суб 15:35:46 #716 №777292 
>>777290
надо каждый метод в отдельный класс выносить, иначе не солид
Аноним 13/11/21 Суб 15:42:25 #717 №777294 
1.mp4
>>777292
Аноним 13/11/21 Суб 16:08:09 #718 №777296 
>>777291
гит, аутодаси, блендер из основных, дальше зависит от того куда ты вкатываться собрался
Аноним 13/11/21 Суб 16:11:35 #719 №777297 
1.png
>>777290
На событиях делать надо.
Аноним 13/11/21 Суб 17:02:36 #720 №777302 
>>777296
Что надо знать/уметь в блендере?
Аноним 13/11/21 Суб 17:32:07 #721 №777308 
>>777302
Просто общее понимание что такое моделька, что такое скелетная анимация, как накладываются текстуры и вот это вот всё. Про анимации еще можно почитать, если совсем упарываться то и шейдеры глянуть.
мимо
Аноним 13/11/21 Суб 19:19:01 #722 №777315 
>>777302
Как он и сказал:
>>777308
Риги, анимация, UV развертка, текстуры. На счёт шейдеров я бы лучше рекомендовал после освоения азов юнити делать свой первый проект на URP и играться с шейдерами там, т.к. ноды блендера и юнити пока что не дружат
Аноним 13/11/21 Суб 20:53:44 #723 №777323 
>>777296
Blender - уровень говноконтор которые не могут купить лицуху макса а значит будут платить печеньками и чаем. Лучше брать связку 3ds Max+Maya+сабстанс, теже гайджины в максе делают.
Аноним 13/11/21 Суб 23:26:45 #724 №777346 
>>777323
лол
Аноним 14/11/21 Вск 00:31:19 #725 №777350 
>>777323
> 3ds Max+Maya+сабстанс
Ага класс. На хуй тогда вообще юнити учить, если тогда проще стать 3d Artistом ?
Аноним 14/11/21 Вск 01:45:58 #726 №777352 
Dotween нужная вещь для простых анимаций для интерфейса например? Все это время анимировал ручками на корутинах, стоит заморачиваться или это блоатваре вонючий?
Аноним 14/11/21 Вск 12:08:33 #727 №777361 
>>777350
Я в целом говорю, что блендер - уровень говноконтор и школоты на ютубе, но опять же чем тебе стек как гейдев не угодил? Анон попросил грубо говоря, фул список ПО вката в геймдев, не обозначая чем он именно хочет там заниматься. А вобще вопрос размазан как сопля по столу, как именно он хочет вкатиться в гейдев, в офис или хобби. Если первое, какая позиция его интересует и тд. Если второе, то желательно все начиная от ворда и экселя, заканчивая фл студио и кучки vst которые можно прикрутить если цель стоит сделать свое, а не напиздить ассетов/звуков/идей раскидать на одной сцене и выложить в стим свою страшылку-брадилку
Аноним 14/11/21 Вск 12:31:44 #728 №777363 
>>777290
Что за магические числа?
Аноним 14/11/21 Вск 12:47:56 #729 №777364 
>>777361
Речь о вкате в геймдев индустрию под ИНДИ студии. Почему-то у многих геймдев это или инди-говно-конторы или ААА студии. Есть вообще-то варианты и посередине.

Senior Blender может тоже ОЧЕНЬ хорошо зарабатывать.
Аноним 14/11/21 Вск 13:30:45 #730 №777368 
>>777364
>Речь о вкате в геймдев индустрию под ИНДИ студии.
>чтобы через пол года+ можно было вкатиться в геймдев.

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

>Senior Blender может тоже ОЧЕНЬ хорошо зарабатывать
Да понятное дело, что 3д художник на любом софте получает хорошо. Я лишь намекнул, что если рассматривать профессиональный забег на дальнюю дистанцию, профитнее все же стек выше, плюсом подкрепляю мои субъективные размышления и опыт работы в блендере. Каждый дрочит как он хочет
Аноним 14/11/21 Вск 14:53:43 #731 №777378 
>>777368
>если рассматривать профессиональный забег
>вкатиться
Сморозил хуйню, теперь оправдывается. Ты долбаёб, зачем новичку юзать пиратский софт и охуевать от кучи вылетов и, если нет опыта, от вирусни, либо покупать за дохулиард лицензии прог, из которых ему нужно просто понять основы?

Алсо перекат профессионалу с блендера на майю и макс дастся проще, чем обратно, но он в любом случае не займет много времени (месяца 2-4 без напряга)
Аноним 14/11/21 Вск 16:16:09 #732 №777382 
>>777378
>если рассматривать профессиональный забег на дальнюю дистанцию
Ты давай не вырывай слова из контекста. Никто не мешает взять учебную лицуху, или обновлять триал раз в месяц.
Алсо перекат юзерам макса/майи вобще не грозит перекат.
P.S Свою быдлячесть и маняпроеции лей в бэ
Аноним 14/11/21 Вск 16:20:12 #733 №777383 
Поясните нюфагу зачем нужен макс если есть майа и наоборот.
Аноним 14/11/21 Вск 16:34:03 #734 №777384 
>>777383
Майка, нужна именно для анимации, маск для полигонального моделирования. По сути инструменты есть что там, что там, но зачем копать граблями, если есть лопата
Аноним 14/11/21 Вск 19:47:57 #735 №777395 
image.png
>>777384
Спасибо, понял. Что-то я впечатлен с этих цен.
Аноним 14/11/21 Вск 20:27:42 #736 №777399 
>>777395
Около 6т.р в месяц, окупаемость 1 рабочий день 3д-аниматора если не меньше.
Аноним 14/11/21 Вск 21:25:58 #737 №777407 
Анон, есть такая хуйня OnTriggerStay(Collider other)
С помощью нее я вычленяю item'ы в определенном радиусе. Во первых, гугл не смог мне показать что такое other и как с ними работать полагаю что это коллайдеры???. Меня интересует как можно other передать в другой скрипт и можно ли как то расчленить коллайдеры на массив gameObject'ов? Просто при использовании
>if(other.CompareTag("Item") && Input.GetKeyDown(KeyCode.F))
реагируют сразу два объекта, а мне надо на одно нажатие реагирование 1ого объекта.
Аноним 14/11/21 Вск 22:39:24 #738 №777411 
>>777407
Если тебе нужен коллаидер второго объекта в первом, пиши:

поле типа коллаидера = GameObject.Find("Имя объекта, либо для тега вместо фаинд хуярь FindWithTag").GetComponent<Название компонента, например BoxCollider2D>();
Аноним 14/11/21 Вск 23:14:45 #739 №777414 
image.png
>>777411
Не-не, у меня есть тригерКолайдер персонажа A и 2 объекта с колайдерами обычными B/C и общим тегом "Food". И я задаюсь вопросом что при
>if(other.CompareTag("Item") && Input.GetKeyDown(KeyCode.F))
B/C пропадают почти в один момент, а мне бы на одно нажатие 1ин предмет. И второй вопрос как мне из OnTriggerStay, other отправить в другой скрипт;
Аноним 14/11/21 Вск 23:25:15 #740 №777416 
>>777414
Дестрои или чем ты там их убираешь выполняй по имени предмета, а не тега other.name.

По второму вопросу создай поле типа Collider и туда засунь other.

public Collider collider;

OnTriggerExit(Collider2D other){
collider = other;}

В другом скрипте напишешь.

public Collider collider;

collider = GameObject.Find("Имя объекта, где был OnTriggerExit").GetComponent<Collider>().collider;
Аноним 14/11/21 Вск 23:26:03 #741 №777417 
>>777416
>2D
Без 2D
Аноним 14/11/21 Вск 23:58:03 #742 №777420 
>>777416
Со вторым вопросом вроде добился чего хотел, спасибо.

>Дестрои или чем ты там их убираешь выполняй по имени предмета, а не тега other.name.

Так, а че делать если предметов куча и с разными именами?
Аноним 15/11/21 Пнд 00:04:36 #743 №777422 
>>777420
А какой тебе результат собсно нужен?

Запиши из триггер ентера в поле объект, чей триггер ты запустил. А в апдейте по кеикоду дестрой(поле_с_записанным_объектом). На онтриггер экзит стирай поле, а то можно будет с другого конца уровня подобрать.
Аноним 15/11/21 Пнд 00:06:52 #744 №777423 
>>777422
Если в одной куче много предметов лежит, то тогда уже массив по результату он триггер энтера создавай и дестрой(массив_предметов[0]). Каждое нажатие кнопки будет из кучи один собирать.

Я выше когда с кнопкой ебался, мне анон посоветовал list<t> как раз для этого.
Аноним 15/11/21 Пнд 00:19:04 #745 №777424 
>>777423
Думал про ентер, а сейчас до конца допер как это реализовать, спасибо тебе большое Анон!плюсом избавился от Stay который каждый кадр обрабатывался
Аноним 15/11/21 Пнд 09:49:43 #746 №777437 
>>777407
> if(other.CompareTag("Item") && Input.GetKeyDown(KeyCode.F))

это ещё что? У тебя у контроллера триггер что ли? подход абсолютно ебанутый. Во-первых, там выше было обсуждение по триггерам, тебе лучше на OntriggerEnter добавлять коллайдеры в список и можно ими манипулировать через обращение по порядковому номеру. Во-вторых, не слушай этого уебана >>777411 пользоваться именами, тегами и прочими строковыми значениями, а так же использовать тяжелыми функциями типа GameObject.Find тем более каждый кадр - путь на рынок труда по вакансиям клининг-менеджеров.

В твоём случае лучшим решением будет создать интерфейс для этих объектов, которыми манипулируются на триггере (например IManipulable), и использовать оператор проверки типа (other is IManipulable) вместо тегов и имён.
А вместо OnTriggerStay использовать эвенты через обращение к определённому элементу в листе
Аноним 15/11/21 Пнд 10:16:37 #747 №777441 
image.png
VR-щики здесь?
Как настроить проект сразу под все VR-платформы (WMR, Rift, Vive, Index)?
Или только бранчить весь код под отдельные случаи?
Аноним 15/11/21 Пнд 11:50:42 #748 №777449 
>>777437
>В твоём случае лучшим решением будет создать интерфейс для этих объектов, которыми манипулируются на триггере (например IManipulable)

А в чем разница между этим и сравнением обьекта по тегу?
мимопроходил
Аноним 15/11/21 Пнд 12:31:20 #749 №777454 
>>777437
>это ещё что? У тебя у контроллера триггер что ли? подход абсолютно ебанутый
А что плохого что у меня на игроке есть колайдер с тригером? И почему использование проверки по тегу так плохо?в шарпах и юнити библиотеках я вобще новый.
У меня стоит задача, что вокруг игрока допустим на расстоянии 2 метров была возможность взять предмет, не наводя мышкой на сам айтем, а просто клац по клаве и предмет в инвентаре если он в области.
Я сначала подумал сделать тригер колайдер второй на самих предметах, а потом понял, что если айтемов будет куча, то и лишних колайдеров тоже куча и я решил идти от обратного делать сбор не от айтема, а от персонажа, ведь так у нас будет всего 1ин коллайдер на сбор. Вдобавок как проще реализовать проверку на собираемый айтем-коллайдер, проверить тег строчка же просто смотрит в инспекторе тег и сверяет. Ну а вчера уже под утро решил с подачи анона выше, оптимизировать со Stay в Enter>Exit триггер. Где проеб моей логики или где я проебланил и использую лишнюю память??
Аноним 15/11/21 Пнд 13:08:29 #750 №777458 
>>777449
щас он скажет, что так все корпорации дрочат и тебе так же надо
Аноним 15/11/21 Пнд 13:27:00 #751 №777460 
>>777458
В самой проверке по тегу ничего плохого, вот только это добавляет мануального контроля и, как следствие, увеличивает вероятность генерации ошибки. Сперва ты по тегам проверяешь, потом корутины и делегаты запускаешь через строковые значения, но вдруг ты, или кто-то переименовывает метод или тег и весь проект летит по пизде, потому что на этапе компиляции никаких ошибок не возникает. Создать тег вот буквально на 5 секунд быстрее, чем пустой интерфейс
>>777454
> А что плохого что у меня на игроке есть колайдер с тригером?
Ну, если это базовая механика в твоей игре, то, наверное, ничего плохого, вообще сама идея странная. Про ебанутость я о проверках на нажатие клавиши и проверки по тегу одновременно. Ты бы хоть проверку на нажатие первой поставил (читай в чём разница условных операторов от обычных), но в идеале вообще не делать проверок на нажатие в апдейтных методах.
Я так понял, ты хочешь организовать сбор предметов в радиусе? Я бы лучше сделал отдельный метод на оверлапсфер с поднятием одного любого предмета, метод бы запускался по нажатию.
> Ну а вчера уже под утро решил с подачи анона выше
это я и был, то есть тот, который расписывал методику работы с листом
Аноним 15/11/21 Пнд 13:27:22 #752 №777461 
>>777449
>>777460
Аноним 15/11/21 Пнд 13:37:40 #753 №777464 
>>777460
>Не делать проверок на нажатие в апдейте
С этого места по подробнее. Алсо это относится только к нажатиям или к продолжительно нажатой клавише тоже?
Аноним 15/11/21 Пнд 13:44:00 #754 №777465 
image.png
>>777460
По итогу вышло как то так пик1, все работает как мне надо, сейчас думаю прикрутить UI и пойду допиливать остальные части интерфейса.
>В самой проверке по тегу ничего плохого, вот только это добавляет мануального контроля и, как следствие, увеличивает вероятность генерации ошибки.
Конечно, исключать такой возможности не стоит, но так по сути с любой хуйней тут, где то что-то тыкнул и пиздец, благо я в соло работаю и какие то свои ошибки компиляции записываю, чтобы сразу понять как решить хуйню.
> вообще сама идея странная.
Хех, ну я думаю на/gd есть более ебанутые идеи, чем подбор вещей в радиусе.
>Я так понял, ты хочешь организовать сбор предметов в радиусе? Я бы лучше сделал отдельный метод на оверлапсфер с поднятием одного любого предмета, метод бы запускался по нажатию.
Блять я так и знал, что есть аналог RaycastHit, только нагуглить это говно не смог в документации. Но с другой стороны у меня самобытный макакен-код, который я понимаю и не надо даже вектора строить
Это
Аноним 15/11/21 Пнд 13:47:56 #755 №777467 
>>777464
Скорее всего камень в том, что при нажатии в апдейте условие будет отыгрывать каждый фрейм, а это итераций 30 если не больше
Аноним 15/11/21 Пнд 13:49:24 #756 №777468 
>>777467
Так условие if getkey в любом случае будет циклиться. Как можно регистрирывать нажатия клавиш вне апдейта?
Аноним 15/11/21 Пнд 13:56:11 #757 №777470 
>>777464
Это относится ко всему, но тут скорее о читабельности кода, ты просто можешь забыть нахер оно надо вообще, опят же, делаешь отдельный метод с нормальным названием предназначения и запихиваешь его в апдейт. Скачай ассет Invector и смотри как там контролы выполнены, очень хороший пример
https://assetstore.unity.com/packages/tools/game-toolkits/third-person-controller-basic-locomotion-free-82048
Аноним 15/11/21 Пнд 14:11:00 #758 №777472 
>>777465
>благо я в соло работаю и какие то свои ошибки компиляции записываю
Твоё право, я даже не буду тебе врать, у меня не было опыта такого, но я смотрел на ютубе пару роликов по типу "типичные ошибки новичка" и там сотни комментов о том, что строковые значения сломали их инди-проекты и убили мотивацию, поэтому я теги никогда не использую с тех пор
Аноним 15/11/21 Пнд 14:34:16 #759 №777475 
>>777472
>Твоё право
Да, буду креститься на то, что уровень моей самоорганизации сопоставим с моим мнением.

>сотни комментов о том, что строковые значения сломали их инди-проекты и убили мотивацию,
Немного рефлексии
Так это же хорошо, нет переизбытка рынка как с музыкантами или дизайнерами или писателями и тд. Порог вождения особенно Инди огромен и тем самым ценнен. Есть же огромная ЦА, которая играет в индюшатину и отплатит тебе по трудам своим рублем. К слову о "убили мотивацию", я могу сказать только одно, что люди часто путают два вида мотивации "TryToWin" и "DoToWin", это же не рулетка в казино, а ремесло, следственно ты должен этим заниматься не по логике:
> Гы-ы-ы, ща сделаю на пирадцких асцетах игру и буду вторым гадзимой или перссоном или диннхоуллл)))
А более методично и структурно, имхо
Аноним 15/11/21 Пнд 14:55:18 #760 №777477 
>>777475
согласен полностью, понятно, что ты сразу всему не сможешь научиться и через спотыкания осваиваешь ремесло, а хвататься за каждый совет - не менее губительно, чем долбиться самому о каждую стену, только вот простые и довольно очевидные упрощения не стоит игнорировать, ты просто попробуй хоть раз проверку по компоненту, и ты больше никогда к тегам не захочешь возвращаться
Аноним 15/11/21 Пнд 15:15:46 #761 №777479 
image.png
Как каждый раз с нуля запускать этот таймер? Из-за Time.deltaTime он продолжает хуярить не с нуля
Аноним 15/11/21 Пнд 15:38:37 #762 №777482 
>>777479
перед циклом currentTime = 0
Аноним 15/11/21 Пнд 15:55:53 #763 №777485 
>>777482
всё работает, нр нихуя не понимаю, почему нужно именно так, если я его обнулял, но только в другом месте
Аноним 15/11/21 Пнд 16:02:34 #764 №777486 
>>777485
если ты его обнуляешь в другом месте, то, видимо, запускаешь корутину в апдейте? В таком случае можешь вообще цикл удалить и оставить только то, что внутри. Видимо, спиздил код и не разбирался как работает?
Аноним 15/11/21 Пнд 16:07:11 #765 №777488 
image.png
>>777486
не в апдейте, в отдельном методе запускаю, в отдельном останавливаю и обнуляю обнулял
Аноним 15/11/21 Пнд 16:14:06 #766 №777489 
>>777488
хз где ты там обнулял, корутина сохраняет все данные до возврата, а так как твой цикл бесконечный, то значения в нём никогда не сбрасываются
Аноним 15/11/21 Пнд 16:17:51 #767 №777491 
>>777489
точнее не так, корутина сохраняет все данные, а так как это однопоточное выполнение, то данные каждый раз переопределяются на то, что сохранилось внутри цикла, и т.к. он бесконечный, то твой куренттайм не сбрасывается снаружи
Аноним 15/11/21 Пнд 17:59:36 #768 №777502 
image.png
как эти 2 штуки отличаются?
Аноним 15/11/21 Пнд 18:30:24 #769 №777504 
>>777441
Двачую вопрос, есть годные курсы/каналы/книги/стать по ВР в юнити? Особенно интересует окулус как андроид так и пк
Аноним 15/11/21 Пнд 19:16:36 #770 №777507 
>>777504
Вроде же документация есть по камерам и инпуту у офишал Юнити, чекал там?
Просто пацаны со старших курсов, говорят там чекали
Аноним 16/11/21 Втр 00:46:41 #771 №777534 
Посоны, использовать event trigger - pointer click на телефонах норм? Или там все надо через GetTouch пилить?
Аноним 16/11/21 Втр 05:01:19 #772 №777545 
Есть 2д поверхность, на которой надо генерировать партиклы. Сложность в том, что поверхность должна меняться динамически.
Грубо говоря, есть прямоугольник с партиклами на весь экран и периодически в случайном месте нужно удалять их. Как быть?
Аноним 16/11/21 Втр 10:38:34 #773 №777551 
>>777504
За окулус я тебе и сам поясню. https://developer.oculus.com/documentation/unity/book-unity-gsg/
Делал все по этой документации, спокойно сбилдил и апк под ведро и ехе под винду.

А вот за мультиплатформу кто бы рассказал.
Аноним 16/11/21 Втр 12:56:42 #774 №777564 
>>777545
Можно через слои, через доп.камеру, или через скрипт удалять, много подходов, но, грубо говоря, из твоего объяснения не понятно что тебе нужно
Аноним 16/11/21 Втр 20:55:06 #775 №777626 
Пиздец я тут упоролся. Написал как мне казалось простенькую механику логической цепочки. Есть источник и проводники. Пока реализовал все случаи с одиночным включением и отключением, групповым, чтобы можно было замыкать несколькими предметами совместно цепь и разрывать ее в любом месте, накодил такой ебучей лапши, что сам охуел. Без апдейта не обошлось понятное дело. Как включать все предметы, если они рядом друг с другом, а один из них до цепи дотянулся, без апдеита не додумался. Там триггеров уже не происходят.

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

Ну и если есть рекомендации, как убрать апдеит и чем заменить, тоже спасибо заранее.
Аноним 16/11/21 Втр 20:57:36 #776 №777627 
image.png
image.png
Пиздец! У меня код:
Sprite Test = Resources.Load<Sprite>("frame0");
UnityEngine.Debug.Log(Test);
UnityEngine.Debug.Log(Test.name);
на выходе имею NullReferenceException: Object reference not set to an instance of an object
А спрайт вот он родненький в реусурсах лежит. ЧЯДНТ? Уже второй час сижу.

Аноним 16/11/21 Втр 21:26:45 #777 №777630 
>>777627
а шо спрайт называется frame_0 а ты берешь frame0
Аноним 16/11/21 Втр 21:35:08 #778 №777633 
>>777630
ебать...
Аноним 16/11/21 Втр 21:39:07 #779 №777634 
>>777633
Ты ждва часа ебал не тот спрайт?
Аноним 16/11/21 Втр 22:36:18 #780 №777640 
>>777634
Да
Аноним 16/11/21 Втр 22:49:26 #781 №777641 
e4fr5uhj.png
Каким образом можно проверить, что коллаидер соседнего по оверлапу объекта отделился от еще одного соседа? Если известно их конечное количество, то по соседям, но это костыль. Надо циклы в циклах писать. Есть какой-то универсальный метод определить, что одна группа целиком отделилось от второй группы.
Аноним 17/11/21 Срд 09:25:28 #782 №777668 
>>777641
на процесс отделения навесить событие не варик?
Аноним 17/11/21 Срд 10:10:05 #783 №777671 
>>777564
Нужен туман войны.
Аноним 17/11/21 Срд 14:00:45 #784 №777687 
image.png
Анон, возникла проблема с пушем риджибоди.
Толкать предметы я могу если они 1/4 от контроллера, меньше 1/4 не толкаются, а персонаж взбирается. Как пофиксить?
Аноним 17/11/21 Срд 15:25:57 #785 №777698 
>>777687
вариант 1: не использовать такую хуйню, как коробочный контроллер
вариант 2: зайти в гугол под чужим аккаунтом, раз твой забанили
https://answers.unity.com/questions/17566/how-can-i-make-my-player-a-charactercontroller-pus.html
Аноним 17/11/21 Срд 17:12:28 #786 №777715 
>>777668
Понимаю, как повесить отделение одного объекта. Не понимаю, как задетектить отделение группы произвольного количества объектов. Отлеляется толлко один конкретный объект. При этом состав группы динамический.
Аноним 17/11/21 Срд 17:51:42 #787 №777719 
image.png
скачал пакет с шейдерами, а там на материалах такая хуйня, как исправить?
стоит URP, шейдеры его поддерживают
Аноним 17/11/21 Срд 20:40:00 #788 №777735 
изображение.png
>>777534
Бампую вопрос, это нормально вообще использовать эту штуку на телефонах?
Аноним 17/11/21 Срд 23:20:24 #789 №777774 
изображение.png
изображение.png
Юнитач, помогай. Как обычно импортировал из асепрайта анимацию (получился довольно длинный холст) убрал сглаживание и компрессию , но изображение все равно размытое. Где проебался?
Аноним 18/11/21 Чтв 08:51:53 #790 №777797 
>>777715
Бля, да как вы не поймёте, что ваши абстрактные примеры вообще не понятные.
Ну, например, создать динамический список (list) твоих объектов и прописать глашатая с эвентом ListChanged

>>777719
в версиях до 2021
Edit -> Render Pipeline -> Universal Render Pipeline -> Upgrade ...
2021 и выше - Windows -> Rendering -> Rendering Pipline Converter -> ставишь галочку и Convert
Аноним 18/11/21 Чтв 09:41:27 #791 №777798 
>>777797
>Абстрактные
Вот есть источник сигнала 1. Я по триггер ентеру с источником присваиваю единицу другому объекту. Теперь объект выдает единицу. И так по цепочке. Если объект отделился от остальных, снова единица на ноль меняется. Когда по одному их "подключаю", "отключаю", все хорошо. Но если от общей цепи отключить группу, то они друг в друге детектят единицу и остаются активны, пока не разъединишь друг от друга. Даже пикрил в пеинте для этого выше зарисовал.

Вот я и не понимаю, как отследить, что от цепи с источником внутри отделилась группа объектов. Среди них источника нет, надо их единицу на ноль обратно поменять. А они "видят", что у соседей единичка по-прежнему, ну и хули продолжаем тоже показывать значит. Я конечно могу рекурсивно циклы в циклах выписывать проверять массив своих соседей и соседей соседей, но это хуйня. А как вот список всех объектов в сцене на отдельные группы объектов у которых коллаидеры пересекаются проверять, есть среди них источник или нет, не могу допереть.
Аноним 18/11/21 Чтв 11:51:12 #792 №777803 
image
>>776870
Бампаю вопрос, так и не нашёл решения. Пример на пике. Раньше при выделение зелёная рамка была на объекте, теперь же всё съехало в сторону.
Аноним 18/11/21 Чтв 12:03:59 #793 №777805 
image.png
>>777797
> 2021 и выше - Windows -> Rendering -> Rendering Pipline Converter -> ставишь галочку и Convert

Я уже не пынямаю, что можно сделать, чтобы всё заработало
Аноним 18/11/21 Чтв 12:24:04 #794 №777809 
>>777803
Тут телепатов нет
Аноним 18/11/21 Чтв 13:10:14 #795 №777812 
>>777805
Скинь ссыль на пакет
Аноним 18/11/21 Чтв 13:24:38 #796 №777816 
>>777798
Ааа, то есть разрыв цепи нужно предусмотреть?
Я бы, как простой вариант, сделал у источника опять же лист объектов (или сразу инстанс айдишников) и метод который принимает сигнал от источника, идентифицирует его порядковый номер в листе по айдишнику и выкидывает из цепи всех выше этого номера, включая его самого.
Аноним 18/11/21 Чтв 14:08:53 #797 №777818 
>>777816
Проблема в том, что порядок предметов меняется. Объект1 подсоединился к Источнику. К Объекту1 - Объект2, Объект 3 и Объект 4, последовательно. При этом игрок может так переместить объекты между собой, что пока они замкнуты Объект3 например сам замкнется Объекту1. А значит порядок подключения уже выдаст ошибку. К примеру, Объект2 вместе с Объектом4 отделятся от подключеных к Источнику Объектов 1 и 3. И по списку отключим Объект2 и все ниже по списку - Объекты 3 и 4. Но Объект3 то еще в цепи. А он отключится.

Я пока единственное, что придумал делать, но не как реализовать - это делить объекты на группы. Соединились больше двух по триггерам - их в список. А дальше проверять каждый из списков на наличие в нем контакта с источником. Но это дохрена циклов в апдейте будет, да и как-то перегруженно все равно, мне не нравится.

Как бы найти способ, чтобы объект узнал, что вся его группа отключилась.
Аноним 18/11/21 Чтв 14:57:50 #798 №777827 
image.png
Возможно ли на юнити запилить глобальную стратегию?
Аноним 18/11/21 Чтв 15:01:15 #799 №777828 
>>777812
https://github.com/danielshervheim/unity-stylized-water
Аноним 18/11/21 Чтв 15:57:15 #800 №777838 
>>777827
Достаточно глобально?
https://store.steampowered.com/app/1124300/HUMANKIND/

На юнити, как и на анриле ты можешь что угодно запилить
Аноним 18/11/21 Чтв 16:05:01 #801 №777840 
PjnfSauQ.jpg
>>777828
апгрейдить можно только со стандартных шейдеров, там свой какой-то, поэтому только руками, там они достаточно простые, можешь эти поюзать
https://assetstore.unity.com/packages/vfx/shaders/stylized-water-for-urp-162025
https://assetstore.unity.com/packages/vfx/shaders/urp-stylized-water-shader-proto-series-187485
Аноним 18/11/21 Чтв 16:53:04 #802 №777845 
>>777818
тогда всё зависит от механики твоего случая (количество связей, множественность источников и т.д) для линейного варианта - 1 связь на объект, 1 источник, можно обойтись одной булевой переменной, доступной на чтение, и массивом из 2 элементов

добавление связей онколлайдеринтер()
{
если other имеет нужный интерфейс (IPlugable, например);
определяем i элемент массива = other;
i = i + 1;
если i > 1, i = 0 (переход к 1 элементу);
}

в онколлайдерэксит присваиваем вышедшему элементу null



в апдейте постоянно смотрим если оба элемента != null и хотя бы у одного булевая true то и у этого ставим тру.
если хотя бы 1 = null - то булевая false

Таким образом имеем
Источник (true) - объект 1 (false)
Источник (true) - объект 1 (true) - объект 2(false)
Источник (true) - объект 1 (true) - объект 2(true) - объект 3(false)
Источник (true) - объект 1 (true) - объект 2(true) - объект 3(true) - объект 4(false)

разрываем
Источник (true) - объект 1 (true) / объект 2(true) - объект 3(true) - объект 4(false)
объект 2 становится false и все по цепочке false за ней
Аноним 18/11/21 Чтв 17:49:18 #803 №777861 
>>777845
а не, нужны 2 булевых на чтение и ещё 1

doublePlug - на чтение если обе переменные не null

isPower - если хотя бы у одного из соседей isActive true

isActive - на чтение если у соседей у обои doublePlug true, и своя isPower тоже

(isPower , doublePlug , isActive)
Источник (всегда всё true) - объект 1 (true, false, false)
Источник - объект 1 (true, true, false) - объект 2(true, false, false) и т.д
Источник - объект 1 (true, true, true) - объект 2(true, true, false) - объект 3(true, false, false) и т.д

обрубаем:
Источник - объект 1 (true, true, true) / объект 2(true, true, true) - объект 3(true, true, true) - объект 4(true, true, false) - объект 5(true, false, false)

1- кадр
Источник - объект 1 (true, false, false) / объект 2(true, false, false) - объект 3(true, true, true) - объект 4(true, true, true) - объект 5(true, false, false)

2 - кадр
Источник - объект 1 (true, false, false) / объект 2(true, false, false) - объект 3(true, true, false) - объект 4(true, true, true) - объект 5(true, false, false)

3 - кадр
Источник - объект 1 (true, false, false) / объект 2(false, false, false) - объект 3(true, true, false) - объект 4(true, true, true) - объект 5(true, false, false)

4 - кадр
Источник - объект 1 (true, false, false) / объект 2(false, false, false) - объект 3(true, true, false) - объект 4(false, true, false) - объект 5(true, false, false)

5 - кадр
Источник - объект 1 (true, false, false) / объект 2(false, false, false) - объект 3(false, true, false) - объект 4(false, true, false) - объект 5(false, false, false)

привязываться, как ты понял (свечение или что там у тебя) нужно к isPower
Аноним 18/11/21 Чтв 18:04:37 #804 №777864 
>>766778 (OP)
На каком железе анон разрабатывает свои игры на юнити? Хочу купить себе стационарный пека, чтобы серьезно заняться разработкой, но бюджет ограничен.
Аноним 18/11/21 Чтв 18:10:42 #805 №777865 
>>777861
Спасибо, анонче! Пришел, сейчас буду разбираться.
Аноним 18/11/21 Чтв 18:45:57 #806 №777868 
>>777864
https://www.dns-shop.ru/custompc/configuration/bb2ca410668c48fd/
собирал сам, особо не шарю, ориентировался на рейтинг и отзывы, с HDRP справляется отлично
Аноним 18/11/21 Чтв 21:44:47 #807 №777883 
>>777861
Что-то не понял вот тут.
> isPower - если хотя бы у одного из соседей isActive true
> Источник - объект 1 (true, true, false) - объект 2(true, false, false) и т.д
У объекта 1 isActive false, при этом у объекта 2 isPower true. Я точно правильно понял?
Аноним 18/11/21 Чтв 22:42:16 #808 №777891 
>>777883
Запутался, но концепция правильная, заново

isPower - если хотя бы у одного из соседей isActive true
doublePlug - на чтение если обе переменные не null
isActive - на чтение если у соседей у обоих doublePlug true, и своя isPower тоже

Источник (true, true, true) - объект 1 (true, false, false)
Источник (true, true, true) - объект 1 (true, true, false) - объект 2 (false, false, false)
Источник (true, true, true) - объект 1 (true, true, true) - объект 2 (true, true, false) - объект 3 (false, false, false)
...
Источник (true, true, true) - объект 1 (true, true, true) - объект 2 (true, true, true) - объект 3 (true, true, true) - объект 4 (true, true, false) - объект 5 (false, false, false)

обрубаем
Источник (true, true, true) - объект 1 (true, true, true) / объект 2 (true, true, true) - объект 3 (true, true, true) - объект 4 (true, true, false) - объект 5 (false, false, false)

1:
Источник (true, true, true) - объект 1 (true, false, false) / объект 2 (true, false, false) - объект 3 (true, true, true) - объект 4 (true, true, false) - объект 5 (false, false, false)
2:
Источник (true, true, true) - объект 1 (true, false, false) / объект 2 (true, false, false) - объект 3 (true, true, false) - объект 4 (false, true, false) - объект 5 (false, false, false)
3:
Источник (true, true, true) - объект 1 (true, false, false) / объект 2 (false, false, false) - объект 3 (false, true, false) - объект 4 (false, true, false) - объект 5 (false, false, false)
4:
Источник (true, true, true) - объект 1 (true, false, false) / объект 2 (false, false, false) - объект 3 (false, true, false) - объект 4 (false, true, false) - объект 5 (false, false, false)

Получается, что тогда активность (подсветку) нужно сводить к проверке если хотя бы у одного из соседей isPower - true xD
Аноним 18/11/21 Чтв 22:54:55 #809 №777892 
>>777883
Ага! Сделал:
Источник - объект 1 (true, true, true) - объект 2(true, false, false) и т.д
И заработало как надо.

>>777891
Вовово точно. Я тоже допетрил. Сообщение написал, а отправить не отправил. Огромное спасибо еще раз. Я до вот этой третьей переменной сам не дошел, что нужно ограничить количество связей и сообщать об этом. Очевидно же, что даже в большой куче объектов с только двумя "соседями" объекты просто последовательную цепочку сами выстроят.
Аноним 19/11/21 Птн 01:03:48 #810 №777897 
>>777891
Жаль только, что если игрок активно таскает эти объекты в запитанном состоянии, то они рискуют терять уже полученные связи. Провожу цепь объектов со второго по четвертый через запитанный объект1, и каждый из них теряет по связи со своим старым соседом. И когда они уже выходят из зоны объекта1, сосед "объекта1" в очередном объекте удаляется и объектик отключается, потому что до этого стер своего первоначального соседа. Когда проводишь группу через запитанный участок,у них doublePlug (остается только один сосед) отрубается после прохождения участка.

А больше связей им делать нельзя, потому что будут в рекурсии друг друга поддерживать. Боль. Завтра попробую еще в апдейт запихнуть присваивание свободной переменной дополнительного объекта. По идее должно пофиксить эту вот "потерю соседа" после прохождения цепи объектов через запитанный участок.
Аноним 19/11/21 Птн 12:07:16 #811 №777907 
>>777897
Так я и написал, что этот вариант для линейного использования.

В динамике ты можешь тогда юзать не массив, а лист, и добавлять соседей через Add, но тогда нужно ограничение ставить на 2 элемента, либо прописать автосортировку массива при удалении (чтобы неnull всегда был под индексом [0])
Аноним 19/11/21 Птн 14:32:57 #812 №777926 
>>777907
Буду дальше ковыряться.
Аноним 19/11/21 Птн 20:14:34 #813 №777966 
Мля, такое чувство будто геймдев это не айти епт. Депутатом легче стать чем джуном.
Вакансий кот наплакал, а те что есть с требованиями заоблачными и тестовыми недельными. Да и даже на те вакансии по 40 рыл претендует.
Несправедливость бля, что веб мартышки научились за 2 месяца кнопки верстать и уже могут зарабатывать. А тут потеть приходится. Как сложность то сменить на легкую..
Аноним 20/11/21 Суб 12:47:44 #814 №778022 
>>777803
>>776870
После последней обновы 2021.2.3f1 пофиксилось само, слава аллаху. Так и знал что что-то поломали и кому-то не повезло встретить это.
Аноним 20/11/21 Суб 13:49:15 #815 №778025 
>>777966
так потому что все побежали куда, как им кажется попроще, ты почитай местную ветку, анон не знает что такое листы в c#, а уже инди свою пилит. Поэтому, сейчас требования выше, имей простое портфолио (3 в ряд, раннер и что-то по профилю), изучи хотя бы 1 книгу по языку и джун тебе обеспечен. По-хорошему, этого тоже можно за 2 месяца достичь, если планомерно делать
Аноним 20/11/21 Суб 14:01:31 #816 №778026 
image.png
lplChqgu2L.gif
Что я делаю не так? Почему углы еще сильнее скругляются? Я же вроде правильно углы обозначил, они же должны быть зафиксированы?
Аноним 20/11/21 Суб 14:10:45 #817 №778027 
image.png
>>778026
А все, разобрался, надо было этот параметр подрихтовать
Аноним 20/11/21 Суб 14:37:15 #818 №778030 
>>778025
Так я не ради портфолио пилю, я игру хочу сделать. А там уж че освою, то освою в процессе.
Аноним 20/11/21 Суб 15:11:44 #819 №778032 
>>778030
ты просто как пример, о том, что многие сейчас идут в геймдев без изучения основ, рынок забит, но забит только на уровне гастеров
Аноним 20/11/21 Суб 15:28:26 #820 №778033 
изображение.png
Анончик, я тут задумался вот о чем - все твердят что надо наследовать минимум монобехаверов, даже вон в кефире требуют тестовое задание - писать код без них. То есть все игровые сущности должны быть отвязаны от юнити... и все замечательно - но хоть один монобехавер должен быть

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

Один вопрос - разве это не гудобжект?

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

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

То есть я вижу подход юнити как раз таки более правильным - а сама идея делать какие либо менеджеры - это убого... Но почему-то все другие считают иначе

Да, допустим есть теория что множество Update снижают производительность - но давайте честно - на каких проектах это может стать проблемой? на клонах ангриберда для андроида?
Аноним 20/11/21 Суб 16:25:17 #821 №778035 
>>778032
Мне читка шилдта или лекции никаких знаний все равно не дают, как об стенку горох. У меня и в вышке например ООП было, так я нихуя не понимал, че там происходит. А задачи для примеров былы дохрена унылые, потому все лабы мы тупо скатывали.

Другое дело вместо штудирования теории сразу ебашить на практике то, что интересно. Через костыли, ошибки, лапшу и самому уже лезть в справочники, документацию читать по конкретной нужной именно в данный момент тематике. Так хоть какой-то интерес есть. Уже начинаю вникать и понимать по-немногу. Когда игрулька в юнити запускается, я хоть наглядно вижу, че написал, все поля на объекте в паблик вывел и зырю в них. Я не представляю, как эту муть можно изучать в отрыве от интересного практического задания.
Аноним 20/11/21 Суб 16:28:22 #822 №778037 
>>778025
Ты о чем блин. У меня уже на гите кучу тестовых с разными механиками. Есть еще свои пет проджекты: простая RTS, Тавер-дефенсе, шутер с разрушаемыми объектами и даже репа с где я пытаюсь в архитектуру.
Но всем похуй похоже. Что не отклик на вакансию - а сделай нам вот это еба-тестовое плиз. И похуй что там неделю делать, ты главное сделай. А, и не забудь плиз показать свои еба навыки плз, похуй что там геймплея на пару скриптов. Ты главное сделай еще 40 скриптов абстракции над ними, чтобы доказать что ты достоин нашей галеры.

А потом пидары ноют в чатах, что сложно найти разраба и приходится переманивать у других и вообще дефицит. Конечно бля, заниматься джунами то никто не хочет.
Хуевая короче ситуация в геймдеве у нас.
Аноним 20/11/21 Суб 16:30:00 #823 №778038 
>>778037
Значит единственный вариант, свою студию создавать. Брать туда, кого хочется и учить.
Аноним 20/11/21 Суб 19:18:18 #824 №778051 
>>778033
Когда ты пишешь клон ангриберда соло для андроида, можешь делать как тебе удобно.

Если ты гребешь на галере, то это может быть удобнее по тысячи причин. От написании тестов, уже готовой кодовой базы, единообразия и следования принятому код стайлу и т.д.
Аноним 20/11/21 Суб 19:53:33 #825 №778052 
>>778033
Тож делал так, потом заебало выебываться перед самим собой без толку и делаю нормально.
Но вообще тенденция конечно забавная - люди не доверяют юните и стараются архитектуру максимально отвязывать, чтобы чуть-что сьебать с тонущего корабля без проблем.
Аноним 20/11/21 Суб 20:20:58 #826 №778054 
>>778052
> с тонущего корабля
А что с юнитей может случиться так резко?
Аноним 20/11/21 Суб 21:37:23 #827 №778058 
>>778052
>>778054
Годоти, ну-ка съебали с треда.
Аноним 20/11/21 Суб 22:05:10 #828 №778067 
>>778054
Например в один прекрасный день осознаешь что у тебя c# уеч вместо юнити, со всеми вытекающими.
Аноним 21/11/21 Вск 02:11:20 #829 №778094 
>>778033
Короче вскрываю тему. Когда ты создаёшь скрипт - в нём автоматически будет войд старт и войд апдейт. Юнити гарантированно вызовёт эти функции. Ей поебать пустые они или нет. А вызов этих функций гарантированно не бесплатный. Это не причина не использовать апдейты, просто когда их становятся тысячи - это может стать проблемой. Это не миф, но это не так уж и важно.
Менеджеры же повсеместно считаются плохим кодом. Но всегда нужно находить компромиссы, верно? Для меня, например, отвязка от монобеха сработала просто идеально. Потому что все мои "гоблины" собираются из кода на лету, на вход нужен просто ГО и ничего больше. А вот теория о том, что можно просто взять свой код и портировать его на другой движок это абсолютная глупость. Ты всё ещё работаешь с апи, используешь библиотеки движка и встроенные компоненты, портирование этого всего потребует переписывания всего кода. Причём чем дальше ты от монобеха - тем сложнее портирование, лол. Как мне портировать маршаллинг байтов из NativeArray в MeshRenderer внутри JobSystem? А никак, за пределами юнити это всё не существует.
Максимально правильным для меня лично выглядит код с одним-двумя связующими звеньями между монобехом и твоим кодом, в пределах одной сборки. Если ты не используешь разбиение на сборки, то всё ещё проще.
Аноним 21/11/21 Вск 13:26:49 #830 №778126 
Припоминая дискуссию о поиске объектов по тегу, имени, типу и ненависть к строковым значениям, годится ли для поиска объекта пользоваться полями скриптбл обжекта? Даже если там только одна характеристика собственно и написана.
Аноним 21/11/21 Вск 16:31:42 #831 №778167 
Огромной массив с музыкой, которая бесконечно по кругу играет, сильно повлияет на производительность? И стоит ли сжать всё это? да конечно стоит
Аноним 21/11/21 Вск 16:45:53 #832 №778168 
Вопрос. Вот я написал вычислительный шейдор на полторы тыщи строк. А есть ли способы структурировать это говно?! Хотя-бы что-то вроде регионов в шарпе. Я заебался открывать закрывать функции и скролить всё это.
Аноним 21/11/21 Вск 18:34:03 #833 №778178 
image.png
Ебусь шарами в гугл.
Анон, выручай! Есть у меня кнопка со скриптом прикл1, есть миллион GO под названием слот (i) и скриптом InventorySlot. Каким собачим хуем мне со скрипта InventorySlot пингануть в Кнопку, чтобы присвоить в скрипте Slot нужный GO.
Более простым языком: как мне в коде указать референс другому скрипту EatFood.Slot = gameObject
Аноним 21/11/21 Вск 19:19:12 #834 №778184 
>>778178
Либо через менеджер у которого есть доступ и к скрипту и к объекту, или по поиску/месседжу.
Стандартный инвентарь выглядит так -> Есть менеджер который содержит в себе объекты(Клетки) и имеет доступ к ресурсам которые могут быть в этих клетках, и их связывает/развязывает. Сами клетки и объекты друг о друге не знают.
Аноним 21/11/21 Вск 19:19:30 #835 №778185 
>>778178
Все, не нужно, сам нашел
Аноним 21/11/21 Вск 19:23:25 #836 №778186 
>>778184
Я сделал так: скрипт самого слота я присвоил к рефу кнопки из скрипта слота.
Оказалось так легко, а я дегенерат часа 3 гуглил
Аноним 21/11/21 Вск 21:48:16 #837 №778197 
>>778168
Как на счёт cginclude?
>>778178
О, нихуя, платина.
Аноним 21/11/21 Вск 23:17:44 #838 №778204 
image.png
>>778197
>Как на счёт cginclude?
увы нет. в том вычислительном шейдоре симулятор карты с водичкой, землёй, атмосферой и осадками лол. там уже под 40 кернелов. заебись прототип налепил.
и разделить это между собой не так и просто так как всё это между собой взаимодействует в той или иной степени.

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

с этим уже физически трудно работать.
Аноним 22/11/21 Пнд 07:25:31 #839 №778218 
>>766778 (OP)
У кого-то скачан O'Reilly - Learning Path? Встаньте на раздачу плес, очень хочется себе в поезд первую главу скачать.
Аноним 22/11/21 Пнд 13:34:28 #840 №778234 
Ускоряем работу с юнити примерно в сотню раз. Заходим в менеджер пакетов, видим там установленные по умолчанию пакеты райдера, вижуал студио и прочий треш. Сносим нахуй.
Заходим в Edit -> Preferences -> External Tools, выбираем в External Script Editor опцию Open by file extension. Не забываем назначить нужному типу файла нужный редактор. У вас там уже выбран нужный софт? Не-не, всё равно выбирайте by file extension.
Спорное решение, но может быть полезно. Открываем Edit -> Preferences -> Asset Pipeline, убираем галочку Auto Refresh. Теперь юнити не перекомпилирует скрипты при каждом изменении скрипта, нужно жать контрол+R. Сюда бы прекрасно зашло отключение компиляции при создании нового скрипта, которое должно выключаться галочкой Directory Monitoring, однако она не работает.
И напоследок мастхев, о котором все знают. Edit -> Project Settings -> Editor. Скроллим вниз, ставим галочку на Enter Play Mode Options. Галочки на Reload Domain и Reload Scene должны быть сняты. Данные опции пердолят статические переменные, не используйте статические переменные без чёткого понимания, что это такое. Спасибо.

Об assembly definitions. Разбиение кода с разными зонами ответственности на разные сборки это хорошо. Предположим, у нас есть папка с кодом GameWorld, папка Player и папка NetWork, с очевидным наполнением. Создаём в каждой папке файл assembly definition и проставляем зависимости - GameWorld спавнит Player'a, а тот отправляет по сети данные, используя NetWork. Теория - изменение кода только в одной из папок вызовет перекомпиляцию кода только внутри этой сборки. Практика - юнити проходится по цепочке зависимостей вверх и вниз, компиляция занимает больше времени, чем без asmdef. Использование сборок ускорит компиляцию только в том случае, если у вас есть независимые друг от друга цепочки зависимостей с большим количеством кода.
Аноним 22/11/21 Пнд 14:12:13 #841 №778240 
> И напоследок мастхев, о котором все знают. Edit -> Project Settings -> Editor. Скроллим вниз, ставим галочку на Enter Play Mode Options. Галочки на Reload Domain и Reload Scene должны быть сняты. Данные опции пердолят статические переменные, не используйте статические переменные без чёткого понимания, что это такое. Спасибо.

Вот после этого я охуел конечно от скорости запуска сцены, но не понял прикола с статиками, вроде всё ок и у меня там хранятся данные типо денег
Аноним 22/11/21 Пнд 15:00:35 #842 №778242 
>>778240
В статик классах переменные не сбрасываются между разными сессиями Play.
Аноним 22/11/21 Пнд 15:13:56 #843 №778244 
>>778234
>И напоследок мастхев, о котором все знают. Edit -> Project Settings -> Editor. Скроллим вниз, ставим галочку на Enter Play Mode Options. Галочки на Reload Domain и Reload Scene должны быть сняты.

Примерно через полчаса работы схватил fatal error, благо привычка спасить ctrl+s/r перед каждым ctrl+p
Аноним 22/11/21 Пнд 17:07:14 #844 №778247 
>>778234
>Теперь юнити не перекомпилирует скрипты при каждом изменении скрипта, нужно жать контрол+R.
Вроде для меня актуально, надо будет пробывать. Есть сотня скриптов и работаю с ними на автомате всё время проживая ctrl+s, из-за чего юнька вечно всю перегружает.
Они сами перекомпилируются при тестовом запуске в плэй моде? Подводных нету?
Аноним 22/11/21 Пнд 17:50:18 #845 №778250 
>>778247
>Они сами перекомпилируются при тестовом запуске в плэй моде?
Нет. Я же сразу писал, что нужно прожимать вручную.
Аноним 22/11/21 Пнд 18:11:10 #846 №778258 
Как реализуют смену качества графония?
Аноним 22/11/21 Пнд 18:21:50 #847 №778259 
>>778258
Project settings -> quality
но нужно каждый SRP настраивать отдельно, чтобы у тебя минималки в говно не превращались
Аноним 23/11/21 Втр 11:27:23 #848 №778312 
>>766778 (OP)
>Rust
В игре когда сборщик мусора запускается происходит лаг. Разрабы с этим уже несколько лет ничего сделать не могут. Единственное решение это увеличивать размер буффера до максимума и запускать gc вручную перед файтом. Это реально не решаемая проблема заложенная в дизайне движка?
Аноним 23/11/21 Втр 11:52:22 #849 №778317 
>>778312
Не в движке дело, если мусор не собирать, то у тебя память закончится. Это проблема в разработчиках, слишком много срут в память и забывают подчистить. Автоматическая подчиска срабатывает когда говна уже многовато, потому возможны лаги.
Аноним 23/11/21 Втр 20:40:50 #850 №778383 
Удолил скриптбл бжект. Юнити выдает предупреждение create asset menu attribute will be ingored. Как это подчистить?
Аноним 23/11/21 Втр 20:48:00 #851 №778384 
>>778383
Все отбой, я ебанулся просто.
Аноним 24/11/21 Срд 10:55:59 #852 №778409 
>>778067
джва года такой жду
Аноним 24/11/21 Срд 13:42:14 #853 №778420 
>>778067
>c# уеч
Такого не будет, они пилят стих уже три года
Аноним 24/11/21 Срд 13:53:40 #854 №778421 
>>778234
>И напоследок мастхев, о котором все знают. Edit -> Project Settings -> Editor. Скроллим вниз, ставим галочку на Enter Play Mode Options. Галочки на Reload Domain и Reload Scene должны быть сняты.

Хуйня, короче. Вылетает и крашится редактор по кд, а жаль
Аноним 24/11/21 Срд 14:24:27 #855 №778423 
>>778421
Смотри, что у тебя со скриптами не так. У меня крашей нет.
Аноним 24/11/21 Срд 23:56:08 #856 №778471 
Есть какой-нибудь способ отображать light или halo перед спрайтом, а не за ним?
Аноним 25/11/21 Чтв 07:42:12 #857 №778492 
>>778423
Reload Domain, как и сказал анон, сбрасывает статику, тогда как Reload Scene удаляет кэш сцены, поэтому как раз из-за скриптов вероятность вылета минимальная, а вот при работе с геймобжектами и графонием тоби пизда уже после 2-3 запусков без сброса
Аноним 25/11/21 Чтв 09:14:42 #858 №778497 
image.png
Как отобразить вращение в редакторе не запуская сцену?
Аноним 25/11/21 Чтв 09:36:14 #859 №778498 
>>778497
Это пробовал? https://docs.unity3d.com/ScriptReference/ExecuteInEditMode.html
Аноним 25/11/21 Чтв 10:30:10 #860 №778499 
>>778498
Не работает
Аноним 25/11/21 Чтв 10:33:24 #861 №778500 
>>778492
>вот при работе с геймобжектами и графонием
Спавнил тысячи го без деспавна, мутил процедурные меши, террейны, навмеши, вольюмы со спецэффектами. С тех, как фича появилась, короче - с тех пор и пользуюсь. Вылеты крайне редки. Вчера, например, включил кеш сервер, но не забил айпишники - посыпались вылеты. Выключил и сразу всё ок. Не в кешах дело, короче, это у анона или проект битый или пизда чему-то.
Аноним 26/11/21 Птн 07:31:14 #862 №778597 
вв2.jpg
>>766778 (OP)
Сап аноны, может кто разъяснить, что за байда с таймером в юнити?

Я уже не в первый раз сталкиваюсь с тем что таймер ведёт себя не так, как я привык в С#.

Ниже у меня действие - перезарядка, хочу чтобы на неё тратилось около 5 сек
По логике я
1. нажимаю на перезарядить
2. запускаю таймер
3. он отсчитывает 5 сек
4. запускает код перезарядки
5. возвращаю время перезарядки

И все довольны

Но этот падла вместо запуска таймера, просто останавливается, каждое нажатие на R он просто отсчитывает время нажатия и останавливаемся и так во всём хочу сделать таймер который ограничивает героя от нажатия взаимодействия, на это когда игрок быстро клацает по E берёт не один патрон, а 2-6 и опять таймер не помогает я как то обходил это через булевые переменные, но это звездец как муторно, запускал таймер в апдейте только тогда, когда срабатывал булевая переменная и отключал так же, но это дикие костыли и я думаю, что, что-то не понимаю в апдейте юнити проясните, если не трудно.

Аноним 26/11/21 Птн 11:49:14 #863 №778604 
>>778597
Ох ты ж ебаный насрал. Я не думал, что увижу такой хуйни. Ты что-то слышал про корутины и многопоточность? Если нет, то советую отложить пока свою поделку и начать с изучения юнити
Аноним 26/11/21 Птн 12:09:01 #864 №778605 
IMG0260A.jpg
р.jpg
>>778604
>то советую отложить пока свою поделку и начать с изучения юнити
Ты охуел?

Единственное, что я знаю о многопоточности в юнити это метод Invoke, но это опять же предполагает, что в апдейте мне по умолчанию нужно запустить таймер и он будет постоянно там крутится.
Аноним 26/11/21 Птн 14:12:36 #865 №778617 
>>778605
Бля анон, тебе бы не юнити подучить, а базовые алгоритмы задрочить, потому що сразу видна логическая ошибка.
Таймер у тебя работает при нажатии соответственно он щитает только нажатие, выведи КД в апдейт.
Примерная логика такая:
start{ coolDawnTimer= 5f;}
Update
{
if(coolDawnTimer < 5f){щитаем таймер КД}
if(coolDawnTimer >=5f && "R"){Твоя перезарядка}
}
Аноним 26/11/21 Птн 14:13:00 #866 №778618 
>>778617
*мимодругойанон
Аноним 26/11/21 Птн 14:17:51 #867 №778620 
>>778617
>>778618
Спасибо, я примерно понял.
Аноним 26/11/21 Птн 14:23:31 #868 №778621 
image.png
>>778620
Тут собственно и нечего понимать, то что ты настрочил - это перезарядка зажимная: "Ал-я зайжмите на 5секунд R чтобы перезарядиться"мб кому пригодиться, по патрону заряжать . А так, советую обратиться все таки визуализации кода вида блок-схем, потому что ты не догоняешь как ты строишь алгоритм. Плюсом так можно выявлять алгоритмические ошибки в коде
Аноним 26/11/21 Птн 16:29:04 #869 №778635 
48789.jpg
>>778617
Пчел чего то не работает твой алгоритм

public float = coolDawnTimer; //объявили

start
{
coolDawnTimer= 5f;//инициализировали
}
Update
{
if(coolDawnTimer < 5f) //С какого он будет сравнивать если как было 5 так и осталось , счётчик ты запускаешь после условия ?
{
coolDawnTimer+= Time.deltaTime; //щитаем таймер КД
}
if(coolDawnTimer >=5f && "R") //что здесь вообще происходит, мы должны нажать R и в тоже время таймер должен быть больше 5? Это как вообще? Мне нужно чтобы я нажал на R прошло 5 секунд за которые проигралась анимация и звук и уже после добавились патроны.
{
Твоя перезарядка
}
>>778621
Чувак я ценю твой совет, но уроки по информатики я прошёл ещё 26 лет назад и мне кажется я достаточно логично описал, то что хочу реализовать.

}
Аноним 26/11/21 Птн 16:51:01 #870 №778641 
image.png
Аноним 26/11/21 Птн 17:31:28 #871 №778647 
image.png
>>778635
Я тебе же примерную логику написал, мог бы допереть че к чему.
Условно кд который я тебе написал, можно еще хуеву тучу прикрутить типо прыжка или кнопки действия

>логично описал
>не смог реализовать
Я бы все таки попробовал вспомнить, тем более 26лет прошло
Аноним 26/11/21 Птн 17:38:39 #872 №778648 
>>778597
Мимо.
Это ли не делается отдельным евентом , чтобы потом таймер в апдейте считать?
Типа нажал кнопку, сработал эвент, отсчитал 5 секунд и дестройнулся.
Аноним 26/11/21 Птн 17:47:46 #873 №778649 
>>778647
>Сап аноны, может кто разъяснить, что за байда с таймером в юнити?
>Я уже не в первый раз сталкиваюсь с тем что таймер ведёт себя не так, как я привык в С#.
Алсо, тут проблема не в самом таймере, а в его реализации. Если ты сам не понял эту ошибку, то без базы тебе будет ой как трудно. Любой нормальный программист тебе скажет, что кодить без задроченных алгоритмов, пустая трата времени, и ты скорее макак, который чето покусочкам собирает но не понимает, что в итоге у него выходит.
Проблема у тебя была в том что условие требует только нажатой кнопки в апдейте, то получается у тебя не секундомер анимации получается, а дебаг времени нажатия кнопки.
Аноним 26/11/21 Птн 18:05:23 #874 №778650 
>>778649
>Любой нормальный программист тебе скажет, что кодить без задроченных алгоритмов, пустая трата времени
Чего?
Аноним 26/11/21 Птн 18:32:39 #875 №778659 
>>778650
Перед изучением языков программирования, будьте так добры научиться рисовать логические блок схемы
Аноним 26/11/21 Птн 18:57:51 #876 №778668 
У меня такой код работает. Правда хз, чому нельзя в for цикле написать WaitForSecondsRealtime(1), чтобы отсчитывать i от 5 до нуля и дебугом выводить таймер. Мб аноны пояснят. Когда в for сую WaitForSecondsRealtime(1), корутина моментально завершается.

public class Reloading : MonoBehaviour
{
void Update()
{
if (Input.GetKeyDown(KeyCode.R))
{
StartCoroutine("Reload");
}
}

IEnumerator Reload()
{
Debug.Log("Reload started");
yield return new WaitForSecondsRealtime(5);
Debug.Log("Reload completed");
}
}
Аноним 26/11/21 Птн 20:07:02 #877 №778678 
>>778649
>то получается у тебя не секундомер анимации получается, а дебаг времени нажатия кнопки.

Пчел, ну чего ты, я же сам об этом написал
>>778597
>этот падла вместо запуска таймера, просто останавливается, каждое нажатие на R он просто отсчитывает время нажатия и останавливаемся

>>778641
Вот это интересно,спасибо

>>778647
Я уже нашёл решение, но ещё раз хочу попробовать твой алгоритм.

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


Аноним 26/11/21 Птн 20:32:05 #878 №778688 
>>778641
А не запустит ли эта хуйня бесконечное число корутин? Или упадёт с ошибкой, мол, корутина уже бежит. Сам корутины не юзаю, слишком неудобные, просто спрашиваю. Сам бы такую хуйню реализовывал таймпштампами и стейт машиной.
Аноним 26/11/21 Птн 20:44:37 #879 №778692 
qgqqqqqqqq.jpg
wwwwwwwwwwe.jpg
>>778668
>>778649
>>778648
>>778647
>>778641
Господа спасибо за помощь, попытку.
Но самый короткий и приемлемый для меня вариант оказался ниже.
>>778659
Пчел ну коман, не включай учителя информатики
Аноним 26/11/21 Птн 20:49:08 #880 №778694 
>>778678
>Я уже нашёл решение, но ещё раз хочу попробовать твой алгоритм.
Там суть в том что таймер который нужен - это первый if. Так ты можешь к нему прикрутить еще действия, помимо перезарядки, по такому же принципу. Как по мне самое простое и логичное решение
Аноним 26/11/21 Птн 20:49:17 #881 №778695 
Кстати парни ещё вопрос, скорее по оптимизации, насколько сильно загружает оперативку пк всевозможные таймеры? У меня на выстрел постоянно тикает таймер который отделяет по времени выстрелы, ну чтобы при нажатии игрок не высирал линии из пуль, насколько это плохо?
Аноним 26/11/21 Птн 20:51:49 #882 №778696 
>>778692
Нэ понял, я сам тестил, не ври!!!
Аноним 26/11/21 Птн 20:54:29 #883 №778699 
>>778694
Чел ну не работает твой алгоритм, я и в игре запускал и в отдельном скрипте, не работает он, просто считает до пяти и всё. Ты видишь на консоле что он считает время, но на самом деле он просто отсчитывает 5 секунд ты нажимаешь на кнопку он мгновенно совершает действие и опять отсчитывает 5 секунд.
Что бы теоретически он стал работать нужно первый блок засунуть внутрь второго, но вы здесь все меня уже обсосали за это, так что я опять даже пробовать не стану. Без обид, спасибо за попытку помочь.
Аноним 26/11/21 Птн 21:09:37 #884 №778707 
>>778641
Это кажется и есть пример много поточности, здесь работает стандартный апдейт и параллельно запускается while.
Аноним 26/11/21 Птн 21:12:56 #885 №778709 
>>778707
Наркоман? Корутины выполняются в мейн треде, никакой многопоточностью не воняет.
Аноним 26/11/21 Птн 21:15:33 #886 №778710 
>>778709
Например?
Аноним 26/11/21 Птн 21:20:42 #887 №778712 
>>778710
Что "например"? Юнити так работает. Каждый апдейт берёт каждую корутину в основном потоке и проверяет, прошло ли нужное количество времени. Если прошло - запускает код. Если нет, то нет. Это не многопоточность, это однопоточность.
Аноним 26/11/21 Птн 21:53:17 #888 №778720 
Очередной тупой вопрос врывается в тред. Вот есть у меня например объекты. Какие-то из них деревянные, какие-то металлические. Я мог бы создать class Things : ScriptableObject, туда запузырить поле material, создать два ассета Metal, Wood c соответствующими значениями material. И в монобехавиор скриптах в этих геимобжектах собственно создать объект класса Things thing= new Things(); выбрать туда нужный ассет. Потом ссылаться в других скриптах на это и так далее использовать как хочу. Писать GetComponent<имя скрипта>().thing.

А почему просто нельзя создать Монобехавиор скрипт, привязать к объекту(это ж в любом случае придется делать), назвать его для металлического предмета Metal, а для деревяшки Wood. В скриптах просто писать GetComponent<Wood>().

Что-то мне подсказывает, я нихуя не понимаю как люди используют эти скриптабл обжекты, определяя игровык объекты по параметрам. По сути мне нужно, чтобы скрипт определил, что мы столкнулись с Metal или наоборот Wood, и тогда начинаем исполнять код.
Аноним 26/11/21 Птн 22:02:32 #889 №778724 
>>778720
Скриптейбл это типо базы данных, скрипт, который сохраняет информацию. В твоём случае он не нужен.
Аноним 26/11/21 Птн 22:06:23 #890 №778727 
>>778724
То есть, когда я пытаюсь определить, какой например объект вошел в мой коллижнентер, мне нужно просто добавлять к объектам отдельные компаненты. И каждый компонент - пустой монобехавиор. Допустим скрипты Тяжелый : монобехавиор и Проводник : монобехавиор будут пустыми. И нужны только как компоненты с названиями. Из других скриптов буду проверять если геткомпонент<Тяжелый>, то пошла какая-то хуйня. Так? На каждое свойство отдельный скриптик создавать. Или есть альтернатива?
Аноним 26/11/21 Птн 22:13:14 #891 №778730 
>>778727
Если бы у тебя был ецс, то я бы сказал "да, охуенно, делай так". Но раз у тебя монобех, боже упаси тебя делать так. Посмотри в сторону енумов, так можно просто парой интов задать все свойства. Type.heavy = 0 и так далее.
>public enum Type { heavy, light, shitty };
Аноним 26/11/21 Птн 22:24:08 #892 №778736 
>>778720
Не очень понял, вобще о чем ты говоришь, но попробую высрать свои 5 копеек.
SO - такая абстрактная хуйня, которой ты можешь классифицировать предметы между собой типо: оружие/щиты/еда и тд те у тебя будет 3 типа SO с разными хар-ми и из этих типов ты можешь создать еще отдельные SO с различными хар-ками типо сколько защиты у щита.
К сути. Как я понял ты хочешь описать столкновение или что то в этом духе металлических и деревянных объектов что по сути 3 скрипта минимум. Используя SO ты можешь написать один скрипт, просто в начале скрипта обраещаешься к свойствам SO объектов, берешь их и работаешь. Ну как то так скорее всего я ясности не внес
Аноним 26/11/21 Птн 22:25:41 #893 №778737 
>>778730
два чаю анону с енамом
Аноним 26/11/21 Птн 22:31:20 #894 №778740 
>>778730
Все круто, но мне ж все равно нужен отдельный монобех, привязанный к объекту. Зачем проверять if (other.gameObject.GetComponent<имя_скрипта>.type.shitty), если я сразу могу написать other.gameObject.GetComponent<shitty>. А к самому шитти объекту приклеить пустой sitty : MonoBehaviour.

>>778736
Не получится написать один скрипт. Потому что Металлические предметы взаимодействуют с одними объектами, магнитами например, а Дерервяшки с источниками огня. То есть уже как минимум будет два отдельных скрипта на притягивание магнитом Металлического и поджигания источником огня Деревянного.
Аноним 26/11/21 Птн 22:45:34 #895 №778741 
>>778740
> Потому что Металлические предметы взаимодействуют с одними объектами, магнитами например, а Дерервяшки с источниками огня.
Тем более.
Берешь пишешь скрипт на взаимодействие типов айтемов магнит с металом и тд друг сдругом, и присваиваешь SO в этом скрипте. Далее в скрипте берешь св-ва SO тип/сила че угодно, и по типу айтема проворачиваешь свои действия
Аноним 26/11/21 Птн 23:41:40 #896 №778753 
Коммент у этому коду:
>>778641
Если ты хочешь, чтобы при запуске корутина выполнялась заново, то надо в параметр надо передавать строку, а не функцию, вот так
StartCoroutine("Reloading")
StopCoroutine("Reloading")

Не могу блять этим не поделиться, а то я на этом такую собаку съел, анону не пожелаешь.

Например, есть:
IEnumerator Kek()
{
yeld return new WaitForSecinds(5):
print(перезаряжаю)
yeld return new WaitForSecinds(3):
print(сру)
yeld return new WaitForSecinds(1):
print(умираю)
}

Вот как это будет, если передать функцию, а не строку:
StartCoroutine (Reloading())
// Через 5 сек выдаст "перезаряжаю"
StopCoroutine (Reloading ())
StartCoroutine (Reloading ())
// Выдаст сру, хотя хотелось бы, чтобы весь код начал выполняться сначала, то есть, чтоб выпадало "перезаряжаю".

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

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

}
Аноним 27/11/21 Суб 00:42:01 #897 №778768 
>>778740
Ты мыслишь узко. Мысли шире. Тебе не нужен скрипт, привязанный к геймобъекту, если у тебя будет геймобъект, привязанный к скрипту.
>if (other.gameObject.GetComponent<имя_скрипта>.type.shitty), если я сразу могу написать other.gameObject.GetComponent<shitty>
Потому что ты можешь сделать сразу
> switch (type)
> {
> case type.wood:
> burn();
> case type.metal:
> NotBurn()
> break;
>}
Аноним 27/11/21 Суб 02:40:39 #898 №778772 
>>778753
У меня та же история с Объект.SetActive(true) для объектов и Компонент.enabled = true для компонента.
Аноним 27/11/21 Суб 02:43:11 #899 №778773 
>>778768
А как мне вызывать сам burn()? Есть способ следить за коллаидерами вне монобехавиор, которые к объектам прикручены?
Аноним 27/11/21 Суб 02:59:58 #900 №778774 
>>778772
Не понял, что за история? В чем тут трабла? Только не говори, что если установить setActive(false) то все его компоненты все равно рабочие, в смысле, выполняются
Аноним 27/11/21 Суб 03:07:15 #901 №778775 
>>778774
История в том, что в одном случае это метод, а в другом случае свойство компанента. Я постоянно путаю, че в каком случае писать. Почему нельзя было сделать активацию и деактивацию компанентов тоже методом, как с геимобжектами? Ну или свойство enabled геимобжектам запилить. В инспекторе они и те и те галочками включаются.
Аноним 27/11/21 Суб 10:21:18 #902 №778785 
image.png
Сап двач, подскажите зелёному. Каким образом вызывается метод Start или прочие мною написанные методы, если они нон-статик и экземпляры класса я не создаю? Правильно ли я понимаю, что Юнити сама создаёт экземпляры класса и сама вызывает эти методы через объекты? И если так, как я могу пощупать эти экземпляры?
Или я дурашка и то, что я навешиваю скрипт на объект - это как бы уже есть экземпляр этого класса? Тогда нихуя не понятно как работает статика, если мне надо для её использования навесить на объект, что уже не будет статикой.
Аноним 27/11/21 Суб 10:41:11 #903 №778788 
>>778785
Я тоже зеленый и делаю так. В скрипте класса monobehaviour, что в объекте привязан создаю объект класса, в котором содержится нужный мне метод. И через на объект класса вызываю. Но если надо по-другому, аноны отпишут.
Аноним 27/11/21 Суб 11:35:30 #904 №778796 
>>778788
Ты вопроса немного не понял. Например создаёт дефолт скрипт. В нём есть стандартный не статический класс и не статический метод Start. Пишем в Start Debug.Log("Test"). Навешиваем на объект. Какого хуя мы увидим текст, если у нас не статический метод, который нигде не вызывается нами?
Аноним 27/11/21 Суб 11:35:41 #905 №778797 
>>778773
>А как мне вызывать сам burn()
Так я код написал, алло.
>Есть способ следить за коллаидерами
Магические методы типа OnCollisionEnter можно ловить только через монобех.
>>778785
>Юнити сама создаёт экземпляры класса
Какие, в пизду, экземпляры? Ты класс создал, который скрипт-монобех. Юнити, по сути, рефлексией ебошит, находит все функции по имени и составляет списки.
>как работает статика, если мне надо для её использования навесить на объект
Так не нужно же. Или ты про статические переменные? Это другое. А статик класс просто создал и никуда не навешиваешь.
Аноним 27/11/21 Суб 11:54:25 #906 №778803 
>>778797
Если все равно монобехи нужны, не проще ли прямо в них писать burn(), notburn() и другие методы. Я просто тупой и никак не могу понять преимущество перечислений.

Вот у меня есть условный wood : monobehaviour
В нем метод горения описан, а вызывается на коллижн ентер, если other имеет компонент firesetter допустим. Так вот этот firesetter просто пустой монобех, который как свойство прикреплен к геим обжекту источнику огня. Что нужно сделать, чтобы заменить это на перечисления? Каким образом я могу навесить на источники огня (разные объекты) свойство firesetter, хранящееся в качестве элемента перечисления? Если определять источник огня будет wood : monobehaviour через геткомпонент монобеха источника огня во время коллижена. В каком месте источника огня будет храниться значение перечисления type.firesetter? Раз уж заменить обычный firesetter : monobehaviour на элемент перечисления?
Аноним 27/11/21 Суб 12:17:38 #907 №778806 
image.png
>>766778 (OP)
Анон, подскажи где украсть Спайн. На торрентах не валяется.
Аноним 27/11/21 Суб 16:17:10 #908 №778844 
>>778803
Дохуя компонентов это неудобно, это медленно, это хуёво кодировать, сам геткомпонент работает относительно медленно, ты хуй когда сможешь предсказать в каком порядке вызовется апдейт на одном из тысячи твоих компонентов. Короче, залупа.
Аноним 27/11/21 Суб 16:58:50 #909 №778853 
>>778844
Да я согласен, что залупа, а как делоть то? Вот нужно отследить, что два объекта с определенными свойствами пересеклись коллаидерами. Как это детектить, кроме как в их внутренних монобехэвиорах?
Аноним 27/11/21 Суб 18:33:51 #910 №778857 
1.png
2.png
>>778853
Один компонент вместо тысячи. Сам бы я делал через не-монобех с монобех прокси, но это путь ебаната, ты не поймёшь.
Аноним 27/11/21 Суб 18:42:21 #911 №778859 
>>778857
Я правильно понял, что абсолютно у всех объектов (в том числе управляемого игроком) должен быть ОДИН одинаковый монобех, который выполняет стандартные старт, апдеит, колижн/триггер-ентер/екзит и прочий стаф? А расписывать все поведение нужно в куче других скриптов и интерфейсов, которые будут подменять значение каждого конкретного метода(старт апдеит и т д) в зависимости от владельца монобеха и других владельцев этого монобеха при взаимодействии объект-объект или объект-игрок.
Аноним 27/11/21 Суб 19:10:58 #912 №778862 
>>778859
Ты какую-то хуйню расписал, которую я хуй понял. Пиши код, короче, чтоб был заебись. Нормально всё сделаешь - нормально будет.
Аноним 27/11/21 Суб 19:18:06 #913 №778863 
>>778862
Я и пишу, а тут говорят, так низя.
Аноним 27/11/21 Суб 19:52:35 #914 №778869 
>>778863
Прыгни с крыши
Аноним 27/11/21 Суб 19:53:19 #915 №778870 
>>778869
Хуй вам.
Аноним 27/11/21 Суб 20:37:33 #916 №778875 
>>778870
Ты же слушаешься что тебе говорят
Аноним 27/11/21 Суб 20:38:27 #917 №778876 
>>778875
В основном шишки своей головой бью. Мозгов не хватает во все сразу вникать.
Аноним 27/11/21 Суб 21:00:12 #918 №778880 
Если меня забанят в годоти треде, тут я тоже не смогу постить?
Аноним 27/11/21 Суб 21:08:19 #919 №778882 
>>778880
По всему /gd. Если приползёт мочухан с глобальной мочеркой, то и всему 2ch. Рекомендую общаться на тему годота в движкосрачетреде.
Аноним 28/11/21 Вск 02:03:36 #920 №778900 
>>778712
>Это не многопоточность, это однопоточность.
А как многопоточность сделать? И нужно ли вообще?
мимопроходил
Аноним 28/11/21 Вск 02:05:48 #921 №778901 
>>778806
DragonBones юзай
Аноним 28/11/21 Вск 12:06:17 #922 №778925 
>>778900
Да, нужно. Однопоточные игры из 90х до сих пор тормозят на разных 90000000999990000kkk. Гугли Job system, для их использования не требуется ецс, ты можешь работать с обычными gameobject. При этом многое джобсы выполняются в мейн треде, лол. И если будешь юзать джобсы, забудь про группировку трансформов по родителям, вываливай всё в разных родителей, так работает быстрее.
Аноним 28/11/21 Вск 12:38:25 #923 №778930 
>>778900
async await
Аноним 28/11/21 Вск 13:47:39 #924 №778936 
А если кратко, что такое многопоточность? Можно распределить разные задачи на несколько потоков? Типа один поток ищет пути, другой двигает объекты? У меня например на процессоре 6 ядер 6 поток. Значит, мне можно использовать 6 потоков?
Аноним 28/11/21 Вск 14:02:49 #925 №778937 
>>778936
>Типа один поток ищет пути, другой двигает объекты?
да, но не так тупо, 1 поток загружает тяжёлый объект (след.уровень или кат.сцену), а второй позволяет продолжать игру. Деление взаимосвязанных вещей по потокам (путь зависит от положения объектов) приведёт к ошибкам, так как значения переменных не будут совпадать
Аноним 28/11/21 Вск 15:25:14 #926 №778964 
>>778937
А как интересно в каком-нибудь факторио реализовано. Там одна гигантская сцена, в которой все работает одновременно.
Аноним 28/11/21 Вск 17:12:22 #927 №778986 
>>778964
А там нету епты, все в одном потоке
Аноним 28/11/21 Вск 17:19:55 #928 №778987 
>>778986
Ну и норм хуле, 10к спм и в монопотоке прекрасно себя чувствуют.
Аноним 28/11/21 Вск 18:48:46 #929 №779001 
>>778964
Факторио грузит процессор на 20% и показывает 30 кадров в лучшем случае. Отличный пример того, что однопоточные игры должны умереть.
Аноним 28/11/21 Вск 19:21:01 #930 №779005 
>>779001
нихуя ты пизданул
Аноним 28/11/21 Вск 19:24:13 #931 №779006 
>>779001

Знаю только одну игру, которая нормально может в потоки - это Arma 3. Но зачем это инди даунам с их инди говном?
Аноним 28/11/21 Вск 22:05:14 #932 №779031 
>>779006
Так инди говно тормозит же. Конечно, инди даунам похуй, а вот игроки страдают. Хотя в арме тоже лоу фпс, не знал, что она умеет в мультитрединг.
Аноним 28/11/21 Вск 23:08:27 #933 №779033 
Поздравьте долбоеба. За ебучий месяц наконец-то допер, как оставить на все игровые объекты один монобех со ссылкой на скриптабл объект ассет. В скриптабл объект расписаны, для каких объектов, атрибутов, состояний какие методы исполнять. Спасибо анону >>778857. А сами методы хранятся в отдельных классах каждого конкретного атрибута, объекта или состояния. И этот монобех теперь нужно запузырить на любой предмет сцены, чтобы он по своему скриптабл объект ассету сориентировался, что ему делать или как с ним взаимодействовать остальным.
Аноним 29/11/21 Пнд 10:29:29 #934 №779046 
Кто нибудь в курсах как убрать начальную заставку юнити? Чисто эстетически раздражает. Игру не собираюсь выкладывать в маркет или в стим.
Аноним 29/11/21 Пнд 10:40:04 #935 №779048 
>>779046
Лицензию покупаешь и можно убирать.
Аноним 29/11/21 Пнд 20:08:44 #936 №779112 
>>779048
Классная шутка. Но меня бесплатные варианты интересовали.
Аноним 29/11/21 Пнд 21:07:59 #937 №779125 
>>778604
Тебе самому бы стоило начать заного изучать юнити.

Корутины у него в юнити многопточные, охуеть просто.

>>778605
Как и корутины он лишь асинхронен. Просто уточнение.
Аноним 29/11/21 Пнд 21:10:02 #938 №779126 
>>779112
Это единственный способ. Можешь поставить рядом свое лого или взять и скомпилировать из исходников юнити 5.x, вырезав вызов заставки.
Аноним 29/11/21 Пнд 21:12:13 #939 №779127 
Котоны подскажите, в новой системы Input-a есть какие-то плюсы, если билдишь только для одной платформы и тебе не нужны разные пресеты управления?
Аноним 29/11/21 Пнд 21:27:17 #940 №779128 
аноны, есть ли реальные цифры по уровню ЗП разработчика Unity?
Хочу сменить профессию и вроде даётся всё легко-понятно и душа лежит, но я продаю табуретки и пержу в них за 120-180 к/мес, можно ли надеяться на дроп в ближайшем будущем?
Аноним 29/11/21 Пнд 22:07:51 #941 №779131 
>>779128
Лучше продолжай табуретки продавать и пили какие-нибудь свои проектики.
Аноним 29/11/21 Пнд 22:21:25 #942 №779132 
>>779131
да в том то и дело, что заебало. В принципе, есть бюджет чтобы полгода-год сидеть дома и заниматься только разработкой, поэтому хочу уволиться с расчетом трудоустройства хотя бы джуном до наступления голодной смерти, мне бы понять на что надеяться в ДС2, потому что разброс от 40 до 200 т.р по hh.ru
Устраивался ли кто-то недавно, или шерстил рынок?
Аноним 29/11/21 Пнд 23:01:21 #943 №779135 
>>779126
>Можешь поставить рядом свое лого
А как? Это законно без покупки?
мимопроходил
Аноним 29/11/21 Пнд 23:25:00 #944 №779137 
>>779135
Пять секунд в гугле: https://zen.yandex.ru/media/id/5e5693545a0acf593cd9b7bc/nastroiki-proekta-v-unity-nastroiki-ekrana-zastavki-5e80e6f096544a69b3c4f06d

На бесплатной версии нельзя снизить прозрачности меньше 0.5 и убрать лого, больше никаких ограничений. Логотипов можешь ебашить сколько хочешь, после юнитековского.
Аноним 30/11/21 Втр 02:10:08 #945 №779148 
>>766778 (OP)
Попрозили по ТЗ сделать 2д-проект типа флэппи бёрд. Считается ли 2.5D-игра за 2D? И стоит ли такое делать? Или запилить хуйню с примитивами - и меня возьмут?
Аноним 30/11/21 Втр 05:58:39 #946 №779155 
>>779132
Никуда ты на такую зарплату не устроишься, сиди на жопе ровно
Аноним 30/11/21 Втр 10:05:25 #947 №779169 
>>779128
В начале скорее всего будешь джуном за - от 0руб до 20к. Далее как повезёт, но первое время доход будет около 0, пол года-год. При условии что будешь ебашить чуть ли не 24/7.
Аноним 30/11/21 Втр 17:23:04 #948 №779243 
>>779169
>от 0руб до 20к
может спросил не так, но я не вкатываться собираюсь, вполне шарю по паттернам и архитектуре, хочу через месяц ЕЦС начать осваивать. Мне просто интересен уровень ЗП, потому что пиздец скачет. Бывает ли реально у мидла 150к или там максимум 60?
Аноним 30/11/21 Втр 18:16:33 #949 №779251 
>>779243
Так сразу бы написал. Конечно если шаришь можешь изи делать под сотку, до 200 уже сложнее т.к вакантные места заняты и с улицы без портфеля не берут, ну и выше 300 уже сам понимаешь сеньёры помидоры проекта, ну там больше командование чем писяконье кода.
Аноним 30/11/21 Втр 19:48:19 #950 №779268 
Чисто в теории, если у меня спиздят исходники и опубликуют игру от своего имени, но перед этим я в жопе какого-нибудь скрипта запрячу создание константы с своим именем и т.д и т.п и потом игру каким-нибудь анализатором прочекать на наличие этой константы по типу иды про, смогут ли мне помочь и из стора выпилить пидора?
Аноним 30/11/21 Втр 20:04:47 #951 №779272 
>>779268
Если предоставишь пруф авторства то конечно
Аноним 30/11/21 Втр 20:14:34 #952 №779273 
a57f77bf-959a-4181-87f2-c5368ebd1dc5.webm
Сеньоры, помогите!

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

Как сделать так, чтобы камера при ресайзе по высоте вела себя так же, как и при ресайзе по ширине? Ищу такое, чтобы можно было настраивать размер камеры как по ширине, так и по высоте. В юнити это настраивается одной переменной orthographicSize, а я хочу, шобы не одна переменная, а две...

Помогите...
Аноним 30/11/21 Втр 20:38:22 #953 №779276 
>>779268
Нет конечно. Декомпиляция игры же запрещена, а доказательства, полученные незаконным путём - суд не учитывает.
Аноним 30/11/21 Втр 20:50:55 #954 №779281 
Вот есть в юнити функциональность serializefield на публичных полях или со специальной пометкой в монобехе. Очень удобно дебагать. Но я пишу все взаимодействие в отдельных классах, а потому в монобехи самих объектов никакой инфы не вывожу. Мусорить временной дебажной инфой не хочется. Очевидный выход следить за происходящим - писать вывод в консоль прямо в методе класса. Есть ли более удобный способ выводить нужные мне данные например с содержанием списков, массивов, логических переменных и прочих значений, чем в дебуг лог в консоль писать. Пока в голову пришел только способ отдельно в монобехе создавать ссылки на поля класса и потом удалять и по окончании отладки. Может я че упускаю и поудобнее инструменты есть.
Аноним 30/11/21 Втр 21:04:12 #955 №779284 
321.mp4
Пацаны, как в юнити делать то что на шебмке? Это из констракта объект лист. Я нашел только scroll view и для каждой ячейки объект текст создавать, другого пути нет? С текстами если тыщ 10 создать уже лагает. Еще видел скрипт ListView, но это кажется только для редактора
Аноним 30/11/21 Втр 21:04:30 #956 №779285 
>>779273
держи хороший канал, лист про адаптивный UI как раз для тебя

https://www.youtube.com/watch?v=WWkJ1-hlGZc
Аноним 30/11/21 Втр 21:06:46 #957 №779286 
>>779281
более удобный чем дебаг - аттачить студию к юнити и смотреть значения, не?
Аноним 30/11/21 Втр 21:23:35 #958 №779292 
image.png
image.png
>>779285
Анон, подскажи, как можно в if проверить, что у меня UI-кнопка в сцене нажимается непосредственно перед вызовом метода? Хочу сделать так, чтобы игру можно было начинать как с пробела, так и с кнопки этой, а она ничего не делает, кроме того что выводит лог в консоль.
Аноним 30/11/21 Втр 21:24:14 #959 №779293 
>>779285
Мне кажется мне как раз не нужна адаптивность, я хочу чтобы любой объект в окне оставался одного размера, в случае с юнити при смене размера камера приближает/отдаляет, я не хочу этого...
Аноним 30/11/21 Втр 21:45:12 #960 №779298 
>>779286
Так вывод надо самому писать или нет?
Аноним 30/11/21 Втр 22:02:11 #961 №779303 
>>779293
а, я сразу не прочитал что ты написал, подумал, ты страдаешь от того, что объекты в камеру не влезают, хз как полностью решить задачу, ты можешь сделать камеру физической и в настройках Gate Fit указать Fill, отдаление будет, но не такое
>>779292
эм, вынести прыжок в отдельный метод и указать кнопке его выполнение
Аноним 30/11/21 Втр 22:05:14 #962 №779304 
>>779298
в смысле, точка останова тебе говорит о чем-то? именно так значения по полям смотрят, дебагам обычно только пингуют работоспособность
Аноним 30/11/21 Втр 22:09:13 #963 №779305 
>>779303
Ну так ты на код посмотри. Всё он вынес. Кнопке тоже всё указано, она в инспекторе игрока выбрана.
Аноним 30/11/21 Втр 22:20:36 #964 №779308 
>>779305
а ты сам смотрел? он при нажатии прыжка вызывает метод на кнопке и отдельно задаёт какие-то параметры, тогда как это должны быть ВСЁ 1 метод и в Update должно стоять if (..."Jump") {JumpYoba();}, точно так же как и на кнопке отдельно указан JumpYoba, а тут какая-то хуй пойми солянка
Аноним 30/11/21 Втр 23:06:00 #965 №779326 
>>779304
Это ебля какая-то, постоянно паузу тыкать, лучше уж в монобех ссылками насрать и в окне юнити уже следить.
Аноним 30/11/21 Втр 23:37:41 #966 №779334 
image.png
Засунул объект в канвас, потыкал настройки и каким-то магическим образом теперь ничего не приближается и не отдаляется, ура!

Теперь вопрос - это нормально, что, допустим, оюъект игрока будет дочерним канваса?
Аноним 01/12/21 Срд 01:41:20 #967 №779354 
>>779334
Не городи велосипеды, не можешь сам нормально камерой управлять как хочешь - делай через ассеты, как и все юнити разработчиикc (например Cinemachine).

Еще в этом видео можешь посмотреть https://youtu.be/-Ii3MrJFBkQ и это https://youtu.be/aLpixrPvlB8
Аноним 01/12/21 Срд 01:43:02 #968 №779355 
>>779354
Первое с 17:40, чет ошибся со временем.
Аноним 01/12/21 Срд 04:50:12 #969 №779373 
>>779273
Нахуя?
Аноним 01/12/21 Срд 05:22:00 #970 №779376 
>>779284
Да, для каждой строчки отдельный объект текст, просто юнити не для этого.
Аноним 01/12/21 Срд 16:06:12 #971 №779433 
Почему неиспользуемые никак скрипты попадают в билд игры? Мне вот например нахуй не нужны скрипты меняющие редактор в конечной игре
Аноним 01/12/21 Срд 16:42:19 #972 №779436 
>>779433
В настройках проекта ставь вырезку и желательно оптимизатор с++, и сверху бустер по полной. В конечном билде не будет ничего что не используется в игре.
Аноним 01/12/21 Срд 17:12:00 #973 №779439 
Отдохну недельку от юнити. А то че то удовольствия уже нет
Аноним 01/12/21 Срд 17:41:16 #974 №779445 
Как научиться писать скрипты через ивенты и построить на этом архитектуру? Заебало писать говнокод с кучей связей и прочей ебалы, а по-другому не умею.
Аноним 01/12/21 Срд 17:58:39 #975 №779448 
>>779445
Самый простой вариант это скачать чужую игру и посмотреть как там реалтзовано.
Аноним 01/12/21 Срд 18:25:08 #976 №779452 
>>779448
Ага, пиздец простой вариант в чужом говнокоде копаться

>>779445
брать и писать, блядь, что за вопрос? юзай туториалы на ютубе, создай 20 ГО, свяжи их через эвенты, пиши на всю хуйню через делегаты, через экшоны, пару дней и ты на коне
Аноним 01/12/21 Срд 18:54:30 #977 №779459 
20211201-185134.webm
У меня другая проблема, не могу прекратить проигрывать. Пилишь такой, пилишь, нажал плеймод истерика на две минуты.
Аноним 01/12/21 Срд 20:33:23 #978 №779470 
>>779459
Найс! Уже лучше чем у 95% анонов с гд.
Аноним 01/12/21 Срд 20:34:35 #979 №779472 
>>779452
>Ага, пиздец простой вариант в чужом говнокоде копаться
Там был вопрос о структуре и её выстраивание, а не о говнокоде. О картине в целом так сказать, и для этого как нельзя лучше подходит просмотр уже готовой игры, а именно её проекта. Если не понимаешь о чём речь, не встревай.
Аноним 01/12/21 Срд 20:40:51 #980 №779473 
>>779448
подскажешь где взять?
Аноним 01/12/21 Срд 21:26:28 #981 №779481 
>>779439
Насколько обычно тебя хватает?
sage[mailto:sage] Аноним 02/12/21 Чтв 04:36:45 #982 №779519 
image.png
>>779459
ля сука каракатица ебаная, но выглядит забавно
Аноним 02/12/21 Чтв 13:19:39 #983 №779552 
image.png
Аноним 02/12/21 Чтв 17:08:11 #984 №779593 
Как адекватно менять положение модельки персонажа через инверсивную кинематику тягая его за голову?

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

А вот с головой и туловищем проблемы, как быть с приседанием?Блендить переход в анимацию сидения на кортах, когда HMD опустится ниже установленной высоты или есть более элегантные и реалистичные решения?
Аноним 02/12/21 Чтв 21:07:03 #985 №779622 
Анон, я знаю ты очень умный. В игровых уровнях собираются однотипные коллектаблсы и ведется их общий счет. Нужно, чтобы при загрузке сцены проверялось, если коллектблс уже был собран, отключить его. Добавлять каждому коллектаблсу индекс в монобехе вручную и потом проверять массив этих индексов конечно работать будет, но как-то неудобно. Есть изящный способ такое реализовать иначе?
Аноним 02/12/21 Чтв 21:29:54 #986 №779625 
20211202-212327.webm
>>779470
Так-то это всё бесплатные ассеты из интернетов. И даже анимации. Уже 15 строк в файле кредитсов, лол. Деваха только, походу, пизженная из какой-то игры и выложена на сток, но я потом переделаю. Может быть.

>>779519
Потому что анимация ног от какого-то спецназера была, а слой анимации рук отключён. Потому я и проигрывал. Сейчас вот охуеваю с ротейшонов, хуй поймёшь, как пистолет ориентировать, чтобы он был, как надо. Как не надо получается, а как надо - не получается.
Аноним 03/12/21 Птн 01:08:52 #987 №779641 
Сап юнитач, кто-нибудь делал сетевые игры? Какими решениями пользовались? Самописные серваки или брали готовые решения?
Аноним 03/12/21 Птн 09:10:00 #988 №779653 
>>779641
Пытался на паре популярных фреймворках, слишком муторно и сложно когда становится много зависимостей и механик.
Как в одиночной игре, но помноженной на х* сложность. Но я делал рпг+один сервер.
Если делать кооп например через облако по типу локальных комнат, и простую по механикам игру, думаю не сложно.
Аноним 03/12/21 Птн 09:18:24 #989 №779654 
>>779622
лол ну собери их в один массив в начале, присвой им индекс например исходя из их позиции в мире и веди список собранных.

но лично я бы просто сделал в юнити редактор который бы на указанных в этом редакторе точках сам размещал хуйню и вёл учёт этих индексов чтобы ничто никогда не перепуталось.
Аноним 03/12/21 Птн 09:31:52 #990 №779657 
>>779641
Если пользоваться стимовскими решениями, ебли становится намного меньше
Аноним 03/12/21 Птн 13:04:00 #991 №779666 
>>779657
Когда делал стимовские ачивки и карточки, то чекал все доки, и разницы между другими фраемворками не заметил, везде либо предоставляется хостинг с комнатами, или же сам ебёшься серверами.
Аноним 03/12/21 Птн 13:28:12 #992 №779667 
>>778605
>Ты охуел?
Да, и?
>>779125
Корутины у него в юнити многопточные, охуеть просто.
Совсем далбаэб, да? Это ты почему-то в своих фантазиях решил увязать корутины с многопоточностью? Перечитай ещё раз мой пост, дядь
Аноним 03/12/21 Птн 16:19:56 #993 №779692 
>>779667
>Ты что-то слышал про корутины и многопоточность?
Пиши внятней тогда, хлебушек. Я лично тут вижу очевидную связь в том как ты построил предложение и браваду ньюфага который советует другому ньюфагу выстрелить себе в ногу. Многопоточность это настолько глубокая жопа, что лезть туда без большой необходимости не надо и не стоит даже думать и упоминать о ней.
Аноним 03/12/21 Птн 16:27:37 #994 №779693 
>>779436
Где это?
Аноним 03/12/21 Птн 16:37:59 #995 №779694 
Так, зарегался на юнити, уже скачиваю.
Хочу запилить что-то вроде гостраннера, только быстрее чем та ебаная черепаха. На графоуни не дрочу, но насколько хуже графон юнити хуже уе4 в котором и был сделан раннер, и насколько сильно с ним придется ебаться в юнити?
Аноним 03/12/21 Птн 16:41:05 #996 №779695 
>>779694
Покеж, че на уе делал.
Аноним 03/12/21 Птн 16:48:30 #997 №779697 
Подскажите сайты где сливают ассеты из стора.
Аноним 03/12/21 Птн 16:48:32 #998 №779698 
>>779695
На уе я нихуя не делал и даже лезть в это очко не хочу. Я говорил про https://store.steampowered.com/app/1139900/Ghostrunner/
Аноним 03/12/21 Птн 16:59:33 #999 №779699 
>>779694
>но насколько хуже графон юнити хуже уе4
Ни на сколько, на юнити много чего графонистого сделано
Аноним 03/12/21 Птн 17:03:28 #1000 №779701 
>>779694
Графон как в гостраннере юнити без проблем должен осилить.
Аноним 03/12/21 Птн 17:09:41 #1001 №779703 
>>779694
>насколько хуже графон юнити хуже уе4
Графон уе4 намного хуже графона юнити с 2018 года.
https://www.youtube.com/watch?v=DDsRfbfnC_A
Аноним 03/12/21 Птн 17:12:08 #1002 №779704 
>>779692
>Пиши внятней тогда, хлебушек.
Сорян, я не обязан за твою глупость отвечать.Если бы я написал про "синие и чёрные джинсы", то ты бы за полосатыми полез в интернет? Если бы я написал "асинхронность и многопоточность", то ты бы вообще умом тронулся?
>Многопоточность это настолько глубокая жопа
Ясно, для тебя многопоточность это уже сложно. Понял. Удачи тебе, хуле
Аноним 03/12/21 Птн 17:47:02 #1003 №779705 
>>779704
>для тебя многопоточность это уже сложно
Ну да, как только вылазишь из тестовых проектов и пытаешься построить нормальную архитектуру для полноценной игры, все превращается в ад. При чем не всегда и не для всех случаев дающий хоть какую-то пользу, а не просто кучу геморроя. В 95% инди проектов это оверхед.

С тобой тоже все ясно, восторженный вкатывальщик. Попробуй релизнуть хоть одну игру для начала.
Аноним 03/12/21 Птн 18:31:44 #1004 №779710 
>>779697
В гугле забанили? Ищешь нужный ассет и ищешь его со словом "скачать".

Еще можешь по гитхабу искать, многие не заморачиваются и не прописывают плагины в .гитигнор, оно попадает на гит - его удаляют, но оно остается в истории коммитов.
Аноним 03/12/21 Птн 18:48:12 #1005 №779713 
>>779693
Сори показать не могу, инфа важная
Аноним 03/12/21 Птн 19:06:36 #1006 №779715 
>>779713
Чего? Ты хоть обьясни, что такое вырезка или как это загуглить? По твоему посту только настройки для графония нашёл, а мне бы скрипты убирать
Аноним 03/12/21 Птн 19:13:11 #1007 №779719 
image.png
>>779715
>не знать что такое вырезка
Аноним 03/12/21 Птн 20:18:59 #1008 №779729 
VTncY409myo.jpg
Ls5T20fjLRY.jpg
Как реализовать поворт персонажа через нажатие на экран, чтобы поворачивался в сторону тапа?
При использовании кода с первого пика после нажатия перса разворачивает левее, потом почти не реагирует на нажатия.
Скрипт привязан к выделенному чару на втором пике.
Обязательно нужно юзать raycast?
Аноним 03/12/21 Птн 21:15:26 #1009 №779735 
>>779697
>>779710
А неужели с вами ничего сделать не могут по авторскому праву?
Аноним 03/12/21 Птн 21:23:24 #1010 №779736 
>>779735
Если ты миллионы начал зарабатывать, твою игру могут декомпилировать и найти доказательство того что ты спиздил часть кодой базы и у тебя нет на нее нужной лицензии. В любом остальном случае всем похуй.

Но мы же знаем, что шанс этого крайне мал.
Аноним 04/12/21 Суб 04:34:48 #1011 №779777 
Sandy.webm
Тыкал в разные методы перемещения хуйни по карте векторов. Какую я песочную хуйню случайно сделал! Понравилось.
Аноним 04/12/21 Суб 05:20:11 #1012 №779780 
К слову о перемещении. Портанул свою поделку на андроид и обнаружил какой-то недостаток плавности. Замерив фпс, понял, что дело не в нем. Сейчас игрок передвигается по полю через изменение параметра ригидбоди.велосити. Есть ли какие-то еще способы двигать игрока плавно, не мешая физике столкновений?
Аноним 04/12/21 Суб 05:46:59 #1013 №779781 
>>779780
а чё ты велосити то тыкаешь? через АддФорс перемещай
Аноним 04/12/21 Суб 10:14:56 #1014 №779788 
>>779781
Гм а есть принципиальная разница между аддфорсом2д и обычным? В 2д нет режимов ускорения и скорости. Но я ж могу просто 0 по зету вписать и обычный использовать.
Аноним 04/12/21 Суб 13:53:17 #1015 №779813 
>>779777
Выглядит шикарно. Если бы скринсейверы в 2kXXI году еще использовались, то посоветовал бы тебе его сделать
Аноним 04/12/21 Суб 23:31:26 #1016 №779839 
>>779780
Уже перемещаю через addforce, на компе все плавно. Ставлю лок 60, плавно. На планшете плавности нет, хотя фпс мониторы показывают 60 кадров. От чего так может быть.
Аноним 05/12/21 Вск 00:56:40 #1017 №779849 
image.png
>>766778 (OP)
Аноны, пытаюсь затекстурировать Terrain

Мужик на видео добавляет слой с текстурой и он сразу может рисовать кистью с этой текстурой
таймкод https://youtu.be/MWQv2Bagwgk?t=676

Но когда я выбрал слой и выбрал кисть - я нихуя не могу рисовать. Курсор просто не меняется на кисть. Почему? Куда нажать?
Аноним 05/12/21 Вск 00:58:36 #1018 №779850 
image.png
Аноним 05/12/21 Вск 01:08:01 #1019 №779851 
>>779839
Не может такого быть, если физических объектов не слишком много. Скорее накрутил с эффектами и поспроцессингом так, что не вывозит. Попробуй в чистом проекте реализовать и тоже количество физичных объектов и затести перемещение.
Аноним 05/12/21 Вск 01:35:39 #1020 №779852 
>>779851
Пост-процессинг вообще не делал, там голый прототип игромеха. Есть какие-то дефолтные нагружные настройки? В Quality поставил медиум, Физических объектов тоже неособо, 5-10 коллаидеров и ригидбоди на сцене. Velocity Iterations с 8 до 4 снизил. Стало лучше, но какие-то микрофризы проскакивают по ощущению. Где еще подкрутить?
Аноним 05/12/21 Вск 01:41:22 #1021 №779853 
image.png
image.png
А как увеличить дальность прорисовки в редакторе?
А то вот были деревья, я отъехал и их уже нет
Аноним 05/12/21 Вск 02:42:29 #1022 №779856 
image.png
Охуеть. Дохера всего сделал, сохранил проект. Открываю его снова и вместо моего пиздатого ландшафта вижу какую-то демку. Это вообще что
Аноним 05/12/21 Вск 04:15:44 #1023 №779861 
image.png
>>779710
Да там один скам с левыми ссылками, 10 переходами по рекламным банерам где нужно решать капчу 3-4 раза, ждать 20-120 секунд на каждой.
А по итогу попадаешь на платный файлообменник с которого скачать можно только заплатив за прем.акк.
Нашел только один сайт где была бесплатная опция скачивания. Но после всего этого ада с порнобанерами и скачки 140 мегабайт на черепашьей скорости за 2 часа .unitypackage оказался битым и не распознается даже унпакером.

Если знаешь парочку годных напиши.
Аноним 05/12/21 Вск 04:18:08 #1024 №779862 
>>779856
У тебя на скрине открыт демо-уровень.
Если изменял его, а он откатился, то рип.

Если делал на другой сцене - открой ее.
Аноним 05/12/21 Вск 04:44:46 #1025 №779865 
Есть вещи, которые мне не дано понять. Вот скачет на планшете фреймрейт между 60 и 30. Видно же, что не в производительности дело. Все холодное, частоты низкие, оверлеи летают, а игра тормозит. Ебнул на рандоме fixed dpi 500. Все летает. Сука че за хуйня блять.
Аноним 05/12/21 Вск 04:58:39 #1026 №779867 
>>779865
Убрал fixed dpi, выставил ультра пресет, стандартную физику, все равно все летает... Я ж пришел к тому, с чего начинал. Хуле оно лагало то тогда...
Аноним 05/12/21 Вск 09:54:08 #1027 №779878 
>>779861
Один на гите нашел когда захотел посмотреть, что он может. А так, мне это не нужно было никогда особо, хватает бесплатных.
Аноним 05/12/21 Вск 11:22:20 #1028 №779879 
На большом отдалении от сцены, не видно, где я мазнул кисточкой с травой, а где еще нет. Как это решить?
Аноним 05/12/21 Вск 11:39:57 #1029 №779881 
demo2.gif
Что блять происходит?
Что-то сломалось и теперь при приближении и удалении камеры я нихуя не вижу
Аноним 05/12/21 Вск 11:50:45 #1030 №779884 
>>779852
Самый простой способ это профайлером посмотреть что кушает, и от этого отталкиваться. Если голая меха, то либо где-то лупы, или же тяжёлые вычисления каждый кадр.

>>779853
В настройках террэйна есть строчка дальности видимости травы/деревьев/объектов, по умолчанию вроде там 300 или 100, вот пока в редакторе выкручиваешь на макс 5к.

>>779856
Если сохранил сцену ctrl+S, то всё должно остаться независимо от того что эта за сцена. Посмотри по самим сценам, скорее всего открыл не ту.

>>779879
Дальность у террэйна травы, либо же качество травы, при постановки в 0 трава не будет отображаться, но она есть.

>>779881
Клиппинг камеры, смотри в настройках верху сцены там кнопка, по умолчанию 0.3 или около того. Второй вариант клиппинг в самой камере, в её нстройках филд ов вью.
Аноним 05/12/21 Вск 12:16:31 #1031 №779886 
image.png
почему не работают экшены?
using UnityEngine.Events; прописал
Аноним 05/12/21 Вск 12:23:51 #1032 №779889 
>>779881
дважды кликни на свою землю в окошке иерархии
Аноним 05/12/21 Вск 12:27:32 #1033 №779891 
>>779884
>Профайлером
Так в том то и дело, что нихуя не поменял. В настройках поставил fixed dpi и заработало, убрал. Все еще работает. А профайлером я только скачки сборщика мусора увидел, больше ничего не просаживает. Рандом какой-то. Вроде нихуя не сделал, а фпс сам ровным стал в итоге.
Аноним 05/12/21 Вск 12:38:39 #1034 №779892 
>>779886
я ебал в жопу, нужнен был ещё System
Аноним 05/12/21 Вск 13:00:02 #1035 №779893 
image.png
Как опустить terrain ниже? Пробую кисточкой с контролом, но земля опускается до определенного уровня и все, становится равниной
Аноним 05/12/21 Вск 13:03:26 #1036 №779894 
>>779884
спасибо
Аноним 05/12/21 Вск 13:03:34 #1037 №779895 
>>779893
подними всю землю выше лол. карта высот от 0 до 1 только.
Аноним 05/12/21 Вск 13:09:15 #1038 №779896 
image.png
>>779895
Поднял на 50 вверх, но эта хуйня все-равно во что-то упирается
Аноним 05/12/21 Вск 13:12:33 #1039 №779897 
image.png
И если я даже set height делаю на 0
Аноним 05/12/21 Вск 13:13:59 #1040 №779898 
>>779891
>Рандом какой-то
Запомни, в программирование нету рандома, это не магия, всё работает строго по алгоритмам. Сложность заключается лишь в понимание и держание в голове всех возможных связей что, на что влияет.

>>779893
Чтобы делать горы и впадины в юнити есть несколько способов. Самый простой - Это Дефолтную высоту ставить высокую, и от неё плясать. По сложнее - Комбинировать несколько террэйнов с высотами и кастом смежей.
Аноним 05/12/21 Вск 13:17:34 #1041 №779899 
>>779898
>Самый простой - Это Дефолтную высоту ставить высокую, и от неё плясать.
Как это сделать? Я поднял террейн на 50 и этого недостаточно
Аноним 05/12/21 Вск 13:20:10 #1042 №779900 
>>779896
Проиграл. На самом деле нет, ты не поднял ничего. Ты поднял геймобъект, но твоя карта высот не поменяла свои значения.
Аноним 05/12/21 Вск 13:25:36 #1043 №779901 
>>779900
>но твоя карта высот не поменяла свои значения.
>>779899
>Как это сделать?
Аноним 05/12/21 Вск 13:28:20 #1044 №779902 
>>779898
Ничего, что я с позволения "напрограммировал" на производительность не влияет, экспериментально подтверждено уже. А что там в внутри у юньки происходит, мне все равно не узнать. Но сам факт. По какой-то причине фпс перестал быть рваным в один прекрасный момент.
Аноним 05/12/21 Вск 13:33:04 #1045 №779903 
image
image
>>779899
Ставишь нужную высоту, она идёт от 1 до твоих значений. В зависимости от предпочтений делаешь плато, как основу, к примеру от 500 это 250 в обе стороны.

>>779902
Я тебя уверяю, нету не магии, не волшебных свойств юнити. Причины могут быть там куда ты даже не заглядывал, или не знаешь. Если так уверен в своей правоте, просто отдай проект на аутсорс, и тебе буквально за пару тысяч деревянных найдут косяк.
Еще раз - Программирование не магия, всё строго по алгоритмам, но из-за не знания или не опытности ты просто физически можешь всё не знать или не понимать.
Аноним 05/12/21 Вск 13:44:40 #1046 №779905 
>>779903
Да понятное дело, что не магия. Хуево, что я так и не узнаю, что именно повлияло.
Аноним 05/12/21 Вск 13:55:59 #1047 №779907 
>>779903
>Ставишь нужную высоту, она идёт от 1 до твоих значений. В зависимости от предпочтений делаешь плато, как основу, к примеру от 500 это 250 в обе стороны.
У меня уже есть terrain и мне надо как-то его продавить.
Я уже менял height для террейна и это нихера не помогло.

В любом случае, мой проект крашнулся и теперь не открывается. И тут я узнал, что юнити не делает автоматические бекапные сейвы. Охуенно.
Аноним 05/12/21 Вск 14:08:40 #1048 №779910 
>>779905
В твоём случаи уже зависит от потребности в этом. Стоит ли тратить время чтобы разобраться, или же забыть.

>>779907
Ну ты бы хотяб видео по террэйну на ютабе посмотрел, это же совсем примитивная база.
Аноним 05/12/21 Вск 14:10:58 #1049 №779911 
>>779910
Посмотрел.
Как менять карту высот для существующего террейна - не нашел, если не считать загружаемых из raw-картинок карт высот (что для меня нерелейтед).
Аноним 05/12/21 Вск 14:17:29 #1050 №779913 
image
>>779911
Блин, ну плохо смотрел значит. Эх.

Смотри. Если тебе надо допустим поднять текущий террэйн, но не изменяя его, просто добавить высоты, ты пользуешь стампом. Зажимая shift ты выделенную область поднимаешь, тем самым как бы копируя её. Посмотри видео по этой теме, куда проще и понятнее будет.
Аноним 05/12/21 Вск 14:25:28 #1051 №779914 
>>779913
Ну кистью работать я умею. Я думал, что есть какой-то параметр, который можно изменить в настройках, а не просто кисточкой поводить, создав возвышенность на всем террейне.
Аноним 05/12/21 Вск 14:26:52 #1052 №779915 
А где качают пизженные ассеты и плагины? На рутреке устаревшее говно.
Например хочу Gaia, Vegetation Studio Pro и River Auto Material
Аноним 05/12/21 Вск 14:34:05 #1053 №779917 
>>779915
Либо в телеги по группам ссылки ищи, либо же в приватках. В бесплатном это только по помойкам лазить.
Аноним 05/12/21 Вск 15:09:19 #1054 №779924 
>>779901
Ну напиши скрипт, который в цикле пройдётся по твоей карте высот и поменяет значения, я хуй знает. А лучше в программе, откуда равку экспортируешь, всё настрой, как надо.
Аноним 05/12/21 Вск 15:17:22 #1055 №779928 
image.png
woah.mp4
тыкал свой солвер для жидкостей/газов с давлением. неожиданно оно само организовалось без всякого инпута в какой-то паттерн а потом взорвалось! хуй знает что поизошло но мне понравилось! очень интересно такое интерпретировать.

>>779896
лол что ты делаешь карта высот локальная для земели.
я даже не уверен есть ли в текущей земле кнопка для поднимания или опускания её целиком.
https://pastebin.com/7StAVVU8 на сделай себе C# скрипт TerrainManipulator, скопипасти туда это, повесь его на землю тогда сможешь вводить значение (желательно в пределах единицы) и жать кнопку чтобы прибавить или убавить эту высоту с земли.
Аноним 05/12/21 Вск 15:20:04 #1056 №779929 
>>779928
э забыл убрать CanEditMultipleObjects. надо было функционал для этого сделать, или убрать. и ограничить инпут. и может проверять максимальные границы инпута чтобы не поднимал землю слишком высоко. и Ctrl+Z добавить. ну и хуй с этим. и так сойдёт.
Аноним 05/12/21 Вск 15:27:27 #1057 №779931 
а хули юнити мне не говорит при импорте, что эти ассеты уже были импортнуты? что за дебильный ui?
Аноним 05/12/21 Вск 15:43:08 #1058 №779933 
>>779928
>тыкал свой солвер для жидкостей/газов с давлением.
Хуя ты мутишь. Только хули такая запись стремная, абсом пиши и не сжимай так сильно, не видно нихуя, всю красоту похерил
Аноним 05/12/21 Вск 15:56:43 #1059 №779935 
image.png
Ловлю вот такую ошибку The request URI must either be an absolute URI or BaseAddress must be set

Нихуя не понимаю, я гуглил её, нужно было дописывать протокол, но он уже дописан
Аноним 05/12/21 Вск 16:07:10 #1060 №779936 
woah2.webm
image.png
>>779933
да там если битрейт выставить побольше то всего происходящего на экране оно либо в кашу превращается, либо занимает много. нука где мой ffmpeg попробую перекодировать так чтобы чуть получше было видно, а то и правда шакалов многовато.

такого сорта симуляции иногда всякую интересную хуйню показывают при тех или иных значениях. обычно оно просто взорвётся, или не работает как надо, но иногда интересно!
а вообще это я откопал свой старый проект симуляции земли и стал работать над ним с новыми идеями. получше подумал над тем как мне симулировать атмосферу.
недавно занимался рефакторингом вычислительного шейдора, делил его на куски. а то работать с шейдором на полторы тыщи строк уже было физически трудно.
Аноним 05/12/21 Вск 16:09:47 #1061 №779937 
Как сделать определенную сцену дефолтной, чтобы при загрузки проекта именно она загружалась?
Аноним 05/12/21 Вск 16:18:29 #1062 №779940 
image.png
Госпаде, какое же лагучее дерьмо.
Случайно сдвинул камеру и всё, пизда, теперь юнити в бесконечном цикле гоняет эту хуйню
Аноним 05/12/21 Вск 16:26:49 #1063 №779941 
>>779937
При загрузке проекта грузится та сцена, которая была открыта последняя.

>>779940
Так убери авто компиляцию, и рендери сцену когда тебе надо, или же под конец билда.
Аноним 05/12/21 Вск 16:29:23 #1064 №779942 
>>779937
https://gist.github.com/ClintChil/92f4785c4bc3f3b64296b7eeffe94605
Аноним 05/12/21 Вск 16:35:23 #1065 №779943 
Юзаю дефолтный FirstPersonController от юнити и при старте сцены камера упирается в землю. Почему так?
Аноним 05/12/21 Вск 16:40:44 #1066 №779944 
image.png
>>779941
>Так убери авто компиляцию
Я ничего не включал.
Более того, совершенно внезапно начинается такая хуйня и все начинает лагать
Аноним 05/12/21 Вск 16:41:30 #1067 №779945 DELETED
>>779943
Аноним 05/12/21 Вск 16:48:50 #1068 №779946 
16381830154380.png
Посоветуйте примеров\ассетов, связанных с генерацией уровня. Ни за что не поверю, что все в ГК говне расставляют руками.

Делаю учебный ранер и дошел до того, чтобы ввести чанк (3х3 блока), каждый блок будет превращаться при инициализации в один из префабов забитых в него (препятствие, монетка, ресурс, буст), у каждого из префабов свой шанс, ну и учитывая кривую интереса для всего уровня. Как вам идея? Изобретаю может велосипед и есть решение лучше?
Аноним 05/12/21 Вск 16:54:09 #1069 №779948 
>>779946
>Посоветуйте примеров\ассетов, связанных с генерацией уровня.
Еще и бесплатный да?)))
Аноним 05/12/21 Вск 16:57:04 #1070 №779950 
>>779948
Без разницы тащемта, мне подсмотреть идеи и реализации. Хочется разобраться.
Аноним 05/12/21 Вск 17:00:58 #1071 №779951 
demo2.gif
>>779945
Ну же, я знаю, что ты знаешь, как это пофиксить
Оно кстати сопровождается ошибкой:
Look rotation viewing vector is zero
UnityEngine.Quaternion:LookRotation (UnityEngine.Vector3,UnityEngine.Vector3)
Cinemachine.Cinemachine3rdPersonFollow:GetHeading (UnityEngine.Vector3,UnityEngine.Vector3) (at Library/PackageCache/[email protected]/Runtime/Components/Cinemachine3rdPersonFollow.cs:251)
Cinemachine.Cinemachine3rdPersonFollow:PositionCamera (Cinemachine.CameraState&,single) (at Library/PackageCache/[email protected]/Runtime/Components/Cinemachine3rdPersonFollow.cs:189)
Cinemachine.Cinemachine3rdPersonFollow:MutateCameraState (Cinemachine.CameraState&,single) (at Library/PackageCache/[email protected]/Runtime/Components/Cinemachine3rdPersonFollow.cs:165)
Cinemachine.CinemachineVirtualCamera:CalculateNewState (UnityEngine.Vector3,single) (at Library/PackageCache/[email protected]/Runtime/Behaviours/CinemachineVirtualCamera.cs:523)
Cinemachine.CinemachineVirtualCamera:InternalUpdateCameraState (UnityEngine.Vector3,single) (at Library/PackageCache/[email protected]/Runtime/Behaviours/CinemachineVirtualCamera.cs:155)
Cinemachine.CinemachineCore:UpdateVirtualCamera (Cinemachine.CinemachineVirtualCameraBase,UnityEngine.Vector3,single) (at Library/PackageCache/[email protected]/Runtime/Core/CinemachineCore.cs:355)
Cinemachine.CinemachineCore:UpdateAllActiveVirtualCameras (int,UnityEngine.Vector3,single) (at Library/PackageCache/[email protected]/Runtime/Core/CinemachineCore.cs:275)
Cinemachine.CinemachineBrain:UpdateVirtualCameras (Cinemachine.CinemachineCore/UpdateFilter,single) (at Library/PackageCache/[email protected]/Runtime/Behaviours/CinemachineBrain.cs:427)
Cinemachine.CinemachineBrain:ManualUpdate () (at Library/PackageCache/[email protected]/Runtime/Behaviours/CinemachineBrain.cs:376)
Cinemachine.CinemachineBrain:LateUpdate () (at Library/PackageCache/[email protected]/Runtime/Behaviours/CinemachineBrain.cs:336)

При этом я ничего не трогал вообще, просто импортнул ассет с 1st person
Аноним 05/12/21 Вск 17:02:34 #1072 №779952 
А как очистить проект от лишнего неиспользуемого говна?
Аноним 05/12/21 Вск 17:11:57 #1073 №779953 
>>779951
Что значит "дефолтный"? Говно бесплатное от Васяна?

>Cinemachine
Посмотри настройки тут, или вообще удали.
Аноним 05/12/21 Вск 17:15:49 #1074 №779955 
>>779953
>Говно бесплатное от Васяна?
Ну да, примерно. Говно бесплатное от Unity.
https://assetstore.unity.com/packages/essentials/starter-assets-first-person-character-controller-196525
Аноним 05/12/21 Вск 17:16:34 #1075 №779956 
>>779953
>Посмотри настройки тут, или вообще удали.
Хз, ни в ассетах ни в иерархии такое не ищется
Аноним 05/12/21 Вск 17:18:32 #1076 №779957 
Охуеть, оказывается в Action можно добавить метод с принимаемым параметром. В документации ни слова об этом не написано.
void Method(<T> a) { }

<T> i = значение;

Button.OnClick.AddListener(() => Method(i))'

Аноним 05/12/21 Вск 17:28:38 #1077 №779959 
>>779956
>at Library/PackageCache/[email protected]/Runtime/Components/Cinemachine3rdPersonFollow.cs:251
Тыкни блядь, на ошибку.

Он скорее всег оподтягивает синемашину, хочет задать какие-то параметры и не может из-за чего -то. Версии юнити, версии синемашины, небо или Аллаха. Попробуй поставить рекомендованную версию и начать с чистого проекта, обновить синемашину или удалить синемашину, а еще лучше - просто выдрать нужные куски кода с ассета вместо тупого использования.
Аноним 05/12/21 Вск 18:34:00 #1078 №779964 
Пиздец, ступени для ригидбоди можно только через всю эту залупу сделать, или есть вариант покомпактнее?

https://cobertos.com/blog/post/how-to-climb-stairs-unity3d/
Аноним 05/12/21 Вск 18:41:15 #1079 №779965 
2021.2.5f1 это релиз или бета? Если релиз, то хули такой бажный
Аноним 05/12/21 Вск 19:02:08 #1080 №779966 
>>779964
Вешаешь character controller доступный по дефолту и там заботливые юнитеки реализовали для тебя поднятие по ступенькам.
Аноним 05/12/21 Вск 19:27:36 #1081 №779967 
>>779965
Ты у этой версии LTS видишь? И я не вижу.
Аноним 05/12/21 Вск 19:37:35 #1082 №779970 
>>779967
По твоей логике все, что не имеет ярлычка LTS. априори бажное?
Oh my sweet child, это только у криворучек из юнити так. Они считают, что лтс это продакшн, а все остальное - альфа-сборки.
Аноним 05/12/21 Вск 19:41:26 #1083 №779971 
Аноны, я нюфаня, юнити в руках не держал.
Я замоделил модель в блендере, которую мне надо будет заанимировать ну и сценку несложную изобразить.

Мне анимации в блендере пилить и потом экспортить, или анимировать силами юнити?
Аноним 05/12/21 Вск 19:47:42 #1084 №779972 
>>779970
Нет, просто там когда редактор устанавливаешь - для долбоёбов конченных отметили рекомендованные версии. А ты даже в это не смог.
Аноним 05/12/21 Вск 19:56:47 #1085 №779975 
>>779971
В блендере конечно
Аноним 05/12/21 Вск 20:00:29 #1086 №779976 DELETED
>>779972
>рекомендованные версии. А ты даже в это не смог.
Рекомендованные для долбоебов? Логично, что я не смог - я же не долбоеб, в отличие от тебя, чтобы сидеть 5 лет на LTS.
Но только криворучки из Unity не способны выпустить стабильный не-LTS, это о многом говорит.
Аноним 05/12/21 Вск 20:05:04 #1087 №779977 
>>779976
Я вчера обновился до альфы, хотя планировал дождаться беты. Второй день никаких проблем, всё работает, как часы. О чём это говорит? Да ни о чём. Просто ты долбоёб.
Аноним 05/12/21 Вск 20:07:44 #1088 №779978 
>>779977
>О чём это говорит? Да ни о чём.
Вот именно. Зачем спизданул - загадка.
Но у долбоебов свой путь
Аноним 05/12/21 Вск 20:22:18 #1089 №779981 
>>779978
Поясняю для особо глупых. То, что у тебя проблемы с юнити значит только то, что у тебя проблемы. Уже не первый год вижу, что проблемы бывают только у жопоруков, которые начинают гореть и носиться по всему интернету с горящей сракой. Десятки тысяч людей с этой юнити, я сам этой версией пользовался. И никаких проблем. А кто-то напишет while(true) в Awake и горит, что юнити падает.
Аноним 05/12/21 Вск 20:24:48 #1090 №779982 
>>779981
>Уже не первый год вижу, что проблемы бывают только у жопоруков, которые начинают гореть и носиться по всему интернету с горящей сракой
Твоя выборка, несомненно, репрезентативна
Что характерно - ведь у долбоеба иначе быть и не может.
Аноним 05/12/21 Вск 20:48:18 #1091 №779984 
>>779966
Ху там плавал. Он создает невидимую хуйню на которой спавнится персонаж, а со ступенями все так же плохо.
Аноним 05/12/21 Вск 21:05:22 #1092 №779986 
>>779981
Да не отвечай ты троллю, он чисто срач разводит, да хейтит юнити.
Тут по фактам так - У юнити случаются и баги и глюки? Да, но редко, как и в любом движке или программе. В юнити есть какие-то не понятные конечному юзеру механики? Нет, есть лишь куча подводных которые постигаются опытом и чтением форумов. Юнити ограничивает как то своих пользователей в создании контента или игр? Нет, делай как хочешь, что хочешь, зависит лишь от рук.
По своему опыту использованию Юнити могу сказать что за 3 года, у меня случалось максимум пару десятков крашей, десяток утечек памяти, и так-же пару десятков ошибок библиотек. Но все эти проблемы решались тупой перезагрузкой проекта. Были ли какие-то уникальные ошибки и баги? Нет, кроме чужого говнокода и сломанных библиотек не встречал.
Аноним 05/12/21 Вск 21:08:21 #1093 №779988 
>>779986
>Но все эти проблемы решались тупой перезагрузкой проекта.
Лол и это в 2к21.
Аноним 05/12/21 Вск 21:39:09 #1094 №779994 
>>779984
Я про это https://docs.unity3d.com/ru/2019.4/Manual/class-CharacterController.html
Аноним 05/12/21 Вск 22:20:52 #1095 №780000 
CleanShot 2021-12-05 at [email protected]
Что такое urp?
В доке написано 5 строчек, типа рендер отличается, тени, чето еще. Мне это ни о чем не говорит.
При этом, какой-то чувак на реддите грит, мол, новичкам надо вкатываться именно в urp.

Поясните за дефолтные шаблоны, анонсы.
Аноним 05/12/21 Вск 23:48:04 #1096 №780007 
>>780000
Типа новый рендер. Теперь он "скриптуемый". По факту особо ничего не меняется, разве что постпроцессинг встроенный и ты получаешь визуальный редактор шейдеров. Можешь посмотреть семпл сцену, там, в принципе, всё понятно. Ну и из нововведений, у тебя будут разные файлы с настройками UniversalRenderPipelineGlobalSettings плюс постэффекты привязаны к волюмам, а те, в свою очередь, к ГО. Старый рендеринг ещё не депрекейтед, но он точно будет, так что вкатываться в urp\hdrp смысл есть.
Аноним 06/12/21 Пнд 01:34:29 #1097 №780009 
>>780007
Если планируешь мобилки делать, стоит использовать? Сам по себе он не ухудшает производительность? Так то интересуешь шейдер граф.
Аноним 06/12/21 Пнд 10:12:07 #1098 №780024 DELETED
>>779986
>хейтит юнити
Ну справедливости ради будущее за годотом. Проект не уступают в сложности юнити, но при этом имеет на порядок меньше ошибок, к тому же и работает быстрее. Крупный продакшн уже обращает на него внимание
Аноним 06/12/21 Пнд 10:21:46 #1099 №780025 
>>780009
Юнитеки говорят, должен быть паритет между urp и старым рендером. Я не сравнивал, сравнивал hdrp и urp, hdrp пиздец, какой тяжёлый. А, ещё в hdrp пару ограничений захардкодили для ретроговна с gles 2.0, типа 8 источников света на объект.

>>780024
Иди жирнить в движкосраче тред, пидорас.
Аноним 06/12/21 Пнд 10:37:27 #1100 №780027 
>>780025
>пидорас
Ты поаккуратнее, а то на работу не приму
Аноним 06/12/21 Пнд 13:40:02 #1101 №780052 
как сделать по крутому проверку на нажатие кнопки не в апдейте? или это просто не нужный дроч на архитектуре? интересует только производительность
Аноним 06/12/21 Пнд 14:21:19 #1102 №780064 
Залагает ведь!.jpg
>>780052
>нажатие кнопки не в апдейте
Каждый иф на счету?
Аноним 06/12/21 Пнд 15:19:13 #1103 №780076 
>>780064
люблю обмазываться оптимизацией
Аноним 06/12/21 Пнд 15:33:34 #1104 №780079 
Сап кирилляч. Пилю неспешно платформер мечты.

Небольшая проблема: бэкграунд при движении персонажа двигается дерганно, как фиксить?

Нюансы(как в анекдоте про нюансы):
Бэкграунд представляет из себя спрайт который летит за камерой а не канвас
Персонаж двигается с помощью rb.velocity а не transform(пилил по гайду и понравилось что в таком случае персонаж останавливается не сразу, допроигрывая анимацию ходьбы).

Может ли является проблемой что то из перечисленного?
Аноним 06/12/21 Пнд 16:08:54 #1105 №780085 
>>780052
Накати новый инпут систем, хуле ты как этот.
Аноним 06/12/21 Пнд 17:27:47 #1106 №780106 
>>780079
Мне тут объяснили, что передвигать надо через аддфорс. От себя посоветую это еще в фиксед апдейте делать. Но только мувмент, нажатие кнопок в обычном апдейте. Если движение на клаве, нормализуй итоговый вектор, а то сумма двух осей даст скорость выше, чем на осях по отдельности как в старом думе.

мимо месяц кириллствую
Аноним 06/12/21 Пнд 18:24:19 #1107 №780116 
image.png
Баг или Фича?

создаю объект, он появляется вроде бы по центру, перехожу из фул скрина в микро окно, то он улетает нахуй аж сюда (960.00, 458.00, 0.00)
в билде надеюсь такой хуйни не будет?
Аноним 06/12/21 Пнд 19:01:17 #1108 №780122 
Аноны, а есть ли смысл верстать Canvas под минимальное поддерживаемое разрешение? Ну, сделать все в 800*600, и чтобы он растягивался на нормальных экранах.
Насколько я понимаю, так делают ради игроков с железом 10-летней давности и ноутбучников.
Или верстать под FullHD и не париться?

>>780116
А хули ты создаешь новый объект, или это так теперь принято в новых версиях? Я всегда всегда так делал:
GameObject hui = Instantiate(parent)
Аноним 06/12/21 Пнд 19:03:24 #1109 №780124 
>>780122
Тем временем я планирую ваять скрипт, который список уровней в табличку расставит взависимости от аспекта. Overthinking?
Аноним 06/12/21 Пнд 19:11:58 #1110 №780126 
code.png
>>780116
Вангую, что у тебя эта залупа в апдейте, потому работает через анусай. У меня буквально такой же код используется без проблем.

>>780122
Я под минимальное пилю, почему бы и нет? Ты готов игрока нахуй посылать только из-за его монитора? Это попахивает сегрегацией по мониторам. Ты там что, в гитлероподобных записался?
Аноним 06/12/21 Пнд 19:25:04 #1111 №780128 
>>780122
Не понял вопроса. Если канвасу поставить scale with screen size, match mode shrink, в любом разрешении и аспекте будет скеилиться как надо. Я че-то упускаю?
Аноним 06/12/21 Пнд 20:28:54 #1112 №780140 
>>780126
Я под минимальное пилю, почему бы и нет? Ты готов игрока нахуй посылать только из-за его монитора? Это попахивает сегрегацией по мониторам.
У многих сейчас уже 2к или даже 4к мониторы.
Если не считать Steam Deck, то игроков с микро-мониторами очень мало.

>>780128
В общем да, но с оговорками. Например, сверстал под старый 800*600 квадрат, а все играют в ФуллХД сейчас, соотношение сторон другое. Может какое-нибудь говно криво растянуться если ты элемент неправильно настроил.
Аноним 06/12/21 Пнд 20:38:24 #1113 №780144 
>>780140
Как-то с интерфейсом было просто. Вот камеру (вид сверху) настроить так, чтобы с любым аспектом она показывала одинаковый масштаб картинки было труднее. Высчитывать ортографик саиз через соотношение сторон.
Аноним 06/12/21 Пнд 22:54:22 #1114 №780167 
>>780140
>У многих сейчас уже 2к или даже 4к мониторы.
Ну и нахуй этот 0.1% долбоёбов нужен? Фулл ашди работает? WXGA читабелен? Всё заебись.
Аноним 06/12/21 Пнд 23:43:05 #1115 №780174 
Поясните за scale спрайтов. Лучше рисовать большие текстуры и ставить единицу или свободно пользоваться скеилом? А делать его одинаковым только для предметов, которые в скриптах друг к другу в чаилды попадают?
Аноним 07/12/21 Втр 02:05:46 #1116 №780177 
Посоны, туплю пиздец, помогите. Допустим у меня в игре есть 100 комнат, в каждой комнате по 10 предметов. У каждого предмета свои картинки и 3 состояния сломан, нормальный, отсутствует например. Игрок может менять состояния обьектов, когда он заходит в комнату надо отобразить их состояния и картинки.

Где и как хранить данные о состояниях? Сделал к каждой комнате сктиптаблобжект, где хранятся картинки к каждому состоянию. Но как их потом сохранять и загружать? Делать 100 json'ов? А как потом эту сотню json'ов через гугл плей сервисы сохранять?
Аноним 07/12/21 Втр 08:18:43 #1117 №780187 
>>780177
Лучше всего иметь просто один файл сохранения, который записывается/читается при загрузке/выходе из игры.
Аноним 07/12/21 Втр 08:30:03 #1118 №780189 
image.png
>>780116
короче щас сделал вот так, у меня к этой точке летят спрайты на экране и если в редакторе перейти из фул скрина в микро окно блядское, то эти блядские спрайты начинают лететь совсем не в центр экрана
походу баг а не фича
Аноним 07/12/21 Втр 08:38:25 #1119 №780191 
>>780189
>походу баг а не фича
Ты вычислил центр экрана, а потом поменял размер экрана. Понимаешь, что это значит?
Аноним 07/12/21 Втр 08:38:58 #1120 №780192 
>>780189
Ты же меняешь скрин
Аноним 07/12/21 Втр 09:26:38 #1121 №780193 
image.png
>>780191
>>780192
вы ебанушки чтоли? где я и что меняю?
Аноним 07/12/21 Втр 09:33:32 #1122 №780194 
image.png
>>780140
Просто ставишь скейлер чтобы на высоту экрана умножалось и все отлично скейлится хоть на андроед 1280х720, хоть на 8к телевизор.
>сверстал под старый 800*600 квадрат, а все играют в ФуллХД сейчас
А это вообще вопрос не про разрешения а соотношения сторон. Чтоб ничего не разъебывало раскидываешь свой интерфейс по углам или по сторонам экрана, так чтоб при любой форме элементы крепились к краям и двигались соответсвенно.
Аноним 07/12/21 Втр 09:36:54 #1123 №780195 
>>780193
>и если в редакторе перейти из фул скрина в микро окно блядское
Аноним 07/12/21 Втр 09:39:16 #1124 №780196 
>>780193
Классика. Быть рукожопым+упрямым как баран. Откуда такие ньюфаги лезут?
Аноним 07/12/21 Втр 09:42:10 #1125 №780197 
>>780196
так ты объясни ЧЯДНТ? по моей логике я просто получаю точку в центре экрана, причём всё работает, но недостаточно корректно
Аноним 07/12/21 Втр 09:43:42 #1126 №780198 
>>780197
Первое что тебе стоит понять это то, что если ты просишь помощь, не вести себя как наглое быдло. Это не бэ
Второе же, взять на истину то, что ты можешь быть не прав, или заблуждаешься.
Аноним 07/12/21 Втр 10:21:08 #1127 №780200 
>>780197
>по моей логике я просто получаю точку в центре экрана
Смотри сюда. Твоя точка это высота экрана и ширина экрана делённая на два. Берём 4к, прикинем чисто по ширине, как оно примерно. Это 3840\2, итого 1 920. Переключаемся "в микроокно", где по ширине 800 пикселей, например. А у тебя "центр" в точке 1920 нахуй. А ещё лучше, стартуй в микроокне, а потом растягивай свой анус и экран. То есть всё работает абсолютно корректно, просто так вышло, что ты долбоёб.
Аноним 07/12/21 Втр 10:50:17 #1128 №780202 
Раньше прокрастинировал, запиливая мелкие механики и бросая их. Теперь вообще хочется практиковаться в архитектуре, связи классов. Сильнее чем писать логику. Предлагаю свою помощь в рефакторинге. 2-3 года в юнити, могу в целом подсказывать что-то, помочь запилить фичу. Короче, хочется кооперации. Скучно, нет мотивации в одиночку. Если кому-то такое интересно, напишите тг или дис.
Аноним 07/12/21 Втр 11:53:27 #1129 №780209 
>>780187
А как грамотно организовать? Если за каждый предмет в комната своя переменная будет отвечать, то получится 1000 переменных, это нормально вообще? Так и делают?
Аноним 07/12/21 Втр 12:13:19 #1130 №780214 
>>780209
>Так и делают?
В киберпанке ещё интереснее поступили, они каждую покупку\продажу тоже записывают в сохранение. Крафт тоже записывается, даже если предмета у тебя уже нет. Скрафтил предмет? Сохранили эти данные. Продал? Это тоже сохранили.
Правда, потом оказалось, что сохранения больше 8 мегабайт корраптятся навсегда и больше не работают. Потом пофиксили коррапт, но осадочек остался.
Аноним 07/12/21 Втр 13:03:45 #1131 №780219 
>>780214
Но тогда как лучше сделать сохранение этой кучи переменных? Делать каждой комнате отдельный скрипт с методом сохранения - наркомания. Сделать один метод с 100 вариантов switch (roomName) тоже наркомания.

Сделать словарь с ключами к "комнатаПредметОдин" + "состояниеПредмета" и сохранять все в словарь нормальная идея?
Аноним 07/12/21 Втр 13:16:25 #1132 №780221 
>>780219
но зачем switch и зачем каждой комнате свою хуйню. просто сделай формат контента комнат таким чтобы было поебать из какой комнаты куда ты чё сохраняешь
Аноним 07/12/21 Втр 13:30:04 #1133 №780225 
>>780221
Возможно я тупой, но как? Предположим что каждая комната это отельная сцена, на каждой цене 10 предметов. За их расположение отвечает один и тот же скрипт. Как этот скрипт будет передавать разные переменные?
Аноним 07/12/21 Втр 13:39:01 #1134 №780227 
>>780219
Идеальный мир - в момент взаимодействия с объектом это взаимодействие с объектом сохраняется в буфер, который при сохранении записывается. Естественно, нужно учитывать, есть уже этот объект в сохранении или нет.
Говнокод - при нажатии "схоронить" цикл for each transform, который просто в лоб сохраняет позицию трансформов + их имена. На загрузке пробегаешь по всем сохранённым данным, находишь трансформы в сцене по имени и заливаешь позиции. Точно то же самое с любым другим компонентом.
Аноним 07/12/21 Втр 13:49:31 #1135 №780228 
>>780227
Это понятно, я не понимаю другое. Смотри, у меня 100 комнат, у каждой комнаты один скрипт в котором есть переменные: состояниеПредметаОдин, состояниеПредметаДва и тд. Как этому скрипту передать данные в файл сохранения с другим названием переменных. В файле сохранение должно быть комнатаОдинСостояниеПредметаОдин и тд? Как в файле сохранения разделить состояния предметов по комнатам?
Аноним 07/12/21 Втр 13:56:24 #1136 №780229 
>>780225
гхм. а не похуй ли что отдельная сцена? что меняет разделение на сцены? что мешает скрипту передавать разные переменные то? ты хардкодишь их чтоли?
Аноним 07/12/21 Втр 14:02:56 #1137 №780230 
>>780228
у тебя там проблемы с головой чтоли. вот есть у тебя например три типа предметов, да? например картошка, банан, апельсин. ты говоришь ну короче картошка это 0, банан это 1, а апельсин это 3. и комнаты такой нумеруешь. и короче вот у тебя на каждую комнату отведён кусок массива по 10 индексов. какое число в индексе тот предмет там находится. а потом ты такой рядом ложишь ДРУГОЙ массив и сохраняешь там на тех-же самых индексах например позицию предмета. или его состояние. и вот хуяк у тебя сохранён тип предмета, его позиция, его комната (хули позицию в массиве можно на 10 поделить) и любая другая хуйня. например массив с булеанами да, если тру то нормас, а если фалс то гнилой. или что у тебя там предметы какие-то особенные? что у тебя предмет? что он должен собой представлять? что объединяет эти предметы? всегда можно нормальные методы сериализации ебануть
Аноним 07/12/21 Втр 14:15:39 #1138 №780231 
444.jpg
>>780229

>что мешает скрипту передавать разные переменные то?

Либо я тупой что пиздец, либо я хуево обьясняю. Скрипт сохранения принимает переменные из комнаты, а как передать из раздельно потом в общий файл?

>>780230
Я думал сделать так: в файле сохранения есть словарь, ключ к нему - название комнаты и предмета, в скриптаблобжекте комнаты прописаны ключи. Беру ключ и сохраняю по нему состояние предмета
Аноним 07/12/21 Втр 14:15:49 #1139 №780232 
>>780228
>Как в файле сохранения разделить состояния предметов по комнатам?
Так разработай свой формат, ёпта.
>4 байта длина всех полезных данных
>4 байта количество комнат
>4 байта длина данных комнаты 1 //предположим, это число N
>N байт данных
>4 байта данных комнаты 2
>X байт данных

Я так по сети данные гоняю, только вместо 4 байт заголовки по 2, экономнее получается.
Аноним 07/12/21 Втр 14:25:34 #1140 №780233 
>>780231
Хотя, блядь, вроде проще все сохранять в один массив. Если в каждой комнате по 10 предметов, то с 1 по 10 это первая комната, с 11 по 21 вторая и тд. Так вроде проще будет. Спасибо, антоны, лол
Аноним 07/12/21 Втр 14:39:24 #1141 №780238 
>>780231
структурируй то как ты это сохраняешь ололо. хоть в массив с массивами сохрани. не похуй ли?

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

>>780233
да ты можешь и в линкед лист нахуячить, в один большой массив, хули. например если у тебя 100 комнат, то ты знаешь что на первые 100 индексов можно положить индексы начала цепочки. а конец цепочки например указывается -1. тогда у тебя данные первой комнаты будут размещены как [0] = 101, [101] = 102, [102] = 103, [103] = 104, [104] = -1 где -1 на последнем 104 индексе в цепочке. а второй например [1] = 106, [106] = 107, [107] = -1. тогда можно ещё и компактно хранить всю эту хуергу и иметь произвольное количество предметов в комнате. а на указанных индексах ты хранишь уже актуальную информацию по предметам.
Аноним 07/12/21 Втр 14:41:27 #1142 №780240 
>>780189
апдеит
Аноним 07/12/21 Втр 14:45:36 #1143 №780241 
>>780238
>зачем тебе вообще названиями комнат оперировать. переименуешь комнату и хули теперь. тебе только индекс комнаты знать надо. они же у тебя пронумерованны.
Да это понятно, под названием я имел в виду какое-то условное известное обозначение.

Вот с массивами что-то я не мог допереть сам, почему-то
Аноним 07/12/21 Втр 22:48:48 #1144 №780320 
Перекат https://2ch.hk/gd/res/780319.html

https://2ch.hk/gd/res/780319.html
https://2ch.hk/gd/res/780319.html
https://2ch.hk/gd/res/780319.html
https://2ch.hk/gd/res/780319.html
Аноним 15/12/21 Срд 00:58:31 #1145 №780969 
image.png
>>766778 (OP)
Аноны, есть тут добрые самаритяне, которые могут мне заанимировать готовую модельку в юнити?
Либо за просто так, либо за пиво.
Работа вроде несложная - нужно при нажатии разных кнопок на клаве, делать вид будто нажимаются элементы управления на модельке. И чтобы еще можно было от первого лица интерачить с моделью.
тг на пике
Аноним 26/12/21 Вск 14:39:35 #1146 №782264 
>>780052
Почекай новую инпут систему и OneWheelStudio на ютабе
comments powered by Disqus

Отзывы и предложения