На Unity сделано много замечательных игр - 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 лицензию.
- Движок Если ты уже умеешь использовать язык, то можно приступать непосредственно к изучению движка. Крайне рекомендется купить/скачать книгу 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 - это начать делать игру и по мере разработки гуглить непонятные моменты.
Приветствую анонов. Господа у меня следующая задача. При использовании NavMesh мне необходимо при передвижении объекта запускать один вариант звуковой дорожки, при остановке объекта второй вариант звуковой дорожки.
Реализовал что объект передвигается по поверхности при нажатии клавиши мыши на область NavMesh
Чет не врубаюсь как реализовать момент с использованием звука. Точнее не понятно что отслеживать компонент Transform и его изменения? Или через компонент RigedBody обращаться?
Подскажите где поискать инфу. Читал документацию, не помогло, гугл тоже не помог (возможно гуглю не правильно)
Заранее благодарю анонов Не ругайте если есть не точности в описании НьюфагВUnity
>>687843 Зачем тебе трансформ и риджидбоди? Если ты гоняешь объект по навмешу, то очевидно что ты делаешь это через агента. Вот им и пользуйся. Там есть свойства isStopped, pathStatus, velocity, выбирай любое. И вообще, если ты двигаешь через через метод SetDestination() или просто свойство destination, то там и проигрывай свой первый звук, а потом чекай когда он остановится.
>>687985 → >Shader Graph Попробовал использовать после Shader Amplifier и это пздц сырой продукт. Советую купить или спиратить амплифаер, даже если в нем не будет последних фич, то для начала освоения шейдеров это будет 10/10 инструмент, все наглядно, сайт с докой огромный. >Shuriken Можешь потратить час и потыкать все кнопки, их там не много. >VFX, эта штука уже сложнее и на ней делаются эффекты и посложнее, предложил бы понять как шурикен работает и потом лезть в vfx.
Подскажите, плиз, как правильно создавать уровни из уже готовых ассетов? Можно скрыть потолок, например, что бы делать пол, но тыкать по одному квадратику или даже копипастить скопировав несколько, слишком долго, нет ли более быстрых методов?
>>688016 Есть куча платных решений, а вообще все (включая большие студии) делают фундамент уровня через BSP какое-нибудь (аналог в юнити ProBuilder, но все же это не BSP, а меш, но тоже норм), а потом ручками раскидывают пропсы (бочки и тд). Если создаешь весь уровень кусками, то делай куски больше.
>>688077 → Молодец, продолжай. Раньше сложные эффекты на шурикене тоже делали. Как я понял VFX позволяет управлять поведением каждой партиклы, но самый смех в том, что в шурикене это тоже можно делать через код. Т.е. мне кажется у VFX-а просто есть какие-то надстройки, а у шурикена это сейчас по проще сделано.
>>688071 Вообще через кастомный Render Pipeline можно сделать честный рейтрейс, но тут все проще
>>688321 Если использовать DOTS а это пиздец или Unity.Jobs работает только со структурами и нельзя использовать статики то да. Если использовать стандартный Thread - тоже норм, многие используют, но нужно самому городить интерфейс обработки и костылить.
>>688389 Да, создание объектов, изменения свойств Transform и GameObejct тоже. Но ты можешь спокойно менять свои поля и свойства и надеяться, что не словишь баги
>>688560 Я именно про физику сего действа. Как делать подъем по горке или спуск? Физика или какой-нибудь луч пускать. Я, конечно, все равно придумаю какую-нибудь ебалу, но это уже наверняка делали сто раз и есть хороший способ.
Стоит покупать курсы, чтобы вкатиться? И, если да, то какие лучше, скиллбокс, курсера, ещё что-нибудь? Интерес сильный имеется, деньги на курсы имеются, навыков самостоятельного поиска информации - маловато (поэтому, собственно, курсы и нужны).
Аноны, у меня есть пару ассетов в ассет сторе юнити. Мне вот пришло пись_мо счастья такого содержания: >A compliance review of information in our systems indicates that you are located in an embargoed country, where we are not legally able to do business. For this reason we have deprecated your assets from the Asset Store and have placed a hold on payments. >If you are not located in a country or region impacted by sanctions by the United States, please contact me to confirm your identity and location and the hold can be lifted. Additional documentation will be required. Я, конечно, не сильно много получал, но эти 10-20баксов в месяц иногда спасали. Более того, хотел еще залить прау штук. Сначала, я хотел прикинуться беларуссом, но они тоже вне закона. Может казахом? На сколько жесткие пруфы они будут спрашивать?
>>688917 Нет, курсы это вода и они дают 20% инфы. Лучше всего поставить себе простую цель и просто начать делать, гуглить как сделать КОНКРЕТНЫЕ идеи. Еще плюс простой идеи - что все уже сделано за тебя сори, если демотиватор и ты можешь смотреть как это сделано. Это в разы ускореяет освоение как c#, так и юнете, если ты не тупой конечно. Первые 3-6 месяцев будут самые сложные если ты прям с нуля вкатываешь. >>688920 Я как человек неумеющий в шейдеры смог вкатиться за 2-3 вечера. Там на любую ножу жмешь ПКМ - потом Doccumentation, и там полное описание этой ноды. + на их же сайте есть примеры шейдеров. Самое сложное понять как код самих шейдеров работает, например для меня небыло очевидно что Fram метод отрабатывает на каждый пиксель экрана и эти tex2D(sampler_1, huyna_1) - по факту отрабатывает 1 раз, а внутри кода возвращает конкретный пиксель. >>688923 Лол печаль, я бы постарался скрыть использование ассета
Господа, если я подпишусь на ивент в Update методе, это будет считаться зашкваром и ересью? Дело в том, что у меня есть ui менеджер и он грузится в самой первой сцене. Ивент, который мне нужно словить, грузится в другой сцене. Поэтому использовать подписку на ивент в Start методе ui менеджера не вариант. Так вообще делают? Это не сильно влияет на производительность?
>>688923 >A compliance review of information in our systems indicates that you are located in an embargoed country, where we are not legally able to do business. For this reason we have deprecated your assets from the Asset Store and have placed a hold on payments. Что это за хуйня такая? Они же с правительством воевали, на какждого конкретно санкции выписывают, нищеброды из народа то тут причем
>>688930 Сори, думал что ты пользуешься "санкционным" продуктом и под "скрыть" я имел ввиду покупку лицензии, указать в своем лицензионном соглашении, но использовать настолько "плавно" чтобы это не бросалось в глаза. То что тебе запрещают выкладывать твой ассет звучит странно, думаю в течении недели-двух они обдумают это правило еще раз и сделают все нормально или нет, юнитеки стали пидорами года 3 назад
>>688929 я просто вообще не шарю за эти ваши шейдеры. Нужно понять хотя бы как это работет, а сразу готовые туториалы смотреть "как сделать вещьнейм" не очень информативно
Нужен пиксель-арт художник для мобильной игры. В чем соль. Игра в 40% готовности, есть концепт геймплея, приблизительно готовый сеттинг. Тащемта, уже есть готовый пре-альфа билд с начальными механиками. Отвечая на стартовые вопросы заранее. 1. Скока платят? Нисколько. Работа на чистом энтузиазме и желании быть причастным к проекту, который увидит свет. (По факту оплата будет по итогам монетизации проекта) 2. Что нужно от тебя? [/b ]Желателен опыт в пиксель арте, но если не умеешь, но хочешь попробовать - добро. Желательно(х2) понимать анимации. Работы не мало, но пиксель сведен к минимуму - в основном лишь персонажи и чуть сверх того. Так что, если ты имеешь пару часиков свободного времени в день и желание проявить себя творчески, то добро пожаловать!
Как в юнитинормально проигрывать фрагментики видео? Я юзаю фангус, поэтому делаю остановку видео через дестрой. Проблема в том, что после дестрой уже не могу его включить.
Знаете, что мне не нравится в юнити? то, что в projects обрезается название файлов, и чтобы полностью прочитать название, надо по нему кликнуть. Даже всплывающей подсказки нет. А когда кликаешь, в правой части появляется меню меню инспектора этого файла, что мне не нужно. Например, я хочу чтобы там оставался инспектор материала
>>688219 Можно, конечно. Каждая пара точек - это считай вектор. Итого у тебя три вектора, для каждой пары векторов вызываешь vector3.angle и получаешь значение угла между векторами.
>>689550 > на каком-то непонятном нерусском языке Есть понятный посконный гречнево-лапотный русский язык. А есть общепринятый язык учёных, технарей, гуманитариев, естественнонаучников, в том числе язык кодеров, в том числе язык геймдеволоперов. И если ты считаешь себя геймдевелопером, то рано или поздно за язык придётся взяться. Иначе ты всегда будешь вторым.
>>689559 >А есть общепринятый язык учёных, технарей, гуманитариев, естественнонаучников, в том числе язык кодеров, в том числе язык геймдеволоперов латынь что ли? про зельеваренье забыл
>>689581 >>689571 Знатно бабахнули гречневые. Удовлетворён. Как ваши бабахи меняют тот факт, что вы всегда будете на вторых местах, после англюсекогосподина, м?
Как научится делать vfx самому? Пока смотрю по туториалам, пытаюсь просто повторить то что делают в видео, но самому пока что не получается. Не всегда понятно какие ноды надо использовать что бы получилось то что себе придумал. Может посоветуете что-нибудь?
Как в юнитевском редакторе террейна делать такие же пологие слопы как на пике? Сколько не пытался, не получается. Скачал набор кистей бесплатных, всё равно не смог сделать адекватно.
Нужно разрезать 3D меш на мобильных, готов заплатить 6-7 тысяч рублей. Напиши мне в тг - @nulcomp или дискорд - zelofanz#8677 Если сработаемся, будут еще задания по этой игре
На ютубе есть ролик - cut mesh, там уже готовый скрипт, но только его нужно настроить под мобильные
>>689692 > Нужно разрезать 3D меш на мобильных, готов заплатить 6-7 тысяч рублей. > но только его нужно настроить под мобильные Ну и нахуй ты напиздел прямо ща? Говори честно и четко - нужно сделать полностью контроллер для тачскрина. У тебя он не сделал совсем. Плюс физику, плюс генератор резанных мешей по проекциям. Охуеть работка на 100 баксов, лол.
Но идея хорошая, фрутнинзя в триде, да? Ух заебись, спиздил, спасибо. Уже ушел делать.
>>689692 Реализовал за 4 часа нормальный мэш по твоему видосу. Теперь игру по хуйне остается сделать, даже не хочу продавать. В чем вообще смысл твоего поста, ты же предлагаешь базовую механику тебе напрогать. Самое сложное.
>>689718 >Охуеть работка на 100 баксов, лол. Я видел макак, которые за косарь рублей подобное готовы сделать, в основном это школьники и студенты первокуры мимо
>>689718 >>689719 Удачи, мне похуй, это был заказ с фриланса, к тому же он платит вообще копейки, меньше чем я сказал :) Нахуй этот юнити, пахать за копейки какие-то.
>>689731 Ну тут у тебя джва модуля всего лишь, можешь сам сделать. 1. Контроллер тачскрина, который может выдавать линии 2. Хуйня для резки мешей. Хуйня для резки мешей наверняка принимает плоскость как аргумент резки. 0. Говнокод для создания из линии плоскость из двух треуглов. В итоге тебе нужно всеголишь построить плоскость правильно, чтобы она, я хз, принимала направления камеры? Как-то так, да. Потом в этой плоскости нужно вычислить фигуру которая ближе всего к камере и имеет больше всего площади пересечения с плоскостью. Собственно, всё.
Рейтаните. Проходил кто? Это курсы по 3д анимациям эффектам и тд для блендера. И там много других курсов. Напрягает тока ценник - 30 баксов в месяц. В принципе терпимо, но немного дороговато. Курс чисто по юнити квпил за 10 баксов на юдеве, но он мало что покрыл из нужного для соло-геймдева.
>>689924 Там нельзя качать... Не знаю. Мб и попробую триал. Мб лучше куплю за 10 баксов что-то на юдеми. Но думаю там будет хуже. Но фиг знает, хотя бы на юдеми есть отзывы.
>>690059 Нашел там только бесплатные пару уроков на ютубе. Ну и документация. Но не зная с чего начать все эти огромные документации юслесс и легче вкатиться через видеоуроки с примерами.
Может лучше сперва сделать хуйню типа клон-флеппи-бирд, а уже потом лезть в блендер, но хотелось сразу что-то более интересное. Хотя бы создавать свои объекты для мира. Ну и анимации и партикал эффектс.
Билд под андроид стал по 10 минут собираться, а в конце выдавать ошибку, первая строка: A problem occurred configuring project ':launcher'. B так далее. То что гуглилось пробовал, типа должна быть только латиница по пути проекта и т.д. Было у кого?
Подскажите, почему у меня объекты при добавлении не отображаются на дефолтном слое, а становятся видны только если я переключаю их на транспетернтФХ???
>>690513 >>690515 А экспериментальный пакет terrain tools не делает этого? Я заспавнил 5км на 5км и камера не видит его целиком, это стриминг или нет интересно...
>The Terrain Tools package adds additonal terrain sculpting brushes and tools to your project to help create stunning terrain assets and ease the workflows.
>Пакет Terrain Tools добавляет в ваш проект дополнительные кисти и инструменты для моделирования ландшафта, которые помогают создавать потрясающие ресурсы ландшафта и упрощают рабочие процессы.
Сап юнитач, есть InputField, как сделать так, чтобы всё, что печатает игрок, всегда шло в этот InputField?
Нужно сделать так, чтобы игроку не приходилось каждый раз нажимать на окно Input'a, чтобы начать печатать текст. Или чтобы весь инпут с клавиатуры изначально шёл в это поле и никуда больше.
прим. я напечатал в окно инпута "Двач" и нажал Ввод, слово "Двач" стёрлось и мне нужно напечатать новое слово, но теперь мне снова приходится нажимать на окно инпута, чтобы начать печатать, а хочется сразу постить смешное, стукая по клавиатуре
Есть ли конверторы что пиксель арт преобразуют в красивый 2д спрайт? А то рисовать красиво точн не получится (не умею), но пиксель арт мб и вытяну. Вообще, думаю может легче в блендере делать шейпы чем рисовать.
Почему некоторые архивы содержат .fbx модели, в которых уже запакованы материалы, а некоторые содержат саму модель и png картинку с текстурой, как во втором случае применить эти текстуры к модели?
>>691113 Потому что в fbx'е можно сохранять материалы и текстуры. Если хочешь их извлечь то в окне импорта модельки на вкладке материалов есть кнопка extract.
Как в юнити нормально работать с библиотеками классов? Создал проект class library, добавил в корневой солюшен, настроил, чтобы после билда ддл шла в Assets/Plugins, чтобы сначала всё было норм, в какой-то момент юнити перегенерила мой солюшен и выкинула оттуда нафиг этот проект. Создал отдельный солюшен для своих библиотек, получается как-то неудобно, что 2 солюшена, корневой сгенеренный юнити, и еще свой до кучи. Теперь процесс разработки такой - вношу изменения в свою либу, билжу её, тыкаю в окно юнити, чтобы подхватился новый билд из Plugins, всё работает, но visual studio code сходит с ума, не видит новые изменения в либе, пока его не перезапустишь. Как-то всё дико неудобно. А херачить всё в Assets/Scripts тоже неохота, юнити не дает создавать произвольные классы, не отнаследованные от MonoBehavior, а если руками их создавать, то потом надо руками добавлять в корневой csproj, тоже ебатека какая-то выходит.
>>691167 > Как в юнити нормально работать с библиотеками классов? Ну давай по порядку. С какими библиотеками? Нативными? .NET? Чего ты от них хочешь? Часть кода в них вынести? Подключать как нативный плагин?
>>691169 >.NET This. >Часть кода в них вынести? This. Хочу, чтобы в Assets\Scripts были только monobehavior классы. А всё, что не использует либы юнити, код общего назначения, был в отдельной c# библиотеке.
>>691170 Я все такие классы тоже хуйнул в dll, потому что там всё основное дерьмо, не связанное напрямую с логикой игры. То есть файловый менеджер, FTP-загрузчик, TCP-сервак и прочая хуйня, которая может кочевать из проекта в проект, и удобнее просто бибилотеку в проект закинуть. Но я сначала создавал эти скрипты в юнити и они там спокойно лежали. А потом, когда понял, что я закончил и больше их менять не буду, сбилдил в dll. Чего и тебе желаю. > после билда ддл шла в Assets/Plugins Если говорить что .NET dll, то абсолютно до пизды где она будет лежать, хоть в папке huipizda, папка Plugins нужна только для нативных плагинов.
Сап. Подскажите, есть ли способ, задавать координаты через Gizmo. Я хочу сделать движение по точкам, но точки задавать не трансформом отдельных объектов, а просто векторами, но для удобства хотелось бы, что бы перетащил гизмо в редакторе, и задал координату.
Блять, хочу воспользоваться Undo.RecordObject, но оно не работает, в edit показывает последнее событие selection change, и вообще теряется фокус с объекта на котором editor gui, когда я пытаюсь тыкнуть в поле редактора, у чувака с тутора нормально всё, у нас код один в один. Я открываю его проект, и там всё нормально работает, кто вкурсе? Вот эта хуйня помогает держать фокус на объекте, но undo один фиг не работает: HandleUtility.AddDefaultControl(GUIUtility.GetControlID(FocusType.Passive));
Вопрос тем, кто регистрировался в Google Play в качестве разработчика. Для продажи своих игр нужно завести мерчант профайл. При регистрации там нужно указать публичную информацию. Я не нашел другого подходящего варианта, нежели вписать туда домашний адрес и свое имя. Вопрос. Если пользователь совершит покупку, он сможет увидеть мое имя и мой домашний адрес в квитанции, которую отправит Google Play? Ну или каким-то другим способом пользователь сможет увидеть мою персональную инфу?
>>691687 А если я туда впишу какуе-то левую инфу. Вместо имени- название своего аккаунта, а адрес с потолка возьму? У этого есть последствия? Меня за такое могут забанить?
>>691691 Я просто пошутил. Но я думаю, скорее всего никто не увидит такую информацию, в любом случае, поищи настройки конфиденциальности да посмотри, что там есть. Я в таких настройках всегда указываю фактический адрес, может чего на почту пришлют, в случае чего.
Двощ, как быть, если знаком с базой C#, Unity можешь делать поделки уровня /b по типу кликеров/платформеров, но что-то более серьёзное не идёт? А уроки на ютубчике сложнее твоих текущих знаний почти не воспринимаются и кажутся слишком сложными.
>>691743 Кароче проблема ещё в том, что я не хочу копипастить, а хочу в соло писать код, без подсказок интернета и готовых решений. Но не получается епт.
>>691743 Когда какой-то момент непонятен- останавливайся и пробуй разобраться с этим конкретным непонятным моментом. И пока не разобрался с ним, дальше не иди.
>>691726 Хм... В настройках девелопера есть поле, куда можно вписать свой адрес. Хоть у этого поля и есть звездочка, но оно не обязательное для использования. Я полазил по страничкам приложений. Свой адрес разрабы не публикуют.
Сделал в after effect анимацию, сохранил в png и она сохранилась 10 разными изображениями. Как мне запилить в партиклы всю анимация целиком а не отдельными изображениями?
>>691754 Это ещё зависит от страны публикации. У меня просто знакомый недавно публиковался, и у него указана и фамилия и адрес. Когда я гуглил - находил что в рфии это обязательно, если не прав - буду только рад.
Каким способом лучше всего нарисовать линию в 3д пространстве по двум координатам, не применяя компонент LineRenderer? Можно даже самую примитивную полосочку.
>>691763 Тебе нужно запихать их в один файл и одинаково разделить (как на моем пике), потом в партиклах если пункт SheetAnimation (кажется, не помню), там указываешь число кадров по вертикале и горизонтале. Можно указать только по горизонту т.е. x:6 y:1
>>691791 Можно, тебе нужно твой шейдер поменять, ты сам не понял что сам скопировал заблюривание.
Хочу воспользоваться Undo.RecordObject, но оно не работает, например после необходимых изменений мною отрисованных handle, в соответствии с моим кодом, в редакторе всё-равно в меню edit показывает последнее событие Undo Selection change, хотя должно быть указанное мною в коде, например Undo MovePoint. Проблема в том, что теряется фокус с объекта, на котором висит кастомный эдитор, когда я кликаю в поле Scene view (при зажатой клавише начинает появляться рамка для выделения объектов, при этом в иерархии выделение с объекта снимается и все мои отрисованные Handles пропадают).
HandleUtility.AddDefaultControl(GUIUtility.GetControlID(FocusType.Passive)); Код выше помогает не снимать фокус с объекта, но ctrl+z всё равно не работает. В коде ошибок точно нет, и в аналогичном проекте с таким же кодом, и без использования FocusType.Passive все работает нормально. Может в самом редакторе должна быть какая-то настройка, кто в курсе? Вот код эдитора: https://pastebin.com/jGQ4nzNf
>>691838 Вот так фокус снимается, можно ли оставлять фокус с помощью настроек где-то в редакторе? Не могу понять, в чём дело и не гуглится. В аналогичном проекте всё работает нормально.
>>691839 Видимо тебе нужно создать CustomWindow для редактирования твоих путей, туда кидать твой объект т.к. что-то мне подсказывает, что ты рисуешь эти хендлы в методе OnInspectorDrawn - который отрабатывает только если у тебя выбран объект
>>691832 >тебе нужно твой шейдер поменять, ты сам не понял что сам скопировал заблюривание. Как его поменять что бы заблюривание пропало? я наколдовал его в шейдерграфе, потом создал материал и применил на него шейдер. А что бы вывести создал в 3d object - plane. Что то не вижу где можно заблюривание отключить
Сап юнитач. По мере вката появились некоторые вопросы, на которые гугол не знает ответы или я не умею гуглить. 1. Как добавить поддержку модов в игру? 2. Как сделать редактор персонажа?
>>691942 Это очень обширные вопросы, включающие в себя много аспектов и вариантов реализации, ты это понимаешь? Это типа как спросить, как сделать скайрим?
>>691948 Начни изучать Юнити по туториалам для абсолютных новичков и тебе постепенно станет понятна абсурдность вопроса. Если бы ты хоть немного ориентировался в теме, то такие вещи бы не спрашивал. Посоны, я тут уже половину букваря освоил, как Войну и мир написать?
>>691957 Аригато. > Смотришь на ютубе серию уроков по созданию рпг на юнити Это англ? Если да, то мб есть что-то в текстовом варианте? И что конкретно смотреть?
Тред не читал, шапку не читал. Я немножко говнокодил ранее, и в этом деле сильно помогали фреймворки. Есть ли подобное для юнити, чтоб взял - и наговнокодил ноебходимое поверх готовой базы? Если есть, где смотреть?
>>692113 Я написал гавно-код который ищет точки, применяет локальную разницу и подсовывает меши 1 к 1, вышло оч красиво и я рад, но если проемы будут не идеально квадратными все идет по пиздец.
До этого сохранял "соединительные данные" в ScriptableObject-ах.
>>692138 Спс, но уже нашёл, но спасибо, а так же новый вопрос: как сделать чтобы камера не улетала НАХУЙ за границы мироздания через секунду игры? Я так понял этот пиздец происходит из-за ДАМПИНГА и дельтатайма, потомучто чем больше я делаю дампинг, тем быстрее камера улетает нахуй.
>>692150 В самом конце где у тебя Time.deltaTime Damping должно быть значение между 0 и 1 Time.deltaTime всегда равна примерно 0.00016 (чем быстрее проц, тем меньше значение) По идее тебе нужно сделать private float _lerp=0; и в апдейте делать _lerp += Time.deltaTime Damping; и в этом Vector3.Lerp(from, to, _lerp); так же проверять, чтобы лерп был _lerp = Mathf.Min(1, _lerp);
>>692161 Я сделал оче замыслохуйски вот так, камера не улетает, но теперь мне надо сделать какую-то границу отъезжания камеры и чтобы она не прыгала резко в момент, когда ты переезжаешь курсором центр монитора.
А нихуя кстати не центр, когда переезжаешь курсором через плеера по Х, по Y такой хуйни нету. То есть rогда я перевожу курсор слева от плеера, направо от плеера, камера резко резко на противоположные Х-координаты
Допустим я создал какой-то эффект, как его записать что-бы можно было залить куда-то? На ум приходит только зафрапсить экран,но в юнити есть же какие то способы?
Сап, как максимально грамотно сделать класс, в котором будут только хранится константы, которые буду изменять только в этом классе, но использовать их буду в тысячах других местах (Ну типо чтоб изменил там какой-то множитель, изменился везде), и чтоб было легко достать оттуда нужную переменную
>>692423 во первых никогда не используй GetComponent в Update, у тебя метод Update вызывается каждый фрейм, каждый, ты видишь в своем коде через что он проходит? В твоем случае можно в нем оставить 1 строчку - if (Input.GetKeyDown()) и создать новый метод, который будет вызываться после этого условия, где ты уже и будешь проводить эти проверки, но убери все GetComponent, задай их в начале кода, хоть как-то кинь их в кэш
В одном видеоуроке челик менял transform.position объектов не имея прямых ссылок на обьекты, а просто записав каждый transform в лист и меняя сам transform. При этом менялись transform самых объектов, хотя в коде они не менялись (менялись ранее записанные переменные transform). У меня от этого потекла крыша. Как это возможно? Я думал с# создаёт новые данные при использовании оператора "=", а не создает ссылки. Где об этом почитать? Находил инфу только о том как это работает в функциях с аргументами, но это другое.
>>692425 >>692431 Я понял свою ошибку, да. Я делал массив из color, а надо было из компонентов, так вроде фпс снова стал нормальным. Теперь всё работает и GetComponent теперь происходит только в Start.
Как лучше всего наследовать, допустим, всякие сундуки, шкафы, тумбы (все работают по схожему принципу, т.е открывается дверь и можно хранить вещи) от общего родителя? Или в качестве родителя можно сделать скрипт Locker.cs и запихать всю логику туда, а каждый новый объект (сундук, шкаф, тд) делать префабом и пихать туда этот скрипт?
>>692432 вот пример кода. Как видно, он создает обьект, записывает трансформ обьекта в отдельную переменную, а потом модифицирует эту переменную. И она модифицирует трансформ не просто переменной, а самого обьекта. Кто может это обьяснить?
>>692587 Пик 1 и перезапусти плеер, еще вариант нажать shift+f10 или чет такое
>>692437 Есть 2 стула: наследование и декомпозиция. Наследование - делаешь public abstract class BaseItem : MonoBehaviour {} и пихаешь метод public abstract void UseItem(); Декомпозиция - делаешь логику в scriptableObject и базовый класс BaseItem, который будет ссылатся на scriptableObject.
>>692625 Блядь ну я гуглю я всё гуглю, я изгуглил всё, там какие-то хуёвые способы флипа спрайта, там флипает спрайт по направлению к игроку, флипает спрайт при коллайде с невидимой стеной, флипает спрайт когда не может нащупать перед собой платформу, а мне надо чтобы спрайт флипался в тот момент, когда его владелец начинает идти влево. Чтобы выглядело всё так, какбудто он идёт влево когда идёт влево, а не лунной походкой, понимаешь? Тыкни меня моим поросячьим рылом блядь в видос на ютюбе, в тутор блядь для даунов который скажет мне как сделать это, я прошу тебя об этом блядь.
>>692640 Нихуя не понял. Кароч смотри, есть у тебя, например, игрок и моб. Если ты вычтешь из позиции игрока позицию моба (то есть player.transform.position - mob.tramsform.position), то получишь вектор направления от моба к игроку. Но ты в душе не ебёшь какой длины этот вектор, она тебе не нужна, так что нормализуешь его (метод Normalize()). Всё, у тебя есть нормаль от врага к игроку. Берёшь от него перпендикуляр и пизда рулю, стрейфь своего моба по этому перпендикуляру. Если, конечно, я правильно понял чё ты хочешь.
>>692640 >>692642 А, кажись понял. Тебе надо, чтобы спрайт "смотрел" в сторону мышки? Если да, то чекай угол между вектором, по которому смотрит игрок прямо перед собой, и вектором от игрока до мышки. Если он больше 90 градусов, то флипай.
>>692642 Правильно, но не полностью. Моб пасётся, то есть он ходит по рандомным координатам влево-вправо. И мне надо чтобы он смотрел в сторону своего движения.
>>692646 > Моб пасётся, то есть он ходит по рандомным координатам влево-вправо Так что ли? Если да, то нахуй тебе какие-то позиции? Просто перемещай его прямо перед собой и поворачивай когда тебе надо. Не знаю по какому признаку ты его поворачивать собралс, вот тебе пример с поворотом по пробелу.
>>692425 А я использовал GetComponent в апдейт методе для доступа к Rigidbody, чтобы делать наклон игрока при движении в зависимости от скорости движения. Я так понимаю, что лучше такой наклон организовать через анимацию? Хотя я не заметил проседаний fps или увеличение батчей.
>>692654 По признаку направления движения же, зачем мне поворот по пробелу. Вот смотри: это ПЛАТФОРМЕР. В нём есть МОБ. Моб бродит влево-вправо. Надо чтобы он разворачивался в направлении своего движения.
>>692677 > зачем мне поворот по пробелу Я просто сделал как пример, ясен хуй что пробел тебе не нужен. > Надо чтобы он разворачивался в направлении своего движения Ты код посмотри. Моб идёт всегда прямо перед собой. Так что поворачивай его как хочешь, он всегда будет идти прямо. Хоть под углом его ебани.
>>692678 А КАК? Что мне скомандовать то? Вот здесь он берёт Х курсора на экране и минусует из него Х себя. Если Хкурсора левее - значит он меньше, значит будет МЕНЬШЕ нуля, значит он фейсит влево. А если Хкурсона правее Хмоба - значит будет БОЛЬШЕ нуля, значит фейсит вправо. Вот что мне подставить вместо КУРСОРА, что отвечает за какой-то велосити дирекшон вектор моба?
>>692682 Это ты скажи "как". По какому признаку ты хочешь его поворачивать? Я ж не ебу как там оно у тебя и как ты хочешь чтобы было. Ты спрашивал как сделать чтобы моб не шёл лунной походкой — я тебе сказал как. А по какому щелчку его разворачивать — это уже тебе виднее.
>>692691 Ну всмысле по какому признаку чо это значит я не понимаю нихуя. Вот смотри у меня работает с мышкой, но мне надо чтобы вместо Camera.main.ScreenToWorldPoint(Input.mousePosition) было что-то постоянное, что находится ВПЕРЕДИ НАПРАВЛЕНИЯ ДВИЖЕНИЯ МОБА в каждый момент времени. Как такая хуйня называется в юнити или как её сделать?
Информирую что сделал через Х своего рандоммувспота-Хтрансформ.позишон. С самого начала думал что надо как-то изъебнуться с какими-нибудь точками, и вот тебе.
Поясните, пожалуйста, за GetComponent в Update методе. Как я понял, его нельзя там использовать и вместо этого нужно использовать его референс через переменную в Start методе. Я все правильно понял?
>>692925 Самое важное правило для рефов, их надо получать в авэйк и никак иначе. иначе потом познаешь боль проёбанных ссылок и не понятных красных строк
>>692926 Что игра, например на телефоне, может выгрузить эти ссылки из памяти и из-за этого нуллпоинтеры будут? Я что-то не представляю как может так быть.
private int money; public int Money { get { return money; } set { money = value; SaveData(); } }
А с массивом через отдельную функцию? Но я подозреваю что тебе надо этот метод с переменной вызывать и он не может быть статик тогда не так надо будет. Интересует как ответят спецы кодинга.
>>693237 Ты про Input.GetKeyUp ? Если делаешь в FixedUpdate - то может быть из-за этого. Вторая причина - твой райкаст точно попадает на коллайдер? Метод Physics.Raycast возвращает boolean, проверть, что там true
Подскажите пожалуйста оптимальное решение. Нужно сделать так, чтобы камера постоянно следовала за движущимся вперед объектом, типа как в сабвей серф, но этот объект будет постоянно переворачиваться, крутиться, отскакивать и т.д, в общем имитировать физику. Соответственно если просто прикрепить ее в иерархии, то она будет вертеться вместе с ним. А надо, чтобы двигалась только по иси икс но с разной скоростью, в зависимости от скорости объекта.
>>691838 >>691847 Решено. Добавил в OnSceneGUI() следующую строчку: HandleUtility.AddDefaultControl(0); Я там выше фокус тайп ставил Passive, а надо было Native, он и есть ноль. Но всё равно странно, у парня с тутора и без этой строчки всё работало, ну да ладно.
Кто-нибудь знает как настроить графику как в Age of Magic? Чтобы все это работало на мобилах? Я вообще не понимаю как у них получается сделать такую сочную графику. Объясните мне как они так настроили материалы, что у них получилось вот это?
>>693237 OnPointerUp не сработает, если класс не реализует интерфейс IPointerDownHandler. Вот такая вот хуйня. То есть тебе надо реализовать и IPointerDownHandler и IPointerUpHandler, в OnPointerUp пиши что тебе надо, а OnPointerDown оставь пустым.
Коллеги, вы видели игру Earn to die2? Более 50 млн скачиваний. Топ игра по идеи. Однако что же я там увидел?
Во-первых, геймплей. Просто жмешь одну кнопку и едешь. Все. Проиграть невозможно. Никакого геймплея по сути нет. Прогресс тоже условный, прокачиваешь тачку и на следующем заезде зажимает кнопку газа на 10 секунд дольше. Имитация прогресса. Логика. Чувак выезжает из гаража, у него кончается бензин, он остается посреди кишащей зомби пустоши и... просто возвращается назад, на той же машине.
И у меня вопрос, неужели это и есть ТОПОВЫЙ уровень мобильного геймдева?
Почему совсем нет нормальных книг по ебунити? Везде дается какая-то база с#, а потом, без малейшего объяснения, используется уже фишки самого юнити. Типа делай вот так, видишь, работает, и заебись. А что представляет из себя код - вообще не понятно. Если не будешь сам вгрызаться через гугл и документацию то вообще ничего не поймешь.
>>693915 Тому шо будучи писателем пока ты будешь переписывать все доки в книжную версию, то документация уже может что раз измениться. Даже в книгах по языкам программирования про АПИ не всегда пишут, а тут игровой движок. Да и зачем, сайта с доками юнити обычно достаточно.
>>693915 Учись просто на примере, начни делать какую-нибудь игру, и по мере поступления вопросов и проблем, обращайся уже к материалам, куда угодно, книги, ютуб, документация. Потом со временем сам начнёшь понимать, что к чему и как можно было сделать лучше. Главное не делай ctrl+c, ctrl+v, а переписывай и пытайся вникнуть.
В иерархии никак не убрать, чтобы дочерние не зависили от transform предков? Я, например, просто хочу сгруппировать объекты, типа Дом1 -Квартира1 --Комната1 ---Шкаф1 ---Шкаф2 ---Табуретка --Комната2 ---Шкаф1 ---Шкаф2
... Итд. Я где-то читал, что куча детей нежелательно - влияет на производительность, так как постоянно идет подсчет позиции для каждого вложенного объекта.. А я просто хочу структуру, как в папке Assets. Чтобы не путаться
>>694216 > Я где-то читал, что куча детей нежелательно - влияет на производительность И все текстуры у тебя в степени двойки, все компоненты кэшируются, лоды прописаны, батчинг настроен и и каждый draw call посчитан? Не еби сам себе мозги, делай как удобно. На спичках потом будешь экономить когда никогда игру доделаешь.
Ideally texture sizes should be powers of two on the sides. These sizes are as follows: 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048 etc. pixels. The textures do not have to be square, i.e. width can be different from height. Note that each platform may impose maximum texture sizes. See Android and iOS. For DirectX the maximum texture sizes for different feature levels are:
Пиздец. Сбилденная простая комната нагружает карту на 100%. Слышен тихий свист, все лагает, spot light фонарь вместо конуса освещает все вокруг, как будто это point light. Бля что такое. А в плеере все четко
>>694399 А где будет лог файл? Чет запустил с этим флажком, и хз, где смотреть проблемы (да и есть ли они?). В углу надпись только появилась development build
>>694485 ProjectSettings/Scrip Execution Order, но лучше этим не злоупотреблять, а пользоваться предопределённой очередностью выполнения методов Awake, Start, Update, Late Update
>>694485 Кстати, на всякий случай — порядок скриптов в редакторе и в билде отличаются. Я так один раз чуть с ума не сошёл, никак не мог понять с какого хуя в редакторе всё работает, а в билде сыпется. Оказалось, что один скрипт в Awake брал значения из синглтона, который инициализировался тоже в Awake, и в редакторе синглтон инициализировался до этого запроса, а в билде — после.
Можно ли настроить, чтобы все текстуры, которые я импортирую, сохраняли оригинальное разрешение и чтобы были в high качестве? А то экспортирую 4к, а там разрешение 2к и normal quality
>>694747 Не вводи людей в заблуждение, никаких скриптов писать не нужно. >>694743 Закидываешь текстуру, ставишь нужные настройки, жмёшь Apply. Потом там же, в настройках импорта этого же файла, жмёшь на вот эту вот маленькую хуёвину, как на первом пике. Открывается окно с пресетами, где жмёшь кнопку "Save current to..." Сохраняешь свой пресет, потом находишь его в ассетах, жмёшь по нему и хуячишь на кнопку со второго пика. Всё, теперь все следующие файлы будут автоматом импортироваться с этими настройками.
Мы несли чистые убытки в каждом периоде с момента основания. Мы понесли чистые убытки в размере 131,6 млн долларов США, 163,2 млн долларов США, 67,1 млн долларов США и 54,1 млн долларов США за годы, закончившиеся 31 декабря 2018 и 2019 гг., А также за шесть месяцев, закончившихся 30 июня 2019 и 2020 годов, соответственно, включая 20,9 млн долларов США, 44,5 млн долларов США, 14,8 млн долларов США. млн. и 21,7 млн. долларов США соответственно на компенсационные расходы на основе акций. По состоянию на 30 июня 2020 года накопленный дефицит составил 569,3 миллиона долларов. Несмотря на то, что в последние периоды мы наблюдали значительный рост выручки, этот темп роста может снизиться в будущие периоды, и вам не следует полагаться на рост выручки за любой предыдущий период как на показатель наших будущих результатов. Мы не уверены, сможем ли мы поддерживать или увеличивать нашу выручку или получим ли или когда мы достигнем достаточной выручки для достижения или сохранения прибыльности в будущем. Мы также ожидаем увеличения наших затрат и расходов в будущих периодах, что может негативно повлиять на наши будущие результаты деятельности, если наша выручка не увеличится на суммы, достаточные для компенсации таких затрат и расходов.
>>695238 Потому-что они много сил тратили на бесполезную херню уж простите, привет DOTS. Стабильные релизы редки, и все еще есть баги и неправильные решения тянущиеся с версии 3 2009 года.
>>695303 На бесполезных СВЖ сотрудников, чтобы типа соответствовать трендам. Набрали бесполезных негров, трансов и баб, которые на уровне развития наших Кириллов из 10 (б).
В чем подводные реализовать таймер в фиксед апдейт? Если она вызывается фиксированное кол-во раз, можно точно знать значение какого-нибудь int через секунду, две, три и т.д.
Анонс, помоги. Ковыряю чужой кодец. Он в свою очередь тянет либу из гитхаба (unity tiles)
И я вот не пойму что вот тут надо сделать. EditorType - перечисление, которое находится в Assembly-CSharp Никаких пространств имен и подобного там нет.
Ошибка же в том что проект Assembly-CSharp-Editor-firstpass не видит этот EditorType
Мои скудные знания шарпа говорят мне что в Assembly-CSharp-Editor-firstpass надо проставить refference на Assembly-CSharp. Но я не знаю как (там просто нет кнопки добавления референсов)
>>695348 Чё ты там стрелочками намазюкал чудо в перьях? Скинуть лог ошибки, более подробное описание взаимосвязи файлов в проекте, никак не мог? Нихера не знаешь, сделал вывод, написал чушь, и просишь погадать на молочке? Всё хуйня, давай по новой.
>>695657 >Чё ты там стрелочками намазюкал чудо в перьях? EditorType объявлен в Assembly-CSharp. Но он также используется в Assembly-CSharp-Editor-firstpass.
И вот оно не работает. В ошибке так и пишет что не найден EditorType и примечание что возможно я не указал reference.
>>696104 К твоему сведению, мировая геймдев индустрия следует тренду толерантности и терпимости. Электроники, Юбики, Дайс - все топовые компанию придерживаются этой политики. Отсюда я считаю, что и у нас в треде должны ее придерживаться.
Кто-нибудь хочет сделать приложение для заказа еды, покупки вещей и прочего на Unity? Суть в том, что это выгодно, таких заказов на фрилансе полно, и платят прилично, а если нашим предлагать, то цену вообще до 200к можно взвинтить.
>>696115 Давай так. Я беру заказ, ты выполняешь, отправляешь исходники, и я тебе плачу все бабки, сейчас предлагают 30 тыс. рублей. Но нужно учитывать что сайта нет, и придется еще бэкенд писать.
>>696199 > Поэтому все книги со светлыми темами? Бумага в производстве белая. Ну, технически не совсем белая, но ты понел. И в производстве типографии ебашить чёрными буквами на белой бумаге — на порядок дешевле, чем белыми на чёрной. Так-то в электронных книгах чёрные темы есть.
>>696319 Хз насчет DOTS, там же нет гибкости и динамики, если только делать простые прототипы. Я бы еще понял если звуки, физика и графон на ДОТС, а логика с 'наследованием/композицией/как есть', но это даже звучит как костыль на костыле. На дотс например можно сделать диабло-подобное гавно со скилами и предметами? Если можно - есть ссылка? Я только и вижу что на дотс делают "Ы СМАТРИТЕ МИЛЛИАРД САЛДАТОВ УДАРЯЮТСЯ ДРУГ ОБ ДРУГА" и ничего сложнее. Еще тайкуны какие-нибудь где тоже все можно описать 2-5 компонентами без гибкости.
>>696398 Нет понятия что "должно" быть в скобках а что "не должно", функция делает одно и то же, самый короткий способ записи с "треугольными скобками", вот его и юзай.
Что не так с этой конструкцией? После пересечения с двумя тригерами переменные mark1 и mark2 становятся true и должно вывести сообщение, что снаряд попал в цель (GOAL), но блядь этого не происходит. Я в упор чего-то не замечаю или что?
Все действие, включая присвоения mark1 и mark2 трушного значения происходит в OnTriggerEnter если это важно
>>696360 Мань, дотс это надстройка к нативному шарповскому ТРЕАДС, для того чтобы многопоточность можно было использовать с основным юнитивским потоком, где идет экзикутив ордер, не поломав при этом сам движок. В остальном там доступен весь функионал. Можешь че угодно напидорить. Определенная ебистика конечно будет, это цена за то что ты юзаешь готовое двигло.
>>696398 Что конкретно непонятно? В треугольных скобках указываешь тип, в круглых ниче не пишешь, т.к. функция геткомпонент не принимает аргументы. например:
void Start() {var t = GetComponent<Transform>();}
Означает, что на старте переменной t будет присвлена ссылка на трансформ объекта в сцене, где висит этот код в качестве компонента. Чтобы не генерироваиь мусор для GC, лучше использовать TryGetComponent.
>>696712 Мань, это работа с регистрами процессора напрямую и постоянное прогон данных из clr в нейтив до процессорного уровня. Это всё работает пока у тебя одна конкретная не сложная цель. Ты бы лучше скинул пример сложного проекта как я просил, а не херню писал.
Еще в бурсте хотели запретить использовать статики, не знаю запретили уже или нет.
>>696713 Можно вроде писать в скрипте [RequiresComponent(typeof(Rigidbody))] И тогда скрипт не прикрепится к объекту в котором нет этого компонента. Но мб если его удалять во время работы.... Хотя в он старте же обычно его достают. >>696398 В бриллиантовых скобках - тип компонента что нужен, в круглых всегда пусто. Просто зазубри это, понимать не надо.
Есть ли хоть примерные формулы, по которым можно конвертировать фпс со среднего ПК до среднего андроида? Вот на компостере 1000 например, сколько тогда будет на андроиде
>>696725 Скачай андроид студию и запусти эмулятор андроида. Я так свое гавно тестировал, потом к своим телефонам по usb тоже кидал и дебажил, оч удобно.
>>696723 RequiresComponent просто будет добавлять этот компонент если его еще нет. Если его нельзя добавить по какой-то причине, то скрипт с RequiresComponent нельзя будет добавить на ГО. >В бриллиантовых скобках Роскошно
>>696713 >Чтобы не генерироваиь мусор для GC, лучше использовать TryGetComponent. Так погоди, обычный ГетКомпонент может не вернуть запрашиваемый компонент, даже если он есть на объекте? И что такое >мусор для GC ??
>>696726 > Скачай андроид студию и запусти эмулятор андроида. Оно хуево работает с юнити, недавно хотел запустить прямо с юнити в эмуляторе. Хуй там. Надо через жопу что-то там подключать, настраивать. Заебался и просто на телефоне запускал. Конечно можно просто апкашки кидать вручную, но это ультра анархизм в 2020.
Игрок + Уровни + ГлавМеню = Проблема
Аноним01/09/20 Втр 13:53:16№696739368
Посоны, второй день петушусь с DontDestroyOnLoad в контексте с ГГ игры в связи с прекрутной главного меню. Какой-то пиздец, рассудите:
Сперва у меня была одна сцена где был игрок и весь код. Два корневых объекта Player + Src. К Src прикручены всякие дочерние объекты и компоненты с менеджерами звука, pooling-а, менеджер ввода и все что нужно в единичном экземлпяре. Оба объекта я пометил как DontDestroyOnLoad.
И есть куча сцен-уровней с точкой входа, вроде level_desert.unity, level_snow.unity итд. И я подгружал раньше в сцену уровня сцену где игрок. А при переходе между уровнями просто грузил другую сцену, а игрок и Src так как помечены не уничтожались. Работало это вполне нормально. Но вот что произошло.
Стал я прикучивать Главное меню, загрузку и сохранение. И начались проблемы. При выхода из игры обратно в главное меню игрок никуда не исчезал. А бегал рядом с кнопочками. Так как он помечен DoNotDestroyOnLoad. Пробовал его делать неактивным, сперва работало, но при загрузке уровней снова... гхм... короче инициализация явно на него не расчитана.
Пробовал по другому, прибивать игрока и Src напрямую Destroy-ем. А при старте игры создавть заново. Криво-косо заработало, хотя в коде много статических переменных и синглтонов которые не ожидали что игрока и все базовые системы будут создавать заново. Убрал синглтоны поправил вылезжие NFE ... вроде это говно заработало... нооо.... сука как-то стремно. Так как код писался уже долго и явно был не расчитан на повторную инициализацию да и еще всякие LoadSceneAsync. Мне припекает что от простого добавление Главного Меню приходится так коренным способом менять код, что возможно неочевидными багами повторной инициализации.
Мои вопросы: 1) В юнити вообще есть стандартное решение для связки Главное_Меню - Игрок_с_Главкодом - Куча сцен-уровней? Не может же чтоб я первый кто столкнулся с этим цирком ебаным? Какие есть best unity praxis на этот счет?
2) Может сделать игрока префабом и все корневые системы. Тогда (вроде) их и отдельной сценой подгружать не придется. Хотя я немного не уверен не сломаю ли что-то если буду здоровую сцену с кучей менеджеров и игроком переводит*ь в префаб. Но попробовать можно, только коммит сделаю сперва.
3) Может все таки не надо уничтожать сцену в ноль а просто SetActiv(false) ставить. Проблема в том что игра на такое явно не расчитана. И оказалось легче все к ебеням прибить и создать заново чем деактивировать. Правда в коде надо не забыть все ссылки-списки обновить которые статические. А то яж думал что InputManager всегда будет 1 и всё. А тут выходит что его прибивают.
4) Может ну его вообще нахуй. Запихнуть главное меню и игрока в одну сцену и деактивировать уже меню. Конечно плохо что тогда игра по началу грузиться будет дольше. Но вроде игрок весит не особо много. Зато можно при старой схеме остаться. Эх знал был что добавление Главного Меню такая хрень делал бы с самого начала, просто казалось что это всегдав конце за неделюьку прикрутить можно, ничего важного.
5) А может вообще ну нахуй совсем возможность из игры возвращаться в главное меню. Нахуй это надо? Проблем с этого реиницализации куча. А нахуя игроку туда возвращаться? Хочет выйти пусть выходит. Хочет настройки поменять или загрузиться: все можно из меню паузы. Разве что титры посмотреть лол. Но как-то хуй знает, принято давать такую возможность в играх "выйти в главное меню". Ну и плюс может когда загрузку/сохранение буду прикручивать все эти проблемы реинициализации все равно снова выползут такого же рода так что если их все равно решать то почему бы и не дать такую стандартную возможность. Ну плюс иногда в настройках главного меню есть что-то что не доступно в настройках из меню паузы. Хотя мне всегда это старнным казалось.
>>696737 В билд сеттингс (или где-то там) можно выбрать платформу андроид и кнопка build & run при подключенном телефоне сразу через adb shell кидает апк на телефон и запускает. Так правда лучше т.к. ты сразу увидешь много проблем, которых на ПК вообще нет.
>>696739 До того как начал читать вопросы, хотел предложить тебе синглтоты с дженериками, очищать их на OnDestroy и все. 1 - На моем опыте люди используют OnDestroyOnLoad только для сети (NetworkManager какой-нибудь), либо ты хранишь struct даты т.е. набор простейших свойств. Кидать сложную логику по разным сценам это риск и ты вляпался в проблему этого риска. Я вообще использую 2 сцены: 1 - меню, 2 - игра, и в сцене игры у меня LevelLoader-ы, которые жрут мои данные, для создания сцены. 2 - Переводить переиспользуемые компоненты из разных сцен в префабы можно. Ты даже можешь наоборот объединить этот пул и игрока в префаб и расставить его в каждой сцене. 3 - Много мест за которыми нужно следить, опять риски, опять огребешь проблем в будущем. Я использую SetActive только для пул-объектов (не для самого пул менеджера) и то перед этим вызываю метод ClearPoolElement на каждом инстансе. 4 - Сделай через AsyncLoadScene и пусть игрок смотрит на загрузку уровня на 1 секунду больше, зато это будет работать как часы. Я бы еще раз пересмотрел, стоит тебе тянуть эти данные через все сцены или нет. 5 - Это костыль, если ты его используешь - велик шанс, что появится другая похожая проблема и тебе придется вообще все переделывать или делать ЕЩЕ один костыль (а потом переписывать весь проект)
Если Юнити бесплатная, то нафига ее раздают на Рутреке? Правильно ли я понимаю, что это только для того чтоб можно было пиратить ассеты? Что будет если я замучу что-то на пиратке с пизженными ассетами, а потом решу выложить это в Стим?
>>696762 на сайте должны быть различия если ты сделаешь чето нормальное на пиратке с пизжеными ассетами, лучше перед выкладыванием в Эпик Стор купить все ассеты и лицензию юнити
>>696766 >лучше перед выкладыванием в Эпик Стор купить все ассеты и лицензию юнити В самой игре ничего после этого редактировать не придется? Просто купить и всё? Как это работает?
>лицензию юнити Зачем? Я не претендую на доходы свыше 100 килобаксов в год
>>696767 >В самой игре ничего после этого редактировать не придется? Просто купить и всё? Как это работает? Тут я не знаю уже. В анриале пользуюсь только самодельными, фришными + купил несколько скриптов за бесплатные деньги от эпиков.
>Я не претендую на доходы свыше 100 килобаксов в год Тогда ты можешь юзать фри версию
>Это шутка такая? Нет, я серьезно - разработчикам гораздо выгоднее издаваться в ЕГС
>>696759 > В билд сеттингс (или где-то там) можно выбрать платформу андроид и кнопка build & run при подключенном телефоне сразу через adb shell кидает апк на телефон и запускает. Так правда лучше т.к. ты сразу увидешь много проблем, которых на ПК вообще нет. У меня не видело. Мб из-за того что я на линуксе, хз. Но телефон мой видело.
>>696772 Двачую вопрос, но реквестирую легальные сайты. Знаю где картинки брать: flaticon (вроде .com) Ассеты вроде есть прямо в ассетс сторе, но мб есть другие огромные топ сайты?
Гайс, кто шарит за запекание света, подскажите пж: пеку статичную сцену и все цилиндрические объекты запекаются некорректно. С моей говноразверткой появляются черные полосы на стыках полигонов и в режиме отображения лайтмапы видно, что на этих стыках скейл не совпадает, а если корректно развернуть, то энивей объект получается весь темный. Скрины смогу только завтра скинуть, но может уже по этой инфе кто-то может совет дать? Распишите пошагово процесс импорта для корректного запекания, пж.
>>696762 Раньше это делали чтобы использовать темную тему и убрать лого при старте, сейчас только из-за лого скорее всего. Я сижу на персонал версии года 4 и без проблем юзаю "пирацкие" ассеты (ассет это всего-лишь архив, тебя никто не вычеслит).
>>696805 При поиске чего-либо лучше все кешировать т.к. любое обращение к internal-стейту движка будет медленным. Можешь вспомнить истории про transform и всеми любимый GetComponent
>>696720 Че за херню ты несешь, маня? При чем тут просто/сложно когда вся суть в том, чтобы отойти от приципов ооп и использовать только вэлью-тайп, чтобы оперировать чисто стеком для максимальной проивзодительности? Дотс позволяет использовать юнитивский апи, в то время как нативный ТРЕАДС - нет. Соответственно, если руки не из жопы и в бошке не насрано вместо мозгов, ты можешь любой функционал запидорить. Другое дело, что на юнити в основном даунята типа тебя работают, либо профи со всякими пилларс оф етернити, где эта дотс нахуй не упала. Вооьше, как миниму на дотс можно сделать игрульку по типу зей а билионс, там типки нахуярили ее простоина сишарпе с классической треадс, но теперь не могут ее портировать ни на че, потому как дотнет только под виндой пашет, а на юнити с дотс могли бы в два клика на все платформы захуярить.
>>696723 > Можно вроде писать в скрипте [RequiresComponent(typeof(Rigidbody))] > И тогда скрипт не прикрепится к объекту в котором нет этого компонента. Но мб если его удалять во время работы.... Хотя в он старте же обычно его достают. Можно. Но это из другой области тема, чисто чтобы предотвращать исключения когда повесил код, требующий компонент, которого нет на объекте. Чтобы в том числе и этой еботни избегать и был придуман трайгеткомпонент, вместо старого-доброго геткомпонента.
>>696736 > Так погоди, обычный ГетКомпонент может не вернуть запрашиваемый компонент, даже если он есть на объекте?
Нет. Если компонент есть, гк Геткомпонент его вернет. Но при возврате он все равно сгенерирует мусор. Гугли trygetcomponent, там расписано почему лучше его ичпользовать. > И что такое мусор для GC ?? Ссылки на несуществующие объекты - очищенные ячейки памяти, которые GC (garbage collector - сборщик мусора) время от времени удаляет, т.к. во время удаления все процессы в потоке тормозятся, на слабых кудахтерах это может вызывать микрофризы, особенно когда дохуя таких битых ссылок набралось. Надо стремиться чтоб битых ссылок вообще не генерировалось, т.к. их наличие - свидетельство утечки памяти, что является признаком хуевого кода. Когда в рантайме используешь TryGetComponent вместо GetComроnent, мусор не генрируется. Когда все данные кэшируешь, мусор не генерируется т.д. Ну и есть хитрости типа в игровых паузах принудительно запускать сборку мусора, чтоб для игрока не было неудобств.
На крестах, например, встроенрого сборщика мусра нет, поэтому утечки памяти там для начинающих погромистов очень большая проблема. Да и для опытных тоже.
>>696816 >Раньше это делали чтобы использовать темную тему и убрать лого при старте, сейчас только из-за лого скорее всего. >Я сижу на персонал версии года 4 и без проблем юзаю "пирацкие" ассеты (ассет это всего-лишь архив, тебя никто не вычеслит). Спасибо.
>>696817 >дотнет только под виндой пашет уже года 2 как нет, так что тут ты обосрался >Дотс позволяет использовать юнитивский апи, в то время как нативный ТРЕАДС - нет Бля, я не хочу тебе второй раз повторять как оно по факту работает, сам прочитай и возвращайся, ок? >зей а билионс Перемещение, атака, жизни - 3 простейших компонента, ничего гибкого или сложного не вижу.
Вместо пустозвонства, ты мне дашь конкретный пример или только и будешь маней называть?
кто-нибудь вставлял свои шрифты в textmesh pro? я имею в виду через текстуру. заебался искать инструкцию и похоже что нужно создавать реальный шрифт ttf и его конвертировать. а мне, например, нужны только цифры. есть какой-то способ всрать свой шрифт и при этом не использовать спецсимволы для того чтоб им писать
>>696899 шляпа тут в том что он берёт arial.ttf в этой документации и конвертит в формат понимаемый tmp. а мне надо чтоб я на бумаге рукой начеркал 10 цифр, сфотографировал и запихнул в tmp без того чтоб ебаться над тем чтоб отконвертировать его сначала в ttf, а потом уже в формат tmp
Пытаюсь изучать Курантины, вот этот скрипт кидаю на кубик, он должен двигать его и увеличивать каждую секунду на 1/10. Но увеличивается он просто мгновенно и бесконтрольно. Почему?
>>697025 Метод Update срабатывает примерно 60 раз при 60 fps. Т.е. за 1 секунду ты 60 раз запускаешь свою коротину. Что можно сделать? в методе fade сделать цикл while(true) и запускать коротину в методе Start вместо Update
>>696954 такое можно делать стандартными средствами юнити, но я планировал использовать tmp. подправить какую-нибудь залупу в шрифте и не делать две ебучих конвертации это не "дохуя хочешь"
>>696759 Спасибо, тоесть ты предлагаешь главное меню и игрока с кодом главным запихать в одну сцену. Может это и хорошее решение.
Ну тоесть у игры есть две загрузки: 1 сплеш скрин, главное меню, а затем загрузка конкретного уровня (у меня она на две части сцена игрока + сцена уровня). А если объединить то игра дольше будет на сплеш скрине висеть не заходя в главное меню. Хотя принципиально это ничего не поменяет. Игрока-то грузить в любом случае надо будет.
Делать здоровенную иеархию префабом немного ссыкотно и потом копировать по всем уровням.. хотя вот тогда уж точно не надо будет подгружатъ сцену игрока, а тупо загружать 1 уровень и всё. А как вставить префаб в этот уровень уж пущай юнити ебется. Ох... раньше надо было такие вопросы решать. Сейчас когда уже игра-то почти готова и пора на всём готовом уровни клепать только как-то ссыкотно такие вещи делать. с другой стороны... вообщем попробовать можно. главное коммит сделать.
Можно ли на юнити реализовать геологию? Обычно в играх рельеф - это просто поверхность. Если я хочу, чтоб эта поверхность была образована не просто единой сеткой, а различными массивами пород со структурой по глубине можно ли это сделать? Или под такое специальный движок нужен?
>>697095 В идеале нужно выгружать ассеты и префабы, которые тебе не нужны, будет на перформанс сказываться (но возможно оч мало, если у тебя мощный пекарь). Вообще если у тебя игра готова, сделай меню на костылях и забудь как страшный сон, такое бывает, главное в следующей игре с новым опытом сделать сразу как надо.
>>697112 Любой воксельный ассет бери и всё. Тот же майнкрафт по сути как-раз "террейн с породами"
>>697208 >Любой воксельный ассет бери и всё. Тот же майнкрафт по сути как-раз "террейн с породами" Но я хочу стратегию, а не майнкрафт. Соответственно нет необходимости каждый кубик просчитывать. Плюс графон с кубами - такое себе.
>>697223 Имею в иду что "породы" не обязательно вообще должны быть физическими объектами, а могут быть просто зонами в пространстве, хотя хз как их тогда визуализировать.
Привет. Хотел спросить может кто знает как орагнизовать на юнити передачу файлов на сервер и с сервера? Хочу сделать возможность загружать и скачивать карты. (Сейчас все друг у друга на прямую качают)
Аноны, срочно нужна книга по C# и Юнити, делегаты, хуегаты, ООП, паттерны, вообще все фишки, которые мне как мидлу пригодятся в работе. Пригласили на интервью с зп 100к, нужно все это нагнать, хотя игры умею делать, но все равно хочу базу расширить.
>>697262 Все норм, но зачем нужен Хокинг? Что там может найти разраб который с Unity больше 3 лет работает? Было бы неплохо найти книжку где все фишки C# используются в Unity на примерах, но походу придется самому все это переносить.
>>697269 > но зачем нужен Хокинг? Ну ты или не ты сам попросил книгу про юнити. Хокинг как раз объясняет чего там куда делать. Если ты знаешь юнити лучше, чем шарп, то дрочи шарп.
>>697272 В смысле не все, а как же основные, полиморфизм, инкапсуляция и наследование. А как же все те паттерны, которые тоже можно использовать, если найти им применение. Я тоже раньше думал, что это КОП, но когда не знал, что такое ООП, может быть так оправдывал себя, что оно не нужно.
Смысл в этой туфте? Запомните, если у вас мечта сделать игру, делайте, не надо изучать как закодить движок, кучу заумных слов, смотреть часовые видосики на ютубе, читать лекции по с#, и т.п. ПРОСТО берёте и делаете. Никаких поблажек в виде ну вот посмотрю видосик для мотивации, или пример как сделать игру в 20 частях, БЕРЁТЕ и ДЕЛАЕТЕ. Все кто пишут иначе, не сделали не одной готовой игры, и хотят лишь отнять у вас время, и мотивацию. Сделать игру просто - нужно лишь хотеть и делать. Есть готовый инструмент Юнити, всё, делай что угодно, вообще всё.
Объясните нюфагу, что за хуиня. Сделал стартовую сцену, налепил на нее пару 3д объектов, и поинт лайт. На компе отлично смотрится, перекидываю на андроид, а там все в 10 раз темнее. Почему так? Есть ли какие-то универсальные настройки, чтобы на всех девайсах смотрелось более или менее нормально?
>>697342 Смотришь в андроид ките на компе, ставишь нужную модель. Если там всё ок, значит в телефоне залупа. По другому не может быть, либо косяк в билде с шейдарами, либо в телефоне.
Хочу сделать turn-based игру на фотоне. Кто-нибудь с опытом есть? Могли бы объединиться, доходы должны быть большими, если к тому же будем продолжать делать в таком жанре и другие игры.
>>697343 Бля, походу проблема была в том, что я чистый jpg натягивал на объект сразу. Сейчас сделал сначала материал, ему как альбедо присвоил этот jpg, после этого натянул на объект и уже нормально. Правда параметр металик плохо работает, он все равно намного темнее смотрится на телефоне чем на кудахтере.
>>697348 Давай сделаем, дизайнер есть. Я костылями на протяжение двух месяцев делал, создавал объект каждого игрока и через RPC передавал данные и забил когда баги посыпались, когда устроил тест с другими людьми, а не с одного железа.
Народ, вы уровни из пропсов сначала в 3д редакторе собираете, а потом в юнити импортируете или сначала все отдельно экспортируете, потом в юнити собираете уровень?
Посоветуйте способ, как лучше сохранять пользовательские настройки. Ну там, громкость, чувствительность и прочее. Игра простая, так что и способ нужен самый простой. Настройки пользователя у меня хранятся в статическом публичном классе, так что мне надо сохранить класс в таком виде, какой он есть, но вроде статичные поля и классы нельзя сохранять
>>697415 Моделей там нет, обычная игра наподобие монополии. Пока всё в голове, дизайнеру если скажу, он все сделает, но можно демку и на стандартном UI сделать.
Как лучше всего хранить группу мешей в префабе? Просто добавить дочерние геймобжекты к главному? Или лучше в скрипте главного геймобжекта их закэшировать? И то, и другое делается до старта игры.
>>697505 Ты же в курсе что все механики и передачу надо будет делать кодеру? Если всё делать на стандартном юи без графики, что вы будете делать, или зачем тогда нужны?
Приветик всем. Если я хочу попробовать себя в лвл-дизайне и выбрал юнити для работы, то обязательно ли мне Си шарп? Или мне хватит самого юнити и пачки готовых моделек? Как я понял, ЯП нужен для скриптов. Возможно, еще для каких-то внутренних механик, типа, учета сопротивления брони при ударе и прочего. Или я вообще не прав и мне надо все сразу: и 3д, и C# и все остальное?
>>697551 Без с# ты сможешь - расставлять, подгонять, редактировать 2д, либо 3д, но чтобы появились механики, даже самые простые, как движение картинки/обьектов, меню, нужны будут либо готовые ассеты, либо копипаст кода с гугла, в любом случаи придётся изучать с# поверхностно чтобы можно было связывать лапшу кода вместе и всё это дерьмо работало. Исключение лишь если ты просто лепишь уровень и летаешь в редакторе, но тогда кроме тебя твою игру никто не увидит.
>>697555 Делается это правильно так - в файле(не в скриптах) хранятся все текстовые значения(строки), из него парсером переносятся в память, из памяти в нужные места, никакого извращения со словарями или хранения текста в скриптах не надо, это ужасно.
>>697558 >ужасно А что ужасного? У хранения в тексте я вижу только один минус: чтобы подправить текст, придется заново игру компилить, а так можно было делать правки в текстовом файле. Ну, и с помощью внешнего файла можно запилить мультиязычность, чтобы кто-то мог добавить перевод для своей страны.
>>697558 А вообще, я решил для первой игры особо не заморачиваться, пишу по принципу: работает? не тормозит? Ну и заебись, пусть так и будет. А проблемы решать по мере их поступления. Все же для меня это как хобби, а не работа. Там пожалуй бы дрючили по всем статьям.
>>697568 > А вообще, я решил для первой игры особо не заморачиваться, пишу по принципу: работает? не тормозит? Ну и заебись, пусть так и будет. > А проблемы решать по мере их поступления. Опасный подход, у меня при таком подходе неизбежно и быстро наступает момент, когда проект запутан и я сам уже нихуя не понимаю, как что работает. Но это всё индивидуально. Если у тебя работает - делай так. Мне же увы нужен чоткий диздок, именованные константы, самодокументируемый код по гайдам и паттернам. > Все же для меня это как хобби, а не работа. Там пожалуй бы дрючили по всем статьям. И ЧСХ, у меня тоже хобби и на галерах не работал дольше испытательных сроков.
>>696824 > маня путает кор с дотнетом и чето еще кукарекает Акстись, долбаеба кусок, ты уже обоссан в три слоя. Иди документацию читай внимательней чтоб хуйню не нести потом, животное. Далее по играм, все игры это простое гавно с параметрами типа жизнь, скорость, направление, еб твою мать. Ну и формулами из расчета. Это все легко дотсом делается. Никто ж не виноват что ты криворукий еблан.
>>687775 (OP) Ахуеть, я в оп-посте! У меня прогресс небольшой, если кому интересно. Боёвку почти доработал, анимацию атаки "сложную" сделал, систему звуков, поиск пути нпс поломал.
блять, анон, что за хуйня? Устанавливаю JDK через юнити, загрузка идёт, вроде всё нормально, но в итоге он нихуя не устанавливается. И непонятно почему
Какой-то косяк с физикой. Сперва сделал сцену с мячом, он прыгал нормально. Сделал в другом проекте такую же сцену, но в ней мяч как-будто в киселе плавает, при том что все параметры риджидбади, коллайдера, физического материала одинаковые. Может я чего-то не заметил? Из-за чего может быть такое поведение?
Думаю, как лучше реализовать приседание. Делаю игру в духе аутласта, от врага надо будет прятаться. Я бы хотел, чтобы за каждым объектом можно спрятаться так, чтобы голова (камера) немного торчала, чтобы можно было наблюдать за перемещением врага. Но у таких объектов может быть разная высота, шкаф, тумба, стол, то есть, если я сделаю приседание на фиксированную высоту, то где-то голова будет торчать, а где-то - полностью скроется, так что врага не будет видно. У меня пока две идеи, как такое реализовать. 1. Персонаж начнет приседание, пока будет нажата соответствующая клавиша (ctrl). То есть, чтобы игрок полностью присел, нужно удерживать кнопку какое-то время, например, 2 секунды. Если я удержу кнопку 0.5 сек, он присядет на 40 см. Вставать тоже можно постепенно (например, пробелом, прыгать в игре нельзя, так что эта клавиша не используется), или быстро, например, если два раза нажать. Чтобы игрок знал, что он присел, будет иконка 2. Вычислять, какой высоты объект перед ним, и в зависимости от этой высоты рассчитать, на какое расстояние отпустить камеру и коллайдер. Пока что мне больше нравится первый вариант, так как его реализовать легче
>>697755 Да. Мне, кстати, игры от 3-го лица вообще не нравятся. Всю игру смотришь на мужскую жопу, ладно, если там няшная баба вроде Лары, то ок. И вообще, мне нравится быть сосредоточенным на игровом мире, а не на туловище персонажа. А ведь в таких играх персонаж на самой середине и занимает большую часть экрана.
>>697756 Да и вообще, в чем смысл этого третьего лица? Сильнее отождествляться с игроком? И показывать, как он классно двигается, дерется, ныкается в углах?
>>697756 Ну вот ты видел где-нибудь реализацию твоей идеи в других играх? Либо это нахуй не всралось, либо пиздец геморрой с кучей ненужного говнокода и проще объекты под модель персонажа подгонять.
Мне нужно, чтобы показывалась подсказка при срабатывании триггера, то есть, например, я помещаю в это окно метод (триггер) и когда он вызывается, то подсказка выскакивает. Думал, что с помощью событий можно сделать, но нихрена, там же ведь обратный процесс. Есть у кого идеи?
Ладно, оставлю как у меня уже реализовано. Можно только очень низко присесть одним простым нажатием кнопки, что даже за тумбочку можно спрятаться. Возможность выглядывать сверху из-за объекта не реализовываю. Но можно выглядывать влево или вправо, нажатием Q или E.
>>697891 C момента 2018 до 2020 текущего вышло овер 10500 патчей, зайди на оф сайт посмотри ченджлог, так пиздос сколько всего менялось и правилось, я шарю за это. 2018 прошлый век.
А можно тупо растянуть этот контент так, чтобы он всегда принимал высоту и ширину родителя. А то он или выходит за рамки, либо сверху и снизу остается пустое пространство
Сосонг обьясни, почему в юнити разрешение нормальное и все буквы читабельны пик1, а на телефоне всё становиться абсолютно нечитабельным пик2 Разрешение в юнити стоит портретное 1080x2160, настройки канваса пикрил3
>>698050 Разрешение моего в портретке 1080х2280, это вакаба качество режет, вероятно. Но суть дела не меняет, в юнити картинка выглядит нормально, а на телефоне шакалит буквы и всё прочее
>>698231 Сейчас я на 145 странице из 466. На данный момент всё очень даже неплохо, достаточно подробно объясняется. Единственное что: эта книге будет полезна если ты слабо знаешь Unity, как мне кажется, ибо она рассчитана, что ты вообще ничего не знаешь
>>687775 (OP) Подскажите ньюфагу как вместе с кем то делать проект но чтобы не пересылать друг другу кучу файлов и не ждать очереди? Желательно бесплатный вариант.
Как лучше включать/выключать текст на экране? Я сделал это через GameObject и SetActive, соответственно на нужном этапе игры включаю нужный объект с текстом. Но может можно более оптимизированный способ? Использую кстати TextMeshPro
А можно ли с помощью этой штуки все эти Objects For Packing экспортировать в одну картинку? То есть, получить картинку, где будет изображено то, что появляется внизу по нажатию кнопки Pack Preview. (скрин с гугла)