24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!
Такой вопрос: как лучше всего синхронизировать событие анимации? Например, нужно создавать пулю после анимации выстрела. Как это сделать? В идеале я хочу чтобы было что-то вроде корутины yield return StartCoroutine(Fire());
>>184858 > чтобы было что-то вроде корутины yield return StartCoroutine(Fire()); Надудонил тебе на лицо. Первый вариант - смотреть воспроизводимую анимацию [CODE]AnimatorStateInfo currentState = GetComponent<Animator>().GetCurrentAnimatorStateInfo(1); if (currentState.fullPathHash == Animator.StringToHash("layer.statename")) { YobaFunktciya(mamku, ebal); }[/CODE] Второй вариант - нахуярить в аниматоре скрипт на событие, чтобы в onStateExit было переключение переменной [CODE]if (GetComponent<Animator>().GetInteger("tolshinamamki") >= 1000) { YobaFunktciya(mamku, ebal); }[/CODE]
Перезадам вопрос в пересозданном: есть 2 (или более) почти одинаковые модели, с ригами и вся фигня. Разница в том, что одна "голая", другие "одетые", как "одеть" "голую" используя части "одетой"?
>>184954 Не получится. У меня такой код: while (this.amountOfAttack > 0) { for (float i = 0; i < this.attackSpeed; i += Time.deltaTime) { yield return null; }
>>184970 Ты хочешь в игре как-то вырезать часть 3д-модели и присоединить к другой? Ты что, ебанутый? Это не так делается. Это делается через модульность: т.е. одежда - это отдельные модели
>>185001 Ну я вот и спрашиваю "как?". Пока я не понял, что из себя должна представлять одежда, и как её прикреплять на модель тела, так чтобы она анимировалась вместе с ним. Есть туториал?
>>185286 Хм. Вот я смотрю на ассет морф3д, и они там делают так: все меши сразу на одной модели, а потом скрывают/показывают нужные. Вариант конечно, но мне чёт кажется топорно это, хотя кто я такой, по сравнению с ними.
>>185289 Ну бля, все обычно делают голую основу. И на нее навешивают уже меши одежды. Анимируется все это по костям самой основы, поэтому бесит, что стальные кирасы гнуться как какие-нибудь майки. Серия тес, почти каждая сетевая дрочильня с кастомизацией шмоток, да сотни их. МИРОВАЯ ПРАКТИКА.
>>185326 Ну это понятно, вопрос в том, как оформить кусок одежды, как отдельный префаб, при этом, чтобы его можно было насадить на префаб тела, и одежда получила анимацию.
>>185336 Префаб и не нужен, особенно если делаешь игру один, хватит простого скрипта, ну только если ты умеешь в код. Ты скажи чего точно хочешь, я расскажу как оптимальней этого достичь.
Кто-нибудь уже счупал новый встроенный мультиплеер Юнити? Насколько я понял, полностью он заработает в 2016. К этому времени реализуют все основные фишки.
Юнитаны, есть один GlobalFog на камере. Как получить к нему доступ из другого скрипта? GetComponent<GlobalFog>() нихуя не даёт, ведь The type or namespace name `GlobalFog' could not be found. Что делать?
>>185338 Я хочу, иметь модель тела, клепать на неё одежду, и потом одевать, при этом, чтобы аватар тела её анимировал. Т.е. обычная переодевалка персонажа, как в симах например.
Вот сейчас, у меня такая проблема: SkinnedMeshRendere не рендерит меш. Я пробовал и просто отрывать кусок от модели и закидывать в сцену, и создавать пустой гейм-обжект и закидывать туда меши, но отображения нет. В первом случае меш пропадает как только нажимаю плей, а во втором вообще сразу нифига нет. Всё это делаю просто через едитор, не в скрипте.
>>185388 Так, ладно, что-то получилось зафигачить через пустой геймобжект - меш есть. Но кости не подхватывает, просто клеится к части тела криво и висит.
>>185393 Бля, короче, как я понял, вариант только - сделать модель, которая будет заранее разбита на определенные участки, которые будут представлять из все возможные вариации модификаций, и потом уже на нужный участок натягивать нужный меш.
>>185388 > иметь модель тела, клепать на неё одежду, и потом одевать, при этом, чтобы аватар тела её анимировал Нахуя? Отрезаешь в своём блендере тело от скелета, накидываешь на скелет свою одежду, делаешь риг. У тебя получается куча одежды с анимациями, потом вешаешь туда контроллер от персонажа и скрываешь с сажей ненужное. одежда.позишн = игрок.позишн; одежда.парент = игрок.трансформю
Поцантре, есть один проект, и я в него ебнул чисто для чтения через скрипт пару десятков текстовых файлов. В сборку эти файлы, видимо, не попадают. В редакторе всё работает. Что можно такого зделоть, чтобы такие файлы тоже собирались?
>>185466 Чёт не понял. И вообще, если и понял хотя бы немного, то вопрос, как заставить аниматор анимировать 2+ скелета (ведь у каждой одежкий свой скелет?)? Или иметь несколько аниматоров, но это стрёмно как-то.
Анон, раньше ЯП не изучал. Решил начать делать игры на Unity. да, я знаю что у меня получится одно говно и я сам говно Так вот, у меня два вопроса: 1. Есть нормальные туторы на русском для юнити? 2. Что изучать как сценарный язык? C# или JS? Второй вроде легче, но первый функциональные? Какой лучше учить, если я буду клепать клоны террарии и морровинда?
Привет игроделы. Начал я тут изучать новую сетевую плюшку от юнити, и возник у меня такой вопрос: можно ли отделить сетевые скрипты клиентов от скрипта сервера? Какие туторы не читал, везде пихают все в один скрипт и суют дурацкие проверки типа if(isLocal) и т.д. Может кто-нибудь показать элементарный пример взаимодействия клиентов с сервером с разделенными скриптами?
TextAsset text = Resources.Load<TextAsset>("1.txt"); System.IO.StreamReader sr = new System.IO.StreamReader(new System.IO.MemoryStream(text.bytes)); Debug.Log(sr.ReadLine());
>>185709 С юнетом короче дела обстоят так: пока нет отдельной либы для сервера, придется писать с if(isLocal) и т.д., ибо возможно только взаимодействие уровня клиент-клиент. Для авторитарного сервера нужна отдельная либа по-хорошему не будешь же ты запускать клиент в хедлес-моде на своем сервере которая у юнитеков пока только в планах - обещают зарелизить в 5.4, которая будет аж 16 марта 16 года. Так что либо страдай, либо жди.
Анон пилю тут потиху свою игру. Успешно. Но возник вопрос создания атмосферных условий. Можно ли сделать несколько атмосферных условий скажем дождь, снег, ливень. И задать им рандом. Допустим ливень длится в пределах от Х до У Затем Снего от х до у И задать некоторым явлениям частоту ?
Вот пытаюсь сделать разброс пуль. Подводные камни в том, что разброс разный, в зависимости от того куда смотрит игрок, в одном положении его может почти не быть, когда в другом он даже больше нужного.
Debug.DrawRay(transform.position, (transform.forward + new Vector3(rand,rand,rand))*100);
>>185942 А зачем, он же тоже будет поворачиваться за игроком, и вылезет опять эта фигня.
Debug.DrawRay(transform.position, (transform.forward + new Vector3(rand,rand,rand))100); заменится на Debug.DrawRay(transform.position, (object.transform.position + new Vector3(rand,rand,rand))100); разве нет?
Вы когда нибудь использовали альтернативные системы сообщений? Просто я все время пользовался SendMessage и мне было норм. Но тут понадобилось передавать сообщения в классы не компоненты. И я соснул. Я про это ничего не знаю. Какие есть варианты, может, знаете?
>>186081 >SendMessage Не используй это говно - это приманка для ньюфагов, чтобы они поскорее обосрались и бросили юнити. Вызывай методы напрямую из класса.
>>186081 расскажи поподробней уж, че ты. хоть резиновой уточкой побудем.
>>186084 На самом деле это говно полезно, если делать какие-то глобальные эвенты. Например включать-выключать фонари при смене времени суток. но специфично.
>>186084 На самом деле это очень удобная вещь которой я постоянно пользуюсь. Тут особенность в том, что ты отправляешь сообщение GameObject'у, и получают его все компоненты это объекта. Еще можно напиcать функцию как coroutine и событие автоматически стартует как корутина.
>>186087 ёбнутый чтоль в апдейте это проверять? так и представляю как на карте тысяча фонарей проверяет каждый фрейм не наступил ли вечер. висит гденить геймобжект, смотрит "хопана вечер. ребята, ловите мессажку!" и фонари включаются.
>>186086 Я пилю свой велосипед как замена корутин. Для этого есть отдельный класс, где я пишу действие. Например, я делаю действие пойти посрать, и передаю ему ссылку на юнит (это мне кажется удобнее, чем описывать все действия в самом компоненте юнита). Тут главная особенность что должно выполняться одно действие за раз, т.е. остальные должны приостанавливаться. Дефолтные корутины так не умеют. Ну вот туда мне и надо передавать сообщения.
>>186091 Для особо понятливых: скрипт висит в единственном экземпляре, на единственном объекте, который и проверяет, наступил вечер или нет. А все остальные объекты, которым нужно что-то сделать с наступлением вечера подписываются на событие и просто ожидают.
>>186092 >Тут главная особенность что должно выполняться одно действие за раз, т.е. остальные должны приостанавливаться Ну короче как в пошаговых стратегиях: например, пойти в эту клетку, атаковать того. Все действия складываются в стек, а потом выполняются. Только у меня еще такая фишка, что можно в середине одного действия начать другое, а после его конца вернутся к старому.
>>186100 Ну тут тоже AddListener и прочее. В SendMessage мне нравится то, что в одном компоненте написал SendMessage("Huy); а в другом void Huy() {} и все, компоненты у тебя связаны. Ладно, сейчас попробую сделать так.
Ребята как сделать машину ? Опишите в общих чертах. У меня Unity5 и не получается сделать про префабам как на уроке. На просто префаб WheelCollider не вешается. На модели он отображается неправильно (т.е Горизонтально, а колесо стоит вертикально). Вращать его не получается. Вообщем скинте НЕ русскоязычный мануал или напишите как вы делали машину. С меня помощь в вашем проекте. Или няши.
Куда размещать сервакАноним30/08/15 Вск 16:05:04#87№186170
Вообщем анон, хочу запилить типа клон rpg mo.
Проблем с программированием нет. Но дело в то что я в области ммо вообще уровня 1/0
Но даже тут разберусь.
Но что меня смущает - как быть с серваком. Я у мамки нищеброд, поэтому на время разработки купить сервак даже за 50 рублей в месяц не смогу (в основном потому что - кто сказал что я вообще что-то сделаю? а тратить надо с пользой, копейка рубль бережет)
Так то потом можно будет подумать о покупке сервака. но сейчас то я только начал что-то делать и может через неделю брошу.
Так вот, есть ли бесплатные альтернативы? Мне же для разработки не нужны сто-пятсот онлайна, десятка игроков хватит. Локалхост не вариант - ибо хочу сразу все показывать миру.
Вроде что-то слышал что в юнити есть... но нихрена.
И желательно если вы по предложенному дадите уроки (чтобы сразу вкатиться, а не осваивать методом тыка)
>>186170 Зависит от того сколько трафика приходится на каждого пользователя. И так сложно сказать, пошукай на сайтах типо Ucoz, ещё гугл предлагал бесплатные серваки когда то.
посоны, купил ассеты, а там только префабы, а кода нет, как оно работает? разве префаб это не гейм обж, на который напихали компонентов, в том числе и скриптов ну а если на него напихали скриптов то ведь должны быть и скрипты, но их нет, че теперь сосать?
Анон! Какого хуя у меня Crossfade на одну анимацию от двух разных занимает разное время, хотя в параметрах ясно указано, за какое время я его хочу? То есть код выглядит так: animController.Crossfade ( "TargetAnim", 0.2f ); И он должен всегда делать за 0.2f. А он делает иногда за 0.2f, а иногда за целую секунду, пидор! В зависимости от того, из какой анимации кроссфэйдит.
>>186171 ну трафика будет... как в обычной браузерке. Клон РПГ МО Вот прикидываю
Игра близка к пошаговым рогаликам (хотя и не пошагово). двигаются только игроки (мир и мобы не двигаются). анимаций нет (да я и не художник чтобы их делать). бой индивидуален (другие его не видят) Вообщем думаю совсем мизерные пакеты будут.
>>186175 >Возьми Photon и поставь на свой локалхост или ещё куда. Бесплатен пока не будет 100CCU. Там в примерах есть даже скелет для ММО. А есть совсем минимальный пример? не обвешанный кучей говнокода?
>>186275 Ты кодер что ли ? Я мог бы пмочь с графикой.
блин, люди, помогите с фотономАноним31/08/15 Пнд 06:50:26#102№186280
Что-то вообще какой-то ад.
Скачал я SDK фотон сервера для юнити
А дальше вообще не понятно что куда и как.
есть нормальные текстовые уроки? не это ебланское видео в котором очередной школьник-мудак что-то там вякает, а нормальный текстовый урок по самым основам - хотя бы чат написать... А то пиздец. Примеры из SDk не работают. требуют App ID. Иду на их сайт, создаю проект - оно меня шлет нахуй с сообщением что какого-то адреса ей нет
Sorry, but the page you were trying to get to does not exist. You may have just mistyped the address or surfed an out-of-date link. Try browsing our homepage to find what you were looking for.
Конечно блядь нет страницы - я же только ее создаю
Все таки удалось создать, получить апид - юнити его не видит. Тупо без сообщений автодисконет в их примерах. Пиздец.
Документации вообще нет. И только один еблан-школьник со своими 100500 видео как запустить юнити чтобы делать ммо (при этом 100499 видео - это именно запуск юнити)
>>186280 На этом самом фотоне работает наверно почти всё сетевое что есть на Юнити по всему миру. Система просто не предназначено для детей и приравненных к ним. И документация там хорошая, описывает всё что надо.
>>186290 оказалось что фейлит их ключ лицензии (пиздец). удалил ключ - и тоже заработало
А вот как запустить примеры в юнити - так и не понял. Так откуда брать App id и где брать серваки для этих примеров (должен же мой клиент на юнити с кем-то обмениваться - а с кем)?
В SDK даже внятного ридми нет (то что есть - только как установить фотонвские либы, и то что нужно проделать то что на видео выше - а как все это запускать - вообще нигде не написано).
И документации полно по Photon Network.
А мне надо по Photon Server. Гугол упорно пытается мне доказать что мне надо Network (пишу Server - дает ссылки на Network)
Млять - легче самому сервак написать - там за пять минут пилится обмен пакетами между серверным приложением и юнити... даже читать ничего не надо (только понимать про сокеты). Написал бы, если бы кто-то где-нибудь давал бесплатное место (на время разработки) под самописное
>>186292 1. Ты можешь запустить свой сервер. В настройках в клиенте есть опции. 2. Если тебе не нужна серверная логика то просто используешь их облако. Куча игр там по p2p работает. Там всё написано в документации, ясно и понятно, с примерами, по шагам. Но если ты дурак - то тебе оно не поможет, лол. > легче самому сервак написать Ну и пиши.
>>186293 В UE4 такая-же система. Никаких if'ов там нет. Смотри какая-там архитектура. Если коротко, то там объекты поделены на те, которые реплицируются и те, которые только на стороне игрока. В реплицицируемых объектах находится вся инфа, на основе которой меняется состояние игры. Например, на локальной машине есть PlayerController, а реплицируется PlayerState. То есть тебе надо делать архитектуру таким образом, что твой контроллер работает непосредственно только с PlayerState, а уже игровые скрипты берут инфу только из PlayerState
>>186296 >. Если тебе не нужна серверная логика то просто используешь их облако. Куча игр там по p2p работает. мне нужна. Я не сессионку делаю. Мне нужен сервак.
>>186296 >Там всё написано в документации, ясно и понятно, с примерами, по шагам. Но если ты дурак - то тебе оно не поможет, лол. Дай ссылку. потому что тут
полезного. сервак и одновременно клиент чата, долбоебическая установка фотона (которая нихуя не работает с ключом)
и много воды о том как все круто.
Ни одного примера как все это дело запустить в юнити (пиздец, я не могу скачать их гиганскую парашу Unity Island Demo - и ковыряться в миллионе говнокода (опять же, на самом сайте ни одной внятной строчки про то что там делать)
>>186298 Window->Photon Unity Network->Highlight Server Settings. Ты просто возьми и прочитай ёбаную документацию. Медленно и по шагам. Там ВСЁ написано.
Знаешь почему ты должен её прочитать? Потому что существуют сотни игр на их технологии. И они ВСЕ работают. В том числе и ММО. Даже мои поделия и те включаются вообще без проблем. А всё почему? Потому что я читать умею.
>>186301 >Window->Photon Unity Network->Highlight Server Settings. Мда. ну ок. чел смотри на скрин
Ты видишь суслика на скрине? Я не вижу
А теперь я поясняю
У МЕНЯ PHOTON SERVER
Нет, ты меня не понял. У меня PHOTON SERVER
Повторить еще раз?
У меня PHOTON SERVER
Почему ты мне пишешь про photon network? Это вообще другая хуйня
Еще давай про клауд вспомни
>>186301 >Медленно и по шагам. Там ВСЁ написано. дай уже ссылку на документацию. Я ее обязательно прочту. Но я не вижу никакой документации. Вот в чем дело.
>>186302 >Знаешь почему ты должен её прочитать? Да я согласен ЧИТАТЬ. Где ее читать?
>>186303 Я в 8 лет методом тыка, проб и ошибок выучил правила игры в риичи маджонг, имея только игру на сеге, где все было на японском, а ты тут ноешь что не можешь в английских буковках разобраться, бедняга. Открывай сорцы, да разбирайся.
>>186303 Значит ты нихуя в свой проЭкт не добавил. Потому что твои руки растут из анала. Знаешь, я знал человека который лет 6-7 назад умудрился сломать uTorrent и так ничего не суметь скачать. Почему? Потому что он своими кривыми шаловливыми ручками полез внутрь и всё сломал к хуям. Причём до него идея "просто следуй тупой инструкции" не доходила вообще. Кроме сервера тебе ешё клиент нужен, дебилушка. Сервер совершенно отдельное приложение не требующее Юнити вообще.
>>186304 Очень охренено развивать телепатию разбираясь в том чего просто нет(!!!). Там в SDK только клиент. Сервера там нет. А в SDK сервера нет кода для этих примеров. просто нет (точнее есть только для двух - но опять же. .. юнити требует апп ид, а где я его возьму на локалхосте?)
>>186306 ЭТО НЕ МОЙ ПРОЕКТ. ЭТО ИХ ПРОЕКТ. Я СКАЧАЛ SDK НА ЮНИТИ. ОТКРЫЛ ПАПКУ С ПРИМЕРАМИ. ОТКРЫЛ ПРИМЕР. НИХУЯ НЕ РАБОТАЕТ. У НИХ НЕ РАБОТАЕТ. Я ТАМ НИ СТРОЧКИ НЕ МЕНЯЛ
(повторю - с серваком я более менее разобрался. непонятно как его к юнити присобачить и как потом сервер в фотон отправить (локал хост это замечательно - но я фотон взял потому что мне нужен бесплатный хост для разработки)
Блядь, меня бесит эта ебанная капча. Абу - повесься. Я заебался ее вводить потому что ты не знаешь про динамические айпишники. Да еще и дауны наделали фоток где нихуя не видно
Да, у меня бомбит. Я уже восьмой час (семь часов на работе и час дома) пытаюсь разобраться и сделать простой чатик.
Ну так где документация?Аноним31/08/15 Пнд 12:39:36#120№186324
Ну так будет толковая документация по тому как сделать свой сервер и подсоединиться к нему из юнити?
Или вы только пиздеть можете и называть всех школьниками и дебилоидами, а сами даже не осили (да-да, вы там клауды юзаете)
>>186324 >как сделать свой сервер >без задней мысли Ты же понимаешь, что тут тебе ответят только так. Может кто-то и умеет в это, но врядли уже поможет тебе.
>>186324 Photon создан для даунов, которым лень разбираться в устройстве сетевого взаимодействия. Так что его даже школьник может освоить. Но раз уж ты не смог его освоить, то это уже клиника.
>>186325 1) это не я начал про школьников и дебилоидов. Меня просто сбесил даун который даже не знает чем отличается нетворк от сервера, но врубил режим умного.
2) дайте мне документацию. мне больше ничего не надо. просто документацию где млять написано что нужно сделать чтобы добавить свое приложение - даже млять в локалхост - потому что даже так хуй добавишь (там надо руками конфиги править - но млять, я сделал - нихуя не работает)
- непонятно как этот ебанный сервер запустить запускаю PhotonControl.exe. В нем только Lite (где блядь их остальное мудачье дерьмо?)
- закрываю. правлю руками PhotonServer.config (это пиздец - руками... мы в каком веке живем чтобы текстовые конфиги в блокноте править?). Нихуя не добавляется. Да и оно понятно. потому что ихний MmoDemo в PhotonControl тоже нету. То есть эти ебанные мудаки даже сами нихуя не смогли настроить
И это только сервак.
Как ебашить в юнити клиент - я уже не знаю.
Реально бы за это время уже написал свой сервак без всякого мудачества. Потому что код писать - элементарно.
МНЕ НЕПОНЯТНО КАК ВСЕ ЭТО ДЕРЬМО НАСТРОИТЬ
>>186326 >Photon создан для даунов Все эти дауны сидят на клауде и нетворке. А сервак почти никто не осилил. В Утубе есть только двое русских долбоебов, и трое английских - которые пытались это освоить... Но блядь чтобы они в аду горели за свои видео - почему было сложно просто выложить то что у них получилось? Там 90% работы надо делать во всяких конфигах, а они блядь видео сняли. Пиздец.
Посоны, запарентил объект на кость своему персонажу, визуально всё на месте, а по факту, этот объект почему-то падает вниз, т.е. я делаю Debug.DrawRay(pointer.position, pointer.forward); с этой фигни, и рэй этот падает падает вниз и под землю. Поставил такой же объект соло на сцену - стоит на месте.
>>186441 Поиск по тегу оптимизирован. Кроме того, ты используешь анонимные функции с делегатами. Это выдает в тебе долбоеба. Не делай так никогда. Для этих целей в юнити есть замечательный UnityEvent, который сам подчищает за тобой говно. Кроме того можно задать события в редакторе. Алсо, хардкодить каждое игровое событие как минимум неразумно. Для этих целей лучше описанная тут >>186100 система
>>186444 >Поиск по тегу оптимизирован. Да-да, а потом я за такими долбоебами все говно постоянно подчищаю, когда заказчик жалуется, что у его мартышек все заебись работает, а у него на компе чота тормозит малеха, надо бы ГЛЯНУТЬ Не учи отца ебаться, сынок.
>>186445 Ты балбес. Все теги внутри движка хранятся как списки объектов. Разницы производительности между кешированием в переменную и поиском по тегу практически нет
>>186440 я бы не стал искать фонари по тегу. это-ж каждый раз надо щемится в компоненты. лучше уж пусть на префабе фонаря будут все нужные ссылки в скрипте, которые он сам переключает.
а то потом вместо переключения света будет какая-нибудь нелепая хуйня выключатся, или ещё смешней - какой-нибудь артист-аутист поставит костру тег фонаря, сидя у которого можно внезапно обнаружить что он перестал светить.
>>186421 он не нулевой, он начальный, так что? >>186432 >Любой, но ты с ним сделаешь говно. Для того чтобы делать хорошо нужно отличное знание множества вещей. Именно поэтому и спрашиваю, есть ли годные видеолекции по юнити с нуля?
>>186497 Непосредственно по Юнити есть. Так чтобы "с нуля" - годных нет. Но ты сможешь, безусловно, накидать префабов и даже заставить с помощью ударов кувалды что то заставить работать.
>>186497 Он нулевой, судя по идиотским вопросам. Начальный - это когда ты пытаешься кодить сам, но у тебя не получается. Нулевой - когда просишь всё разжевать, переварить и насрать в рот.
Анон нид хелп. Когда пытаюсь поставить Wheel Collison в качестве плюса к пустому гейм обьекту он не отображается. А если применя. к модельке колеса он под углом 90'. Повернуть не получается ЧЯДНТ ?
Посоны, я внезапно понял, что делая 3рд персон шутер, получается так, что у камеры и персонажа разный угол зрения, соответственно разный угол и у прицела (если он тупо посреди экрана) и ствола пушки. И вот вопрос, как думаешь, что лучше:
1) На стволе только визуальная часть, а рейкаст определяющий попадание идет из экранного прицела. 2) Рейкаст определяющий попадания идёт из ствола, а прицел, не фиксирован на экране, а следует за хитом рейкаста.
Мне больше нравится второй, типа реалистичнее, но не хуйня ли это?
>>186525 ну, чувак, ну что с тобой, ну? Чего ты дурак то инструкцию открыть не можеш? смотри, вот тебе колеса, работчие, крутятся даже. На, ну посмотри как сделать то это, тут же просто хуем нажать и сразу все работает. Смотри я даже дам тебе это как пример. http://rghost.ru/7pDLc67M9
>>186497 да заливают тебе, че ты, успокойся. не надо там знать ничего выше базового синтаксиса чтобы начать. это если у тебя большая мечта надо хоть представлять как ты её исполнять собрался, а если ты там куб на колесах захотел то можно и дураком побыть.
>>186587 >у тебя большая мечта А если я хочу сделать текстовую игру, с сменяющимися картинками и несколькими вариантами ответа, а потом наращивать её по мере сил, прикручивая свистелки и перделки?
>>186593 Сложновато неучу будет то, текстовые игры хитрей чем кажутся же. Ещё и каждая прикрученная фича может отправить переписывать кучу кода. Хотя для начала можно и обойтись нулевыми навыками, картинки с текстом выводить в юнити то попроще чем колеса к хую приделать.
>>186587 Пермного благодарен анон. Но как ты повернул коллайдеры ? У меня вся трабла была в том что ОНИ НЕ ПРАВИЛЬНО СТАВИЛИСЬ СУКА. Они у тебя автоматом по кругу пошли ? и какая версия юньки у тебя ?
>>186597 >картинки с текстом выводить в юнити то попроще Ты и так уже мне помог, но укажи в какую сторону копать, что бы картинки выводить и варианты ответов присобачивать. Спасибо.
Это какой то пиздос анон. Поясни что я должен сделать с моделью. Скрипт не важен, умею сам писать. Просто обьясни как поставить ебучие коллайдеры. И что ты делал.
>>186602 >>186598 я их и не поворачивал, я просто собрал изначально все в нужном положении, а потом приделал сверху что-нибудь что позволило бы мне понимать что я вижу. юнити со своими колесами любит возникать на тему того в каком направлении смотрит вон тот самый верхний обьект в иерархии. если повернешь колеса на 90 градусов, то они всеравно в итоге повернутся вперед. просто прикрепи колеса к пустому геймобжекту и крути уже все внутри его локального пространства.
Сап, программисты! Тут у нас кодер не успевает немного, поэтому ищем ему друга. Игра: пиксельный рогалик в духе айзеков и нуклир тронов. С месяцок назад делал тред, анон не оценил, но если кого-то интересует поработать с подобным проектом - отпишите на мыльцо: [email protected] В первую очередь надо будет занять логикой для противников и правилами генерации контента. Бюджет считай нет, но небольшое вознаграждение выделять сможем.
>>186609 ну ладно. смотри. картинку даже сделаю тебе. геймобжект на котором видит RigidBody геймобжект который висит на геймобжекте сверху гейможект на котором висит колесо на гейобжекте на котором висит колесо, висит графон колеса много колес. к колесам приделался куб и ничего не пидорасит, все катается взад-вперед.
>>186614 Спасибо няша,ты охуен. А скрипт я так понял отвечает просто за вращение колиззи колеса ? Для регуляцмм скорости я так понял нужно изменять массу rigid body тачки. Еще раз спасибо за помощь.
что лучше использовать для объекта из соображений экономии вычислительной мощи ГП: один сложный мэш из кучи треугольников, или 5-10 простых мэшэй (капсул, параллелепипедов и тп)?
>>186717 Смотри в первом случае ты можешь стрелять из серидины т.к коллайдера там нет. А в другом у тебя коолайдер от середины и до кончиков корабля. Но в первом варианте у тебя остаются незаколлайдеренные (во слово, ебать) и если ты будешь делать скрипт на дамаг кораблю он будет проходить мимо в тех местах.
>>186721 то есть в идеале всегда делать мэш максимально простым, если это не повредит функционалу, хоть даже из нескольких малополигональных сеток, чем использовать одну сетку с кучей мелких треугольников? или при рэндеринге мэш немного хавает?
>>186723 Мэш это модель которую ты делал в 3д редакторе. Коллайдер - зелёная хуита. Всё зависит от цели применения. А много хавает это лол. Что бы загрузить пеку на нихуёвый уровень тебе таких под пол сотни понадобится. Делай@Тестируй, больше ничего сказать не могу.
>>186723 Один треугольник должен покрывать более 2 пикселей (говорят что оптимально 10) на основном для модели расстоянии от камеры. Иначе будет алайсинг. Плюс ДИПы - 1 меш на 1000 треугольников нарисовать быстрей чем 10 по 100.
Кириллач, как лучше двигать мобов и персонажа? [CODE]transform.GetComponent<Rigidbody>().MovePosition(transform.position + transform.forward * Time.deltaTime);[/CODE] Чего-то хуёвенько, моделька останавливается сразу, а хотеть не сразу, чтобы к телу применялись силы и тело толкало предметы.
Всю голову сломал, как сделать плавное движение камеры в 2д, например при драге. Хочу сделать камеру, как в клеш оф клансах, но при драге все немного подлагивает.
>>186776 >как сделать плавное движение камеры в 2д, например при драге значит у тебя фпс скачет. надо делать интерполяцию между значениями Time.deltaTime
>>186783 хотя я и сделал ошибку, вместо апплай форс я имел в виду Rigidbody.AddForce. но и ты хуесос, потому что ForceMode.VelocityChange одна из доступных опций этой функции.
Сосны, какие команды можно прописать для управления колёсами ?. Я иммею ввиду просто команды а не готовый скрипт. Сам капчую с телефона ибо провайдер ПОМЕНЯЛ ВАМ ТАРИФНЫЙ ПЛАН НА БОЛЕЕ УЛУЧШЕННЫЙ ! ИДУТ ТЕХ РАБОТЫ ! Ща у друга сижу, скиньте в тред. В частности интересует следующее. Команда ограничение угла Придание вращению коллайдеру колёс. (вангую через Vector3 rotate)
>>186756 Мобов лучше делать как самостоятельные "машины", управляемые PlayerController'ом. Плюс в том, что потом можно легко переделать для сетевой игры. Например, ты делаешь функцию передвижения mob.GetComponent<Mob>().GoToPosition(old_pos + new Vector3.forward); позицию сохраняешь и в каждом Update например интерполируешь transform.position между старым и новым значением. А в playerController'е просто пишешь if (key_pressed) mob.GoToPosition(mob.transform.forward * mob.speed);
Почоны, есть одна моделька человека, хочу зделоть хитбоксы. На голове тушке и прочих интересных местах висят коллайдеры. Как детектировать попадания на уровне скрипта,п рикрепленного именно к тушке? Перевешивать управление здоровьем на игрока - это пиздец. Выстрелы через рейкаст
>>186970 Вот поэтому я в юнити-тред не захожу, местные Кирюши советуют друг другу настолько охуительные вещи, что они убивают мое чувство прекрасного. Есть православный Move - нет, буду особенным и запилю в качестве транслейта GoToPosition. И в игры этих людей мы будем играть.
>>186975 Надо полагать у тебя голова и прочие части тушки - отдельные объекты. У каждого свой коллайдер и одинаковый скрипт, в котором из параметров есть модификатор урона и собственно тип части тела, можно енумом задать. В скрипте ссылка на главный скрипт игрока, в котором есть функция ПолучитьУрон(инт сколько), скрипты тушек вызывают эту функцию через себя.
Посоны, поясните за Unity Android Pro и Unity iOS Pro. Что оно вообще дает? На сайте юнити я списков каких-то не нашел. Нашел пару тредов на ансверсах, где говорили, что эти штуки позволяют поменять сплеш-имейдж со стандартного на кастомный, но треды были за 11-12 годы. В те же годы и профайлер был доступен только в про, хотя сейчас он есть в пёрсенел. В общем, у кого есть актуальная инфа про эти плагины? Ткине носом в какой-то список фич, предоставляемых при их приобретении.
Конкретизирую. Android Pro и iOS Pro нельзя активировать без Unity Pro. Активация каждого из плагинов стоит ЕЩЕ столько, сколько сам движок с про-лицензией. И меня интересует, в чем разница, между Unity Pro и Unity Pro + Android Pro, например. Единственное, о чем я более-менее уверен, это сплеш-имейдж под андройд. По крайней мере, на ауктуальной версиии юнити пёрсенел, его сменить нельзя. А вот под iOS можно, хотя на ансверсах пишут, что нельзя сменить для обеих платформ. Так вот, я хотел бы найти полный список различий. А то пока нихуя не понятно, что мне даст говно, за еще 3к баксов, кроме загрузочной иконки под ведро.
>>186267 Объясните долбаебу. Есть фонари, на них уже весит Light, при старте сцены мы сохраняем компонент в переменную. Потом скрипт Gaem в 18:00 передает, что вечер и фонари (Light) нужно включить, но Start же уже произошел, как он сработает еще раз, сцена ведь уже запустилась.
Ах да, думаю дело именно в той ООП строке, которую я нехуя понять не могу, буду рад объяснению.
Сначала определяется статическое событие, которое представляет из себя функцию-делегата. (если ты не уверен, что означают слова "статическое", "событие" и "делегат", то тебе нужно ознакомится с руководством по C#)
Затем каждый объект типа "источник света" подписывается на это событие, создавая собственную анонимную функцию, которая включает свет для данного объекта.
В нужный момент событие вызывается в методе Update(), в результате чего одновременно вызываются все функции-делегаты, которые были созданы ранее объектами типа "источник света" и таким образом включается свет.
Ох аноны, кирюша на связи. Тут такая идея родилась, но я точно не допру до реализации сам. Вопрос даже не функционале юнитей, а в способе реализации. Не представляю как такое сделать. Хочу впилить в обычный слешер интерфейс анимирования персонажа. Что-то такое относительно простое (в плане движения модели по суставам), на уровне торибаша, с таймлайном снизу и возможностью экспорта в виде какого-нибудь формата, который потом сам пользователь может впилить в игру. А ещё лучше - с возможностью впилить в гейммплей не выходя из игры, прямо в меню настроек персонажа. Можете даже нахуй меня послать и я даже буду с вами согласен - это поистине самая тупая идея моей жизни. Но у меня ЗАГОРЕЛОСЬ и теперь я ХОЧУ корованы и домики такой редактор своими руками с вашей помощью. Осталось только решить КАК.
>>187062 Почитал руководство, немного понял, вроде. Как я понял, делегат сохраняет ссылку на метод, потом мы связываем event с делегатом и вызываем в нужное время.
Gaem.OnEvining += <Название скрипта лампы>.<Функция, которая вызывает включение лампы>; Как я понял, таким образом мы подписываемся на событие и потом вызываем его, когда нужно. Но в этой строке ведь совсем по другому. >Gaem.OnEvining += () => {_light.enabled = true;);
Я, прочитав гайды по делегатам и событиями сделал бы таким скрипт лампы.
>>187079 Да нет, ты всё правильно понял. Просто делегаты могут быть анонимные или объявленные, как у тебя. Про анонимные функции(методы) тоже можно почитать в руководстве.
Репост из нюфаготреда. Я хуй который НИЧЕГО (ну может простенький пиксельарт, что могут все) в геймдеве не умеет. Попытка в Unity принесет мне только прокрастинацию, боль, страдание и удаление программы на второй день?
>>187073 ну э. начни с возможности поворота костей внутри игры и сохранения и.
>>187138 я пришел к юнити вообще с нихуя, кроме больших планов, однако сижу второй год и делаю свой хитрый план. мы то откуда знаем че ты там делать будешь? мы тебе не психологи.
>>187138 >Попытка в Unity принесет мне только прокрастинацию, боль, страдание и удаление программы на второй день? Да, если ты тупой школьник. Я уже много таких повидал. Они именно так и делают - удаляют на следующий день все программы, так как им СКУШНА((( ДАВАЙ В КАЭСОЧКУ ЛУЧШЕ ПОГОНЯЕМ))
>>187158 Мне это нужно чтобы в инспекторе указывать ссылки на мои компоненты. Я не могу написать IHuy huyObject; потому что это не сериализуется и не отображается в инспекторе. Вместо этого мне нужно писать костыли: class HuyBehaviour: MonoBehaviour, IHuy; class PizdaBehaviour: MonoBehaviour, IPizda; class HuyPizdaBehaviour: MonoBehaviour, IHuy, IPizda;
Аноны, вы ведь наверняка устанавливали визуал студио, скачал файлик вс комьюнити, клацаю, появляется и исчезает плашка с надписью визуал студио и всё, больше нихуя, что я делаю не так?
>>187162 Можешь привести конкретные примеры, где тебе понадобилась данная фича? А то мне прямо интересно стало.
Вообще, это вполне логичное ограничение для Юнити. Почему? Потому что Юнити оперирует компонентами, а интерфейс не может быть компонентом. Представь дизайнера, который конструирует уровень. Вот видит он у объекта свойство IVehicle, и думает "что бы это нахуй значило?!". Он знает, что объект состоит из конкретных компонентов, таким образом он может понять, что от него требуется, но увидев интерфейс он нихуя не поймёт. "Ок, IVehicle, а где мне его искать, блять?! Ёбаные программисты...". Он не сможет найти нужный компонент, который реализует данный интерфейс, так как это можно увидеть только в коде.
Я использую интерфейсы, но делаю это неявно, то есть на редактор это никак не распространяется. В основном использую метод GetComponents<IHui>(). Кстати, к наследованию это тоже относится. С этим нужно быть осторожнее, умнее.
Какими скиллами должен обладать Unity Developer, чтобы попасть на эту должность в ДС/ДС-2?
Листаю требования: умение работать в команде, желание разрабатывать игры, умение работать с системами контроля версий (чему можно научиться, посмотрев пару роликов на ютубе). Но самое главное, это "Уверенное знание C#". Это как понимать?
Пост вообще для того, чтобы мне кто-то объяснил, как проверить свои силы и понять, есть ли смысл съебывать из своего мухосранска в ДС/ДС2 ради работы юнити девелопером.
>>187205 Желательно чтоб ты без гугла мог написать 70% кода (в идеале весь). Хотя некоторые конторы к гуглоюзанью лояльно относятся, особенно СТАРТАПЫ, но и денег давать будут не много.
Юнитач, понимаю вопрос пиздец глобальный и нубский, но хотя бы скажи в какую сторону можно глянуть. Есть у меня объект 1, и объект 2. Объект 1 двигается всякими скриптами, а у объекта 2 просто transform.position = object1.position, тоже самое для вращения. И вот так-то оно нормально место находит, но рывками, сначала двинулся объект 1, к нему прыгнул объект 2. Как сделать чтобы они двигались синхронно?
>>187247 >Как сделать чтобы они двигались синхронно? Порядок вызова Update не определён. То есть сначала Update может вызваться у object2, а потом у object1. Посмотри LateUpdate.
>>187253 C# знаешь? А так, просто ставь себе задачи и решай их при помощи Unity. Например, я хочу, чтобы куб двигался, и чтобы камера за ним следила. Потом, я хочу, чтобы куб стрелял. И так далее.
>>187260 https://2ch.hk/pr/res/534713.html В шапке перечислены некоторые книги. После освоения шарпа - берешься за доки юнити, там все просто. Можешь, конечно, обмазываться и видеуроками или еще чем-то, легким для восприятия и быстрым. Однако тогда ты рискуешь оказаться в числе тех юнитидебилов, которые вообще не понимают, чего делают и нахуя это нужно.
Поясните, как у вас обстоят дела с мультиплеером. Если хочу с братаном вдвеом поиграть в свою же игру, много ли с чем нужно будет ебаться, чтобы работало? Сначала спросил в анриал-треде, но он кажись мёртв, так что тут поинтересуюсь
Посоны, поясните такую штуку. Когда билдишь xCode под iOS в ту же папку, что и до этого, Юнити предлагает два режима на выбор, аппенд, и реплейс. В общем, я как-то заделал, чтобы он у меня по умолчанию всегда реплейсил. Выбрать теперь не предлагают. Как мне вернуть назад, чтобы выбрать можно было?
Почему некотрые ассеты можно добавлять через Import Packege, когда другие нет? Вот я хочу добавить стандартный charter controlle. Во вкладке GameObject его нет, тогда я хочу найти его через импорт пакейдж, но его там нет. Зато там есть ассет для использования визуал студио. Так же я в другом проекте скачивал Standard Assets. Но через Import Packege опять же добавить не могу, только тупо переносом папок с файлами в мой проект.
>>187393 да, есть юнити веб плэер. Правда, не забывай, что юнити - это лишь клиент, по факту, просто графическая составляющая, сервер нужно будет писать самому. И вот тут у меня самого есть вопрос - возможно ли нормальное взаимодействие юнити и сервера на джаве?
Посоны, есть ли в Юнити какой-нить UI-компонент, который можно поставить позади всех виджетов на канвасе и который будет ловить сообщения о кликах мыши (и чтобы этот компонент никак не отображался)? Я хочу поверх игры поместить пару кнопочек, по нажатию на которые происходили разные события, но если игрок кликнул просто по экрану, не попав в кнопочки, то должна происходить специальная йоба. Как такое запилить?
>>187424 юнити - это один большой недостаток. чем сложнее твой проект, тем неудобнее его делать в юнити, тем сильнее ты понимаешь его ограниченные возможности. конечно, некоторые скажут, пиши скрипты для редакторы, все дела. качай эти ебучие говноассеты ассеты из стора. но зачем мне инструмент, который я сам-же должен доводить до ума? я иногда думаю, чтобы дропнуть юнити и взять другой движоок.
>>187429 Что, правда? Всё так и есть? Сколько игр ты на нём сделал? И сколько вообще игр ты сделал? Мне кажется, ты обычный Кирилл, который впервые решил создать нечто больше, чем очередная змейка. Столкнувшись с проблемами ты решил во всём винить Юнити, а не самого себя - тупого дегенерата.
>>187435 ой, иди нахуй, манька. примитивизм юнити хорошо вписывается в роль, где ты делаешь 3д-уровни в редакторе, таская ассеты. если тебе не дай бог нужно сделать что-то программно-сложное, или какую-то необычную хитровыебаную механику - в юнити для этого просто нет ничего. более того, его архитектура будет для тебя большой помехой.
>>187438 Описываешь класс (например public class uiButton), с полями типа GameObject, RectTransform, Image, Button, ColorBlock. Инициализируешь новый объект этого класса. В конструкторе инициализируешь объекты для полей, и записываешь их в поля. назначаешь все нужные значения. Пользуешься.
>>187444 У кнопки есть компонент Image. В его свойство и назначается текстура. Тебе же говорят удалить дочерний геймобжект, на котором висит компонент Text.
Таймер с помощью класса WWW каждые 5 секунд синхронизируется с сервером.
Как узнать время, за которое от сервера до клиента доходит ответ, чтобы скорректировать полученное значение времени и избежать погрешностей?
Например на клиенте время 0:04, на сервере время 0:04, в этот момент выполняется синхронизация, посылается запрос, который отвечает клиенту, что времени уже 0:05, хотя фактически в момент приема уже 0:06.
Анон, дай годный ресурс где можно анимации для хуманоидов натырить. Только не миллион видов ходьбы, а вот например интересуют всякие анимации с оружием.
>>186528 > 2) Рейкаст определяющий попадания идёт из ствола, а прицел, не фиксирован на экране, а следует за хитом рейкаста. Тогда придётся писать обработчик, чтобы оружие не проходило сквозь объекты и ботов
>>186555 >а первый - в 80% шутанов от третьего лица. Вспомнил матрицу, где нео летит ногами кверху, ствол винтовки направлен строго в пол, но пули вылетают из ствола под углом градусов сто прямо в цель. Ну, он избранный, ему физика до пизды. Но в других играх может выглядеть странно.
>>187436 >какую-то необычную хитровыебаную механику Назовешь хоть одну? Только в рамках того, на что сейчас вообще способно железо/программы. >конечно, некоторые скажут, пиши скрипты для редакторы, все дела Хочешь чтобы на каждую твою хитровыебанность, которая нужна только тебе разработчики юнити пыхтели и преподносили на блюдечке? >но зачем мне инструмент, который я сам-же должен доводить до ума? Потому что не существует в природе других инструментов в данной сфере
Я хочу что бы в игре по мере ускорения темпа ускорялась скорость музыки (без повышения высоты звуков). Как это лучше реализовать в юнити? Возможно ли воспроизводить midi? Или тупо воспроизводить отдельный звук на каждую из нот? Дайте советов пожалуйста.
>>187541 очевидно что можно обратится к статичным переменным через тип. но в первом случае у меня переменная уже обьявлена и уже не нулл, потому что такую хуйню я и захардкодить могу. а во втором случае я уже не могу захардкодить такую переменную(или могу, но лучше не буду) и при каждом обращении проверяю не нулл ли она и если нулл то делаю её как надо и возвращаю через аксесор. И мне интересно. А можно ли сразу сказать чё же такое интересное я хочу в этой переменной, но хииитро?
Посоны, вот только недавно установил визуал студио, всё очень криво. А сейчас смотрю в 5.2 оно из коробки, оно установит его так же как и я, через жопу, или там всё налажено и я не буду ебать себе мозг с откючением/обновлением .нет фреймворка и прочей виндохуйней?
>>187560 Ой бля, не пизди мне тут, ебаный вс требует ие11, иде блять требует браузер, весит 16гб, а языковой пакет еще 2, выдает ошибки которые могут иметь несколько значений, требует отключения виндосервисов для установки. Я незнаю, может у меня винда изнасилована, но я бля потратил 2 дня на установку всей этой хуйни. Я больше ни с чем так не ебался как с этой вс.
>>187563 Хули вы так дрочите на эту ВС, когда уже есть легковесный кросплафторменый вариант Visual Studio Code? Поддерживает юнити, поддерживает отладку. Всё, что нужно, поддерживает.
Есть на сцене несколько объектов, при взаимодействии с которыми что-то происходит, например, на них можно нажать, перетащить что-то из инвентаря. Так же есть скрипт с действиями, которые будут происходить после этих манипуляция, загвоздка в том, что нужно проверять хуеву тучу условий, от которых будет зависеть дальнейшее. Вопрос: что можно придумать, чтобы этого не делать, то есть, обойтись без if, else ?
>>187584 Например, есть два объекта: картина и стакан. Если я жмякую на картину, то мне выдает одно действие, если на стакан - другое, но при этом, если нажать сначала на картину, а потом на стакан - произойдет нечто другое, нежели просто нажать на стакан. Нужно унифицировать этот скрипт. А лучше, возможно, есть ли какие-нибудь годные референсы хорошей масштабируемой архитектуры игры?
>>187588 Неплохо, радует, что есть настройки. Не конкурент для Sublime (по скорости уступает и нет плагинов, ясен хуй будут, если не закинут), но конкурент Brackets.
Использовать можно, если ничего другого под рукой нет. Убер фич нет, разве что качественное интеллектуальное, автодополнение как в полноценной VS и хорошая интеграция с гит репами.
>>187589 >Не конкурент для Sublime Code уже в разы превохсодит этот блокнот со шкурками. Алсо, в нем даже есть отладка unity! Но только для макоси лол. Хитрый микрософт вынуждает виндорабов ставить студию, пидоры.
Когда уже юнити научится чему-то вроде obj1.AddComponent(obj2.GetComponent<Huy>()); Почему я не могу инстансировать компоненты? Мне не нужен сраный объект для этого. Я хочу сохранить префаб компонента и инстансировать только этот компонент. Как это можно сделать?
>>187656 Пока что единственное что приходит в голову - это сделать самопальный конфиг-файл для компонента и инициализировать его вручную в OnValidate() Но это НЕ ТО
>>187665 из любого другого. напишу я такой Thread thread = new Thread(myClassInstance.Worker); а в этом Worker() если будет обращение к физону то хопана юнити мне такое INTERNAL_CALL_Raycast can only be called from the main thread. и не делает.
>>187673 мне нужны треды, потому что то что я делаю вешает тред на ощутимое время и может вызываться время от времени, так что я хочу чтобы если надо это делалось сразу несколько.
>>187664 >Как рэйкастить не из основного треда? Никак. Бери другой движок. Серьезно и без подъебов. Заранее обоссал корутинопетухов, так как они даже не понимают о чем речь.
>>187674 не делай то, что ты делаешь. проблема решена. делай в корутине один рейкаст, жди следующий фрейм и т.д. алсо можешь сделать скрипт с делегатом, писать что-то вроде Job a = MyScript.ExecuteInMainThread(Raycast()); while (!a.IsDone) Thread.Sleep(1000); print(a.Result);
>>187675 >Заранее обоссал корутинопетухов, так как они даже не понимают о чем речь. Лел. дурачок. речь о распределении процессорного времени. В корутине ты делаешь тоже самое, только ручками.
>>187675 уже не могу, слишком много переписывать. придется, похоже, костыль собирать. вроде, кстати, какраз у корутин был yield на эту тему.
>>187676 да рейкаст это пример. хочу из треда вызывать OverlapSphere а потом с этими коллайдерами творить всякое. про делегат уже думал, но спросить то не лишнее.
>>187677 только корутина все равно в основном треде работает. конечно приятно, но не то. мне надо чтобы то что я просил сделать делалось одновременно и как можно быстрей, но можно и не всё целиком сразу.
если тебе надо только "шоб игра не висла", то грамотно запиленой корутины более чем достаточно.
>хочу из треда вызывать OverlapSphere а потом с этими коллайдерами творить всякое ну так можно что угодно сделать, если исп. generic'и для возвращаемого значения. ну тут особого профита все равно нет, у тебя вся тяжелая логика все равно в основном треде будет.
>>187681 да-а-а~ корутина, конечно, здорово. только есть разница между тем смогу ли я получить то что хочу спустя пару секунд, или спустя 8-16. да и так сразу основной тред забивать то не надо, чё ты.
>>187700 Сначала написал цифры больше в цикле, но корутина не хотела заканчиваться вообще. Надеюсь это я где-то обосрался, и скорость корутин на самом деле выше
>>187710 И чо? Во-первых, можно запустить тред с уже полученными данными и не вызывать API. Во-вторых, в треде вообще можно считать что-то не связанное с API. Во-третьих, если очень надо можно выполнить API в основном треде через делегат.
>>187726 петушиный шрифт как-раз у тебя. а у меня самый популярный моноширный шрифт DejaVu Sans Mono. он и крупнее при том-же размере шрифта, и буквы у него более прямоугольные. а consolas это моноширный comic sans какой-то
>>187732 Зачем лепить отдельный тред если строить сцену придется только после генерации уровня в этом отдельном треде? Если тебе нравится дрочить треды то иди и пили свой движок, а не пытайся впихнуть свои необъятные знания о тредах туда, куда нахуй не всралось.
Посоны, почему мою фигню может так лихорадить? Есть у меня в скрипте ГетМаусБатонДаун, он же должен срабатывать один раз. У меня вроде тоже, если игра не "лагает", но если "подлагивает" оно срабатывает по 2-3 раза.
>>187668 Ну типа: Есть список префабов. Во время игры появляется экземпляр префаба из этого списка. Я хочу не использовать Instantiate что бы не было микро лагов. А использовать уже заранее подгруженый префаб из этого списка. (понятное дело что игра начнет жрать больше памяти, о зато исчезнут подлагивания)
Посоны, какая хуйня, хочу что-то вроде тун шейдора. Для гуя. Нормального варианта узнать край пикчи, по сути, нихуя нет? Нужно брать текущий пиксель, запоминать его, сравнивать со следующим и так до охуения? Это ж пиздос.
>>187816 Ага, вижу: get_transform can only be called from the main thread. Constructors and field initializers will be executed from the loading thread when loading a scene.
Ребятки, а кто-нибудь делал карту уровней сам? Мне нужно сделать карту на подобие пикрелейтед из энгрибердс. Сделать линейную - два пальца, такую я уже делал. Вопрос именно в нелинейной, т.е. графе.
Привет, Кириллы. Пилю в соло потихонечку игру на Unity для ведроидов. Как я слышал, в гугле разрешено заливать только приложения меньше 50mb, я периодически заливая на свой телефон посмотреть результаты, и заметил, что apk файл с парой сцен и около 10 пикч весит 20mb, это ж пиздец неприемлемо. Как с этим бороться? На сколько я понял, к apk файлу добавляется mono(~15mb), а уже оставшееся - твое приложение.
>>187829 ты уверен в этом? оО т.е. скажем если в конце у меня даже и получится apkшник овер 200мбайт, я без проблем его смогу залить на гоголь плей? а на счет гейтюнса? там нет таких ограничений?
Прошу немножко помочь, только сел за юнити. Сделал спавн кубиков в самом начале игры и прикрепил к каждому кубику скрипт: void OnMouseDown() { Destroy(gameObject);
} Теперь при нажатии на кубики, они исчезают. Как добавить счетчик на экран в котором бы показывалось количество уничтоженных объектов? Или с таким уничтожением не получится это сделать и нужно переписать все. В гугле вроде есть такое, но там код по уничтожение кубов другой. С этим можно, он ароде проще?
>>187875 Заебашь в скрипт публичное поле, в которое ты в инспекторе хуйнёшь ссылку на счетчик прям со сцены, ёбана. К счётчику заебись будет прихуячить собственный скрипт, в котором будет храниться метод изменения текста. В существующем OnMouseDown() ты будешь вызывать этот метод.
>>187879 >>187886 Что вы мне эту хуйню впихиваете, я прочитал уже полностью руководство на офф.сайте. Там скриптов практически нет. >>187881 Спасибо блядь огромное. Я вообще нихуя еще не понимаю. Мне просто код нужен для скрипта, что бы я по строчки его разобрал, а не это хуита твоя на кириллице.
>>187888 >Я вообще нихуя еще не понимаю Тогда съебни изучать C#. Если ты, кириллица, не можешь понять такие примитивные вещи, то тебе рано соваться в юнити.
>>187888 >Что вы мне эту хуйню впихиваете >прочитал уже полностью руководство на офф.сайте >Там скриптов практически нет >В уроке разложили по строчке именно (абсолютно) то, что ему надо >Что вы мне эту хуйню впихиваете
>>187901 лол, зависит от опыта. по-моему, нет каких-либо границ между уровнями программистов как таковых. все приходит с опытом и с тем, какие задачи решаешь, как расширяется твои знания в программировании по мере решения новых задач. в общем-то, все.
>>187903 Моя задача - это пилить простую игрулю на юнити, что я безуспешно пытаюсь уже больше года. Проблема тут вот в чем: я могу не знать о какой-то фишечке языка, или каком-нибудь полезном классе или еще что-то такое, и делать что-то неэффективно, неудобно, через жопу короче говоря. Поэтому хотелось бы конечно знать какие-то вещи лучше вообще.
>>187907 Опыт. Ничто не заменит опыт. Ты можешь хоть от зубов все самые крутые вещи знать. Но без опыта ты ими только анус себе разработать можешь и больше ничего. А с практикой само собой все приходит. Но можешь уточнить, какие именно у тебя знания сейчас. Скажу тебе, в знании языка дело или нет.
Ну какой только опыт. Не только опыт. Бывает сделаешь какую-то хуиту, а посмотришь как другие это сделали и думаешь: блджад, почему я сам так не сделал. Смотреть на код профессионалов тоже очень полезно.
>>187912 Это обмен опытом и относится к >с практикой само собой все приходит. На интересе и лучшем понимании нового. Что толку нубу от кода "профессионала"? Пока сам руку не набьешь настолько, чтобы быть примерно на уровне этих самых "профессионалов", то их фишки будут херово восприниматься.
>>187930 Ну вообще то, как ты пишешь и правда отличается от стайлгайда для шарпа. Впрочем могу и ошибаться, давно его читал. Поля - камелкейз с маленькой буквы, локальные переменные в методах так же. Свойства, методы, названия классов и прочее - камелкейз, но начинается с большой буквы. Скобочки предпочтительно расставлять с новой строки всегда. if (true) { //something } Впрочем тебя никто и не заставляет этого придерживаться.
>>187932 https://msdn.microsoft.com/en-us/library/ff926074.aspx чет не нашел. но встречал дядей которые отделяли приватные от не приватных через черточку много. сам попробовал - удобно если переменных много, не спутать хуйню по аксесорам с внутренними переменными случайно.
>>187933 я категорически против таких скобочек. это же сколько места на экране проёбывается впустую! вот ты посмотри на макароны из UE, вот это просто вообще охуеть способ как проебать место на экране. я верю что всё началось с того что кто-то придумал что надо писать
if (true) { //something }
вместо
if (true){ //something }
>>187934 а тут чего не понравилось? всё наглядно и читабельно в узком окошке.
>>187935 Место на экране - бесплатное, так что и хер с ним. Я и так и так код читаю нормально в общем-то, приходилось со всякими стилями работать. Однако с шарповскими скобками все же больше нравится, особенно когда много уровней вложенности, как-то полегче воспринимается.
>>187936 место на экране то конечно бесплатное, но колесико крутить все-же надо. а когда на 100 строк кода накидывается 15-30 строчек с одной скобочкой, то и крутить надо дольше! а я не хочу крутить больше чем нужно.
в любом из вариантов сразу видно код в скобочках по длине отступа.
Я сам раньше постоянно использовал _ для приватных полей, но с опытом понял, что это крайне излишне, особенно, если используешь современный Visual Studio.
>>187938 мне и сейчас норм. позволяет чуть быстрей обращаться к приватным переменным, если класс большой. плюс избавляет от нужды каждый раз писать this. если передаются параметры с таким-же именем как переменные в классе. _myValue = myValue помоему лучше чем this.myValue = myValue ещё знавал дядей которые отдельно писали константы как MY_CONSTANT, по моему тоже заебись идея. сразу видно что это такое. по моему символ _ очень полезен.
>>187939 не ну иногда разумеется нужно, пустые строчки часто нужны. но они - важный ресурс. чем меньше потрачено, тем проще читать его если надо уместить код в небольшом окошке.
>>187941 да но потом надо написать что-нибуть в духе void ApplyDamage(int health, int armour) { this.health -= health; this.armour-= armour; } и переменные уже приходится называть читабельно.
>>187942 >да но потом надо написать что-нибуть в духе Но согласись, вот этот вариант ничем не лучше: void ApplyDamage(int health, int armour) { _health -= health; _armour -= armour; }
Потому что должно быть что-то вроде: void CauseDamage(int healthDamage, int armourDamage) { health -= healthDamage; armour -= armourDamage; }
>>187948 не лень? приятно, конечно, this другим цветом выделяется там. но как по мне лишний синтаксис вредит читабельности.
>>187949 на самом деле из всех трех вариант с _ быстрей написать и переменные в шапке метода более ёмко выглядят. во втором варианте проще уже копипастить переменную чем писать healthD, если автоввод подумает что ты хочешь обратится к health, вместо healthDamage
Что они блядь напихали в EventTrigger.Entry? Свой колбэк добавить не проблема, интересен именно тот, который добавляется через инспектор. Да, они отличаются. Очень отличаются.
посоветуйте книжку какую, или может цикл уроков по шейдерам в сабже. что бы скажем с нуля описывалось что зачем и куда. а то моих базовых знаний хватило только написать смешивание текстур и немного перепилить прожектор для круга вокруг активного юнита
Кириллы, кто-нибудь пилил свой платформер для ведроида, посоветуйте плиз годных гуидов. Платформер до этого я уже пилил, хочу его сделать для андроида и гейфона. Хотелось бы годного гайда именно по контроллеру. Алсо, правда, что для того, чтобы скомпилить на айфон нужен мак?
Есть готовые решения для отображения веб-страниц в приложении на Unity? Нужно отображать страницы с текстом, картинками и ссылками а ля Википедия. На Asset Store ничего не нашёл.
Анон, очень мешает программировать аутизм. Как с этим справляться? У меня как пикрилейтед, только с кодом: пока все не организацию в свою манясистему, не могу ни о чем другом думать. Это очень мешает. Вместо того чтобы делать игру, сижу переписываю раз за разом одно и то-же
>>188015 Конечному пользователю похуй как у тебя все организовано. Пиши код под конкретную игру а не под выставку охуенно организованных кодов. Все органтзовано в самом юнити, скрипты нужны чтоб писать говнокод, помни это.
Привет, игроделы. Смотрите какой у меня вопрос: есть персонаж с настроенными в blend tree анимациями ходьбы. Есть еще одна анимация из которой мне нужно только движение рук. Как мне применить к своему персонажу эту анимацию, чтобы она влияла только на руки? Пробовал создавать avatar mask только с руками, но что-то не срослось и при проигрывании этой анимации помимо рук движется весь персонаж.
>>188031 Главный слой с твоей ходьбой. Второй слой с анимацией с руками. Вешаешь на второй аватар маск только руки. Когда тебе нужно заанимировать руки той анимацией выставляешь вес слоя с руками на 1.
>>188015 Придумай игру еще до того как начнешь её реализовывать. Опиши каждый аспект до мелочей, прикинь сколько времени на это уйдет. Ставь себе планку и пошел.
>>187952 Ох нихуя сколько ответов. Уже не надо. Судя по дебагу, просто туда пихается джва события. Пихаю кодом одно, в редакторе его не видно, но работает.
>>188015 >Как с этим справляться? Никак, лол. Я пишу, лишь бы как-нибудь, потом переписываю так, как мне кажется правильным. Потом ещё. Потом ещё. В итоге получаю что-то, что меня не раздражает и успокаиваюсь.
Сап, Кириллы. Кто-нибудь уже делал управление для смартфоноплатформ? Я пилю платформер, на пекарнеразумеется все работает отлично, хотелось бы импортировать на смартфоны. В общем, хотелось бы сделать какой-то джостик на подобии тех, которые были в денди что ли, или еще какой-то. С 4 кнопками движения, 1 кнопка выстрел и 1 прыжок. Еще я видел, что вместо кнопок движения частенько берут особый кружок, в котором находится еще 1 кружок-ползунок. Воть, пикрелейтед - какой хочу контроллер.
>>188080 хочешь сказать, ты в день по 100 паттернов юзаешь, детально разбираешься в архитектуре и никогда не переписываешь код джважды? ладно, забей, ноудискасс хорошо дня, Кирюх
Смотрите, аноны, какая у меня проблема. Повесил на игрока NetworkAnimator, запустил два клиента и происходит следующее: с клиента 1 смотрю на игрока 2, двигаюсь и вижу как анимируется игрок 2, в это же время с клиента 2 смотрю на игрока 1 и вижу как он не анимируется. Где-то я явно накосячил, но где именно - не могу сообразить.
Посоны, допустим у меня есть скрипты и осованные на них префабы. Как мне дать проект другим так чтоб они могли в редакторе делатъ сцены из моих префабов сцену, но при этом чтоб у них не было исходников. Это возможно, например распространять уже скомпилированный код или dll?
>>188142 >Это возможно, например распространять уже скомпилированный код или dll Да. DLL реально. Некоторые ассеты так и делают. Но я могу декомпилировать твою DLL, если понадобится.
>>188145 А где про это можно почитать подробней? Или как это делается? В проекте просто ведь лежать исхоники *.cs.
>>188152 >>188150 Ааааай, ну ни траЛькайте, мне жи страшно. В конце концеов уважайте мою прайваси типа. Ну че вы ни как криптоанархисты-то? Чому я обязан отдавать свои исхонички первому встрачному поперечному, наприемр левелдизайнеру которому только уровень надо лепить.
Хочу сделать несколько NPC Создаю класс NPC, NPCManager 1) Нужно ли наследовать NPC от MonoBehaviour 2) Лучше создать List с объектами класса NPC или отдельные GameObject? В ближайшее время буду задавать много таких вопросов
>>188201 >Нужно ли наследовать NPC от MonoBehaviour Да. >Лучше создать List с объектами класса NPC или отдельные GameObject? Чтоу? В любом случае каждый NPC будет представлять отдельный игровой объект. Можешь дополнительно хранить их в списке, если тебе нужно их обходить.
>>188205 > В любом случае каждый NPC будет представлять отдельный игровой объект. Это обязательно? Обязательно ли сущности, не обладающие визуальным представлением добавлять как отдельный игровой объект?
можно ли использовать методы и свойства класса Rigidbody, если я создаю объект как GameObject, а потом прописываю ему example.AddComponent<Rigidbody>();
можно ли создать объект простой формы с помощью скрипта, но не таким образом: GameObject example = GameObject.CreatePrimitive(PrimitiveType.T)? В идеале бы ващпе через rigidbody
>>188237 ни с какого, просто опыта работы с unity мало. в голове только немного сишарпа и навязчивая мысль о том, что курсовую надо начинать пораньше. Почему тогда после следующих строк кода: GameObject sphere = new GameObject(); sphere = GameObject.CreatePrimitive(PrimitiveType.Sphere); sphere.AddComponent<Rigidbody>(); я всё равно не могу вызвать свойства useGravity, isKinematic и прочее?
>>188250 Тут смотри какое дело. Велосити по сути своей может быть результатом действия неких внешних факторов, поэтому и кукарекают. Но на мой взгляд двигать чара с помощью аддФорс - это просто пиздец. Да, изменение велосити напрямую может пустить по пизде симуляцию физики (например, ебанешь ты вектор велосити вверх по нажатию пробела, и персонаж гордо воспарит в голубые небеса), но если действовать адекватно, то ничего страшного не случится. Как по мне, всякие там прыжки/бег персонажа только через велосити делать и надо, ибо получается именно то, что хочешь.
>>188265 В Unity сформировалась своя парадигма программирования, которая основана на компонентах. Почему NPC должен наследовать от MonoBehaviour? Потому что NPC так или иначе будет представлен игровым объектом, и потому что у него будут параметры, которые удобно устанавливать прямо из редактора. И не забывай про префабы. Один класс NPC - множество вариаций NPC из префабов с различными параметрами. Перекладывать всё это на код глупо, это ошибка новичков, которые раньше работали с обычными движками и привыкли всё делать в коде.
>>188250 Потому что юнете компоненты используют это велосити для внутренних вычислений, там же его и назначают. Поэтому если будешь туда писать, ты поломаешь физ. компоненты. Это как двигать объект с RigidBody через transform.position.
>>188271 эти параметры по хорошему должны не в редакторе устанавливаться, а тасоваться в виде ScriptableObject, который должен заменять тебе и поля в редакторе и префабы.
но ок. например, есть сервер, есть клиент. на клиенте что-то происходит. например игрок пытается подобрать предмет. по твоему всё представление о том можно ли брать предмет должно хранится на клиенте, а он просто должен уведомлять сервер о том что он взял предмет. или клиент должен спрашивать сервер можно ли взять предмет и если "да" то брать? сколько экземпляров представления предмета должно быть в этом случае?
или, например, делаешь ты такой опенворлд игру. с корованами. корован идет из точки А, в точку Б. Когда корован находится в определенной близости к игроку, он спавнится и игрок может его грабить. перед тем как корован заспавнился он по твоему тоже должен существовать в виде геймобжекта? тоесь вот ходят там за ширмой невидимые корованы, срут тебе в апдейт? а вдруг на корован другие грабители позарятся, такие-же абстрактные и начнется бой за корован? а вдруг корованов много? ну знаешь вот штук сто маршрутов и на каждом 2-3 корована? ты и тут напишешь Korovan : MonoBehaviour?
не устанешь от ударов граблей если захочешь прикрутить фичу к своему поделию которая включает несколько представлений о чём-то?
>>188317 Про корованы. Тут вступает в игру некий объект игровой, ага, который контроллирует перемещение корованова на самом деле не их, а просто рулит какой-то собственной абстракцией, пока тех не видно. Если ты понял о чем я. Он же их и спавнит при достаточной близости. мимопробегал
>>188320 да. объект один, который контролирует множество абстрактных корованов. мастер корованов! а потом когда приходит время в мастере корованов вызывается метод, который принимает корован как параметр и возвращает геймобжект. или просто в короване вызывается метод, который спавнит корован. но в итоге есть абстрактный корован который не существует дальше коллекции корованов и есть корован существующий как геймобжект.
хотя много примеров можно придумать где у объекта может быть множество представлений на самом деле.
>>188325 ну наверно то что у него вместе с отключением перестает работать все что дарует тебе моно? компоненты то тоже выключаются. не будет у тебя Start() не будет у тебя Update() и будет просто геймобжект который ждет пинка извне чтобы включится. как он перемещаться то будет из точки А в точку Б? нахуй он нужен такой?
>>188326 А в твоем абстрактном короване и Start и Update будут использоваться? Что несешь то? Перемещай его так же через transform и когда он понадобится, то при включении появится в нужном месте.
У меня сейчас стоит версия юнити Unity 5.1.2f1 (64-bit) На почту пришло письмо скачать Unity 5.2, можно ли обновиться до него, или придется перекачивать все заного, и старые проекты похерятся?
>>188330 ну чегож ты такой. разумеется в абстрактном короване нет Start, или Update и они там изначально не нужны. потому что они - представление о короване. его позиция на глобальной карте, статус, сколько коров в нем, ИИ там. Всё что представляет корован и все что нужно для того чтобы этот корован мог заспавнится.
transform то что перемещать будет, умник? сам корован? он же выключен.
Антошки, а кто пояснит мне за AddComponent? Есть клас. Моонобихэвиэр. Сишарповое new не катит, как я уже понял. Везде пишут, что надо AddComponent <> Сделать-то я это сделал, но вот обращения к функциям в классе. Как? На форумах только addcomponent'ом и ограничивается всё. А в документации - вообще мышь повесилась. Пример: class monobehaviour mouse { public int battery (int count) { ... return battstate } }
Вот допустим В совсем другом скрипте gameObject.AddComponent <mouse> (); И тут я всё. Что делать, чтобы пообщаться с функцией battery? Я никак обратиться не могу. Ведь у моего объекта должен же откуда-то статус батарейки появится.
>>188499 к компонентам и их хуйне то легко обращаться. ты можешь сохранить компонент в переменной его типа. плюс сам AddComponent возвращает тебе созданную переменную. можешь написать например Light _light = какаятохуйня.AddComponent<Light>(); и тогда в переменной _light будет ссылка на созданный новый компонент. _light.color = какойнибудьцвет;
и ты можешь брать ссылку на нужный уже существующий компонент через GetComponent
в твоем варианте можно написать просто var _mouse = gameObject.AddComponent <mouse> (); var _mouseBattery = _mouse.battery(число);
Кстати, как сделал. Класс нпц просто отдельно живет и там прописаны методы, менющие элемент класса а также рандомный выбор характеристик. Нпц контроллер генерит пустой геймобджект и потом все спихивает в него, с добавлением компонента класса нпц. В итоге и иерархия не особо захламляется, и отладка в редакторе удобная, и геймобджект для каждого нпц имеется.
Поясните могу ли я бесплатно делать игры на андройд? А то я почитал форумы и в итоге там написано что я должен купить какую-то лицензию чтобы разрабатывать под Android. На торрентах пишут что пиратскую версию бессмысленно качать так как там данные какие-то приложение отправляет и его просто заблокировать могут. Поясните ньюфагу.
>>188538 Ты читаешь старые сообщения, так было до 5-й версии.
Сейчас не надо ничего покупать, по крайней мере пока твоя годовая выручка не превысит ~6 миллионов рублей. Вместо того, чтобы заниматсья некрофилией на форумчиках, лучше бы сходил на официальный сайт и почитал, что там написано.
Пользуясь случаем хочется отправить несколько лучей ЧЕТЫРЕЖДЫБЛЯДСКОЙ ярости в сторону мелкомягких по причине того, что в VS Code не работает дебаг юнити на винде
>>188699 >base.connectionToClient.Send(); >NetworkServer.SendToClient(); Хуйня какая-то. Сообщения, насколько я понял, отсылаются широковещательными. И какой в них тогда смысл, если через RPC я могу то же самое сделать. Я так понял что новыми охуительными средствами юнити сервер не может отправить конкретному клиенту сообщение. Пиздец наворотили, даже разбираться не хочется в этом говне.