Тред о лучшем движке.Где скачать?На официальном сайте.Где взять уроки?На официальном сайте.Где взять текстуры и модели?На официальном сайте.
>>277225 (OP)Как перестать сосать хуй и начать жить?
>>277234Перестать писать на UE и начать писать на Unity, очевидно же.
Планирую запилить пару-тройку статей по кодингу на юнити. Какие темы анонам интересны? Когда-то заебал всех ховербордами, вроде, анону тема интересна была.
>>277248Общая архитектура, сетка, как не делать грабли и велосипеды.
>>277267Доброчую сетку, в частности как делать все на связке HLAPI + своё самописное решение.
>>277267Такого говна и так хватает.
>>277336Поделись тогда ссылкой на статью по общей архитектуре игры на юньке.
>>277342http://docs.unity3d.com/Manual/UnityOverview.html
>>277267>>277297К сожалению, моя сетка это и есть грабли и велосипеды. Так как дефолтная сетка юнити это "точка-точка". По идее, можно поднять где-нибудь юнити и держать всегда включенной в качестве сервера, но это изврат. Но да, точка-точка через юнити это очень хорошо и удобно, ведь не нужен дополнительный сервер. Но увы и ах, сам этой темой особо не интересовался, так что и рассказать мне об этом нехуй. >HLAPI + своё самописное решениеТолько если купишь сорцы юнити. У меня таких денег нет.
>>277343Ты долбаеб или мамкин тралл?
>>277345А о чем ты можешь напейсать?
>>277345Т.е. купишь сорцы? Ты хочешь сказать, что юнитимужики это не предусмотрели?
>>277347Просил про общую архитектуру - тебе дали ссылку. Что конкретно тебя не устраивает?
>>277358Меня не общая архитектура юнити интересует и расположение окошек. Меня интересует структура проекта, как сцены грузить, когда, как инпут по-уму сделать, графоний как учесть, рамеры экрана, локализацию как заложить, где логику аи делать.
>>277349Ну хуууй знает. Пожалуй создам девлог в виде серии туториалов, опенворлд с авторитарным сервером или менеджер посёлка в воксельном мирке. Или не буду строить из себя гуру, заткну ебало и съебу нахуй.>>277356Предусмотрели и они это продают, как там на пике и сказано. Мне, честно говоря, не очень интересно покупать у них сервер ради того, чтобы пользоваться их высокоуровневым апи.>как инпут по-уму сделатьВот с инпутами в юнити пизда. Больно смотреть на проверку кнопок в апдейте, лол. И, по большей части, это из-за политики, что всё должно работать везде и билд на иос и пк отличается только в выборе таргет платформ. Можешь посмотреть на стандартный ассет "кроссплатформ инпут контроллер". Событий на инпут нет, точнее, у тебя нет событий а-ля "button w keydown", в лучшем случае мы сами можем создать скрипт, который будет проверять нужные нам кнопки и уже из него запрашивать состояние кнопок. Как в кроссплатформ инпуте, но только с целевой платформой. Ну, конечно, поверх этого можно и события прикрутить, только нахуя.
>>277394Пиши про менеджер поселка!Меня с инпутом корежит что в каком-то префабе , в глубине компонентов висит скрипт в котором что-то в апдейте по инпуту делается и отдебажить это иногда заебательно или надо туда передать кучи левой инфы.
>>277359Это глобальный вопрос на сотню толстых томов.
>>277406>somelandfill.blogspot.комПродолжать?>в котором что-то в апдейте по инпуту делается Инпут это бул, так что ты смело можешь заменить его на любой свой бул и подвесить его сеттер на гуикнопку.
>>278017Нет. Ты не понимаешь сцти учительства. Ты должен объяснить так, чтобы было понятно как делать, а не писать готовый код
unity где скачать? ну что за наркоманы???
>>278120https://store.unity.com/download?ref=personalДержи, наркоман.>>278104Там же даже картиночки уже добавлены, всё разжёвано. В принципе, это не туториал по C# или юнити апи, если я начну пояснять, что такое мешфильтер, то урок растянется на сорок томов. Я хуй знает, начало там всё пояснено, а дальше только переиспользование того же кода. Ну не надо, так не надо.
я знаю мне тут точно ответяттакая фигня в двух последних играх на юнити, фпс нет, видяха не раскачегаривается, частоты как в простое, 324Mhzможет установить чего надо
>>278158>может установить чего надо Игры
Пацыки, скажите вот что, допустим у нас есть много псин, наследуемых от архипсины, нужно чтоб каждая гавкала по разному, мы просто каждому наследнику подключаем интерфейс и уже реализуем гавканье по разному, а абстрактный класс нужен когда у нас есть вообще разные мутанты нахуй, у которых как раз только общее это лай, а внутренние кишки совсем разные, ибо нахуя абстрактный класс использовать там, где внутренности объектов совершенно одинаковые, верно? Или нихуя не верно?
>>278179Лучше забудь о наследовании, особенно в Юнити. Используй компонентный подход и интерфейсы.>>278179>а внутренние кишки совсем разныеЧитай про принцип Барбары Лисков (но только не на вики, а где попроще написано). Если он нарушается, значит наследование у вас хуёвое и оно приведёт только к проблемам.
>>278179Ну я вон выше писал про кубы, но никто не понял, там эта хуйня реализована ммаксимально гибко. Есть класс архикуба, от которого наследуются кубы. Методы этого класса виртуальные, так что можно от него наследоваться и перезаписывать всё. Это очень удобно, без разницы общее у нас только что-то одно или вообще всё.>>278186>Лучше забудь о наследовании, особенно в Юнити.Лол. Так там каждый компонент наследуется от MonoBehaviour. Если хочешь делать наследование - вперёд.
Что можно почитать о создании изометрических тайтловых игр типа первых двух фоллачей? Может есть какие-нибудь готовые шаблоны-бойлерплейты чтобы не велосипедить.
>>278195А чо не взять сразу готовый инструмент?http://fifengine.net/index.html
>>278191Ну ты и бака, давай, попробуй наследовать еще что-то поверх монобехейвор. Ничего кроме интерфейсов ты не сможешь наследовать, потому что добро пожаловать в Шарп.
>>278219>Ничего кроме интерфейсов ты не сможешь наследовать, потому что добро пожаловать в Шарп.С этого момента поподробнее. Наследую как полоумный, брат жив.
>>278226Почти в каждом скрипте ты наследуешь от монобехейвора, чтобы иметь доступ к функциям движка. Но, чтобы иметь ещё одного родителя, тебе придется задействовать множественное наследование, которого в шарпе нет. Интерфейсы это исключения, их ты можешь реализовывать столько сколько захочешь. И таки да, в комплектно ориентированном движке использовать наследование вместо композиции это моветон.
>>278219Есть класс, наследуется от монобеха. От него наследуется ещё один. Всё работает. Виртуальные функции, массивы, флоаты. Сейчас вот добавил материал с перегрузкой. Другой вопрос, надо ли в наследуемых классах наследоваться от монобехавиор. Мне - нет. Собственно, интерфейсов в явном виде у меня вообще нет.
>>278017Ты бы намек на финальный результат добавил бы. Продолжай, воксели тема.
>>278244Как-то это дико, тебе не кажется? Я наоборот, везде где нужна универсальность при доступе использую интерфейсы. Удобно, но юнити немного неадекватно с ними работает. Не отображает в инспекторе и функция GetComponent() их не находит, что меня огорчает, приходится использовать GetComponent<>(), а ему на вход string не передашь для поиска компонента.
Вот такой вопрос:Есть сцена Мар - там рисуется карта с локейшенами, на них можно тыкать, подгружаются сцены, то, се.Есть скрипт, который по ответу в диалоге анлочит локейшены.Скрипт вызывается в диалогах, диалоги происходят между персами в сцене напрмер TalknFight.Как их соединить? Тащить в диалог карту?
>>278207У него абсолютно ущербная документация. Я уже пытался его использовать, но там всё сводится к "угадай сам, как это сделать".
>>278327Можешь на юнити делать же, хотя у него документация тоже примерно по такому же принципу устроена. Спасает стековерфлоу и форум юнити, там уже обо всем за тебя догадались, так что попробуй его, серьезно. Для твоего жанра юнити отлично подходит, камеру можно настроить в два щелчка под изометрию, будет что-то вроде транзистора.
>>278284>финальный результатСуть в том, что это девлог в форме туториалов, финальный результат не далеко ушёл от конца первой портянки. Цель же - менеджер посёлка, в котором живут пезане. Управление пезанами непрямое, можно задавать задачи, которые они будут решать. В принципе, можно будет просто пройти по первым 3-4 статьям и взять себе один террейн для фпс\тпс кубача. Коменты там для анонов открыты, можете смело писать, что не понятно. >>278293Честно говоря, я не очень люблю всё это ооп, а вот к компонентам уже привык. Так что кому как удобнее, не вижу никакой дикости. Наоборот, всё это очень круто - есть масса возможных решений и каждый выбирает что-то своё. >>278312Можешь тащить карту. Можешь сделать поиск объекта, на котором карта и геткомпонент. Можешь сделать доступность локаций паблик статик и обращаться к ним вообще откуда угодно.
>>278362кубач+маджести?А зачем генерация куба вершинами? Почему не готовый меш?
Посоны, в чем преимущество [SerializeField] кроме возможности редактировать в инспекторе приватные переменные?
>>278380Какое преимущество? Этим атрибутом ты указываешь сериализовать юнити поля, которые он по дефолту не сериализует
>>278383Можно сделать так [SerializeFied] [HideInInspector]
>>278383В том то и вопрос, зачем это делать?В чем преимущество их на жестком диске хранить? Иди для чего это используется, я серьезно догнать не могу. >>278384Можно, но зачем?
Анон, проясни за пиратство в Юнити.Я понимаю, что за модельки из крузиса получи пизды. Но что насчет, скажем, Shader Forge или Ultimate FPS? Как меня могут вычислить, если я их спирачу?
>получубыстрофикс
>>278378Генерация вершинами полностью виртуальная. Можно наследоваться от куба и переписать вершины. Кубы? Можно рисовать хоть звёзды. Но на самом деле это больше для рамп сделано, ну и, может, ступенек. Не решил пока, какие части будут воксельные, а какие мешами. Хочется добавить меши маленьких домиков, персонажей, может, оружия и некоторой фурнитуры. Жаль, что нет артиста. Ещё будут полностью пустые кубы, без вершин и мешей. Это даже важнее рамп. >>278387У тебя есть в игре магазины, допустим. И в них один контент. Хотя лично я использую префабы со списками, тоже ничего.
>>278389>Как меня могут вычислить, если я их спирачу?Могут, но всем похуй. Даже если ты продашь миллионы копий игры. Используй спираченную версию, а потом, если заработаешь, купи (не будь хуем). Я так делаю.
>>278125спс антош, но я имел ввиду что не знать что Unity спокойно качается с офсайта - это надо упороться
>>278423Ну хуй знает, как по мне, сюда заходят уже после того, как скачали юнити. Запостил вторую часть.
>>277225 (OP)Посоны, можете кратко пояснить что такое меш? Это объект такой? В чем отличие и преимущество, что все их так используют?
>>278690Меш это любой трёхмерный объект. Для 2д игр не нужен.
>>278691А в чем разница между обычным 3д объектом или я туплю? Допустим, куб который я могу создать стандартными средствами унити - меш?
>>278692Ты курил? Да, любой 3д объект это меш. И стандартный куб тоже. Посмотри в компоненты - мешфильтер, в нём поле меш - этот куб. Мешрендерер.
>>278329Спасибо. Хорошо, что с камерой не придется своё писать.
>>278693А разве меш - это не треугольник?
>>278362>портянки>портянки>тянки
>>278659Это вода или земля?
>>278697Меш состоит из многоугольников, в том числе треугольников. В русском языке вместо английского термина "mesh", обычно используется "полигональная сетка".
>>278706Все равно нихуя не понял. Какие то вершины, UV что вы несете вообще где можно годное на эту тему почитать, а то я тугой чот
>>277394>Больно смотреть на проверку кнопок в апдейтеРазве в стандартных ассетах не так?
>>278698>конца первой портянки>конца первой тянки>>278702Земля. >>278721В этом и суть - нет другого способа. >>278697Меш может быть треугольником. Но чаще всего меш это дохуя-дохуя треугольников, скучкованных вместе. Тот же куб - каждая его грань это два треугольника.
>>278716Что ты делаешь в этом разделе, клоун? Вернись в /vg/
>>278723>В этом и суть - нет другого способа. А какой способ ты хочешь. Вообще-то есть Input.GetAxis()
Спрашивал в прошлом треде, тоже не ответили, есть системы звездные, содержит в себе корабли, но сами корабли содержат в себе звездную систему, этакая ссылочная петля. Ну вроде норм, сливаешь ссылку на корабль пушке, а она там уже смотрит в корабельной звездной системе, кто рядом, кого опускать а кого нет. Так делать нормально?
>>278747>Так делать нормально?Вполне. Если тебя это сильно напрягает, то можешь ограничить работы со звёздной системой через интерфейсы, и аналогично работу с кораблями. Пилишь интерфейсы, с минимум методов и свойств, которые нужны и по ним передаёшь ссылку на нужные объекты.
Подкиньте годного туториал для first person controller, чтобы не застревал на углах, прилипал к движущемся платформам, вот это вот все.
>>278728>Input.GetAxis()Те же яйца, только в профиль. В юнити есть система событий, допустим, такой код Event e = Event.current; if (e.alt) if (Application.platform == RuntimePlatform.OSXEditor) Debug.Log("Option key was pressed"); else if (Application.platform == RuntimePlatform.WindowsEditor) Debug.Log("Alt Key was pressed!");Работает. Но только в Гуи-потоке, а не основном.
Кто-нибудь уже использовал новомодный Unity Multiplayer? Он лучше PUN?Ещё меня их цены что-то настораживают. Получается, что нужно будет платить в несколько раз больше, чем в PUN. Платить в далларах, что с нашим курсом не очень приятно. Зато нет никаких ограничений. Платишь только за трафик.
>>278809Не понял, что это за чушь и зачем ты это написал. Это события - лютое говнище, которое было написано для не менее уебищного immediate GUI юнити и исползуется только внутри движка для рисовки окошек.
>>278813>только внутри движкаНу пиздец просто. А вообще, любые события лучше, чем дрочить в апдейте состояние кнопок.
>>278816Таки чем тебя смущает дрочильня кнопок?
>>278816>события Какие это события лол. Наркоман штоле. Ты точно так-же дрочишь это все в апдейте.Этот Event используется затем, что у юнитивского ГУЯ есть несколько фаз (т.е. OnGUI вызывается несколько раз за фрейм), типа отрисовки, обработки ввода и т.д., и в этом глобальном классе хранится инфа для каждого такого состояния и это нужно чтобы отличать в OnGUI какая сейчас идет стадия.
>>278817Тоже не понимаю. Написать скрипт событий можно за пять минут, если очень хочется. Только зачем?
>>278820Может он полагает, что юнити к клаве доебывается каждый фрейм на предмет того не нажата ли кнопка?
Как написать метод, реагирующий на появление или исчезновение объекта из вида? Примерно представляю как это сделать расставив по углам тригеры, может есть метод из коробки?
>>278839isVisible
>>278841OnBecameVisibleOnBecameInvisible
>>278841>>278842спасибо.А как вы так быстро находите это все в документации? Или просто долго уже жадротите юнити?
>>278844То, что используешь часто - всегда в памяти быстро находится. Больше практику, меньше двачуй капчу.
>>278724Спрашиваю, где почитать про меши
>>278723То есть меш в себе хранит координаты трех вершин? Могу ли я получить эти координаты из стандартного куба и изменить?
>>278864Почитай что-нибудь про 3д графику вообще.Либо очень толстый.
>>278867Не толстый, просто не знаю про 3д нихуя.
Смотрите, допустим у моего меча есть меш коллайдер, который триггер. И при пересечении хитбокса врага OnTriggerEnter у него отнимается хэпэ. Но, допустим, меч очень быстрый, и проходит полукруг за 2 кадра, и иногда попадание не засчитывает, потому что в одном кадре меч еще не пересек, а в другом уже находится за хитбоксом. Это мне так кажется, точно я не знаю почему порой не засчитывает. Как решить эту проблему?
>>278869Надо физику для него не дискретную выставить, а непрерывную.
>>278869Сделай учет коллижена не дискретный
>>278868Иди к дяде Борескову
>>278869И про интерполяцию не забудь.
>>278876Не указывай мне.
>>278864Нет, меш хранит в себе координаты всех вершин. Обычно их гораздо больше трёх. Да, можно изменять эти координаты.>>278869Увеличь кол-во тиков физона и попрощайся с фпс. Вариантов овердохуя на самом деле. Можешь сделать огромные хитбоксы.
>>277225 (OP)Нюфаня итт. Допустим игра сделана на Юнити. Чья-то другая инди йоба. Могу ли я как-то открыть эту самую игру в Юнити? Ну там в скриптах покопаться, посмотреть на игру в Scene View.
>>278872>>278873Спасибо, парни.
>>278893>в скриптах покопатьсяДа.>посмотреть на игру в Scene ViewНет.
>>278902>НетПочему?
Какой шейдер самый быстрый? ФПС пиздец проседает.
>>279052Unlit/Color, по идее. Вообще шойдеры на ГПУ калькулируются, ты уверен, что причина в шейдере?
>>279072Профайлер CPU пишет WaitForGPU - 30%, а GPU Graphics.PresentAndSync 90%.
>>279086Синхронизацию отключи, дурень.
>>279093V Sync? У меня отключена.
>>279096Да и в Fastest по умолчанию отключена.
Нужна помощь с шейдером.Сурфейс с этим шейдером должен плавно "затухать", постепенно становиться прозрачным при соприкосновении с другими поверхностями.Вроде бы просто нужна попиксельная проверка z-буфера, но я не знаю как делать в шейдере такиую проверку.
Парни, поясните за анимацию в юнити. Ставлю я значит дверь, двигаю, а эта сука берет и телепортируется во время проигрывания анимации. Какого хуя?
>>279096Ты отключил шейдер и у тебя фпс вернулся в норму?
>>279112Ну лучше стало. Но так себе. Да просто девайс херовый, на котором пилю игру.
>>279113Юнька на телефонах нормально работает, а ты тут про девайс. Ты чет перемудрил прост. И шейдер не самое хуевое, судя по всему. Без профайлера трудно сказать.
Поставил spot light. Сделал его mixed. После того, как запек освещение все динамические объекты стали черными. Как исправить?
Пилю 2д, заметил такую проблему, персонаж прилипает к объектам с коллизией, т.е если прыгнуть, упереться в блок например и не отпускать клавишу прыжка, то персонаж просто застрянет и зависнет, как фиксить?
>>279192Если есть коллизии справа или слева и не касаешься пола, добавляй отрицательной скорости по оси Y, пока не достанешь до пола. При желании можно сделать замедленное соскальзывание.
Как сделать переход между уровнями, как в звездных воинах, ну типа уровень выплывает сбоку/сверху.
>>279248Загрузить сцену и двигать камеру?
>>279262Тогда предыдущая сцена пропадет же.Вот тут на второй минуте примерhttps://youtu.be/buvoKb8947I?t=120
>>279280И что там выплывает
>>279289Ширмочка такая, хуй знает как объяснить. Но вот на второй минуте тот переход, который я бы отел реализовать
Как прямо в юнити запилить мэш нестандартной формы? Полукруг например я нуфак
>>279296Полушар ты хотел сказать?
>>279290Загрузил сцену и захуярил ширмочку, чтобы игралась с начала.
>>279300Именно закруглённую линию, буквой С, если так понятней
>>279325Ты видео то смотрел? смотри там какой сценарий:1 сцена один2 сцена один|сцена два3 сцена оди|сцена два4 сцена од|сцена два5 сцена о|сцена два6 сцена |сцена два7 сцена|сцена два8 сцен|сцена два9 сце|сцена два10 сц|сцена два11 с|сцена два12 |сцена два13 сцена дваКак мне это реализовать? При выгрузке следующей сцены предыдущая исчезает, а мне надо, чтобы не исчезала. Ты видео смотрел? Там предыдущая сцена не исчезает. То есть появляется вторая сцена и накрывает первую. Посмотри видео. Там сначало идет первая сцена потом сбоку сползает вторая, а первая не исчезает. Там на второй минуте в видео будет видно. Можно не смотреть все эти две минуты, а сразу кликнуть на две минуты. Вообще в видео есть тайм код, можешь открыть в новом окне, там будет видно переход, такой, что первая сцена не исчезает при появление второй. Ты не знаешь как такое реализовать? Ты не мог бы мне помочь? В звездных воинах такой переход был. Там сцена, сменяющая предыдущую накрывала ее сверху, как шырма. Понимаешь? Я видео прикрепил, где в игре ангри бердс по мотивом звездных войн реализован этот переход. Ты знаешь как реализовать его в юнити? Я в детстве игрался с видеоредактором там были переходы между кадрами, там был такой эффект. Как реализовать его в юнити? То есть один кадр сменялся другим, выплывающим сбоку или сверху или снизу или с другого бока или с другого низу. Только в юнити я не понял как так сделать. Может есть какой-то способ? Вот при загрузке новой сцены предыдущая удаляется. А мне так не надо, надо чтобы вторая какбы покрывала первую и только после покрытия удалялась. Понимаешь? Я искал видео на ютюбе с подобным эффектом. и нашел видео с гемплеем игры про злых птичек, там игра по мотивом фильма ззвездные войны, там на второй минуте видно как это происхдит я прикрепил видеотам на второй мниуте поежешь пмочоь? юнити помоги видо вторая минута сменакадров как в звездных воинахпожалуйста сценадва\сценаодин она наезжает напредыдущуюсуену тамтаккак ввоинах звездныхюнити
>>279358DontDestroyOnLoad();Хранить сцены как префабSceneManager (самый лучшй)Много способов
>>279377Ну ты перед тем как пиздеть, посиди и подумай, как это реализовать. И если тебе лень, то блять не пизди. Вот придет какой-нибудь нормальный анон, увидет что на мой вопрос будто есть ответ и подумает что он на самом деле есть, а его блять нет.вот уже прошло три поста, где я поянсю тебе что ты обосрался, ты насрал и мажешь себя этим говном, а мой вопрос уже смлыло и гео никто не прочитает. Нахуя ы пиздишь про то что не знаешь? ты подума просто, прикинь варианты где есть две сцены где одна переходит в другую, как на видео. ты понимаешь что ты несешь хуйню ты нихуя не помог, ты только делаешь хуже смывая вопрос выше и выше . просто перестань мен отвечать. хватит пиздеь я уже поянл что ты нихуяя не знаешь какэ то реализовать . просто не пизди. ты блять вооб ще соображаешь? просто сяди и подумай вот есть у тебя сцена которыю ты решаешь не уничтожать есть другая сцена которая в этот момент появляется какого хуя объекты соо второй сцны должы блять покрывтаь первыеони все нахуй смешаются в сцене и блять никакого перехода не будет никакой ширмочик бялть. ты просто восроизведи этот пиздей в голове у себя. блять. просто возьме сцену блять чтобы тебе было проше с кубом. это сцена один и возьми с цену с шакрикм это врторая сцена. какого хуя чтобы могло проихзойти чтобы ониблять пресеклись блять изиди нахуй даун. ты просто ожешь понять. вот нахуя ты мне отвчешаешь? нахуя пиздеть про точто не знаешь просто не пизди заткнись нахуй. можешь не отвечать на мои вопросы? нахуя ты городишь про то что не знаешь каой нахуй ссценменеджер какие нахуй префабы ты пробовал подумать у себя в говлове воспроизвести? сколько раз тебе нужно повторять ты вообще игры делал когда-нибудь ты юнити запускал про что ты рассказваешь? ты думаешь что пишешь перестань мне отвечать если не знаешь что ответить
>>279384>Показываешь ширмочку>SceneManager.UnloadScene("scene1");>StartCoroutine(SceneManager.LoadSceneAsync("scene2"));
>>279384Сидеть и думать - твое дело, за тебя никто делать не будет, уебывай.
>>279386Все, иди нахуй.>>279387Это как если бы на вопрос как создать куб мне бы рассказывали как повернуть камеру, а когда я бы жаловался, что мне объесняют совершшенно нето, мне бы предъявляли чтобы думал сам. Тут один в один ситуация. Нахуй вы рассказываете эту парушу. Вы ширмачку мне сделайте.
>>279388То, что ты не можешь объяснить что ты хочешь - это твоя проблема. Тут экстрасенсов нет
>>279388>Сохраняешь первую сцену в текстуру>Выводишь эту текстуру на UI rawimage. добавляешь паренту rectmask2d>SceneManager.UnloadScene("scene1");>StartCoroutine(SceneManager.LoadSceneAsync("scene2"));>В корутине уменьшаешь ширину твоего rawimage - получается ширмочка
>>279416https://github.com/prime31/TransitionKit
>>279416Вот это уже больше похоже на правду, извини за вчерашний неадекват.>>279441Вот это уже пиздец как охуенно, все как мне нужно и уже готово, спасибо больше
>>278387Затем, чтобы не писать километровые конфиги с редакторами.К примеру, у тебя есть йоба-скрипт, который двигает объект со скоростью float m_Speed = 5, а потом ты захотел, чтобы другой объект двигался со скоростью 3. Будешь писать другой скрипт или вообще загрузчик конфигов? (ScriptableObject мы не рассматриваем, только монобехи, только хардкор). Ну так вот, когда ты хардкодишь константы, как я показал выше, то с этого момента ты типичный байтоеб и лох, который дрочит себе в рот.А если ты делаешь так [SerializedField] float m_Speed и уже в редакторе настраиваешь какое значение скорости будет у объекта, ты переиспользуешь скриптец и можешь создавать сраную тучу объектов и все будут двигаться с разными скоростями.В этом вся прелесть Unity как движка, то что тебе не надо городить велосипеды, как это делают плюсобляди у которых ВСЕ ЛУДШИ.мимоПРОбыдло
>>279490А можно просто сделать переменную публичной и не жрать говно.
>>279491Если например запилить редактор чего-нибудь (тайловых карт например) для работы в Editor'е, то необходимо, чтобы юнити сохранял все то, что ты наделаешь в этом редакторе. А засирать инспектор полями не предназначенными для ручной правки не лучшее решение.
>>279490Долбоеб, вопрос был в том зачем сериализовать переменную и потом скрывать её в инспекторе. То что ты описал очевидно любому, даже самому тупому анону, севшему за хуюнити два дня назад.
>>279497Хуюнити по умолчанию сериализует все публичные переменные.
>уже в редакторе настраиваешь>засирать инспектор полями не предназначенными для ручной правки не лучшее решениеЕсли это один анон, то у него проблемы с его шизофренией, лол.
>>279540Он вообще какой-то ебанутый.
Поцаны, как в DOTween убить Sequence? От Kill эффекта нет.
>>279509>А засирать инспектор полями не предназначенными для ручной правки не лучшее решение.>Хуюнити по умолчанию сериализует все публичные переменные.И читаем мы как всегда жопой.>>279540А если не один, то нет проблем. Нахуя ты это написал? Я так то просто мимо проходил.
>>279491Инкапсуляцию нарушает епт, что хорошего, если все классы начнут видеть переменную, котрую надо редактировать только через редактор.Для этого и есть [SerializedField]. Он позволяет привейты делать доступными для редактора.
>>279583>Инкапсуляцию нарушает епт, что хорошего, если все классы начнут видеть переменнуюТебя это ебет? Пусть видят
>>279585Про ООП погугли для начала, и основные парадигмы. Понятно, что накодить можно любое гавно, но почему бы не стараться делать это хорошо?
>>279586С чего ты взял, что это правильно? Тем более, это портит читаемость кода, а я За читаемость в первую очередь.
>>279583Верно. Но вопрос то в другом, зачем делать приватную переменную сериализуемой и скрывать её в инспекторе через атрибут?Я хочу выяснить, какие это дает преимущества помимо доступа к приватным переменным. А в целом бы прав, а анон выше нихуя не прав, инкапсудяцию нарушать - долбоебом быть.
>>279588Когда класс "враг" (как и другие классы) будет открыто иметь доступ к полю "деньги", класса "игрок", нельзя будет гарантировать, что в каком-то месте в проекте поле "деньги" не может изменится из-за каких-то обстоятельств. А это в свою очередь убивает и читаемость, и логичность кода.Ну просто основы ООП же, ну.
>>279592А если говорить о публичных полях в контексте Юнити? Зачем такие поля, которые задают поведение объекта, делать закрытыми? А если это ссылка на другой объект? И я уж молчу о тестах. Получается некий чёрный ящик, который откуда-то берёт значения для закрытых переменных.Потом, какой смысл делать публичной переменную "Деньги" у скрипта игрока? Если ты хочешь задать начальное кол-во денег, то задаёшь публичную переменную int initialMoney, а после в методе Start задаёшь приватную переменную money, которая хранит актуальное кол-во денег:private void Start(){money = initialMoney;}Собственно, в этом смысл таких переменных в скриптах по большей части.
>>279592>нельзя будет гарантировать, что в каком-то месте в проекте поле "деньги" не может изменится из-за каких-то обстоятельств. Они изменится, если только ты его изменишь. Ты совсем ебанутый штоли? Ты же не бизнес-приложение делаешь. В игрострое ООП дроч скорее мешает
>Устаревший ООП в движке с компонентной системой>Скрываем в редакторе переменные, доступные для редактирования только в редакторе>Не можем гарантировать, что делает наш кодЁбаные наркоманы.
>>279595Есть три сценария, при которых это может произойти:1) с твоим кодом работает другой человек2) ты сел работать бухим3) ты пишешь нечто большее, чем платформер, из-за чего возникает необходимость вводить тонны функционала, пробовать множество новых фичей и всего такого, и проверь мне, рано или поздно ты из лени возьмёшь да и изменишь публичное поле одного объекта из другого объекта. А потом забудешь на неделю. А потом охуеешь от мелкого бага и начнёшь искать его причину. А потом вдвойне охуеешь, из-за того что весь твой код превратился в вермишель и от архитектуры там одно слово, из-за чего проще все с нуля переписать чем рефакторить. Соблюдайте ооп, щенки.
>>2795971) таки компонентной подход есть развитие ооп, так что принципы ооп для него тоже справедливы. 2) в голос3) это норма для начинающих разработчиков
>>279595Тут зависит не от бизнес/не бизнес, а от количества человек, которые работают над проектом и размером проекта.
>>279108Блять, анончик, очень нужен твой совет. Очень.
>>279613Шейдеры это тебе не ассеты таскать, это сириус буизнесс.
>>279604>Соблюдайте ооп, щенки.Нет. ООП не для игор. Для игр лучшем решением является не прятать переменные, а наоборот сделать их как можно открытее: использовать глобальные статики где только можно, все поля сделать публичными.
>>279613Шейдер должен быть вертексным. Во фрагментную часть, естессна, надо передать вертекс. Потом надо захуярить текстуру глубины. _CameraDepthTexture это sampler2D_float, который надо объявить заранее.half depth = SAMPLE_DEPTH_TEXTURE_PROJ(_CameraDepthTexture, UNITY_PROJ_COORD(vert.screenPos));А потом глубину эту хуяришь в линейнуюdepth = LinearEyeDepth(depth);Вот у тебя всё и готово. Но ты ж один хуй нихуя не понял, блядь.
>>279619Слишком толсто.
>>279630Ничего толстого. Со статиками в разы удобнее работать. Не нужно думать как передать ссылку на тот или иной объект. Всегда все под рукой в любом скрипте. И NullPointerException гораздо труднее словить с ними.
>>279636Ни разу это исключение не ловил.Боюсь даже представить, что у тебя творится в проекте.
>>279640>Ни разу это исключение не ловил.
>>279619>использовать глобальные статики где только можно, все поля сделать публичными.Спасибо что напомнил данное себе обещание никогда не качать игры местных юнитидебилов.
>>279636Мне нравится паттерн "scene singleton". Его сами Юнитеки используют в классе EventSystem и может ещё где.
>>279642Ловлю только NullReferenceException.Чяднт?
>>279643Ты статики вообще никогда не используешь типа?
>>279644Кинь линк
>>279647Я никогда не использую, в ситуации не попадал, в которых они бы мне понадобились.мимодругойанон
>>279648Линка нет. Могу скинуть свой пример, как использую:http://pastebin.com/cNd5wrnh
>>279648www.google.com
>>279650Даже синглтоны не используешь?
>>279643И тут ты такой объясняешь зачем нужно прятать данные и постоянно гонять их туда сюда в аргументах/искать их
>>279665Объяснят тебе в конторе коллеги, ректальным способом.
>>279667Ты через это уже прошёл, видимо.
Анон, что не сильно сложное можно сделать ньюфагу? Сделал переписал пару учебных проектов с офф.сайта, а что делать дальше не знаю. платформеры идут нахой
>>279680Шутер. Я серьёзно. Обычный шутер от первого лица. Постепенно, потихоньку. Так многие вещи освоишь.
>>279680Текстовый квест дейт сим.
>>279681Я представляю как его реализовать в примитивном виде, просто спавнить пулю и двигать ее вперед, пока не среагирует коллайдер. А на персонажа вешать characterController. Нужно что нибудь новое, или какие то механики к этому приделать. я без фантазии>>279682Это как новелла что ли? Для них можно и без движка обойтись.
>>279689>Я представляю как его реализовать в примитивном видеРеализуй в нормальном виде. С разными видами оружия, с противниками, с инвентарём и переключением оружия, с возможностью смены надетого оружия и тому подобное. Пили Half-Life 3
>>279660Нет, хоть и не отрицаю из полезности. Да, так бывает
>>279697Зацени структуру какого-нибудь своего юнити-проекта.
>>279700Нормальная модульная структура
>>279702Ну не сливайся, плизки.
>>279700public class GOTYGame : MonoBehaviour { void Start () { GameObject cube = GameObject.CreatePrimitive(PrimitiveType.Cube); cube.transform.position = new Vector3(0, 0.5F, 0); }}
>>279667Причем тут коллеги на работе, полуебок? Я тебя про игру на юнити говорю.Например я в классе Game сделаю статки для игрока, для уровня, для всего и в любом скрипте я парой строк могу сделать все что угодно. Мне не надо городить хуйню и абстракции и придумать где что и как передевать, куда влаживать и т.д.
>>279716А если игроков небесная сотня? Не охуеешь?
>>279629От души, серьёзно. Пока раскурю шейдеры, пойму смысл этих магических рун, но в целом логику-то я понимаю, мне скорее нужно было именно синтаксис и предефайнед слова для замера глубины, потому что в документации нагуглить не получилось.Ещё раз, спасибо.
>>279716Ты знатные шизик-долбоёб.
>>279735массив с игроками
>>279737Если всерьёз решил курить эту херню, загляни-ка в стандартные ассеты, в шейдер воды. А особенно посмотри на edgeBlendFactors и foam. Я, наверное, в процессе работы с кубизмом тоже буду делать воду с подобным шейдером, так что будет, что почитать, лол. Но до этого рановато.
>>279744И массив тоже статичный, да?Ебанутый, просто ебанутый, иди на бейсике сука программируй.
>>279752Майнкрофт пилишь свой?
>>279756>Майнкрофт >>278362>Цель же - менеджер посёлка, в котором живут пезане. Управление пезанами непрямое, можно задавать задачи, которые они будут решать.Воксельный колхоз. Анон назвал это майнкапф+маджести. Но я в него не играл, лол.
>>279771Settlers же.
>>279771А майнкрафтоподобные кубы можно разве назвать вокселами? Они имеют текстуры, а воксел это что-то вроде "3д пикселя".
>>279779Расслабься, сейчас модно быть тупым и не знать значение употребляемых слов.
>>279168Бамп вопросу
>>279777Возможно. В них я тоже не играл. Но с ностальгией вспоминаю казачки и постараюсь добавить чуточку оттуда. С упором на сельское хозяйство, лол.>>279779Тыжпрограммист, ты должен понимать, что надо отделять логику от отображения. У меня есть структура, состоящая из вокселей. Которую я отображаю с помощью меша. По сути, невозможно сделать в юнити "тру-воксельную" графику, это всё равно будет куча треугольников и текстуры. Ну да, каждый куб можно залить одним цветом, чтоб графон стал как земля. Но это один хуй не будут воксели. А вот сама логика пока что воксельная. Так если доёбываться - все 2д пиксельарт игры на юнити нихуя не 2д и не пиксельные.
Совсем не понимаю как работать с камерой в юнити, что и как делать? Где пиксели? Хочу например сделать для мобильного телефона с 480х854, как это делается? А если для айпада с его 4:3? Неясн.
Я совсем тупой, ибо даже гугл мне не помог, поэтому надеюсь, что хоть тут мне помогут. Есть одна анимация, которая отказывается проигрываться. Использую Animation, а не Animator, поскольку объектов куча, а анимация только одна. Все в 2D.
>>280091Аниматор - это как раз компонент, который проигрывает анимации
>>280096Нагуглил, что раньше можно было проигрывать анимацию обычным компонентом Animationуверен, что и сейчас можно, но у меня просто руки из жопы. Есть же такой компонент
>>280091>>280098Спрошу еще кое-что и свалю. Допустим, у нас есть тысяча одинаковых объектов с одинаковой анимацией, но проигрываются в разное время + анимация только одна. Нормально ли для каждого из этих объектов создавать Animator?Приношу свои извинения за тупые вопросы
>>280098Legacy выстави в свойствах даун
>>280106Выставлял уже, не помогает
>>280107Тогда убериВообще, если спрайты анимируешь, то в какой-то из версий с этим проблемы были, а может и во всех. Короче не анимируются они через Animation. Так что либо Animator юзай, либо другой движок. ВЕЛКАМ ТУ ЮНИТИ
Можно ли как-то поменять масштаб интерфейса? Заебался, я и так слепой.
>>280120Можно понизить разрешение экрана.
Анон, нужна помощь. Есть сцена. На сцене 3 камеры. Одна под юай, одна под скайбокс и фоновые удаленные объекты, и одна под все остальное. У фоновой камеры обрезка в диапазоне 20к - 40к. У обычной 0,3 - 3к.Есть объект (космический корабль). На нем висит скрипт, который раз в какое-то время заставляет корабль вылетать из-за спины наблюдателя (камеры) чуть снизу, и двигаться в закат. После того, как корабль преодолевает определенное расстояние, он возвращается в стартовую позицию. На корабле висит 4 объекта с системами частиц: типа реактивная струя от движка. Я столкнулся с такой проблемой. При первом запуске корабля все заебись. Но на втором системы частиц не отображаются в игровом виде. Если переключиться на сцену, то там все норм, и после переключения назад в игровой вид, партиклы становятся видны. Сначала все отображалось, а потом вдруг перестало. Чуть раньше я сталкивался с этой же проблемой, в случае, когда целевая точка движения корабля выходила за границы рендера камеры. Но потом я добавил дальности, и проблема пропала. Но сейчас появилась снова, и я хуй его, что делать.Пробовал гуглить, но ничего не нашел толкового. Я даже не знаю, как правильно запрос написать, лол, чтобы проблему описать в двух словах.Может кто сталкивался с подобным?
>>280142Изначально партиклы запускались на эвейке, и лупились бесконечно. Но с появлением проблемы я пробовал разные варианты, в том числе включение из кода. Не помогло.На картинках суть проблемы.Пик1: второй вылет корабля, партиклов не видно. Пик2: переход в сцену. Тут партиклы есть.Пик3: возврат в игру. Партиклы магическим образом появились (до следующего запуска корабля).Пик4: собственно настройки системы частиц.
>>280151>Пик4: собственно настройки системы частиц.Отклеилось.
>>280152>>280151>>280142Нашел. Это баг автокуллинга в юнити. Предлагают на выбор костыли по затыку.https://issuetracker.unity3d.com/issues/shuriken-is-culling-particles-when-were-using-setparticleshttp://answers.unity3d.com/questions/980950/particle-system-particles-disappear-when-game-obje.htmlВ моем случае решилось включением модуля субэмиттера.
Привет, юнитипитухи)))Какого быть опущенцами?мимоанриалобог
>>280349Свет уже перестроил, бог?
>>280372Хорошо ты приложил этого безигорного.
А чё, тут нельзя массив вот так присвоить?array = [1, 2, 3, 4, 5];
>>280384Можно
>>280384Низзя. Только так:var array = new int[] { 1, 2, 3 };
>>280384Жс-макака не палится.
>>280389Шарпонищенку забыли спросить.
>>280380Свет это миф, в настоящем мире нет динамичного света.
Соскучился за вами, короче опять вопросы.Есть корабли, 10 шт пусть, летают там себе, петушатся, вот один сдох, ну и короче дохлого надо из списка удалить. Можно перебрать список и вычислить по id петушка, но а может есть способ получше? А то возникает чувство что переборы это уже обсёр.В голову ничего не приходит, список же меняется, хуй проссышь кто есть кто. Вот если бы каждый корабль знал какой элемент списка на него ссылается, можно было бы этот элемент удалить. Но такого же вроде не завезли? Вроде вот можно использовать массив, и если что расширить, пустые ячейки можно залеплять новыми построенными кораблями. id корабля равен числовом индексу, всем норм, малафья льется, перебора нет. Какие подводные камни у дырявого массива?
>>280445Списки бывают разные. Есть например словари(как мап в стл). Там удаление, добавление стоит нихуя и без перебора.
>>280445Если хочешь ебаться с массивом, можешь при построении давать элемнту знать свой номер, а при удалении - менять его местом с последним, удалять, а переставленному пересообщать свой номер. типа так.
>>280445List.Remove(GameObject pidor);
>>280445Юзай dictionary. Там доступ к элементу по ключу, которым может быть айди. Можно еще хешсеты юзать.
>>280445class MatherOfKorabliki{public GameObject korablickPrefab;private List<GameObject> korabliki = new List<GameObject>();public GameObject CreateKorablik(Vector3 position){ var korablik = Instantiate(korablickPrefab, position, ...); korabliki.Add(korablik); return korablik;}void Update(){ for (var i = 0; i < korabliki.Count; i++) { if (!korabliki.activeSelf) { korabliki.RemoveAt(i); i--; } }}}
http://pastebin.com/jMmem0hs
>>280445>>280493
>>280493Чуть поправил:http://pastebin.com/K8zLkDqw
>>280493Лучше уж GetInstanceID тогда использовать. GetHashCode скорее всего его и возвращает.
Ананасы, как нарисовать широкую плоскую линию перпендикулярную земли? Юзаю LineRenderer, но он создает иллюзию объемной линии, всегда поворачивая ее за камерой. Нужно чтобы было например как на 2 пике.
>>280498Остаётся самому создать Mesh.
>>280497ты можешь переопределить гетХешКод, и возвращать из нее что угодно.
>>280499Слишком заебисто, нужно хотя бы велосипедное решение.
>>280502Вот только код от этого станет хуже.
>>280544>Вот только код от этого станет хуже.Это почему?
>>280546Переопределение дефолтного метода object. Дурной тон. Тем более он уже у unity object переопределён. Нужно делать проще и понятнее. Хочешь разбить объекты по айдишникам? Так и пиши GetId() хуё-маё.
>>280550Чем тебе простой ремув то не нравится?
Ребят, пояснить за Ray и raycast и всё это, пиздец туплю, не могу понять, как его юзать. Или гайды по нему какие-нибудь. Документацию читал, но что-то очевидного понять не могу.
>>280562Создаешь переменную HitInfo и в неё через out передаешь данные о точке попадания луча. Из неё же через точку все что тебе нужно извлекаешь, будь то ссылка на объект, координаты столкновения или что-либо еще.Сам же луч кастуешь , передавая ему координаты начала луча, его направление и, по желанию, Layer бывает нужно, если тебе необходимо кидать луч игнорируя некоторые объекты, например при стрельбе сквозь деревянные доски. Также эта функция возвращает bool факта попадания. Задавай вопросы, десу.
>>280551Если ты про list.remove(obj), то он во внутренней реализации все равное будет проходить по всему списку.
>>280562https://unity3d.com/ru/learn/tutorials/topics/physics/raycasting?playlist=17120
>>280565Тебе не похуй ли? Если ты фанат байтоебства, то выбрал ты явно не тот движок.
>>280569Даун блять, как твой пост вообще относиться к оригинальному вопросу. Того куна не устраивал перебор элементов, значит оптимальным решением будет использование словарей.
Импортировал obj-модель, теперь не могу нанести на него текстуру. Модель просто принимает оттенок тектстуры, но не саму текстуру. Пикрелейтед, слева обычный созданный куб, рядом модель, на низ одна и та же текстура и её параметры.
>>280574Как на счёт UV, мозерфуцкер?
>>280595Выбираю UV1, UV0 безрезультатно. Или ты про что-то другое?
>>280493>Юзай dictionary>словарьБлагодарю за ответы и код.
>>280597>пижженая юнити
>>280505Ты охуел? Чем тебе это не велосипедное решение? Создать блядь 4 вертекса с определенным интервалом, ты даже на это не способен? Пошел нахуй из моего треда.
>>280597UV2 нужен вообще-то, но как сказал >>280604-господин выше, в твоей кастрированной пираской версии не завезли. Либо качай нормальную, либо зашивайся.
>>280445>но а может есть способ получше? А то возникает чувство что переборы это уже обсёр.Пиздец. Переборы подобного типа - полная хуйня для процессоров. Да и пул нужно юзать. Вот это уже важнее.
>>280445>10 кораблей>НУ МАМ Я КРУТОЙ ПРАГРАМИСТ ПИРИБОР ЭТА ДОЛГА>между тем в апдейте у программиста getcomponent придает импульс физическому телу, а sendmessageupwards - обновляет параметры в скриптах на объекте
>>280640Что плохого в передаче импульса через GetComponent?
>>280605> велосипедное решениеДолбоеб, где решение то? То что ты высрал в 1 предложение, у меня было первой мыслью, но не стал закапываться, потому что неебу как сглаживать, как считать сочленения на поворотах и прочую хуету. Ты либо предлагай решение, либо иди нахуй.
>>280649> в апдейте
>>280654Ааа. Ну, это лучше вешать на вызов, конечно. У меня почти вся логика на GetComponent, вот и удивился такой реакции.
Кто-нибудь из вас пробовал выжать мега-графон из юнити хотя бы в пределах одной комнаты? Может есть такие энтузиасты в интернетах?
>>280657Эм, это какбэ один из самых графически навороченных движков. Странный вопрос ты задал, конечно. Юнитимужики каждый новый серьезный апдейт выкатывают. Но здесь нет большой красной кнопки "сделать заебись", если хочешь увидеть действительно хороший графон на юнити пиздуй на поликаунт. Местные васяны не умеют ничего кроме таскания кубов.
>>280654Не знал что это затратно. Где можно почитать об этом?
>>280668Об этом? Нигде. Просто представь, что ты каждый фрейм доебываешь несчастный компонент тычками Вт бочок, вместо того чтобы сделать это всего один раз. Ибо одного раза достаточно. В апдейте нормально вешать инпут, да и только. Все остальное там держать, по большей части, моветон. С системой событий знаком? Вот что-то вроде этого. Это как с клавиатурой, кстати. ОС может с ней работать в двух режимах, в первом она опрашивает все клавиши один раз в сколько то миллисекунд на предмет того нажата она или нет, а во втором сама клавиатура отправляет сообщение о том что её нажали непосредственно самой системе. Повсеместно используется второй режим.
>>280649Кешируй компоненты. При инициализации объекта (в эвейке, страте, либо в специальном публичном методе, который вызывается фабрикой при инстанциации) делай один раз геткомпонент, и схороняй в приватную переменную (это будет ссылка на объект класса, то есть на конкретный компонент, на конкретном геймобжекте), а потом обращайся к ней. Гет компонент, по сути, это перебор всех компонентов, висящих на геймобжекте. Вызов huypizda.transform, работает тоже через геткомпонент, потому трансформы тоже кешируй. >Не знал что это затратно. Где можно почитать об этом? https://docs.unity3d.com/ru/current/Manual/MobileOptimizationPracticalScriptingOptimizations.html>Кэшируйте ссылки вместо осуществления повторного поиска
>>280674И так кеширую.Я другой анон, мой вопрос был в том чем плох такой способ коммуникации и какая есть альтернатива ожидаю поток шизи от фаната симпатичных переменных
>>280676ШизыСтатичныхсамофикс
>>280550>Переопределение метода GetHashCode>Дурной тонИ тут мне стало грустно и стыдно за юнити тред>>280445>10 элементов>переборы это уже обсёр.Разница хотя бы в миллисекунду появится когда у тебя будет их как минимум несколько десятков тысяч. И то эта разница будет из за сдвига элементов массива. Если на место удаляемого элемента просто переместить последний, то и тут до сотен тысяч спокойно можно работать. Завязывайте этот ярый дроч за такты процессора. Ни к чему хорошему это не приводит.>>280673А клавиатура как узнает что клавиша нажата, чтобы потом отправить эту информацию в комп? Не неси чепухи. От опроса клавиш каждые N мс. никуда не спрятаться.>>280674Опять дроч на такты процессора даже без отдаленного понимания как это все работает. >Гет компонент, по сути, это перебор всех компонентов, висящих на геймобжекте. Нихера там все не перебирается. Там Dictionary, из которого доступ к компонентам получается почти за константное время.>Вызов huypizda.transform, работает тоже через геткомпонент, потому трансформы тоже кешируй. Опять обосрамс. Юнити кэширует трансформ сам и делать это повторно нахуй не нужно.Оптимизировать игру оставив минимум GetComponent конечно можно, но это будет 0.01% от остального говна, который вы наворотите и который уже НУЖНО оптимизировать, а не МОЖНО, как с GetComponentХуже статикодибилов только байтоебы
>>280713>Опять обосрамс. Юнити кэширует трансформ сам и делать это повторно нахуй не нужно.Маня, ты бы хоть прочитал статью, на которую я сослался. >Это может работать медленно, если среди них достаточно много бегущих одновременно. Небольшой известный факт: все поля для доступа к компонентам в MonoBehaviour, такие как transform, renderer, и audio, эквивалентны соответствующим вызовам GetComponent(Transform), и потому они работают немного медленно. Метод GameObject.FindWithTag был оптимизирован, но в некоторых случаях, например, во вложенных циклах, или в скриптах, которые запущены на большом количестве экземпляров, оно тоже может работать немного медленно.https://docs.unity3d.com/ru/current/Manual/MobileOptimizationPracticalScriptingOptimizations.htmlКогда вы уже начнете читать документацию, вместо того, чтобы фантазировать?
Хочу перекатиться в это ваше унети с либгдх. Да не просто перекатиться, а на твг пилить на унетях игру. Много ли там всего надо знать чтобы хоть что-то запилить?
>>280728Ну если ты осилил жабу с неудобный фреймворк, то уж юнити тебе покажется просто песочницей.
>>280728Вон, создатель That Level Again спокойно перекатился и запилил третью часть уже на Юнити.
Если я накидаю в сцену объектов, и выключу их - это скажется на чем-нибудь? Объектов не больше сотни, на них скрипты и списки со всяким инвентарем.Мне нужно хранить всех юнитов для менджмента их инвентарей, они есть префабами, что дальше - пока делаю велосипеды.Подскажите аноны!
>>280756>всех юнитов для менджмента их инвентарНе очень понятно, что тебе нужно, опиши точнее.
>>280756Ну давай разберем по частям тобою написанное>Если я накидаю в сцену объектов, и выключу их - это скажется на чем-нибудь? Объектов не больше сотни, на них скрипты и списки со всяким инвентарем.Нет, не скажется>Мне нужно хранить всех юнитов для менджмента их инвентарейИспользуй базы данных или еще что. Такой подход полное говно.
>>280723> Когда вы уже начнете читать документацию> ruДействительно, тебе бы пора начать ее читать.http://blogs.unity3d.com/ru/2014/06/23/unity5-api-changes-automatic-script-updating/Последний аобзац> in Unity5 we also cache the transform component on the c# side, so there should no longer be a performance reason to cache the transform component yourselfОптимизатор хуев.
>>280791Просто тут половина мамкиных программиздов не может в другие языки. Слишком сложно.
>>280756> это скажется на чем-нибудь?Потенциально это положительно скажется на производительности. Выключенные объекты, имеющие меш, не участвуют в сортировке сцены. И на них не выполняются скрипты, кроме явных вызовов из других скриптов. То есть выключать ненужное - хорошо и правильно.
Ну что, поковырял я ваше юнити - ну 10\10 же(только си шарп я не знаю, только кресты и жабу, но это не важно как я понял), почему я раньше не знал какая это годнота? Какие в нем подводные камни, если я собираюсь пилить 2д(пока что) игры под десктоп и андроид?
>>280899http://devmag.org.za/2012/07/12/50-tips-for-working-with-unity-best-practices/
>>280908>2012
>>280899>Какие в нем подводные камниНикаких. Недостатки конечно есть, но они есть у всех и на данный момент это лучший движок на рынке.Шарп от жабы кстати мало чем отличается. Я тоже с джавы перекатился, поставил себе IDE от JetBrains и часто забываю, что пишу на шарпе, а не жабе.
>>280910Многое и сейчас актуально. Есть что-то лучше?
>>280912> IDE от JetBrainsЭто который ReSharper? Там есть возможность дебага проекта юнити? И как ты его поставил, а то я пердолился и не смог настроить его на работу с юнити?
>>280920Не, который с ReSharper пока не адаптировали для работы с Unity. Пока пользуюсь Consulo. Дебаг там есть. Багов тоже конечно хватает, но это в десятки раз лучше чем мерзская студия и в тысячу раз лучше убогого монодевелопа.
>>280921Кривое джаваговно лучше студии? Ничего не путаешь, болезный?
>>280924>Кривое джаваговно лучше bloatware говностудииПосмеялся над убогими.Вам дали идеальную IDE: быстрая, красивая, компактная, занимает мало памяти, есть ВСЕ. Нет, хотим есть кал.
>>280924Ничего не путаю. Это очень сложно донести. Примерно как пытаться слепому с рождения описать что такое цвет. Нужно просто поработать с идеей какое-то время и все станет ясно.Ну и да, если ты еще не вырос из возраста "все джава приложения - гавно!", то нам с тобой не о чем говорить конечно же.Алсо, без ребят, которые сотворили это "джавагавно" студией вообще пользоваться невозможно и она становится не сильно лучше того же монодевелопа.
>>280929>Нужно просто поработать с идеей какое-то время и все станет ясно.Я уже "поработал" с ее форком - android studio. До сих кошмары мучают.
>>280931"поработал" - это открыл, не смог настроить проект и закрыл?
Жесть, как вообще чем-то можно пользоваться, кроме студии с решарпером. Пересел бы на ридер, но он пока глючит. Монодевлоп это же вообще пиздец какой-то.
>>280908>4. Consider saving levels in XMLСразу нахуй и в пизду.>>280929>не сильно лучше того же монодевелопаДаже червь-пидор лучше монодевелопа.
>>280940>решарперомЧто в нём такого крутого? Как-то прогаю до сих пор на чистой студии.
>>280942>Даже червь-пидор лучше монодевелопа.Обоснуй
>>280929>без ребят, которые сотворили это "джавагавно" студией вообще пользоваться невозможно и она становится не сильно лучше того же монодевелопаВообще-то все функции reshaper'а есть в monodevelop из коробки.
Я не понял - в 2д можно использовать тени? Еще желательно чтобы на телефонах работало. Ну или не тени, а чтобы просто свет за стены не выходил(хоть это и есть тени лол).
>>280943Накатывал этот ваш решарпер, все так цветастенько становится, всякие пояснялки тут и там)))))))))))Вобщем удалил эту блевотину, так как кроме автокомплита лично мне ничего не нужно.
>>280969Именно автокомплит и тащит в решарпере. Без него можно с таким же успехом и в блокноте писать.
>>280973Ставить тормозное платное говно только ради того чтоб в автокомплите нужная переменная была в списке на пару позиций выше? Может сразу в уе на блюпринтах писать?
>>280974Эх... Как же мне жаль таких упоротых. И ведь при всем желании не получится им объяснить, что они жрут говно и просят добавки. Впрочем с возрастом наверное придет понимание.
>>280983>Когда думал что жрут говно другие>А на самом деле сам жрал говно
Поцаны, а как лучше делать проверку на клик? Рейкастом или void OnMouseUp() для 2d? А еще как без велосипедов с состояниями, сделать проверку, что объект находится под UI, и не кликать на нем*
>>280998Анус себе проверь
>>280998>>280998>Поцаны, а как лучше делать проверку на клик? Рейкастом или void OnMouseUp() для 2d?Создаешь класс ClickableBase, который наследуется от MonoBehaviour и имплементриует интерфейс IPointerDownHandler, и реализует метод OnPointerDown, как абстрактный, или виртуальный.Описываешь наследников этого класса для каждого типа геймобжектов, которые должны реагировать на клик. У каждого из наследуемых классов переопределяешь метод OnPointerDown (вызываешь в нем нужный код).На каждый геймобджект вешаешь соответствующий компонент. Все.https://docs.unity3d.com/ScriptReference/EventSystems.IPointerDownHandler.htmlhttps://docs.unity3d.com/ScriptReference/EventSystems.IPointerDownHandler.OnPointerDown.html>А еще как без велосипедов с состояниями, сделать проверку, что объект находится под UI, и не кликать на нем* На элемент юая, который должен перекрывать, навешивыаешь компонент Canvas Group. Ставишь галочку Block Raycasts.Все.https://docs.unity3d.com/ru/current/Manual/class-CanvasGroup.html
>>280942А что еще предлагаешь для сохранения?
Посоветуйте, какой программой можно автоматически уменьшить количество полигонов у меши?
Пацаны, я тут код рефаетарнул и грузится все стало в пятьдесят раз быстрее. Это из-за того что я отказался напроч от List<>, а следовательно и от библиотеки дженериков, или из-за того что почти все переменные сериализовал?Проверять буду завтра, но мнение анона интересно.
>>281020Есть одна такая, но названия не помню. Но оно для автолодирования. Мог бы у знакомых название узнать, но ты её хуй добудешь, она стоит как твоя конура и продается только если ты крутая компания. Чаще всего это делается руками в максе/майке. Алсо, тебе же это для лодов? Если нет то ты ебанутый.
>>281022>Мог бы у знакомых название узнать, но ты её хуй добудешь, она стоит как твоя конура и продается только если ты крутая компания.Ну такая мне точно не подойдет.>Чаще всего это делается руками в максе/майке.Неумею.>Алсо, тебе же это для лодов? Да.>Это из-за того что я отказался напроч от List<>Я не знаю как в шарпе, но вообще списки лучше не использовать. Будут частые cache-missing. Хотя, скорее всего, в шарпе точно есть хэш таблица, в которой все кэшируется (Но при итерировании это особо не помогает)..
>>281021>>281024
>>281024Не думаю, что это могло так радикально повлиять на скорость загрузки сцены.Но вдруг юнька как-то чрезжопно с дженериками работает, и именно загрузка стандартной библиотеки даёт такую задержку?
>>281021Твою мать, я пропустил два мягких знака.
>>281028Ну а что тебе профайлер писал? Или ты наугад оптимизировал?
>>281030Да простой будничный рефакторинг, причина которого была не производительность, а тот факт, что архитектура от тотального насилования во все щели новым функционалом начала сыпаться. Я оптимизировать планировал в самом конце, а тут такой неожиданный подарок судьбы, о котором я даже не просил. Да и, опять же, загрузка сцены а не рантайм. Профайлер это не отслеживает.
Есть у кого?https://www.assetstore.unity3d.com/en/#!/content/29764
>>281015Сериализация - просто, быстро, надежно и без пердолинга.
>>281038>20$лолhttp://wiki.unity3d.com/index.php?title=Texture_Mask
>>281021> мнение анона интересноПохвально, ты молодец.
Поцоны, короче такая хуйня. Частицы, которые выпускает персонаж, при попадании по цели должны добавлять + в счёт. Проблема в том, что когда частица попадает в цель - счёт обнуляется, так как это клон обьекта частицы и скрипт на ней. Как это пофиксить?https://ideone.com/u7lN4B
Можно как-то обращаться к переменным из других скриптов?
>>281065Можно. Через GetComponent переменная должна быть public ну или иметь правило, если не хочешь видеть эту переменную в инспекторе пиши над ней [HideInInspector], ну или тупо сделать переменную public static и обращаться к объекту напрямую, но учти что статик переменная с одним именем может быть только одна на сцене.Кстати никто не в курсе как сделать чтобы public static переменная отображалась в инспекторе без велосипедов?
>>281065>>281071А зачем обращаться? Можете привести пример такой ситуации когда это нужно?
>>281075Да элементарно - например стрельба из оружия и нанесение урона.
>>281044
>>281076Таки лучше это делать через вызов методов, которые эти самые переменные и меняют. Менять переменные одного скрипта напрямую из другого скрипта не очень правильно.
>>281079Ты имеешь в виду SendMessage или что?
>>281079Какая разница? Выдумывают хуйню какую-то лишь бы игры не делать.
>>281082Нет, это говно вообще не используй.Короче, пишешь например скрипт на нпц, который отвечает за его жизнь. В нем создаешь приватную переменную hp_ и публичный метод SendDamage(int hp). В этом методе вычитаешь из приватной переменной hp_ количество урона, которое этот метод принял в качестве аргумента. Всиуо. В качестве бонуса ты можешь в этом же методе ввести зависимость от класса брони, вести лог, записывая кто и сколько раз этот метод вызвал и все такое. Очень хорошо помогает не выстрелить себе в ногу и вообще это хороший тон.
>>281085Отослал твоей мамке Damage
>>281079>>281082У меня есть 2 скрипта, один с каунтером считает количество колизий, когда обьект получает 100 колизий он умирает. И есть еще клоны этого обьекта. Так вот, как мне вызвать все каунтеры из этих обьектов и записать их в один общий счет?
>>281089Есть куча способов это сделать, но я сперва задам вопрос - какую проблему ты пытаешься решить?
Ну а вообще первое что приходит в голову, это добавить к твоему скрипту публичную переменную GameObject, и каждый удар коллизии вызывать в этом геймобжекте компонент счетчик, увеличивая его на единицу. Счетчик ты должен, конечно же, написать сам.
>>281090Я пытаюсь получить во втором скрипте переменную из первого скрипта: https://ideone.com/iEElcEВыбивает NullReferenceException: Object reference not set to an instance of an objectTotalScore.Update () (at Assets/Scripts/TotalScore.cs:8)
>>281085Ну можно и так. Хотя я лично не вижу особой разницы.>>281089Я бы лично не тупо создал скрипт, повесил бы его на главную камеру или на еще какой-нибудь объект который будет всего 1 и не будет уничтожаться во время игры создал бы в скрипте перемеренную public static int TotalDamage;И каждый раз при коллижене обращался бы к нему. Например Camera.main.TotalDamage += 1;
>>281095Плохим манерам учишь же, бака.Но, впрочем, если это будет использоваться только для выведения какой-то игровой статистики, то похуй.
>>281096Ну так напиши как бы сделал ты.
>>281097Не с телефона же. Да и писать то нечего, по сути, задача же простая что пиздец. Я больше про использование статиков. В реальности есть очень мало ситуаций, где из использование было бы оправдано.
>>281076А, типа когда пуля столкнулась с врагом мы берем какой-то компонент который у нас за хп отвечает и с ним работаем?я просто первый день еще вкатываюсь
>>281100Да! Совершенно верно!И ты можешь это сделать двумя путями. Либо напрямую изменить переменную, либо через метод в этом компоненте.
>>281100Ах да, берет этот компонент сама пуля. Да и слово "берет" неправильно отражает действительность. Она его сначала ищет, и если находит то обращается к нему, передавая какое-либо сообщение. Это называется вызов метода. Вместе с сообщением ты можешь переслать какие-либо данные.
Так как тут у вас с глобальными переменными всякими?Раз на какую-нибудь камеру скрипт для подсчета чего-то вешать не стоит, то как?
>>281102Ну с погромированием я знаком, но вот с устройством юнити не очень.
>>281103Вешать то можно, только статичной её не делай. Статичная переменная доступна из любого скрипта, она может быть только в единственном экземпляре. Это реально очень специфичный инструмент. Если ты сделаешь десять клонов, и у каждого будет глобальная переменная хп, то если одному из них прострелят яйца - без яиц останутся все.
>>281106А я могу запилить скрипт-компонент, сделать в нем статичную переменную, но при этом не добавлять этот компонент ни к одному объекту - переменная же инициализируется все равно и я смогу к ней доступ из других скриптов получить?
>>281105А, тогда сорян, все это ты и так знаешь. Ну, у нас не ООП, а компонентно ориентированный подход. Так и гугли. Что-то вроде развития идеи ооп. По сути, чтобы компоненты обращались между собой, тебе нужно как-то для них добывать ссылки. Делать это можно через физику, например при соприкосновении двух коллайдеров они оба могут получить ссылки друг на друга. Либо можно кастануть луч вперед себя и получить ссылку на тот коллайдер, с которым он столкнется. А уже через ссылку на коллайдер можно получить ссылку на любой другой компонент, который есть в этом же объекте.
>>281108Да, можешь. Это тебе позволит, в частности, почувствовать себя бунтарем и послать КОП нахуй.
>>281094http://pastebin.com/B2hBnGgrhttp://pastebin.com/BV8mxnGqТолько юзинги лишние потри. Я писал в одном файле, не все юзинги нужны в обоих.И да, TotalScoreView - синглтон. Не навешивай на сцену больше одного экземпляра. Да и вообще, лучше синглтоны лишний раз не использовать. Но мне впадлу пояснять тебе, как там связи пробросить, и я не ебу, какие скрипты и на чем висят. Просто замени свой Score на объектах на ScoreView, а тоталскор на TotalScoreView. Нихуя назначать не нужно. Должно и так робить.
Анон, как, по твоему мнению, можно реализовать систему "поля зрения"?Я уже видел (насколько я понял это самая удобная реализация) как люди делают в три этапа - круг зрения, потом введение угла, потом проверка на наличие препятствий с помощью рейкастов. Меня интересует третий этап. Если у меня много объектов в поле зрения, то эти рейкасты не сильно понизят фпс?У меня в планах сделать поиск пути (хотя бы по алгоритму А*, для начала) на свой манер - связать это с полем зрения.Ясное дело, что из-за этого придётся кастовать кучу лучей. Ты бы одобрил такой подход, анон? Если нет - то как пойти другим путём?
>>281116>У меня в планах сделать поиск пути (хотя бы по алгоритму А*, для начала) на свой манер - связать это с полем зрения.Чтобы путь прокладывался только в поле зрения? Или как? Я не понял.
Есть например так:public GameObject obj1;public GameObject obj2;в обоих ссылка на один префаб, GetInstanceID() возвращает, естественно, одинаковый ID. Как мне получить 2 уникальных ID (никак)?
>>281124Верно, никак.У тебя какая-то хуйня с логикой головного мозга.
>>281125И что-же делать? Где мне взять хешкод? Почему юнитидауны не предвидели такой случай
>>281125Вообще-то я напиздел. Это не префаб, а ScriptableObject ассет в котором предмет инвентария, например. То есть я как-бы добавляю в массив две ссылки на один объект, но это как-бы два уникальных предмета. Понимаешь?
>>281127Короче придется делать holder-класс в котором хранить ссылку уже на ассет
>>281127Сделай два экземпляра одного класса, нахуй это безумие городить? Ты что, ебанутый?
>>281129Там тогда начнется идиотия клон-не клон. Тем более не существует нормальных способов определить является объектом инстансом или ссылкой на префаб
1) сделай два префаба2) сделай в Awake() создание инстансов из одного префаба3) добавь на сцену два экземпляра этого префаба и помести их в свои поляНахуя тебе вообще ID префабов?
>>281130public bool isPrefab = true;void Awake(){isPrefab = false;}
>>281122Дя.
>>281039Что вообще есть сериализация - зачем, что дает мимо ньюф
>>281039Есть вещи в юнити, которые не сериализуются. Корутины, например. Нельзя расписываться за все случаи сразу.
Как использовать деструкторы с юнити апи, если учесть что деструкторы юзают собственные треды?
>>281166Нахуя тебе деструкторы?
>>280991
>>281168Я в книжке про них читал!
>>281132>Нахуя тебе вообще ID префабов?А как-ты будешь синхронизировать данные и вид? Например, у меня массив с предметами и массив виджетов с инфой об этих предметах. Я удаляю предмет из середины списка данных, и как ты поймешь как надо обновлять виджеты?Можно конечно при обновлении вида тупо удалить все виджеты и создать заново
>>281196Надо еще понимать что у разных предметов могут показываться разными виджетами
>>281196Нахуя тебе два отдельных массива?
>>281233Затем, что в одном ассеты, а другом геймобъекты из canvas на которых Text, Image и т.д. настраевые таким образом, чтобы показывать инфу об ассетах
>>281116Кстати похожий вопрос только с "зоной покрытия" ну или круговым полем зрения - есть обжект, который "излучает" и есть объекты вокруг него - условно просто-кубы и кубы-препятствия. Я поле зрения делаю круговое с помощью сферкаста, а дальше как? Он покрывает все просто-кубы в поле каста, но требуется, что если между излучателем и просто-кубом есть препятствие, то соответственно он не покрывается попадание в зону символизируется сменой текстуры. Делать это простым рейкастом? В зоне покрытия может быть до сотни просто-кубов, не дохуя ли долго это будет делаться?
Анончик, подскажи, как бороться с застреванием в текстурах? Вот например есть у меня персонаж который прыгает на платформу, если я не запрыгнул на платформу, а уперся в нее животом и зажал клавишу прыжка персонаж висит на этой платформе.
>>281298Заменить коллайдер с острыми углами на круглый. Вроде так и делают.
>>281298Не делать платформер на физическом движке, очевидно же. Как тебе вообще в голову пришла такая ебанутая идея?
>>281305Хуйлуша, на юнити овердохуя платформеров. Как-то же в них сделали чтоб нихуя не застревало.
>>281306Гугли platformer asset skachat bez registracii i sms
>>281307Да я уже решил хуёво решил проблему добавлением нулевого трения колайдеру персонажа. На первых порах прокатит.
>>281014>OnPointerDownПопробовал, почему-то первое вообще никак не реагирует, хотя вроде попробовал все.Второе почему-то тоже не дает результатов.
>>281319Повесь на камеру компонент PhysicsRaycast.
Хочу программировать говно по типу покемонов. Что учить кроме школьной программы? Какие там инструменты для позиционирования в пространстве и дополненной реальности?
>>281363Ты соснешь.
>>281364Каким образом? Просто приведи реальные факторы возможных проблем. Ведь я для этого и спрашиваю совета. Понятно, что одному не потянуть. Нужна команда и всё такое. Так я хочу выбрать сферу деятельности.
>>281365Ты же не сделаешь покемонов.
>>281365У тебя нет денег ни на разработку, ни на сервера. Ты и близко к покемонам по качеству не приблизишься, и людей ты тоже не найдешь, а тех что найдешь потеряешь через три недели потому что им надоест и мамка гонит в вуз.
>>281366я хочу сделать гигантские грибы. Будет называться ГИГАНТЫ МУШРУМС. Боровики там, всякие лисички. И они будут расти. Ты такой тихий охотник. Ещё будут ядовитые и съедобные грибы. И слизни. И лесник.
>>281368Всем будет похуй на твои грибы.
>>281369Главное зафорсить. Щас такое геолокационное игроговно массовое полезет.
Как сделать так, чтобы объект-наследник двигался/вращался вместе с объектом-родителем, но с задержкой? То есть, если бы они не нужны мне были в такой иерархии, то я бы сделал следование с lerp, но как сделать это с родитель-наследник?
>>281374Никак.
>>281375Не расстраивай меня...
>>281376Решай проблему иначе.
>>281377Ну ладно, мне нет смысла тебе не верить, в гугле я тоже ничего не нашел.
>>281379Это базовой принцип движка, ты его без исходников не поменяешь.Кроме того, я уверен, что твоя проблема великолепно решается и без этого.
>>281374Запоминаешь позицию родителя. Создаёшь ссылку на каждый дочерний объект в родителе. Сравниваешь позицию родителя с той, что запомнил. Если двигается - вычитаешь от позиции дочерних объектов дельту.
Блджад анон, у меня проблемы с импортом объектов. Началось всё с того что все изображения которые я добавляю в папку ассетов определяются как 2дспрайты, хотя всегда раньше сразу определялись как текстура. Но хуй с ними, просто теперь походу и модельки FBX поломались - любая фигура из блендера добавляются с поехавшими UV или хуй знает чем, суть в том что на любую фигуру созданную в блендере и перенесенный в юнити невозможно нанести текстуру, она тупо принимает только её цвет\оттенок. Пикрелейтед, куб слева создан в юнити, куб справа в блендере, на них одна и та же текстура.Очевидно что тут такая же проблема со сбитыми настройками импорта, помоги настроить их так чтобы их можно было нормально текстурировать. Настройки стоят пикрелейтед (пробовал только галочку swap UV щелкать - не помогает). Я уверен на 100% что у меня тупо какая-то хуйня с настройками программы или освещения, ведь началось все недавно.Я уже спрашивал но меня послали с UV2, я не смог разобраться что это за хуйня и почему она у меня не выбирается, говорили пиратка, но проблема не в ней, ведь месяц назад все работало. Умоляю аноны, я уже все кресло прожег, два дня сижу мучаюсь.Также пробовал ставить самую последнюю юнити с рутрекера, 5.3.5р8, всё тоже самое, видимо неверные настройки подхватились со старых версий
>>281399Edit -> Project Settings -> Editor -> Default Behavior Mode, Mode: 3D
>>281399> с рутрекера, 5.3.5р8Последняя версия, кстати, 5.3.5f1. Скачивай с официального сайта.>>281374Сделай оба объекта дочками другого объекта и двигай/поворачивай по нужным тебе законам. Когда надо будет сдвинуть всю конструкцию, сдвигай родителя. Когда нужно "рассинхронное" поведение, двигай каждый дочерний объект по отдельности.
>>281374Физика. Джоинты.
Анонусы, а как определить с какой стороны куба находится объект?
Парни, тупой вопрос. Игрок во время игры инстанциирует объект с кучей настроек, которые вытирает сам. У этого объекта много дочерних объектов и вообще он очень сильно набит всякой разной логикой. Как мне его сохранить во время игры?Как я понял, создавать во время игры префабы невозможно. Неужели придется для каждого ебаного объекта создавать XML и туда пихать о нем данные, а потом при загрузке по этим данным его восстанавливать?
>>281515Выбирает самофикс
>>281508чтобля?
>>281515А что тебя смущает?сериализация во все поля
>>281519Ну есть объект. И нужно понять он слево от куба, справо, перед, за, сверху или снизу.
>>281523Где у куба верх или низ?А вообще почитай про векторное произведение, гарантирую понравится.
>>281522Хотелось бы просто и в одну кнопку >.>
>>281540Зоделай 6 огромных коллайдеров, назови их ап, даун, лефт, райт, форвард, бэквард, и проверяй на пересечение с ними.лул
>>281566Охуенный способ сериализации. Спасибо.
>>281575>Пожалуйста! Блеать, не тому ответил.>>281566это >>281523
>>281575Я написал для себя простой скрипт, который сохраняет отмечанные атрибутом поля в MonoBehaviour. Могу его тебе продать. В таком поле можно например сохранить состояние объекта, а потом восстановить его.
>>281620У меня огромная иерархия внутри объекта, каким то образом всю её целиком надо будет сохранять.
>>281620Алсо, заплачу тебе картинкой с лолей если дашь глянуть скрипт.
Если я напиздил кучу спрайтов, с древних и совсем неизвестных игор, гугл плей забанит мое говно? Или и так сойдет?
Как в 2д юнити сделать динамический свет?Как сделать сцену где будет ночь а источником света будут факела?
То чувство, когда рендер от 1М до 2М трисов занимает всего 3 ДК.
>>281700>1М трисовТолько не говори что у тебя там кубы.
>>281700>742 драв коллаСУКА СЪЕБИ НАХУЙ МРАЗЬ КУБАМИ ОН ЗАМОСТИЛ СЦЕНУ УЕБОК БЛЯДЬ ДА У НАС ЗА ТАКОЕ ПИЗДЯТ НОГАМИ НАХУЙ
>>281702>>281703Размер этой хуйни 512х512х64 куба. То есть одних кубов 16М. В каждом кубе 6 граней, в грани 2 триса. Итого 201 трис.
>>281704>Итого 201М трис.
>>281704На скрине виден размер куба, и их там не может быть 512 по стороне. Это не важно. Суть в том что кубами чанки пилят только слабоумные дегенераты и школьники. Там же у него каждый куб это GameObject, блядь! Надо генерировать меш, причем не просто ебучие кубы а только те плоскости которые видно.
Снял верхнюю грань для особо ебанутых, которые думают, что там вообще существуют кубы. Размер мира 6х6 чанков по 32х32 куба х 64 слоя по высоте. Более 2М кубов, 28М трисов. Должно было бы быть.
>>281710>Размер мира 6х636 дк должно быть, но никак не 4755. Ты что то делаешь неправильно.
>>281711Ну, начнём с того, что батчи это не дк. Вообще, если сделать как надо, то должно получиться 21 или 22 дк - материал везде один, должно сбатчится по полигонажу, а 1.5М влезет в 22 дк. Ну если совсем задрочить, то можно полигонаж ещё в пару раз уменьшить, но лень. Но да, есть перформанс хит из-за того, что каждый слой существует, независимо от того, видим он или нет. Хуёво для производительности, но хорошо для меня. Это потому что я пилю не майнкампф. Вообще я писал, как добиться моего результата и там же - как сделать гораздо меньше дк и поликов для классического кубача. Но не взлетело. Ссылка находится в треде по слову landfill
>>281515Я конечно нуфаг в юнетях, но я бы сделал компонент для хранения настроек(скрипт), там бы публичные статичные переменные, и в твоем объекте от туда бы значения таскал.Еще как вариант можно создать компонент с настройками, потом при создании объекта пихать этому самому объекту настройки.если я не прав объясните почему так нельзя плез
>>281715> дкПоясните нюфагу что это такое?
>>281720draw calls, колличество вызовов функции отрисовки
>>281720Вызов отрисовки. Если по-простому, то это команда от процессора видеокарте. Естественно, чем их меньше, тем больше фпс.
>>281715>Ну, начнём с того, что батчи это не дкДа что ты говоришь. До 5 версии эти твои батчи были подписаны как дк, вот тут можешь глянуть:http://docs.unity3d.com/462/Documentation/Manual/RenderingStatistics.htmlСуть не изменилась. Переделывай свое говно.
>>281724>вот тут можешь глянуть:>LegacyНахуя читать старьё, когда есть актуальная информация? Читай справкуhttps://docs.unity3d.com/Manual/RenderingStatistics.htmlДк это SetPass, а не батчи. Батчи немного другое.>Переделывай Нахуя? Мне нужна именно такая схема.
>>281724Лол, нет) И 10 батчей и 1000 могут вызывать на себя 1 дк. Ты сути не понимаешь.
>>281729Где тогда дк посмотреть, а? а? Если ты запилишь на старой юнити это кубоговно и там покажет те же 4К, но не батчей а дравколлов, почему их стало 2, куда они испарились, а? Закинь на пустую сцену куб, посмотри как меняется батчес. Закинь к кубу сферу, плейн и посмотри как меняется значение. Что это если не дравколы? Из актуальных доков>“Batching” is where the engine attempts to combine the rendering of multiple objects into a chunkУспешные попытки - saved, а твоя дрисня рендерится по-отдельности судя по стате.
>>281732>Где тогда дк посмотреть, а?Белые люди тебе профайлер запилили, чтобы ты глупых вопросов не задавал.
>>281734>Батчи немного другое кококо не скажу что>профайлер кукарекуВсе равно свои кубы не допилишь, слишком тупой для этого.
>>281732>Что это если не дравколы? >Static Batching: combine static (i.e. not moving) objects into big meshes, and render them in a faster way.
>>281732>Где тогда дк посмотреть, а?В документации пишут, что дк это SetPass. Не вижу смысла им не верить. Я тебе давал ссылку, кстати.>Закинь на пустую сцену кубСмотри пик. По-твоему, дефолтный куб юнити рендерится за 8 дк? Ты совсем ебанутый?
>>281736Лол, а я и не пилю кубы. Мимо читаю твою хуйню и проигрываю.
Кубоеб, а зачем ты делаешь кубы, собственно? почему не тэтры?
>>281738>дк это SetPassТы не прав. Это не одно и тоже. Сперва идет батчинг, потом вызов отрисовки, а уже потом рендер проходит через шейдер, это и есть SetPass Call. Вы похоже тут оба не особо понимаете о чем спорите.
>>281740Кубы простые и понятные. Вообще, я бы понял, если б ты гексы предложил, но профит тетров от меня ускользает. >>281741>SetPass The number of rendering passes.Тоже будешь со справкой спорить?
>>281742Тэтры упаковываются в любой объем и состоят из 6 треугольников, этоя тебе как КЭМ-инженегр говорю.Хотя кубы канешь проще по осям выстроить и пердолить в объемах.
>>281742Буду с тобой, а не со справкой. Один дк и один проход рендера это не одно и то же. Дк может быть больше одного перед тем как рендер проходит через шейдер. Ты бы это знал, если бы штудировал не только справку, а еще и на практике все тестировал.
>>281743Видимо, я не до конца понимаю, что ты имеешь ввиду под тетрами. Если ты про пирамидальные треугольные фигуры половина от второй фигуры на пике, то здесь слишком много пердолинга для меня. Смещения по осям, проблемы с ровными поверхностями. У меня была цель сделать "слоёный пирог" с удобным выключением послойно, из-за чего получилось дохуя объектов и лишних треугольников, но на это похуй, ведь я не намерен рисовать более 10 слоёв одновременно. >>281744Спорь лучше с тем поехавшим, у которого дк это батчи. Раз на то пошло - дк DEPRECATED и больше в профайлере не отображается вообще. Но сетпасс это почти дк, лол. Ну и если учитывать тот смысл, который всегда вкладывали в дк - то это сетпасс и есть. Но это такое.
>>281738Почему у меня 2 недравколла а не 8? У тебя пидора еще дк на тени (каст и ресив это отдельные дк) расходуются, тебя дебила послушать так графон вообще бесплатно рисуется за 2 прохода.
>>281748Сразу надо объяснить почему 8 чтоб пресечь кукареки.1 - очистка экрана2 - куб3, 4, 5, 6 - по дефолту стоят каскадные тени в 4 уровня, рендеринг 4-х шадоумепов7, 8 - проходы при рендере материала, сам материал и наложение тени.
>>281747Во-первых, это не почти дк, а это "дополнительные" дк, а не общее количество отрисовки. А, во-вторых, с тем поехавшим нет смысла спорить, он невменяем.
>>281750Итого, у тебя должно быть - очистка экрана, куб, материал - у куба есть DEFAULT материал. Итого 3. Но у тебя на скрине 2 батча и 1 сетпасс. Очень похоже, что ты запизделся.
>>281753Очистка экрана и куб, тени то отключены.
>>281755Ты отрицаешь наличие материала?
>>281756"Куб" читай как "отрисовка куба", дурачок. Что это еще может быть? Сетпасс входит в батчи-дроколы.
>>281742>>281744Да вы тут все чушь пишите. Объясняю: draw call это когда в коде вызывается функция, например, директикс Draw(), DrawIndexed() или DrawIndexedInstanced() (последняя с поддержкой хардварного батчинга). В этот момент в видеокарту копируются указанные в параметрах буферы данных (если они еще не там), и видеокарта их рисует. Рисует она их не просто так, а в соответствие с заранее заданным состоянием. В это состояние входят: указанные текстуры с какими надо рисовать, шейдоры и состояние блендинга с каким надо нарисованный результат смешать с тем что уже было нарисовано в буферный кадр ранее (вся эта инфа по видимому включена в материал и переключения состояния видеокарты обозначено как SetPass calls).
>>281748Кинь еще скрин профайлера, а то я вижу что ты пользоваться им не научился.
>>281759Материал это и есть шейдер. Я так и написал, кэп.
>>281760Кинул, за щекой проверь. У тебя кубы в чанках это отдельные объекты, ну какие еще нужны доказательства того что ты даун?
>>281764Дебил, нас тут уже трое, заебал детектить. Лучше бы скрин уже сделал.
>Опенсорц код с комментариями. Отдельные объекты только чанки, не кубы>Скрины, где кубов нет вообще, объекты - только чанки.>У тебя кубы в чанках это отдельные объекты, коооо-кок-ко!
>>281766Пошел нахуй со своим профайлером. Мы тут дравколлы считаем а не кадры в секунду.
>>281768Ну ясно все. Сразу бы сказал что ты гуманитарий, мы бы тебя даже не трогали.
>>281767Кинь ссылку на сорцы. То что у тебя интеллекта хватает только на пиздинг готового - все уже поняли
>>281769Хорошо, уговорил, сначала свой скрин кинь.
>>281771Какой свой, дебил? Я не анон с кубами. Ты совсем поехал уже.
>>281772Не встревай в разговор значит. Как пизда базарная, блядь.
>>281773Короче ты понял что скрин окончательно докажет что ты долбоеб и слился. А десять минут такой уверенный в себе был.
>>281751Давай договоримся, что дк больше нет и хватит об этом, лол. А то и пиздануться недолго с этим шизиком. Да, у меня овердохуя сетпассов и батчей - так пока что и надо. Ради возможности смотреть сквозь пол - рисуется пол нижнего уровня. Конечно, рисовать до самого нижнего уровня не надо, так что я буду выключать уровни. >>281770Скачать мои сорцы нельзя, можешь из статей повыдирать код, ссылка в начале треда. Там с самой первой статьи указано, что кубов нет, а во второй выключаются невидимые грани. Даже более того, с самой первой части указано, что для кубов объекты не создаются.
>>281785>дк больше нетДК УПРАЗДНИЛИ, ЗАЕБЦА МОЖНА МАЙНСРУФТ ИЗ КУБОВ ДЕЛАТЬ!Короче пили свои кубы с 4К дравколлами и показывай друзьям в школе, может когда вырастешь и правда любое говно за 2 дравколла будет рисоваться.
>>281787Тебе не говорили, что ты пизданутый?
>>281785>для кубов объекты не создаютсяКаждый день узнаю в гд что-то новое.
Господа, как перенести карту высот на terrain? Есть процедурно сгенерированная в unity карта высот. Нужно создать terrain на основе данных с карты высот? Как проще всего это сделать? И что вообще можно почитать по процедурной генерации ландшафтов? Именно книги или работы
>>281791TerrainData.SetHeightsApplyDelayedHeightmapModification у самого террейна не забудь потом вызвать
>>281796благодарю
>>281787
>>281651>Алсо, заплачу тебе картинкой с лолей если дашь глянуть скрипт.Ишь какой хитрюга. Но нет, я свой чудесный скрипт буду ассетотаскателям в ассет сторе продавать по девять долларов и девяносто девять центов.
>>281719Нет нет и нет. Объяснять очень долго и дико лень.>>281854Тогда хуй тебе а не лоля, интернеты набиты сериализаторами до отказа.
>>281862Почему нет? Работать будет. Что почитать по этому тогда можешь подсказать?
>>281863Нет, маня, не будет. Потому и не покатит. Читай форумы и документацию.
>>281874Ну всмысле не будет? Публичная статическая переменная, она видна всем скриптам. Например у нас есть враги и у них какой-то скрипт для атаки, нам надо абсолютно всем врагам сделать урон 40 например, мы меняем статическую переменную, а в том атакующем скрипте в качестве наносимого урона тянем какую-то парашу вроде EnemiesParameters.damageТеперь при изменении EnemiesParameters.damage будет меняться урон враговИли он что-то другое имел в виду?
>>281862>интернеты набиты сериализаторами до отказаЧто же ты еще не взял его из интернетов в таком случае?>>281874>не будетТы не объяснил что тебе нужно. Тебе непременно нужно строить иерархию объектов и создавать компоненты в рантайме (нахуя?) или достаточно просто инстансировать префаб с этой иерархией и просто настроить поля? В последнем случае нет ничего сложного. Сохраняешь все данные из таких полей в классе, а потом сериализуешь его. А потом восстанавливаешь обратно
>>281881Затем что не могу по объективным причинам. О которых я умолчу. Потому что я котик. Да, в моем случае поведение объекта зависит от того, какие в нем есть компоненты и что у него в иерархии. И это меняется в рантайме. Да, это самый адекватный способ конкретно под решение моей задачи и отлично себя показывает. Короче, вариант как решить проблему нашел, отсталость его опробовать.
>>281879ScriptableObject. Привет.
>>281922Ну одно и то же по сути.
Анон есть вопрос.Есть контроллер, он нерушим как скала, я в него складываю разные полезные функции. Есть обьект в сцене, точнее это гуи елемент, кнопка. При клике на кнопку вызывается функция из контроллера. Меня интересует, на какой обьект ссылается при выполнении скрипта, допустим, перменная геймобжект, на контроллер, или на обьект, который вызвал функцию, то есть на кнопку?
>>281954Очевидно же что на контроллер
Кто-нибудь использовал аналитику Unity в мультиплеерных проектах?
Пик первый, 512 000 кубов, 64 геймобъекта. Пик второй, 65536 кубов, 64 геймобъекта.
Аноны, ЧЯДНТ? Циркл контроллер и ригидбоди дают при аддфорсе такой результат
>>282166>разные материалы на разных типах кубовЧто взять с юнитидетей.
>>282232мимозаступлюсь за того анона. он шейдероёб и уж такие базовые вещи он скорее всего понимает и берет в рассчет
>>282221все, разобрался
>>282232На всю сцену один инстанс одного материала.
Посоны, я конечно извиняюсь, я нюфаг полный, в-общем как создать кхм.. отверстие в объекте? По сути я хочу создать комнату с окнами и дверными проемами. Обычную комнату из четырех кубов за секунду можно создать, но как сделать в них двери и окна? Я вот только сейчас понял что нихуя не понимаю как это сделать, не прибегая к блендеру и 3д максу (там во-первых сложно рисовать, во-вторых надо правильно размещать UV-мапы, иначе текстуры не наносятся, короче пиздец). Можно конечно сделать как на пикрелейтед, но это сами понимаете, говно.Уверен есть какой-нибудь инструмент или скрипт позволяющий делать хотя бы прямоугольные вырезки из плашек или кубов. Алсо, пробовал качать всякие программы по созданию интерьеров, там очень легко и просто это делать, но вот импорта модели либо нет, либо она импортируется в ОBJ, где опять же нет UV отчего текстуры не нанести. Помогите
>>282271тупой упитидаун
Охуительные динамические тени. 10 фонариков из 10 просто. Можно даже объявить это фичей, тип это не тени, а души, которые пытаются вырваться из зомбей))0
>>282166Сделаешь физон - тогда и приходи
>>282274Не тот жанр.
>>282293Какой не тот? Ты сквозь кубы летать собрался что ли? Или PhysX для коллизий юзать?
>>282295Для коллизий у меня свой алгоритм проверки высоты объекта относительно поверхности кубов под ним. Без рейкаста, по координатам. Очень оптимизировано! Намного лучше коллайдеров!
>>282299Тогда маладэц. А многопоточную генерацию осилил?
>>282300Зачем? Один поток это стабильно.
>>282301Так ты соснешь, когда радиус генерации вокруг игрока начнешь увеличивать
Есть учебник JS именно под хуюнити? Хочу совместить приятное с полезным.
>>282330>джс под хуюнитиТы ебанутый?
>>282166Воксельный колхоз, это ты?
>>282295>PhysX Это. Не вижу смысла не пользоваться быстрым физоном. Тем более, со своим фейко-физоном соснёшь с навмешами, соснёшь с райкастами, соснёшь с другими коллайдерами. >>282299>высоты объекта относительно поверхности кубов под нимСоснёшь с норами. >>282381Ага, он самый.
>>282382А что, разве физикс можно применить к конкретному кубу из чанка, если отдельный куб не есть объект?
>>282384А как ты присобачишь к кубу коллайдер, если у тебя куба нет? Но, с другой стороны, коллизии с кубами и не нужны. Точно так же, как не нужны невидимые грани - не нужны и коллизии с невидимыми гранями. У кубов нет коллайдеров, они есть у чанков.
>>282390У тебя чанк это пласт земли? Зачем невидимые грани кубов создаешь при генерации чанка?
Как научиться понимать то, о чём вы сейчас говорите?Я серьёзно хотел бы осознанно уметь делать что-то подобное.пять_месяцев_в_с#
>>282382>Это. Не вижу смысла не пользоваться быстрым физономФизикс медленно коллайдеры считает в рантайме, слишком медленно для того, чтобы можно было его использовать в майнкрафте. Тут тебе без вариантов надо писать свои коллизии, иначе рискнуешь соснуть.И не говори мне, что ты юзаешь не мешколлайдер, а лепишь чудовищные костыли с боксами
>>282382>Тем более, со своим фейко-физоном соснёшь с навмешами, соснёшь с райкастами, соснёшь с другими коллайдерами. Поэтому ты хуй найдешь нормальный клон майнкрафта на юнити микропараши с закрытыми мирами не в счет, потому что кириллу кастомный фейковый физон просто не осилить, и гайдики по кубам тут не очень помогут.
Про нормальное освещение я вообще молчу
источник: сам пилил трехмерные кубы на юнити, закономерно соснул, и запилил двухмерные - со своим освещением и физоном, после чего к идеям клонов минесруфт-подобных игорей несколько охладел
>>282390Ну а если ты у чанка отхуяришь один куб, как менять коллайдер? азло, если у нас форма чанка генерится, то как приделать к нему коллайдер?
>>282401Ну прост скачай хуюнити и попробуй сделать чо, смотри видео, читай доки, пользуйся гуглом и не велосипедь без нужды сам я где то 4 месяца с перерывами в сишарпе с хуюнити, но до этого несколько лет назад пилился на гейм мейкере
>>282398У меня дохуя режимов. На скрине, где полмиллиона кубов высота чанка 20 кубов и рисуются только границы чанков. А на втором скрине с 65к кубов включены все грани каждого куба. Мам, это только для скриншота. Основной режим это чанки 32х1х32 куба без внутренних граней. Для тру-майнсруфта не годится. >>282401Читай мои высеры, очевидно же. >>278017 Я доступно всё поясняю, да и скилл у меня "начинающий говно игродел". >>282426>Физикс медленно коллайдеры считает в рантайме, слишком медленно для того, чтобы можно было его использовать в майнкрафте.Уничтожал по 3-4 куба в секунду, есть лаг только в режиме со внутренними гранями - слишком тяжёлый меш. По идее, если скинуть в фоновый воркер, то лага не будет. Но нахуя. Юзаю мешколлайдер, говорю же - кубы это просто иллюзия, нет никаких кубов.>>282431>потому что кириллу кастомный фейковый физон просто не осилитьЯ не считаю для себя лично это неподъёмной задачей, просто не вижу смысла. Фейковый физон будет для жидкостей и, возможно, для обрушений. Но он однозначно будет медленнее, чем шизикс, как и любой костыльный фейкофизон.>>282440Уничтожение одного куба вызывает полную перестройку меша чанка и коллайдера.>если у нас форма чанка генеритсяА форма чанка и так генерится на основе перлин нойз.
>>282459>перлин нойзПоясни дебу, что это есть, плес.
>>282464https://docs.unity3d.com/ScriptReference/Mathf.PerlinNoise.htmlОбычный такой шум, самый распространённый в этих ваших игровых делах. По сути, чёрнобелая пикча с волнами. Весь профит этого шума в том, что пикча потенциально бесконечная, а просчитывать всю сразу не надо, можно попиксельно получать от юнити.
>>282469Возьми библиотеку для перлин нойза, юнитивский плох. Например нельзя указать seed. Пилил кубач на юнити как ты, пока случайно не удалил папку с проектом при чистки говна с пека, с последующей дефрагментацией.
>>282459Ох, бложик с пошаговым описанием.Охуенно, добавил в закладки.
Мне могут что-то сделать, если я заменю splash.png из апк на свой сплэш?
>>282482Приедет толпа тянок и лишит тебя девственности.
2DДелаю IK-анимации для НПЧ, сейчас для птицы.IK делаю при помощи набора скриптов "Sprites And Bones".Вчера с анимацией вроде всё было нормально.Сегодня - анимация отображается ПРАВИЛЬНО в следующих окнах - сцена, превью игры (окно Game, когда не нажата кнопка плей).И НЕКОРРЕКТНО в окнах - Game (когда нажата кнопка плей) и в окне скомпиленого билда.Тело по задумке наклоняется вслед за поворотами IK головы. В "рабочих" окнах всё как надо. А в игре - тело не двигается за головой.Я скоро ебанусь, перебрал все варианты, гугл не отвечает.Может что-то с иерархией кусочков тела, хз. Но почему тогда в "рабочих" окнах всё ок?
>>282380Ну не шарподристню же использовать.
Посоны, как убрать нахуй все дирекшинал освещение и сделать равномерный свет без теней на всей сцене? Вид строго сверху
>>282500Попробуй unlit шейдер.
>>282518Так темное же получается.
>>282500Lighting -> ambient
Вроде убрал блики в блендере, но в юнити они есть. Как сделать абсолютно матовый, неотражающий материал?
>>282496Жс для юнити - не жс, а его кастрированный клон, который очень фанатеет по шарпу, тебе оно надо?
>>282472Это херня на самом деле. Если тащить дополнительную либу, то уже с каким-нибудь другим шумом. А так можно брать дефолтный, вместо "зерна" брать рандомные множители по x,y,z и офсеты. У меня больше проблемы не-кубачевского характера, лол. Начинаю понимать, что плоские чанки это не так уж хорошо - надо отображать мир, иметь возможность скрыть этаж и чтоб не тупило. Получается, что много слоёв сразу я использовать не могу. А брать кубический чанк, то при въезде камеры в чанк - там будет пустота. Особенно пиздецки будет смотреться, если по чанку проложены норы. С фпс\тпс контроллером такими проблемами и пахнуть не будет.>>282535А если Smoothness на 0 поставить? Ну и металик тоже.
>>282542То есть там нет последних стандартов с классами и прочим? Хуёво.
Парни, че за хуйня? Почему не подхватывает изменения в файле? Рфреш/реимпорт не помогает, если заново импортнуть - то все нормально, но обновлять не хочет. Должна же вообще сама любые изменения сразу подхватывать.
>>282543Так ты хочешь сделать типа дварф фортресс, только с графеном? Просто тогда можно делать топ даун камеру с просмотром конкретного слоя и 3д для лулзов
>>282613тому шо редачить файлик нужно тот что в твоей папке Assets внутри папки с прожектом.
Наконец-то уродливое юнити-лого можно будет заменить на что-нибудь более адекватное.http://blogs.unity3d.com/2016/07/22/in-development-unity-splash-screen-tools/
>>282942Заменил на анус твоей мамаши)
>>282942Игру сначала сделай.
>>282951 >>282952Возвращайтесь в свой УЕче загон, кириллычи.
>>282955Нет, холоп, ты не сможешь прогнать Master Race
Может кто спрашивал уже, но можно ли на унити сделать ASCII графику?
>>283020 Можно. Только зачем?
>>283047Ну вдруг я хочу запилить еба рогалик.
Бля посоны, поясните плес - вот есть куб который излучает рейкаст. Вокруг него есть многокубов слоя не-N и есть один куб например слоя N. У всех кубов есть колладеры. Я делаю рейкаст к какому нибудь обжекту hit.if (!(Physics.Raycast(transform.position,hit.transform.position,Mathf.Infinity,layMask)){//действие, меняем цвет кубику например.}layMask в данном случае - маска слоя в котором находятся все не-N объекты и излучающий этот рейкаст куб. В данном конкретном случае это номер 9. Так вот - на пути рейкаста точно есть объект из маски N, но код все равно выполняется хотя не должен ЧЯДНТ?
>>283083Блядь, тебя тяжело понять, в следующий раз прилагай скриншоты. Объекты, Layer которых отсутствует в маске, для рейкаста становятся прозрачными, он бьет сквозь них.
кто знает как это решить? 5.3.5 работала нормально
>>283201Ты ебанутый? Мы тебе ванги что-ли?Давай, рассказывай, как довел юнити до жизни такой.
>>283205скачал 5.3.6, запускаю проект, проходит 3-5 секунд и вуаля, краш.
>>283208скачай бетку, хули
>>283208Полагаю, ты сделал с юнити нечто крайне специфичное. У меня такое было всего один раз, когда я загрузил стандартный ассет для юнит тестов и добавил на сцену из интереса два менеджера интеграционных тестов.
>>283211попробую, отпишусь как установится>>283212в этом и дело, что ничего специфичного, и даже ничего обычного с ней не делал
>>283219Мб драйвера? Ты же не амдхолоп, я надеюсь?
>>282459>Уничтожал по 3-4 куба в секунду, есть лаг только в режиме со внутренними гранями - слишком тяжёлый меш.Так в этом же и суть проблемы, или тебе норм? А если там динамит ебнет, и надо будет пересчитать 5-6 смежных мешей?Хуй знает канеш, смотря какие у тебя там задачи вообще
>>283235Моя игра про плантацию разумных кубов-говноедов.
>>283229нет, не амддрайвера обновлял месяц назад, но вряд ли проблема в нихupd. поставил бетку, перед этим полностью удалив старую, ничего, та же самая ошибка
>>283193С рейкастом разобрался, только он нихуя не работает как надо.По идее кубы, до которых рейкаст от красного не дотягивается, не должны подкрашиваться.У деревца-куба слой №8 , у красного слой 9 а у красных кубов-клеточек номер 10.hits = Physics.SphereCastAll (transform.position,3f,transform.up,0,-1);for (int i = 0; i < hits.Length;i++) {RaycastHit currHit = hits;if (currHit.transform.GetComponent<NodeMaterial> () != null && !Physics.Raycast(transform.position,currHit.transform.position,3f,layMask)) {//красим}}Получается же какая то хуйня - в одной из позиций вообще не подкрашивается область.
>>283275А, забыл, layMask = 1<<8;
>>283235>в этом же и суть проблемыВ игре не может возникнуть ситуации, когда рисуется каждый куб чанка. Максимально сложный меш это шахматка, где каждый второй куб уничтожен. А это уже вдвое меньше напрягов, чем с отрисовкой 100% кубов. >динамит ебнет, и надо будет пересчитать 5-6 смежных мешей?Я вернулся к кубическим чанкам, т.е максимальный пересчёт - 4 чанка. В очень редком случае. Но на самом деле хуй знает, лол. В крайнем случае сброшу пересчёт мешей в дополнительный тред, чтоб не подвисало. Если замечу лаги на своей некропк.
А бесплатные ассеты в ассет сторе совсем бесплатные? То есть можно из них сделать игру и продать в стиме?
>>283275Поменял немного но картинка все равно не такая как надо.hits = Physics.SphereCastAll (transform.position,3f,transform.up,0,-1); for (int i = 0; i < hits.Length;i++) { RaycastHit currHit = hits; if (currHit.transform.GetComponent<NodeMaterial> () != null) { currHit.transform.GetComponent<NodeMaterial> ().Cover(); if (Physics.Raycast (currHit.transform.position,transform.position,Vector3.Distance(currHit.transform.position,transform.position), layMask)) { Debug.DrawLine (transform.position,currHit.transform.position, Color.red,30f); currHit.transform.GetComponent<NodeMaterial> ().UnCover(); } } }ЧЯДНТ? Хуй знате, уже всю документацию по рейкастам прочитал.
>>283594Бля разметкаhttp://pastebin.com/yxkpSNPE
Как пофиксить то, что при нажатии вправо во время падения персонаж цепляется за коллайдеры, и можно висеть в таком положении, пока зажата клавиша?
Парни, а loadlevel aync до сих пор не доступна в free версии?
>>283770Всегда было доступно.
>>283777Лолшто, гугл выдаёт записи до 2015 года, что хуй нищебродам, а не loadlevelasync
>>283790Унети 5.3. Все робит.
>>283813Хорошо, спасибо
Ньюфаг ИТТ.Антон, дело в том, что я могу в рисование, концепт-дизайн и моделирование. 400-500 лойсов на артстейшене стабильно за работуНо я тугой олень, совершенно не могу в программирование. Последний раз писал простенькую хуиту на C# в ВУЗе лет 5 назад, и с тех пор даже не вспоминал ничего про программирование.Суть такова - хочу запилить игру визуальную конфетку, но без геймплея как такового. Симулятор ходьбы с зайчатками сюжета.Придётся ли мне рвать жёпу и вспоминать всё программирование, или там требуются лишь минимальные познания в этом ремесле?С моделями, текстурами и прочим проблем не будет - делаю всё сам, запекаю нормали и прочие карты, довольно придрочен в этом. Всё что меня пугает - это программирование. Так ли оно страшно в Юнити?
>>283823А тебя сильно пугают конструкции if/else?
Чтобы делать игры на Uniti или работать в компании по раработке игр, как хорошо нужно знать алгебру, геометрию и тригонометрию?
>>283865На уровне вникания в формулы и знания, что где применять
>>283754Это слишком сложный вопрос. Тебе на него здесь не ответят.Create -> Physics2dMaterial. Friction 0. На вертикальные поверхности лепишь отдельные коллайдеры, на них уже вешаешь созданный материал.
>>283594Бамп вопросу
>>283823Есть готовые ассеты с контроллерами хождения от первого или третьего лица. Их ввинтить - дело 5 минут. Если захочешь интерактива - его можно собрать на коллайдерах с тупой логикой за неделю.
>>283904>>283754А проверять изОнГраунд уже не модно?
>>283918Читал твои вопросы - нихуя не понял. Напиши чего хочешь то.
>>283996Хах! Пока ты проверяешь всякую задротскую фигню я игры делаю! Так то!
доволен. сделал сорт автоматической расстановки укрытий и потенциальных мест для спрыгивания-запрыгивания (и возможно перепрыгивания с одного на другой). осталось с физоном юнити связать.
>>284081Это встроенный навмеш?Поделишься охуенной историей как с ним работал?
>>283997Если между кубом и другим кубом есть объект из слоя коллизий - код не должен выполняться. Вроде просто, но получается какая то хуйня.
>>283996У меня есть проверка.>>283904Спасибо!
>>284177И раз есть проверка, то как у тебя сила работает, когда юнит в воздухе?
>>284179У меня проверка влияет только на возможность прыгать в воздухе.
>>284196Так ты силы не давай прикладывать юзеру на юнита пока он в воздухе.
>>284146При этом между ними есть еще объекты, из другого слоя.
Котаны, как лучше реализовать текст переливающийся разными цветами на новом UI? Проблема в том, что переливаться должна только часть текста, поэтому не получится изменять color у компонента Text. Есть вариант использовать RichText и каждый раз его перестраивать изменяя цвет при помощи тега color, но это как-то не очень. Несколько раз в минуту перестраивать меш только, чтобы изменить цвет.
>>284238Ладно, хуй с этим, но ответьте на один вопрос - если у меня два куба ровно на одних координатах и размером равны 1х1х1, но в разных слоях, то рейкаст для одного слоя вернет какой из объектов?
>>284247>Котаны, как лучше реализовать текст переливающийся разными цветами на новом UI? Никак.Новый UI предназначен для удобства разработки мобильного интерфейса, без всяких рюшечек и пердежей.Юзай текст меш с кастомным шейдором
>>284247или гугли rich text, но вряд ли ты с ним достигнешь желаемого
>>284142нет, за исключением функции растеризации полностью моё решение. история уже довольно долгая и это история полная ошибок. и началась история с того что мои идеалы подсказали мне сделать процедурный шутероподобный мир который мог бы меняться в процессе. он должен иметь динамические обстаклы, должен иметь возможность перестроить нужную область и возможность делить область на зоны с разной проходимостью.стоит сказать что к решению проблем я подходил сначала пробуя своё решение, потом пользовался гуглом. кажется, где-то в процессе я познал глубины своего безумия.https://www.youtube.com/watch?v=R29OY7KbrlAпоследней ошибкой, кстати, было моё желание сделать динамический размер агента. я решил все проблемы которые были, но решение было так себе. в итоге за последний месяц снова переписал половину имеющегося кода. >>284247можно сделать несколько канвасов. один для переливающегося текста и сделать переливание текста просто через освещение его фонариками разных цветов. например в https://www.assetstore.unity3d.com/en/#!/content/25468 посмотри как это сделано в экзамле где панелька с текстом светится и сверкает. элементы интерфейса же такие-же геймобжекты с материалами и хуйнёй, по моему это хороший метод это использовать.
>>284594Ебануться.Я не понимаю, что происходит на видео, но теперь я обязан научиться так же.
>>284594Большой код получился? Что как вообще организовал? Надеюсь кто-нибудь купит эту наркоманию у тебя и мы будем играть в шутаны с рандомными картами
>>284268Бамп вопросу.
>>284594Выглядит нихуя не понятноно круто. Что ты с этим хочешь делать потом?
Юнити не импортирует анимации добавленные в файл после его импорта (т.е. если перезаписать уже импортированный). Что делать, удалять, имопртировать и настраивать все заново?
>>284960Нажимаю reimport - нет анимаций. Импортирую как новый файл - есть анимации.
>>284960refresh в папке пробовал? мета файлы не перезаписались.
>>284963А, я разобрался. Это я идиот. Надо смотреть не на значки клипов, а создать новый клип и выбрать сурс.Неинтуитивненько.
>>277225 (OP)Где можно достать пример 2д игры где все было бы сделано "правильно"?Суть: Хочу посмотреть хорошие/стандарные решения обычных задач. (типа управление персонажем, переходы, обработка каких-нибудь пересечений). Понятное дело я все могу и так сделать, но может есть решение лучше.И сразу вопрос: Как нибудь можно сделать чтобы один объект перескался/тригирлся только один раз даже если он состоит из двух колайдеров. Пример: Герой состоящий из двух кругов (как цифра 8) врезался в "стену смерти". Пересечение с этой стеной произошло два раза изза того что два круга, но мне достаточно и одного -_-.
>>284970Каждый коллайдер регистрирует столкновения. Хочешь одно столкновение - делай один коллайдер. Полигональный,например. Полигонами себе восьмерку и нарисуешь.
>>284970На офсайте ищи. там был пример 2д игорь с картошкой.
>>284971>>284977Спасибо за ответы. Нашел пример.Еще один вопрос: Что делать если уровень состоит из кубиков. Есть ли резон использовать Quad (текстуры) вместо SpriteRenderer (спрайты)?
>>283442>В крайнем случае сброшу пересчёт мешей в дополнительный тредКак ты это собрался делать?
доволен. вбил один костыль чтобы исправить то что меня долгое время раздражало и мешало. сдвинул весь грид на пол вокселя в направлении -X / -Z. сделал клевое примагничивание спотов для кавера к краям навмеша, если далеко от него. и вообще много всего интересного там написал.и немного стареньких скриншотиков.>>284671а на видео агент сделанный за вечер пытается следовать маршруту из навмеша который строится в реальном времени. видно в начале как навмеш строится. для веселья включил рут моушен чтобы двигать не через контролер, а через анимации. и так как скорость учитывается плоховато можно наблюдать то как он весело свалился в канаву но все равно нашел путь.>>284864ну прилично так. 9-10к строк. учитывая что я не открываю скобочки в новой строке и не люблю ставить лишние пробелы. (количество закоменченного кода наверно под 55-70к строк ололо)вообще я не против написать про организацию стену текста. все равно нюансы в деталях.параметры агента и всякая хуйня вроде размеров вокселя у меня хранятся как скриптабл обжект, при обращении к навигации он становится ключиком к словарю чтобы вернуть навмеш для этого типа агента, таким образом сделал чтобы не было той волшебной еботы что юнити предлагает делать для достижения схожего эффекта.на скриншотике выше я показал как я получаю перемещабельную поверхность. это частично спиздил у rain но потом получше написал чуток. так как у меня не весь навмеш разом делается, а только небольшие его чанки то могу особо память не экономить. один хуй расход можно контролировать количеством обрабатываемых чанков в тредах. у меня есть абстрактные примитивы для каждого типа коллайдера, я подставляю примитивы на место коллайдера и растеризую в воксели. воксель описывает минимальную и максимальную высоту коллайдера в этой координате (да, я не могу иметь С-образные коллайдеры потому что они станут О-образными, но хули можно и сделать какой-нибудь компонент который бы указывал что надо делать это по другому. или просто делить коллайдер на два), имеет int в байтиках которого собираются флаги из enum, имеет отдельно проходимость из enum : int (раньше она была в байтиках но это была боль), массив из четырех соседних вокселей, ссылку на территорию которой принадлежит и отдельно список из "зон" которым принадлежит. дохуя конечно впихнуто, да.потом привожу воксели в порядок убирая перекрываемые, получаю проходимость (стоя, присев и непроходимую), нахожу соседние воксели, делаю отступ от ближайшего края навмеша на радиус агента.потом делаю важное - делю весь грид вокселей на несколько 2д плоскостей, которые не пересекаются через "затопление". выстраиваю все воксели сначала по высоте, потом по X потом по Z и проверяю может ли воксель захватить в плоскость которой принадлежит соседние воксели. если нет - создаю новую плоскость, если воксель уже принадлежит плоскости то проверяю можно ли их объединить.потом каждый такой слой делает всякие важные карты и скармливает их последовательно marching squares (где я сделал хитрость с тем чтобы они ходили только вдоль границ. экономит время охуеть) отдельно для каждой зоны и проходимости. стоит сказать что ноды находятся все в одном пространстве для всех зон и проходимостей, много ебался с тем чтобы они хранили эджы удобно. потом весь тот пиздилиард эджей и нод упрощается через рамера-дугласа-пекера и я получаю контур навмеша. потом я через самописную триангуляцию (на самом деле какая это нахуй триангуляция. не триангуляция это, просто слово подходящее) делю контур сразу на конвексные области, через "зоны интереса", те углы которые смотрят вовнутрь навмеша ищут ближайшую ноду в области которая равна градусу угла (если подходящей ноды нет то берет подходящую ноду справа и слева наиболее близкую к нормали угла). ну а дальше всю эту хуйню я скармливаю графу который строит из неё готовый навмеш, после чего встает в очередь основного потока где в корутине разные чанки навмеша получают сведения о соседях.так что я могу и выдернуть какой-то квадрат после чего построить его заново и из-за того что "триангуляция" сделана не через зад как у rain я могу потенциально иметь динамические обстаклы.хотя я про много что не рассказал, про клеточный автомат, про хуйню, но это в общих чертах.ну и теперь ещё в процессе получаю сведения о укрытиях. на самом деле там просто переиспользуется код marching squares и рамера-дугласа-пекера, просто скармливаются немного другие карты с каждого слоя и ноды попроще. и те самые "зоны" из вокселя которым он может принадлежать пропихиваются через и ту и другую хуйню и я знаю какие эджи находятся вблизи нужной мне зоны которая указывается вокселями, что сильно всё упрощает. таким образом делаются эти зоны для прыжков-подтягиваний и частично укрытия.много времени потратил на написание своей тулзы для дебага, архимного времени потратил на совершенные ошибки. marching squares у меня сожрали наверно месяц, если не больше и те ошибки которые я в нем совершил привели к тому что я переписал проект с нуля. то как я храню эджи тоже наверно у меня столько-же сожрало. а если учесть сколько раз оно мне аукнулось то даже больше. раньше я хранил обе последовательности, я знал эджи которые впереди и эджи которые сзади. и это был пиздец. в результате два раза проект переписывал наверно, в итоге оставил только одну последовательность. хотя про ошибки я могу долго рассказывать.>>284912как доделаю навмеш то примусь за ИИ. для агента GOAP, чтобы была возможность указывать нужные цели, отдельно напишу стейтмашину для командования сквадом агентов, чтобы он раздавал эти самые цели. (а может не стейтмашину а нейросеть попробую ололо. давно хотел получить опыт имплементации). потом приделаю к основному проекту. периодически тут всплываю с ним показывая генератор острова. а потом когда навмеш и ИИ перестанут радовать меня оказиями может в ассетстор выложу, а может даже бесплатно и предложу давать мне донейшены.>>285180на самом деле это очень легко. нельзя к апи юнити обращатся в тредах, но это не проблема.
>>285245>(количество закоменченного кода наверно под 55-70к строк ололо)Мусор. Просто поставь себе cvs, заведи локальную репу и выкинь это все нахуй по частям с пометками от чего "нужного" ты избавляешься на этот раз. Потом можно будет в любой момент посмотреть чо ты там понаписал раньше.
>>285248Боюсь, он настолько безумен, что решит по пути и свою cvs написать.
>>285245Годное дело. Продолжай.
>>285245>на самом деле это очень легкоПересчет мешей вообще на производительность не влияет почти, он похоже хочет сделать пересчет меш-коллайдеров в отдельном треде.Я и спрашиваю, как
Привет. Ъотел спросить нормально ли в юньке использовать наследование? То есть грубо говоря класс монстр. А отт него наследуются все монстры конкретно с переопределением местодов.
>>285542Нет.
>>285542На самом деле задача такая. Есть много разных объектов, но по событию часть из них должна совершить какое либо действие (допустим часть пойдет налево, а часть направо).Как бы вы сделали?Самое очевидное решение: Пройтись по списку с этими объектами и вызывать нужный метод.Возможно ли вызывать этот метод не создавая список?
>>285545А что есть вместо наследования? Я чет нагуглить ни как не могу
>>285555Композиция
>>285559спасибо. Пошел гуглить
Может кому понадобиться"Приемы при проектировании архитектуры игр"https://habrahabr.ru/post/255561/
>>285578Бред какой-то
Аноны, нубский вопрос но все же спрошу.Есть ли толк от визуального программирования в Юнити? Не спрашиваю про конкретный плагин, а в общем.Если Кирилл не программист а художник, например, то ему будет проще формочки таскать, чем писать код? Или один хуй и все равно нужно знать теорию ООП, C#, требования к архитектуре, паттерны и прочую хуйню, а визуал только спасает от ошибок синтаксиса и путаницы в скобочках.
>>285588Визуал нужен только артистам. Без программиста, который логику для блоков напишет не обойтись.
>>285589Доброчую>>285588Нихуя ты без прогера хоть какого-то не сделаешь. Игры без программирования это миф.
>>285588Тогда анрил ставь - там вообще дум третий без единой строчки кода можно сделать, на блупринтах и плагинах из стора.
>>285592Поддерживать и развивать не сможет, да и уровень игры будет ближе думу ко второму, по механикам. Так что лучше научиться в код, энивей.
>>285599>Поддерживать и развивать не сможетА написать типа сможет
>>284268Твою мамашу
>>285589Настоящий Кирилл делает свою игру мечты единолично.>>285590Не то, чтобы я совсем не умею кодить. Просто процесс кодинга, а особенно чтение scripting api, доставляет мне страдания.
>>285614Ассеты перетянуть уж получится, я думаю.
>>285617Только если это будет один ассет - "Сделать заебись"
Анон, я слишком даун в юничке объясни плз, почему не работает отрисовка кубиков по гизмосам?http://pastebin.com/02aB2mkbЭто буквально второй мой скрипт, я не очень понимаю, что творю. Пытался сделать сетку для А*, как в одном туторе, но вместо квадратной сетки хотел сделать шар.В теории эта штука на основе двух параметров - радиуса сферы и радиуса секторов сетки - должна сначала сосчитать количество вертикальных слоёв, потом количество окружностей на каждом слое, а потом расставить на всех окружностях секторы на определённой дистанции.И всё работает, но через гизмосы нихуя не отображается.Прогнал почти каждую зазубринку скрипта через дебаг, всё работает кроме проверки if (navGridArray != null) в гизмосах.Что не так, блядь?Уже закипел.
>>285621Не хуярь логику в OnDrawGizmos, гизмы не для этого.
>>285624https://www.youtube.com/watch?v=nhiFx28e7JY&index=2&list=PLFt_AvWsXl0cq5Umv3pMC9SPnKjfp9eGWЗдесь всё работало. Если бы он так не сделал, я бы так тоже не сделал.
>>285626Какую же хуиту он творит, пиздец.
>>285628Сотвори лучше
>>285630Нахуя? Я же не долбоеб делать велосипеды.
>>284146> Если между кубом и другим кубом есть объект из слоя коллизийНу дак проверь рейкастом есть ли там этот слой, и если он есть, то не выполняй код. В чем проблема то конкретно?
>>284268Самому такое проверить явно быстрее, чем ждать ответа.
>>285628Что конкретно не так? Я просто нюфаг и серьезно неебу в чем подвох.
>>285659Просто этому пидорасу что-то не нравится, вот и не так всё.
>>285659В том что для проверки используется физика, в то время как стандартный навмеш запекается по совершенно другим принципам и, в силу нативности, работает куда быстрее.Видео нормальное, если ты хочешь понять принцип, но в реальном проекте я бы точно его использовать не стал.
>>285621>кроме проверки if (navGridArray != null)Ты нажимаешь на старт вообще?
>>285667Да, лол.
>>285672Тогда хз, потому что у меня работает все кроме расчетов в методе CreateLayers в промежуточных расчетах получается либо NaN либо 0, и в итоге все 0
>>285673Сейчас заменил массив на лист - всё работает отлично.Только я с раскидыванием дотов по окружности зафейлился, получился пикрил.Странно, почему с массивом не работало?
Поясните про соотношение сторон и ориентацию. Почему, например, камера в юнити зависит от размеров окна? Как сделать так, чтоб соотношение сторон не менялось? Обрезается фон при малых разрешениях, как его уменьшать? Хочу вертикальное окно, но под винду такие не делаются, как? Ничего годного на эти вопросы не нашел.
какая досадная неожиданность. результаты для включенного и выключенного плеймода неожиданным образом различаются. тот-же самый инпут, но когда я в эдитмоде то Physics.CheckCapsule и Physics.CapsuleCast волшебным образом игнорируют деревья. интересно находится ли причина в моей власти.>>285248meh. то что долго закоменченное просто переношу в конец и прячу под регион с говном. ну и периодически если где-то на меня больно упал костыль то переписываю весь тот сегмент кода и то что там закоменченное было улетает в анналы истории вместе со всем классом.хотя периодически и вытаскиваю старые решения.>>285250да. поэтому я избегаю.>>285275а хуй знает как там это всё структурировано то. грид довольно большой, я не знаю как там треугольники делаются и вся хуйня. я не против узнать.>>285554если объекту не надо сообщать правый он или левый пользуясь его параметрами извне то наверно погугли BroadcastMessage.>>285588если кирилл один и он артист то ему следует задать важный вопрос. учитывая предполагаемые размеры проекта превосходят ли страдания от обучения погромированию те страдания которые он получит пользуясь визуальным погромированием? последнее не подвергается сомнению.я вот знаю одного мудака и он полный артист. тягал он спагетти в UE, тягал и сдался. он однажды показывал мне как он эти спагетти тягает и я пришел к выводу - погромирование это знание методов и способов их применения. а это визуальное погромирование в итоге только мешает. дольше выбираешь всякие функции-хуюнции, один параметр может превратится в огромную такую спагетину на весь класс, на экране умещается меньше читабельной информации, много времени тратится на то чтобы убрать руку с клавиатуры и переложить на мыш, если надо ей что-то подрыгать. ну и конечно найти документацию и советы к нормальному языку гораздо проще чем к хуйне. а знание синтаксиса не такое большое дело.я сам немного подергал эти спагетти и мне понравился только один важный аспект - распутывать приятно. расставлять их красиво чтобы по феншую.>>285662на самом деле учитывая пропорции грида в отношении к размеру обьектов все это одна хуйня. a star кстати когда я последний раз смотрел тоже глобальный грид делал через физон. и это гораздо быстрей чем проверить треугольники всех объектов чтобы составить тот-же самый грид.при желании заодно и весь грид можно двигать вместе с агентом, если он один. будет довольно высокая точность маршрута даже при низком разрешении грида, из-за того что сам грид двигается.
>>285765А чо он умеет? Я вот шарящий в юнити энтузиаст.
Вот код в юнити пишется на шарпе. Однако ж юнити работает и на консольках, и на мобильниках. Каким образом там запускается шарповый код, если шарп заточен под форточки, а с кроссплатформенностью у него не густо.
>>285657>>285658Лал, разобрался таки с этим - рейкаст с дистанцией чото не давал нужный результат, выдавал хуйню, сделал лайнкастом на строго заданное расстояние.
>>285783У него "идея" блджад, а так он красный диплом защитил в тех вузе, то есть хорошо знает математику, физику, может считать любую хуйню для сложых муток. Могу вас связать.
>>285797это не выглядит положительными качествами на фоне минусов.
>>285787Бля тредом ошибся.
>>285799Ну давайте попиздите, разойтись всегда успеете.
>>285797То есть он нихуя не умеет для геймдева, но имеет распухшее чсв из за красной корочки. идеи у меня и самого есть, считать я тоже могу
>>285802Та не, он со своей красной корочкой грузчиком работает считай. Я ему тоже самое говорю, но он наотрез не хочет кодить. Хули, пообещал написать, пишу вот вам. Я ему говорил что везде на хуй пошлют.
>>285803Это каким хиккой надо быть чтобы друг за тебя треды на дваче создавал?
рандом пик охуенного первого проекта>>285801мой опыт подсказывает мне что тот кто прячет идею всегда мудак.>>285803пускай нахуй идёт! нахуй! и работает там грузчиком! совсем грузчики охуели, хуже артистов. их хоть можно заставить кодить.
>>285805Зачем юзать старый гуи?
>>285804Я за него еще и в твиттор писал. По мне так если ты не можешь пойти на двач или зарегаться в твитторе, то значит не очень и хочешь в геймдев, но блядь, я понял, что никого ни в чем сука не убедишь, люди в основном убертые пиздец, еще и обижаются если им что-то советуешь. Только и остается сделать, что попросили, имхо помогать друзьям надо, даже если они долбоебы.
>>285803Ну объясни ему, что идеи есть у всех, а возможности для реализации - нет. Рисовка, звук, кодинг - вот что действительно нужно. Идеи, геймдизайнер-киррил, руководитель - не нужно, без сопливых разберемся.>>285804Двачую, лел.
>>285807Нет, он просто считает себя умнее всех, такие - прямо и немного нахуй.
>>285805Он не прячет идею. Хочет какую-то тбс запилить, он уже и мир прописал и статы персонажей. Основная мечта запилить какой-то ебанутый клон квейка 3.В первое верею, потому как он и вправду способен запилить какой-то баланс, это вообще его тема, дрочит на циферки во всяких стратежках.
>>285808>Ну объясни ему, что идеи есть у всех, а возможности для реализации - нет. Уже несколько лет объясняю.Ребята, мне все и так понятно, срсли, кто захочет, отпишите, я скину какой нибудь его контакт, а так не хочу засирать оффтопом ваш тред, думаю мудаков тут и так хватает.
>>285812Ну да, чтобы вместо тебя, самому возить с этим ленивым пидором
Как же я проигрываю, за доморощеных геймдевов уже мамы ищут команды
>>285811Если человек способен написулькать пару уравнений -то въехать в кирило-пограммирование на унити - ума хватит.>>285815Прекрати,я щас расплачусь.
>>285806это скриншот с конца 2013 года ололо. как-то мало опций было.>>285811как-то не выглядит охуенно. вот у меня есть друг-мудак который вообще на все цыферки дрочит. с ним можно пойти подрочить в совершенно нелепое говно, спросить "что это за парашей мне по ебалу проехались и почему она была такая охуенная" и он ответит что оказывается в каких-то там кондициях проценты резистов хуйня муйня. откуда он это знает? я не знаю. и кстати красного диплома у него нет, он любит доту, курить и чужие страдания. полагаю последний фактор самый важный в этом вопросе.
>>285817Звучит как раз как мой друг, лол. Тоже все эти резисты хуизисты рассказывает, если доту с ним смотреть.
>>285812Я бы даже сказал, что помогая ему ты только делаешь хуже. Человек должен сам взять в руки ответственность и принять решение, сделав первые шаги. А так подрываешь одну из составляющих мотивации, которой у него итак маловато.
>>285825Кстати да, спасибо, что обратил на это внимание.Удачи вам в разработке ребята! Надеюсь однажды куплю ваше дерьмо в стиме :3
>>285245кстати, на тему того костыля что грид сдвинул. помимо этого поменял недавно то как делаются края чанка. с хуёвого неадекватного метода на красивый и хороший с флагами в байтиках, дополнительными самплами по краям и вообще. теперь края разных чанков соединяются гораздо лучше без всяких читов вроде снапинга. сделал на эту тему видео с рисованием. доволен.https://www.youtube.com/watch?v=Cjf7QEJ4HCM
Я недавно зашёл во вкудахтоигры и малость прихуел. Неужели людям не стыдно делать ТАКОЕ? И все на этом вашем юнити. Немного стыдно это говорить, но меня заинтересовали эти недоигры. Либо их делают отбитые великовозрастные ебанаты, либо школьники. А если у них это получается, то чем я хуже? Что вообще для этого нужно? Не думаю, что когда-либо осмелюсь показать свой высер кому-то, кроме пары знакомых, но, я думаю, в каждом человеке есть ребёнок, который мечтает о своей игре или о каком-то мультике, ну или кто там о чём мечтал.Что нужно для работы с юнити? Я никогда не занимался программированием, кроме уроков информатики, но мы там обычно бесились. Так вот, чем нужно обмазаться, чтобы у меня хоть что-то заработало на это вашем юнити? Хотелось бы гайдов. Если на ангельском, то лучше в текстовом формате, ибо речь воспринимать я так и не научился.Не бейте.
>>285896https://docs.unity3d.com/Manual/index.html
>>285896да ничего и не нужно. ни красного диплома, ни знаний. слава прогрессу. скоро и мозгов не понадобится. вот я например сел писать навмеш, а реально знания дальше этак класса шестого не использую. как погромировать узнал посмотрев этого бородоча https://www.youtube.com/user/BurgZergArcade а дальше пошел творить следуя своим идеалам.один хуй это больше вопрос личного опыта, а не теоретической хуйни.
Самое смешное, что этому анону даже меш писать не нужно было, благо что стандартный нормален >>285907Он просто ебанутый.
>>285907Какие именно видео бородача смотрел?У него их там дохуйлион. С какого конкретного плейлиста стоит начать?
>>285908вот только жаль что это часть в юнити писали подозрительно странные личности и NavMeshBuilder находитсяв неймспейсе UnityEditor, что несколько мешает адекватному его использованию для процедурных карт.если конечно не играть в игры в эдиторе.а ещё там нет каверов, использовать агентов разных размеров можно только через жопу, нельзя перестраивать отдельные куски, нельзя генерить карту для перемещения присев и вообще. вот не пересеклось с моими идеалами. пришлось своё делать чтобы было всё как я хочу и я мог залезть внутрь и поменять всё.но сделали и правда заебись.>>285910самое большое. где он хак н слаш рпг делал (и не сделал). как по мне чем больше хуйни последовательно выстроено тем больше элементов которые можно связать между собой.только про ссылочные и валуе типы почитай в процессе, эту часть он хуево показал.
Анон, как сделать такой материал, чтоб одна и та же поверхность была глянцевая, но местами диффузная?Хочу сделать "грязное" стекло с разводами, имеется текстура этих самых разводов с альфа-каналом, а как всё сложить в кучу - хуй знает. Даже не знаю как такое гуглить.
На Юнити реально сделать ммо? С серверной частью, с взаимодействием с БД?
>>285949Тебе нет.
Как правильно анимировать сложные катсцены, где персонажи взаимодействуют с окружающим миром и между собой? Адекватно ли в таких ситуациях использовать глобальный Ainmator Controller на сцене и анимировать сразу несколько объектов одной анимацией, чтобы получить больше контроля над ситуацией? Или же следует всегда использовать отдельные контроллеры? Поделитесь мыслями и материалами по этому вопросу.Работаю над 2D эдвенчурой в Adventure Creator, поэтому катсцен и уникальных анимаций в игре будет много.
>>285973Купи себе Spine и забудь вот это всё как мечту об идеальной тян с зарплатой меньше 800к в месяц, сынок.
>>285977Со Спайном очень поверхностно знаком. Как он решит мой вопрос? Я же о подходе а не об инструменте спрашиваю.
>>285932Тебе надо написать шейдер для этого, ему скормить эти две текстуры и смешивать их по маске. По этой же маске смешивать нормаль мапы и прочее.
>>285914Я буду счастлив, если ты сделаешь что-то вроде урока по созданию навмеша.
Кармаки, есть сие говнокодище: bool CheckForEnemies() { bool result = false; RaycastHit[] hits = Physics.RaycastAll(transform.position, GetDirectionToEnemyRespawn()); for (int i = 0; 0 < hits.Length; i++) { Debug.Log(i); if ( (hits.transform.tag != _side) && ((hits.transform.tag == SOV_SIDE) || (hits.transform.tag == GER_SIDE)) ) { result = true; break; } } return result; }Вызывается оно из класса Update(), так что цикл for - норм.Ругается:IndexOutOfRangeException: Array index is out of range.Не могу понять, в чем прикол.
>>286002Скрин кода
>>286002>0 < hits.LengthАлсо, убери вот этот пиздец>(hits.transform.tag != _side)&&((hits.transform.tag == SOV_SIDE) || (hits.transform.tag == GER_SIDE)))Не пиши сопли в условиях, лучше заведи отдельную переменную, посчитай условие в нее и потом отдельно проверь.Я бы вообще переписал:var hits = Physics.RaycastAll(transform.position, GetDirectionToEnemyRespawn());var enemiesFound = false;foreach (var hit in hits){ var tag = hits.transform.tag; if (tag == _side) continue; var isCorrectSide = (tag == SOV_SIDE || tag == GER_SIDE); if (isCorrectSide == false) continue; enemiesFound = true; break;}return enemiesFound;
>>286005Спасибо, добрый человек. Очень я люблю допускать подобные мелкие косяки, а затем полдня рвать волосы на жопе в их поиске.По поводу соплей в условии. С одной стороны - да, но с другой интуитивно хочется сокращать количество переменных - вот и получается такое.Энивей, еще раз спасибо, буду исправлять.
>>286003>>286005Зачем вы вообще с _side сравниваете?>>286008Ты дебаггер запускал хоть перед этим? За 20 секунд же сам мог увидеть, что он зашел в цикл, например, в третий раз, хотя попаданий всего два было.
>>286002>>286005два наркомана. transfrom же теперь кешируется самим юнити, можно больше не писать такую хуйню. можно написать что-то вроде этого, или даже такого. это же читабельней чем стена кода с перебором массива, continue и прочим.>>286000боюсь это не та информация которую можно уместить урок. если ты не знаком с языком то это тот сорт информации который запутает тебя ещё больше, если ты знаком с языком то я выше описал основные шаги, имплементируй их как понял.
>>286030Дебажить такой код вообще найс)
>>286030ладно, проснулся, кофейку попил, понял что и я наркоман и transform тут непричем.>>286002анон, почитай про про делегатыhttps://msdn.microsoft.com/ru-ru/library/ms173171.aspxэто когда функцию можно передавать как параметр. в особенности прочитай про Func и Action которые уже написали за тебя. например тут посмотри примеры использования.http://professorweb.ru/my/csharp/charp_theory/level10/10_4.phpпрочитай про неймспейс System.Linq который дает охуенные возможности вылавливания из коллекций всякого говна.в сишарпе же столько всего написано за тебя. напиши себе гденибудь снизу что-то вродеvoid DebugTags(IEnumerable<Transform> transfroms){string s = "";foreach (var trans in transfroms)s += trans.name + " : " + trans.tag + "\n";Debug.Log(s);}если часто там сям смотришь теги у коллекций трансформов и сомневаешся в их содержании. надо всё делать удобно.
>>286032Лол, ньюфаг открыл для себя linq. Эти сопли мало, что совершенно нечитаемы, так еще и отлаживать заебешься, этот анон >>286031 прав.
>>286033это не тот код который вообще надо отлаживать. это код сорта "эй говно дай мне хуйню", где понятие о хуйне умещается в bool. если что-то не так то спасибо прогрессу, ребилды юнити очень быстрые. можно и пописать хуйни в предикт, поиграть в угадайку. или, для начала, проверить инпут.
>>286032Тебя блядь просто с ноги надо уебать за Linq, а потом обоссать.Ты понимаешь, что это говно самое тормозное говнище эвар, которое срет тонной мусора?мимоПРОбыдло
>>286036Абстрактно зато.
>>286036>которое срет тонной мусораГде ты там мусор нашёл?https://github.com/mono/mono/blob/c1b43669320f96e4a2a482d993b7b36bb5e59496/mcs/class/System.Core/System.Linq/Enumerable.cs#L141Может ты путаешь с IQueryable, который использует деревья выражений. Но он не используется с обычными списками. Это уже для баз данных.
>>286037абстракция это великая сила. а с великой силой приходит великая ответственность.за ту хуйню которую ты пишешь.>>286036не пиши хуйни, я даже не знаю о каком мусоре ты говоришь. я уже довольно продолжительное время медитирую на результаты работы linq с десятками тысяч самых разных элементов и вот что я скажу: это просто заебись. еблан тот кто не пользуется тем что написано за него. и это гораздо лучше этого безумства которое описано выше. то что делает функция должно быть понятно из того как к ней обращаются. тот кто пишет все эти if continue var hits var enemiesFound var isCorrectSide для такой хуйни как проверка тегов в результатах рейкаста - тратит время впустую.
>>286039Очередной джуниор дрочит на компактность кода в ущерб читаемости и предлагает использовать замыкания там, где достаточно простого if-а. Все были такими дебилами когда-то. Лет через 5 ты поймешь, а сейчас тебе бесполезно что-либо доказывать.
>>286041вопрос не в компактности кода. вопрос в том что предикт проще читать и его видно из места обращения к той хуйне которая написана ниже. так вот открываешь код а там какая-то хуйня if(CheckForEnemies()). это что, блять? что оно делает? жамкаеш "Go to Definition" а там это полотно, которое все что делает в итоге - делает сравнение стрингов. это конченым надо быть чтобы писать код в котором надо скакать по всему классу чтобы понять что он делает.не говоря о том что а) использование IEnumerable в таких условиях исключает то что напорешься на null б) прочитать .Any(x => predicate(x.transform)); гораздо, блять, быстрей и проще чем гору хуйни. это вообще делает функцию из одной строчки которую при желании можно даже в /// <summary> </summary> скопировать чтобы даже не возникало вопросов с тем что же эта хуйня делает.
>>286042>вопрос не в компактности кодаТут всё скорее просто на любителя. Вот я не люблю слишком компактный код. Обычно люблю всё расписывать, заводить дополнительные переменные тупы для пояснения алгоритма.
Но ограничивать себя в использовании Linq руководствуясь производительностью - глупо. Это преждевременная оптимизация, которая большое зло и коду только вредит.
>пилят всякую говнину>LINQ ЛЯМБДЫ АБСТРАКЦИЯ КУКАРЕКУ
>>286041Самое смешное, что через лет пять поймёшь ты, а он-то уже понял. Грамотное использование функциональщины почти не бьёт по производительности (зависит от "умности" компилятора), но убирает огромную кучу ошибок (например, если бы тот парень изначально писал так, как говорит мелкобуквенный, то этого разговора бы не было, потому что той ошибки в цикле не произошло бы).>>286044Разбор файла настроек (ключ = значение\n) на бейсике (string - уже считанный файл в виде строки; алсо, считай, что удалением пробелов занимается SetConfigVar):i = 0while i < StringLength(string)eq = find(string, "=")if eq <> -1 thennl = find(string, "\n")key = mid(i, eq)value = mid(eq + 1, nl)SetConfigVar(key, value)i = nl + 1elseerror("invalid key")endifwendПроблемы: если в конце файла нет перевода строки, то последняя настройка не будет считана (и произойдёт ещё хуй пойми что, потому что i не сдвинется); сообщение об ошибке совершенно непонятно - invalid key, а какой и почему - хуй его знает; нет защиты от key = value = garbage; возможно, ещё что-то, что я не вижу сейчас. Всё это я рекомендую тебе исправить самостоятельно, чтобы ты прочуствовал.То же самое на питоне:def print_error(e): print 'error in key', e[0]vals = map(lambda x: x.split('='), string.split('\n'))map(print_error, filter(lambda x: len(x) != 2, vals))map(lambda x: SetConfigVar(x[0], x[1]), filter(lambda x: len(x) == 2, vals))Проблемы: если в конфиге будет пустая строка, то print_error упадёт - правится одной строчкой (либо try, либо ещё раз отфильтровать); вроде, всё. Что легче понять? Где легче ошибиться? Почему, по-твоему, первый код хороший, а второй плохой?
>>286058>в
>>286041>дрочит на компактность кода в ущерб читаемости LINQ наоборот даёт лучшую читабельность.Хотя надо понимать, что ты делаешь, когда прикручиваешь всё это к методу, который будет дёргаться множественно каждый тик.
что-то новые охуенные возможности навмеша с трудом поддаются обьяснению их агенту. раньше то всё просто было, был один тип соединения, а теперь есть тип соединения требующий какие-то дополнительные действия. три часа в код пустым взглядом смотрел, час обьяснял резиновой уточке свои проблемы и ещё полтора живому заменителю уточки. и как-то не пришел к решению которое бы мне нравилось.>>286044>>286045ты делаешь странное. если хочется расписывать подробно что делает функция то на мой взгляд надо выбирать подходящий для этого язык. по моему в данном случае все что хочется описать как подробности следует писать в комментариях, которые действительно могут быть чем-то хорошим. использовать язык погромирования для этого неадекватно. это не язык общения.на мой взгляд если я "не абстрактными" словами словами быстрей расскажу что надо делать, чем напишу это кодом, то это значит что код скорей всего плох. потому что язык не исполняет важную функцию - сообщение комплюктеру того что я от него хочу. (под абстрактными словами понимаются такие как "хуй, говно, пидор". ими то легко всё обьяснить, жаль комплюктор их не понимает) а то набросились, блять. "очередной джуниор", "через пять лет поймешь", "LINQ тормозное говно", "дебажить код из одной строки вообще найс". осталось только ещё этот петушиный крик процитировать, но для такого надо совсем охуеть.вот читаю я чужой код, читаю свой код, пишу свой код, делаю всякие ошибки, вижу чужие ошибки. и я поделюсь очевидным наблюдением. чем сильней размазан код (внутри класса и внутри функции) тем дольше его читать.наверно размазанный код признак прокрастинации.
>>286038Во-первых, ты манда тупая и смотришь не тот гитхаб. У юнитеков свой форк моно, 8-10 летней давности, который распидорасило неплохо так.Во-вторых, я вас уебанов устал учить простым вещам -- то, что работает в энтерпрайзе никогда не работает в геймдеве. Тут чем тупее пишешь -- тем лучше резалты получаешь. Читай про KISS, тупица.В-третьих, Linq при любом сука запросе начинает пердеть созданием Ienumerable, array и прочей залупы, которая будет тебе бить по производительности. Почему? А потому, что ты с каждым запросом начинаешь выделять память, которую в последствии не будешь использовать нигде. И вот когда у тебя место в куче закончится и у тебя тригернется gc, чтобы вычистить всю ту хуйню, которой ты насрал, тогда ты будешь сосать сверкающий болт 90 мс на кадр, вместо стабильных <16 мс.Засунь в жопу свою читабельность и практики хорошего программирования, экономь, сука, ресурсы.мимоПРОбыдло
Посоны, я так понял из гугла, что юнитипидорасы как похерили партиклы года три назад, так и не собираются их чинить. Ну то есть не зацикленные партиклы нельзя проиграть.Не подскажите, какие сейчас есть костыли для обхода?
>>286113Галку looping сними, слепой.мимоПРОбыдло
>>286114>не зацикленныеИ кто тут слепой?
>>286113Хотя извиняюсь. Это я пидорас, а не юнити. Присваивал не тот префаб не из сцены в нужном геймобжекте, а из каталога
>>286112>и у тебя тригернется gc, чтобы вычистить всю ту хуйнюНо он будет чистить только объекты 0 поколения, дорогое пробыдло. Почитай на досуге.мимодил
Вечера.Не знаю, как забить вопрос в гугль, поэтому пишу здесь. Суть такова: 2D игра, вид сверху. Нужно, чтобы объект вылетевший за край карты вылетал с противоположной стороны, типа как в Asteroids. Подскажи, анон, ну или ткни в гугль.
>>286224Добавь на локацию большой куб-триггер. Как только кто-то будет выходить за его пределы, ты будешь об этом узнавать через OnTriggerExit. Потом берёшь позицию этого коллайдера локации и отнимаешь от него позицию объекта, который вышел за пределы. Так ты узнаешь направление от объекта к центру.
Посоны, а как вы в 3D задники отрисовываете?
>>286264Понял тебя, спасибо, анон
>>286167А ты случайно не знаешь, как работает сборщик мусора в IL2CPP?
>>286307Знаю, хуёво.
>>286318Блин, даже не представляю, как я буду на WebGL перебираться. Там, наверное, со GC всё ещё хуже.
>>286327Никак
>>286358
реквестирую сюда свой вопрос >>286210
Вот есть геймобжект.На геймобжекте висит скрипт, в скрипте объявлена Vector3 с заданной точкой в пространстве.Вот как мне поворачивать эту точку вслед за поворотом геймобжекта? Так, например, чтобы она всегда была у него за спиной. Спасибо.
>>286701point = transform.forward * -1
>>286709nope
>>286701Присобачить к объекту дочерний пустой объект на нужном месте, завести в скрипте public Transform твойДочернийОбъект, запихнуть его в инспекторе в родителя.
>>286722>Присобачить к объекту дочерний пустой объектnope
>>286724Да пошёл ты нахуй, быдло.
>>286728Сам иди нахуй.Задача - вращать вектор, а не геймобжект
>>286729Ну так решай её, хули.
>>286729> как мне поворачивать эту точкуДолбоеб, ты не можешь вращать точку. Если нужно найти именно вектор от нее до твоего геймобжекта, то геймобжект_позишн - точка, нормализуешь результат и получаешь вектор. Дальше ставишь ее за спину. или суешь за щеку
>>286739>Долбоеб, ты не можешь вращать точкуТочка должна вращаться вместе с объектом, ось - центр объекта, направление то же самое что у объектаЯ жопой чую, что к координате нужно просто прибавлять какой-нибудь ебучий косинус, но у меня с тригонометрией совсем все хуево, поэтому спрашиваю тут
>>286743Тогда просто закрепи точку на определённой позиции относительно объекта.Например сзади. Объект вращается - точка вращается тоже, сохряняя позицию относительно объекта.А вообще иди нахуй, быдло.
>>286701http://pastebin.com/ssEfhCKU
>>286750Это хуевый и тяжелый способ. Но если ты такой тупой, что не можешь даже этого нагуглить сам, то тебе пойдет.
>linq, дроуколы, кулинг, батчингБлядь, полный энтузиазма, хотел продолжить пилить свою первую йобу, обучаться, но вот читая сей тред появляется зудящее ощущение в области ануса. Чувствую себя конюхом подслушивающим разговоры родовой феодальной знати. Как же мне неприятно.. Нужно ли вникать в этот ваш вычурной LINQ и активно использовать его, если ньюфаг? Или только ознакомится? Как раз йоба на всяких if-ах и тд. Но йоба не простая, будет постоянно разрастаться, покуда есть силы. >>286752>Это хуевый и тяжелый способ.А у меня корабли летают с помощью этой хуйни, корабль определяет в какую сторону поворачиваться, далее строит вектор уже повернутый на какое-то количество градусов, покуда цель не будет впереди его. Это нормально? Какие есть альтернативы?
>>286838Снисходительно посмеялся над нищим и ободранным простолюдином
>>286838Синусы и косинусы считаются через извлечение квадратного корня. Как известно, извлечение корня очень процессорозатратная функция. Если тебе нужно посчитать это несколько раз, то похуй. Если же ты суешь эту хуйню в апдейт, то это плохо. Если это считается еще и для большого количества точек, то это пиздец.>Какие есть альтернативы?https://habrahabr.ru/post/131931/
>>286858Vector3.RotateTowards подойдет?
Асло, как посмотреть внутреннее устройство методов, того же Vector3.RotateTowards ?
>>286931Никак.
>>286916>Vector3.RotateTowards подойдет? Я ебу, что ты там хочешь сделать. РотейтТовардс, это линейная интерполяция ротейта. Эта функция поворачивает не на указанный тобой угол, а на его часть. Используется в корутинах, для плавного равномерного пошагового поворота, а не моментального. Эта функция не перемещает объект в пространстве, относительно оси, а ПОВОРАЧИВАЕТ его, оставляя его на том же месте.Если тебе нужно пересчитывать позиции объектов при повороте вокруг оси, то тебе нужны матрицы переходов. Проблема с синусами и косинусами решается таблицей значений. Создай метод, который запишет значения синусов и косинусов в тхтшный файл для всех значений угла с точностью до какого-то символа после запятой. При загрузке сцены, в которой будет много поворотом, парси тхтшник в два дикшнари (один для синусов, второй дял косинусов). ПРи необходимости получить значение, просто дергай их из словарей.
>>286939Таки можно посмотреть, но придется декомпилировать библиотеку (если она не обфусцирована). Но проще написать свою реализацию, если не уверен, что тебе подойдет реализация уже существующей.
>>286949>Я ебу, что ты там хочешь сделать.Смотри, только не бей, есть корабль с позицией в пространстве и его угол повтора (пусть 93 ) . У корабля сзади двигатель который толкает его вперед, нужно получить новую позицию с учетом того что корабль пролетел столько-то и повернул на столько-то, 3 градуса влево например.Сколхожено было примерно такship.position += YobaVector(93-3 );vector2 YobaVector(angle){Разворачиваем единичный вектор на angle, возвращаем }Хм, а действительно, в таблице будет всего 360 значений, вполне годно, что скажешь? О безкосинусном способе так и не понял, сложно сука, эти все матрицы поворота, ой.
>что скажешь?Короче ты охуенен.
Охуенен анон сказавший о таблицах имелось ввиду, ну это и так понятно, ладно уже ухожу.
>>286949>Проблема с синусами и косинусами решается таблицей значений.Нет никакой проблемы, поехавший. Все оптимально и зделано уже до тебя.>>286982Не надо чинить то что работает. Пошел нахуй.
>>286112>У юнитеков свой форк моно, 8-10 летней давноститы на полном серьёзе считаешь что их имплементация .Any() отличается? что она вообще может отличатся?>Тут чем тупее пишешь -- тем лучше резалты получаешьна этапе написания кода до его оптимизации гораздо более верно "чем тупее пишешь - тем дольше пишешь".>Linq при любом сука запросе начинает пердеть созданием Ienumerable, array и прочей залупыочевидно что только при тех при которых это требуется.к тому-же ничего не мешает своими руками, или периодически вызывать GC.Collect() чтобы не происходило описанной хуйни.>>286838>Нужно ли вникать в этот ваш вычурной LINQ и активно использовать его, если ньюфаг? Или только ознакомится?ознакомься, но не применяй. по мере личной прогрессии находя новые сложности можно не всегда понимать где эти сложности на самом деле и начать решать проблему не с того конца. а зная что где-то что-то решает подобные проблемы можно уже и раскопать информацию на эту тему.>>286982зачем такие сложности?вообще, нахуй ты позицию корабля высчитываешь руками? а вдруг астероид? отдать на откуп физону не?
>>286949>вычисление хэша + рандомный доступ к памятиГотов спорить, что просто посчитать синус будет быстрее.
>>286701Ларчик просто открывался:transform.TransformPoint(point)
>>287067>чем тупее пишешь - тем дольше пишешьПиши быстро - тормози на релизе!Вообще быдло сверху в чем-то право.Линк это стильно, модно, молодежно, но есть ряд подводных камней.1) Приведение колекции к IEnumerable - создание нового объекта-интерфейса, который потом нужно будет убрать.2) Доступ к элементам через IEnumerator - тоже объект-интерфейса.3) Сопли вида "(x) => very long soplina" - конпеляются в отдельные анонимные методы. Их вызов происходит на каждой итерации. Оверхед на вызов функции не то чтобы большой, но он есть хотя бы в предаче двух обязательных параметров. Тут немного спасает, что конпелятор умеет в инлайн, но он работает только для простых предикатов без циклов-ифов-достув к левым объектам.Вот. Если просто взять фор и перебрать по индексу - то всех проблем выше можно избежать, гц даже не проснется.
>>287067>зачем такие сложности?>вообще, нахуй ты позицию корабля высчитываешь руками? а вдруг астероид? отдать на откуп физону не? Кораблики простые, без коллизий на 2д плоскости, хотелось сделать пока так.
>>287096Точки в пространстве лучше задавать пустым GameObject'ом, чем писать их руками.
>>287132щас пойду для каждого поинта моего кастомного Bounds задам геймобжект, ага
>>287121>Пиши быстро - тормози на релизе!это всё-же лучше чем тормозить вообще весь путь.>Линк это стильно, модно, молодежно, но есть ряд подводных камней.дааа~ я знаю про то как работают анонимные методы, интерфейсы и что синтаксический сахар не совсем и бесплатный. но с другой стороны в случае с IEnumerable важность таких минусов коррелируется с размером коллекции.как по мне лучше знать где эти камни расположены, чтобы потом вытащить их если слишком большие, чем бетонировать все подводное царство. >взять фор и перебрать по индексуа если взять foreach то можно так-же избежать и ошибки с null, но о ужас оно что-то делает в стаке и ест его ресурсы.
>>287067>к тому-же ничего не мешает своими руками, или периодически вызывать GC.Collect() чтобы не происходило описанной хуйни.Я бы не рекомендовал. Периодически то он будет сам вызываться. Разве что можно его вызвать в периоды вообще без действий, в какой-то загрузки следующей локации, например.
>>287177поэтому я написал "или". на самом деле оба варианта валидны в зависимости от условий.кстати помоему этому даже страничка в мануале посвящена.https://docs.unity3d.com/Manual/UnderstandingAutomaticMemoryManagement.html
>>283246Library/Temp сноси
Есть у кого build report tool? С меня сотни нефти
>>287244Есть, но тебе не дам, так как ты насрал в разделе.
Можно логировать в юнити? Писать в отдель6ый файл было бы заебись. Ну типа посрал, поссал, вы так кстати делаете? Или как-то разделить дебаги, типа в одном все выводится, а в другом только нужное.
>>287287так сам напиши, че ты. публик статик класс дебуг статик лист <стринг> и пубичные методы чтобы пхать в этот лист что-то или собирать в стринг и выводить в Debug.Log когда тебе там хочется.и писать такое довольно важно, учитывая то насколько тормозным может быть Debug.Log.
Как сделать одну функцию для создания разных типов кораблей? Можно функции на вход дать тип корабля? Или че тут делать-то?
столкнулся со следующей проблемой. Как задетектить самый отдаленный по выбранной оси мэш-фейс объекта?В общем, моя игруля в зачаточном состоянии. И то над чем я сейчас работаю - это генерация race trackов процедурально при помощи различных префабов, некоторые элементы из которых предусматривают поворот трассы на 45 градусов. Для генерации платформ использую следующий код:http://pastebin.com/abwQYQ4vТ.е. позиция следующей платформы определяется пока примитивно.newPlatformPosition.z += chosenPlatform.GetComponent<Renderer> ().bounds.size.z;Моя цель - добиться того, чтобы генерилось что-то вроде того, что я ручками нахуячил на 2й гифке. Самое очевидное решение, что я вижу:1. Пройтись в направлении forward.2. найти самое отдаленное, лицо, по направлению этой оси.3. манипулировать трансформацию следующей платформы, аттача ее на это найденное лицо.Или же проидентифицировать на каждом типе платформы важные лица, которые будут соединять элементы дороги.К сожалению, пока не знаю как выполнить оба варианта. Поэтому надеюсь, что двач поможет мне с поиском ответа
>>287315CreateShip(string shipType)
>>287315Кури паттерн "абстрактная фабрика". Можно обойтись отдним статик-классом, в котором десяток приватных методов с одной сигнатурой, которые возвращают объект типа бейзШип. Внутри методов прописана логика создания для каждого кораблся. В классе присутствует дикшнари (или макаронина из ифов/кейсов), которая выбирает нужный приватный метод по в зависимости от аргумента паблик функции, выполняет его и возвращает результат.
>>287316Я не очень понял, что тебе нужно, но ты можешь сейчас меня закидают говном за неоптимизированность присунуть каждому префабу трэка по паре дочерних Empty GameObject и просто брать их координаты.Это как раз твой второй вариант.Создаешь компонент типа RaceTrackSegment, у которого будет два public Transform StartNode (и EndNode).Кидаешь его на трек, присоединяешь ноды и вуаля, твой кусок тека готов.
>>287543спасибо, затесчу на досуге.Пока ты еще не заснул надеюсь, хотелось бы узнать как сделать так, чтобы локальное направление шарика, которым я управляю, менялось?Другими словами, я не хочу чтобы шарик смещался в сторону, как у меня это происходит в этом коде: http://pastebin.com/UWh1iEFgЯ хочу, чтобы он поворачивал, изменял локальное направление. Как в у этого господина: https://www.youtube.com/watch?v=zNefO8RhUWUПочти весь день убил на решение этой проблемы.
>>287577Сделай перемещение, как Transform.position += Vector3 и этот вектор считай, как сумму текущей инерции и вектора силы. Вообще, если не хочешь ебаться с физикой (а тебе, по сути, надо будет), то нужно делатьИнерция = Инерция + УскорениеИнерция = Инерция - Инерция * 0.3 (или что еще от 0.00001 до 0.99999), а в случае с физикой. Использовать AddForce() для физического компонента и шар сам покатится как надо.
Что за опция если выбрать объект и нажать W, камера перемащется к нему. Как ее выключить нахуй. Она у меня рандомно активируются, что дико бесит т.к. мешает управлять камерой в FPS режиме
>>287465Покурил , если правильно понял, то сей паттерн позволяет менять кишки корабля, радар , поведение , короче вместо копания в наследнике, копаемся в фабрике, не нужно делать пиратэШИп, треэдорШип, делаем просто шип, а фабрика ему сама разложит все?Сделал макаронину, а потом в паттернах нашелся Activator.CreateInstance. Вот бы в функцию передавать просто тип, без параметра, ибо подсвечивает.
>>287600Типа того. У тебя есть Ship с параметрами (Name, Class, Fraction и куча еще всего) и есть статичный Колян класс ShipFabric с не менее статичным методом SpawnShip(~параметры создания~) и возвращающим твой Ship уже настроенный и все такое. Только фишка вот в чем - у тебя же может быть несколько префабов этих самых кораблей. пусть фабрика инстанциирует определенный префаб, докручивает его и выдает тебе в нужную точку пространства, вот и вся магия.А тип в функцию можно передавать, например с помощью enum.
>>287600Лучше используй шаблонные методы, а не строкиCreateShip<TShip>() where TShip : Ship
Или хотя бы enum >>287632
>>287587Я проснулся и понял - тебе, ясен красен, нужна физика, у тебя же шар по треку катается. Кидаешь на него Rigid Body и в компоненте со скриптом движения толкаешь его через разные виды AddForce().
Привет, посоны.Пишу плагин на ассетстор и планирую добавить в него интеграцию с другим плагином. У человека либо может быть этот сторонний плагин в сборке, либо нет. Если я пишу компонент интеграции, он ссылается на класс, входящий в сторонний плагин, и все хорошо, но если стороннего плагина нет, то выплывают ошибки, говорящие о том что этот класс не найден что логично.Шо делать, братцы? Комментировать куски кода с предложением покупателя их раскомментировать в случае необходимости не хочется.
>>287655Хм, а #if() тут не подойдет?
>>287656Погоди, разве препроцессору юнити можно свои условия задавать? Из стандартных только выбор платформы или версии движка... И да, кажется в самом конце документации что-то об этом есть. Если не затруднит, скинь пример. Спасибо!
>>287655Тебе надо ссылаться на Object , и проверять, является ли он этим самым классом.
>>287665А это здесь при чем?У меня не компонент потерян, а класс целиком. Невозможно сделать твою проверку, если нет класса в сборке.
>>287669Все классы наследуются от базового Object class. Си шапр - язык строго типизированный, поэтому ты не можешь просто искать "а если тут такой-то класс?", если ты обращаешься к классу напрямую, это значит он уже должен быть полюбому. Если нет, вылазит твоя ошибка. Поэтому,когда ты ищешь, существует ли какой-то класс, ты должен работать с Object, с классом всех классов. Ну правда тебе и весь код потом надо будет с учетом этого строить.
>>287672Класса нет. Просто нет.Но он может быть с некоторой вероятностью.Прими это как факт. Да, сисярп соснул, очевидно, и помогут мне тут только макросы. А то что ты мне предлагаешь сорт оф бред.
>>287669Представляю какой ты там плагин написал с такими-то познаниями в коде.>>287674>сисярп соснуллал. Самый простой вариант это попытаться найти тип по имени, создать через активатор и через рефлексию вызывать методы
>>287678Хули ты хотел, я с рефлексией не работал ещё :<А за решение здоровенный тебе лойс, похоже это именно то что мне нужно!
>>287678Ладно, раз уж тут столь прошаренный анон, у меня есть два вопроса: 1) что думаешь по поводу использования наследования вместо композиции?2) есть ли смысл в использовании свойств вместо полей, если при обращении к свойству не происходит никаких проверок?
Нет, рефлексия идет нахуй, это дерьмо экстремально медленно.Тупо закомментирую кусок кода с предложением его раскомментировать или заюзаю макросы.
>>287664PlayerSettings.SetScriptingDefineSymbolsForGroup(BuildTargetGroup.Standalone, "CLIENT");Не подойдет?
Как бороться с размытыми шрифтами? В первой менюшке всё нормально, в любом подменю - шрифт размывается.Pixel Perfect и Refernce Pixels per Unit вообще никакого эффекта не дают.
>>287300Бро, а как потом вывести в файл например? Дебуг еще показываает в какой строке произошло событие, я не знаю как такое делать, короче я маленький, мне погремушку пожалуйста. Неужели нет готового решения? Можно ли сделать несколько консолей, и в каждой выводить разное?В одной лог поведения, во второй лог боя, потому что с одного места разгребать все пиздец, при том что по сути нихуя не написано.
>>287749У каждого шрифта есть материал. Посмотри в него.
>>287845Ну не шрифта, надписи текстовой, в смысле.
>>287734Как это работает? -
С чего начать изучение юнити? Хочу сделать 2Д говно игру.
Unity
Ubuntu
Ubisoft
>>287316делаешь странное. взял бы кривые безье, сделал бы через них генерацию дорог любой формы.если не хочешь то просто указывай места соединений примитивов. гораздо быстрей, проще и лучше любой автоматической хуйни будет.>>287837>как потом вывести в файл напримерhttps://msdn.microsoft.com/ru-ru/library/8bh11f1k.aspxну и воспользуйся FileUtil.GetProjectRelativePath которого почему-то в документации не нашел.>в какой строке произошло событие, я не знаю как такое делатьа хуй знает, я тоже не знаю. немного поискал, нашел http://answers.unity3d.com/questions/238229/debugconsole-console-clicking.html можешь ещё расковырять dll у Console Enhanced, но там не очень читабельно.>Можно ли сделать несколько консолей, и в каждой выводить разноесоздай свои окошки, хули ты. https://docs.unity3d.com/ScriptReference/EditorWindow.html и выводи в них всё что тебе там надо.
>>287845Есть возможность добавить материал, но у меня он не добавлен. Да и как он повлияет на тот факт, что тот же самый шрифт, с теми же настройками в разных меню выглядит по-разному?
>>287939Наверняка влияет настройка фильтрации текстуры при растягивани-сжатии. Для пикселей нужен Рoint, по дефолту там Linear.Хз где это в юните крутить, у меня в велосипеде все ясно и понятно.
>>277225 (OP)Чем больше яувел чиваю размер content, тем больше меняется scrollbar. Какая формула зависимости?
Dictionary<GameObject, float> offsets = new Dictionary<GameObject, float>();Посоны, а GameObject нормально использоватъ как ключк коллекциям? Там нет подводных камней. Думаю все норм, но на всякий....
1. Почему все получается на ебаных if-ах и переборах, сдается так не должно быть. Ну ладно, может в некоторых местах действительно лучше использовать их, но они повсюду. Вот смотрите, есть пять функций MoveTo, который двигают корабль к планете, или другому кораблю. Корабль стоит в доке, флаг "док" тру. Что делать? Городить очередной if в функции поведения , который будет проверять "если задание сидеть на жопе, то дальше тру, а если нет, то фолс". Но проверок таких может быть дохуя, в доке, в гипере, в сраке, страшно жить. Может юзать события, типа док и все остальные кому надо подписались на событие движения и всем норм. Но я так, мысли вслух, жду напутствий, и желательно пояснений за события. Медленные/быстрые, любят ньюфагов и тд?2. Как убрать пидорский Random из System, чтоб остался только от юнити и не нужно было указывать пространство имен, или как это называется. Или наоборот, но от System ничего не подсвечивает, когда ставишь точку, схуяли?3. Не до конца понимаю тонкий смысл переменных начинающихся на is.
>>288090Объекты должны быть уникальными, у них хеш это адрес в памяти. Если ты сможешь грантировать это то все норм.Хотя твой словарь выглядит как говно, похоже что GameObject'ам просто не хватает одного компонента со свойством типа float.
>>2881061) Заведи кораблю стейт. Проверяй в нем только те условия которые могут перевести корабль в другой стейт + что- важное. При смене стейта - меняй сам объект стета с логикой проверок состояния. Короч: http://gameprogrammingpatterns.com/state.htmlКвест: найди перевод. Он точно есть.2) Никак. Пидорские проблемы на самом деле.3) Соглашение об именовании логических переменных(bool). Просто удобно писать и читать // если оружие не в кулдавне то делать что-тоif (!weapons[j].IsCooldоwn){}
>>288115чо я должен гарантировать? уникальность ссылочного типа компилятора лол?я стекинг пилю, ну чтоб игрока совсем уж не облипляли, типа каждый сверчок знай свой шесток
>>288120Что ты туда два раза один объект не подсунешь в качестве ключа. Вот нужно тебе будет заиметь по два флоата на один объект и ты будешь соснулей писать велосипед. Продумай это сразу.
>>2881062) using Random = UnityEngine.Random;
>>288115>у них хеш это адрес в памяти.Ахуенные истории ИТТ>>288090Работать скорее всего будет, но ты начинаешь делать такое дерьмище... Добавь компонент с этим флоатом
>>288106> Не до конца понимаю тонкий смысл переменных начинающихся на is
>>287939Я не видел твой проект, не видел настроек текста и материалов. Такое может случиться если у тебя нет материалов на одних компонентах, а на других есть. Это может быть из за настроек канвы, а я практически уверен что на каждое меню у тебя минимум отдельная канва, а максимум - отдельная сцена. Если бы ты все сделал как положено, на одной канве с одними и теми же компонентами - в любом меню все было бы идентично. Значит обосрался именно ты. Ищи в чем.
>>288106>почему все получается на ебаных if-ах и переборах, сдается так не должно бытьНе должно.state = inDock;switch state {case inDock: doSomething(); break;case inSpace: doSomethingElse(); break;}
>>288212> говно заменить мочойНайс.
>>288242Ну почему же говно. Все просто и понятно. И читабельно. Но ты продолжай плодить условия, оно потом к тебе само придет, со временем.
>>287955>>288207Всё хуйня, пацаны. Никакие настройки шрифтов и пикселей тут не при чём. Шрифт размывался, если тушить канвасы по типу>mainMenu.enabled = false;Переделал код на >mainMenu.SetActive(false); и все менюшки стали резкими.
>>277225 (OP)Бесит герой иногда задевает стыки (после приземления после прыжка) и поэтому начинает подскакивать -_-.Может тут кто нибудь делал игру с тайлами? Может кто дать советы как на юньке лучше делать тайловую игру?
>>288318Если не пишешь клон террарии, где уровень будет непредсказуемо меняться в процессе - отдели логику тайлов от логики платформинга. Проще говоря - лепи тайлы без коллизий, а коллизию делай одну и большую.Можно написать код, который бы делал PolygonCollision, анализируя твою тайловую сетку.
>>288320Да суть в том что все можно будет менять -_-. Но идея что можно все обвести большим полигоном норм.
>>288318Убери два ненужных коллайдера кружка и твоя проблема решится.
>>288251> И читабельноКогда начнешь делать что то более крупное чем хелоуворды с кубами, тогда то ты обосрешься.
>>288318Без кругов он на "стыках" застревает (даже если они 1 к 1 подогнаны)
>>288332Чем плох его метод?
>>288332Хуя, у меня на стейтах написан "ИИ" юнита в RTS, отлично работает, отлично выглядит в коде. Это ИИ самолета, поддерживает двухэтапную посадку, взлет, заходы на атаку, отходы на перезарядку, уклонение от препятствий
>>288332Аргументация уровня гд, от человека, который масштабнее хеллоувордла ничего не писал) Прекрати этот цирк.
>>288334Если у тебя "застревает", значит ты что-то накриводелал. У тебя физический материал назначен или дефолтный стоит? Может стоит ему боунс скрутить до нуля?
>>288337Наверное он просто пишет функцию прямо в теле переключателя, вместо того, чтобы там ее вызывать. Гуманитарии, что с них взять.
>>288352Оу, если это так, то это ужасно.
Не подскажете почему у меня в монодевелопере нет выпадающих вариантов во время ввода кода?
Итак, вернёмся к вопросу, который был озвучен пареньком выше, про бесконечные нагромождения if-ов в коде.Никто так однозначно и не решил, как же их правильно оформить.В виде стейтов? В чём тогда проблема того анона, которому жопу от стейтов рвёт?Может есть другие способы, которые всех бы устроили?Я хотел бы точно знать, как мне делать, чтобы потом не было проблем ни с читабельностью кода, ни с, тем более, производительностью игры.мимо-другой-анон
>>288569Стейты - хороший вариант. Жопу рвет зеленому жирному, который почему-то решил, что паренек будет прямо в теле switch-case есь код писать, а не выносить его в отдельные методы.Я линчо if-ы использую, зачастую, тогда, когда код, в них выполняемый, умещается в одну строку (и можно оформлять без скобочек)
Борщаны, один тик в унити это сколько миллисекунд? А то смотрю скорость выполнения кода - в мс показывает ноль, в тиках несколько тысяч.
>>288576Использую Stopwatch, конечно же.
>>288573Окей, спасибо
>>288576Оптимизируешь код?
>>288569>В виде стейтов? В чём тогда проблема того анона, которому жопу от стейтов рвёт?То, что там, это не стейты, а замена ифовой макаронины на кейсовую. Стейты, это такая стратегия, заточенная на автоматические переходы между состояниями. В правильных стейтах нет ни ифов, ни кейсов. Там есть интерфейс с методом (или абстрактный класс с абстрактным же методом). Есть несколько имплементаций интерфейса, с разной логикой в этом методе. Есть класс, имеющий поле, куда при переходах между стейтами схороняются ссылки на разные реализации интерфейса. А метод всегда вызывается один и тот же, без всяких ифов. Но так как в разных ситуациях в поле хранятся разные объекты с разной внутренней логикой, то и результат выполнения будет разный.Отличие от стратегии, грубо говоря, только в том, что в реализации еще зашита логика перехода между состояниями в процессе выполнения.
Как-то так:http://pastebin.com/Tzwvz6c3
>>288576не знаю, что там в унити, но тик - это тик процессора, походу, поэтому должен зависить от частоты
А где питух с кубиками?йоба.жпг
У меня есть две сцены и один куб. И этот куб выглядит в разных сценах по разному. Это буквально один куб, один префаб, я ньюфаг не знаю как объяснить. Даже сам материал имеет разный цвет то есть даже неперетасканный на сцену там в окошке на скришотах видно. Щито это? Это какая-то глобальная настройка?
>>288394Такое иногда бывает. Сделай ему рестарт. Или ты просто забыл нужные неймспейсы подключить.
>>288591>в правильных стейтах нет ни ифов, ни кейсовСмотрите, щас этот демагог нам пояснит как правильно. Нет.
>>288583Тип того
>>288636Ну понятное дело, что такое бывает и что рестарт помогает. Но я вот заебываюсь это проделывать каждый день. Так в чем собственно суть проблемы никто не знает? И почему ее решения до сих пор нет?
>>288642Есть. Ставь VS.
>>288591Это всего лишь одна из реализаций. Имеет такое же право на существование, как и переключение стейтов ифом.
>>288623А в единицах меньше чем мс можно вывести?
>>288642Может быть проблема с правами доступа, хуй знает. Иногда бывает что юнька не подхватывает сохраненный код из-за этого. Логично предположить. Алсо, есть функция перезагрузки данных в самом монодевелопе.
>>288576Это столько, сколько ты указал в настройках. Прожект сеттингс - тайм. В справке все написано.
>>288627неужели у меня одного такая хуита? Иногда помогает создание нового проекта и перетаскивание ассетов из предыдущего, но есть же какие-то способы устранить вот это все.
>>288659Ты уверен что дело не в освещении или настройках сцены?
>>288660Настройки освещения и камера в сценах одинаковы. Да и потом даже когда объекты расположены не на сцене, то в окошке asstebundle из скриншота материалы отображаются по разному >>288627А что за настройки сцены?
>>288700Выглядит так, словно у тебя на второй сцене не рассчитался свет по какой-то причине. Консоль ничего не пишет?
>>288704ничего, сейчас скомпелировал эти кубы. В одной сцене он светлый, в другой темный. Создавал новые сцены, в них опять все темно. Оди и тот же материал становится темнее, что это за аномалия такая? Это кстати после обновления стало появляться. у меня сейчас 5.3.5f1
>>288707Ну и поставил на закачку 540f3 может там такого нет. Вообще я где-то слышал что весь проект от начала разработки и до релиза нужно делать на одной версии юнити, может проблема в этом? Это не из каких-то официальных рекомендаций, на форуме каком-то может даже здесь. Это пиздежь или я на этом и проебался?
>>288627Я просто сделал копию сцены в которой материалы отображаются коректно удалил из нее все объекты и теперь вместо созздания новой сцены копирую и переименовываю новую сцену, это пиздец, долго объяснять но там публичный массив из почит ста объектов который я перетаскиваю из оокошка вручную в инспектр. С этим багом это преваритлось в ебаый ад. Кто-нибудь может подсказать, что мне с этим делать?
>>288736Попробуй реимпортнуть все ассеты(пкм на окошко с файлами проекта -> Reimport All)
>>288737Я уже обновил юнити и все файлы реимпортировались. Я вообще прлолистал баг репорт из последний верисс там упоминались некоектные цвета, но в другом контексте. Это какая-то редкая ошибка. У меня в планах клепать проекты на две, три сцены, так что это не такая ужж и большая проблема для меня. Заебывает конечно, но даже на русскм языке я нем огу объснить в чем суть ошибки не то что отчет составлять. положу хуй до поры до времени. Но если кто-то сталкивался, то отпишитесь, что проблема не единичная.
>>288740Готовься, будешь StateManagerom сцены менять, в редакторе у тебя по пизде снова все пойдет (а вот в скомпилированном проекте все норм будет), так что не пугайся
>>288765Все, как ты говоришь уже произошло, да вроде норм. Я вообще хотя бы понял что такое юнити.
Привет! Подскажите плиз что за хуйня: когда я дергаю gameObject.SetActive у меня в консоли StackOverflowException
>>288834Метод уходит в бесконечную рекурсию. Ты бы хоть сам код показал.
>>288837да, точно, спасибо, нашел.
>>288837bool active{get {gameObjectSetActive(setActive);return gameObject.activeInHierarchy;}}
>>288845это не мой код, >>288834-кун
Анон, если я хочу использовать float в виде "x,xx", могу я это сделать как-то без постоянного округления?Ну то есть есть ли такие типы переменных, где есть только одна-две цифры после плавающей точки и всё?
>>288903Decimal.
>>288903number.ToString("0.00");
>>288914Если только в дебагер, лол
>>288915че несешь?
Хотел еще кое что спросить.Есть ли в юнити может какая настройка для времени обработки пересечения?Суть: Карта состоит из кубиков. И когда герой прыгает на них он на пару кадров проникает в блоки и сразу же выныривает. Такое ощущение что он не успевает обработать пересечение. (Хотя если поставить большой блок (из одного большого колайдера) то такого безобразия не заметно).p.s. В box2d такой хуйни не было -_-
>>288940Да, можно увеличить частоту FixedUpdate (надеюсь, расчеты физики ты там делаешь?)
>>288964Ну как бы нет -_-. На юнити надеюсь."Расчет физики" - Это типа: поставить тригер внизу героя. Если во время пересечения тригера с объектом и rigibody2d.velocity.y < 0 то герой приземлился?
>>288964А все. Догнал.Да. КОнечно все в нем
>>288964Кстати спасибо. Уменьшил с 0,02 до 0,016. И все как по маслу
>>288940У ригидбади есть настройка типа обработки столкновений. Поставь переключатель на постоянную.
>>288940в настройках риджид боди поставь collition detection -> continius dynamics
>>289042сажа случайно прилипла
Кто-нибудь упарывается StangeIoc? Хочу попробовать на следующем проекте. Какие подводные камни?
>StrangeIocбыстрофикс
>>289044>Какие подводные камни?Никаких, если тебе нравится заниматься ООП-аутофиляцией.
У трансформов добавленных к костям не обновляется положение. Что же делать-то?
>>289104нихуя не понятно, пиши более развернуто
Мне нужен материл, у которого будет только diffuse и emission в параметрах, то бишь только текстура и чтобы она светилась. Как это сделать? В стандартных шейдерах такого нету, ну в смысле есть standart shader, но там много параметров, а мне нужно два. Можно как-то просто накидать нужных параметров самодельному шейдеру, или только кодом? И да, есть ли смысл? Или на производительность не влияет и можно использовать стандартный с множеством ненужных параметров?
>>289134>Или на производительность не влияет и можно использовать стандартный с множеством ненужных параметров?this
>>289176>влияет, но не настолько чтоб переживать об этом даже не открыв юнитипоправил.
>>289177Не давай лишних поводов мамкиным оптимизаторам
>>289178Он пойдет писать свой движок, а значит будет меньше конкуренции.
>>289179Местные кириллы способны составить конкуренцию только пёсьему анусу
>>289192>>289179Баки, не шарите в шейдерах - не пишите. Никаких просадок по оптимизону на стандартном шейдере от неиспользованных параметров не будет, даже малейшая задержка относительно самопального шейдера исключена.
>>289128Ой все обновляется. Это я забыл инстансировать префаб и брал значения из префаба.
Короче поцоны, пошел читать паттерн статер, заодно в другие заглянул. Есть паттерн стратегия, и не совсем ясна их разница. Смотрите, вот в пример со статером был дан принтер, у него там методы On(), Off(), Print(), AddPaper() и состояния, тоже 4. Если игрок раздрачивает принетр то збс, а если ИИ, то должно что-то же управлять свыше. Ибо откуда знать что нажимать? В моем случае в менеджере перебираются все корабли и вызывается Behavior(). Ну и норм, выполняется один алгоритм, если что пошло не так, заменил сам себя другим. Выходит что "стратегия" как бы урезанная версия статера, где алгоритмы по сути состояния, но только метод у них один. Или не?От if-ов не удается избавится, но разложенное по классам удобнее, нежили городить в одном месте. Ведь состояния же переключатся внутри себя тоже всякими иф-ами, и от этого никак не уйти, а? а? Ну скажите.
>>289176Спасибо, но можно ли избавиться от небольшого осветления объекта? Если использовать diffuse то текстура будет такая же, как и нарисовал, а стандартный ее немного обеляет.
>>289252Он её обеляет потому что PBR. И это правильно. Но если это тебя так напрягает, заюзай legacy шейдер на самом деле нет, не надо, блядь, пожалуйста, не делай этого, из-за таких как ты люди начинают считать, что в юне нет графена
Почему point light не работает с mobile шейдорами в forwading rendering. Это просто безобразие.
Анон, поделись мудростью с ньюфагом. Сколько реально свободного места должно быть на системном разделе пекарни для установки Хуюнити с нуля?У меня установщик уже сожрал пять свободных гигов на системном разделе, хотя я перед установкой указывал для загрузки путь на совершенно другой раздел.
>>289284
>>289284Он тебе стандартных ассетов в документы накатил
Поясните лучше за этот незадокументированный атрибут.Это такой сорт оф траленк?
>>289287>>289288Спасибо.Алсо, как оказывается, основная проблема была в Visual Studio, который как раз эти пять гигов и сожрал.Если его не устанавливать, какие подводные камне меня ожидают?
>>289296MonoDevelop например
>>289297Анон, я и правда ньюфаг. Типа как полный ньюфаг. Что в практическом смысле будет означать неустановленный супертяжелый кусок говна от микрософта в плане разработки игоря?Мне будет не хватать жизненно важных библиотек, или типа того?
Поясните за музыку/звуки в игре. Почти закончил первый проект для андроид, он совершенно безвучный, откуда пиздить? и нужно ли вообще? я сам музон отключаю на играх, но может есть какой-нибудь генератор бесконечных амбиент мелодий?
>>289300> Что в практическом смысле будет означать неустановленный супертяжелый кусок говна от микрософта в плане разработки игоря?Просто не будет Клёвой Тёмной Темы™ из коробки. И, возможно, винда не обновится без спроса, и после перезагрузки у тебя всё ещё будут запускаться 32-битные приложения.
>>289301Бля, не тот тред, вот тут правильный >>289303
Сап. Хочу угореть по геймдеву, а в юнити нужен шарп. За сколько примерно можно выучить шарп только для юнити, без всяких дотнетов? Имею опыт node.js, python, go.
>>289320си шарп довольно объемный, даже без дот нетов, но для юнити нужно далеко не все, только основы. так что не заморачивайся.
>>289301https://www.assetstore.unity3d.com/en/#!/search/page=1/sortby=popularity/query=category:92
>>289320Шарп по сложности где-то между бейсиком и твоей парашей для макак.
>>289302Всё лучше чем моно.
>>289302>2016>неспособность совладать с вендойЧто ты в этом разделе забыл, чепушило ламерское?
>>289372Я просто поделился фактом из своего опыта. Забавно, что ты почувствовал необходимость оскорбить меня, причём несправедливо.
>>289422Ой блять, иди нахуй, даун
>>289235Стейты, это один из вариантов реализации стратегии. Стратегия вообще в основе почти всего лежит. Это один из базовых паттернов.Ифы это нормально, если их не много. Хуево, когда из ифов строится лесенка.
>>289235Алсо, не используй подчеркивание в названиях классов. Некомильфо.
Поясните за использование кода/ассетов, которые в свободном доступе в интернете. Понятное дело ассетсторе, где все что бесплатно - используй как хочешь. Но вот допустим кто-то выложил на гитхаб или дропбокс свой скрипт, можно его использовать и потом продать результат с ним? Если он ничего про это не писал, то значит что можно, или наоборот нельзя?
Как перестать проигрывать с фразы UNITY COMMUNITY? Я не могу уже. ЮНИТИ КОМЬЮНИТИ, бля.
Братишки, поясните за проваливание в текстуры когда используешь полигон коллайдер 2д, как с этим бороться?И еще вопрос: как сделать 2д лифт в игре? Пробовал создать с помощью анимации, так персонаж скакал и дергался как припадочный в этом лифте.
>>289534Сколько тебе лет?
>>28960319, 20 почти.
Как в скрипте экземпляра префаба изменить публичное свойство префаба, а не только экземпляра?
>>289715Внезапно сделал по-другому, доволен как слон. Пытался реализовать что-то вроде покупки вещей для игрушки на андроиде, ебался почти два часа, пойду спать
>>289689Ну хуй знает, в твоем возрасте уже не следует с такого проигрывать.
>>289523GitHub в своих правилах написал, что если не оговорено иное, то у выложенного на нём кода лицензия GNUv3. То есть ты можешь этот код использовать сколько влезет, но ты должен будешь на него сослаться в своей работе, а также свой код также сделать открытым. Но я плохо помню уже, лучше загугли.
>>289792Извиняюсь, я всё перепутал.https://help.github.com/articles/open-source-licensing/Если лицензии нет, можно сделать форк кода, а потом его использовать.Но вообще более-менее приличные люди как правило пихают наиболее понравившуюся им лицензию в исходники. Стоит обратить на неё внимание.
Охуительные истории из разряда детских ошибок:>забыл поставить приватным полям атрибут SerializeField>полдня ебался, пытаясь выяснить отчего же скриптаблы отказываются как следует сохраняться>еще один день без ощутимого прогресса
Ньюфаг вкатывает в тред.Нужно сделать эффект затенения картинки с одновременной подсветкой некоторых объектов (типа оутлайна). Подскажите, аноны добрые.
>>290085Делай, разрешаю.
>>290022Как я тебя понимаю
Правда ли, что на фришной версии Юнити запрещено делать онлайн игры с монетизацией?
>>289534Блять, ору
Аноны, вопрос. В юнити есть какая-то сильная разница между использованием с или питона?Если питон вообще поддерживается...
>>290223Ни того ни другого в юнити нету
>>290224Под с Я имел ввиду с++ и с#
>>290225Плюсов тоже нет, но ты можешь скормить шарпу библиотеку, написанную на плюсах.А вообще иди ка ты нахуй отсюда, если гуглить не способен.
Посоны, хочу писать на Boo, какие подводные камни?
>>290239Хз, например то что в юнити его уже давно нет.
>>290243Буду работать на унити 2.5Ничего не потеряю же? Все ради бу!
>>290245Ты болен, сходи к врачу.
>>290235Я гуглил, и знаешь что нашел? Скриптинг поддерживается на с++, с# и питоне...
>>290256Ты как-то очень хуево искал. То что он на этих языках написан не значит, что он переваривает скрипты на этих языках.Скрипты ты можешь писать только на обрезанном JavaScript или на шарпе под 4 дотнет.
>>289134Если игра не на мобилки, то забей хуй и юзай стандартный шейдер. Если на мобилки, то legacy shaders -> Self-illumin -> Diffuse
Аноны, поясните. Юнити использует component-based architecture. А как сам движок понимает, что у компоненты есть тот или иной метод?
>>290265>на шарпе под 4 дотнет>дотнетТупой и еще тупее.
>>290287Какой например?
>>290256Про C# правда, про C++ и Питон - нет.Впрочем внешние подключаемые библиотеки можешь хоть на Brainfuck писать, только это не скриптинг и нужно будет делать враппер на C# или Javascript.
>>290309Ну допустим Update();. Мы же его не переопределяем.
>>290315Он определен в классе MonoBehavior, который наследуется во всех твоих скриптах, слепошарый.
>>290319Ты смотрел хотя бы декомпиляцию на уровне названий методов? Там нет ни его ни start, awake и пр.>>290315Скорее всего методы ищутся при помощи рефлексии. Спецификация движка определяет методы с какими названиями и с какой сигнатурой нужно искать.
>>290322>декомпиляцию на уровне названийПро обусфкацию слышал?
>>290340Даун, тебя с ложечки покормить?
Товарищи аноны, есть какой нибудь ассет, который творит Boolean Mesh магию в реал тайм? Boolean Ops не подходит, т.к. он только для едитора, а мне нужна такая срань - падает объект сложной формы и "просверливает" в меше дыру по форме себя. Как это реализовать?
>>290322А ведь меня тоже всегда интересовал ответ на этот вопрос.http://answers.unity3d.com/questions/896156/how-is-monobehaviour-update-called-and-how-do-i-im.htmlhttp://answers.unity3d.com/questions/23830/c-overridable-methods.htmlВот что нашёл.
>>290299И в чем же я ошибся, петушок? Только не задвигай мне телегу про реализацию, я о стандарте говорил.
Заебался, пытаясь сделать в Юнити pixel-perfect графику. Вычисляю текущее разрешение и подгоняю размер камеры так, чтобы по вертикали получалось целое число пикселей. Тем не менее иногда возникают артефакты, почему-то только на вертикальных полосках пикселей. Выглядит это как будто половины пикселя нет. Есть теория, что это связано с горизонтальным разрешением, но хз. Горизонтальные артефакты победил путем перерисовывания всех спрайтов под 10 PPU. Пересмотрел все гайды в сети, попробовал кучу разных камер и подходов. Даже купил еба-камеру за 40 баксов. У кого-нибудь получалось заставить эту ссань нормально работать?
>>290595Size камеры = разрешение окна игры по высоте, деленное на две высоты спрайта и твои пиксели будут идеальными как жопа Лопес. Например 1080/(2 x 16), укрупнить пиксели в 2 раза = поделить результат на 2 и т.д.
>>290603Этот метод тоже пробовал. Работает как-то странно. В начале дает артефакты на некоторых разрешения, но после первого срабатывания Rigidbody (просто тыкаюсь персонажем в стену) все становится идеально.Вообще просто пиздец у меня горит с этого Юнити. Сраные флоаты, ошибки округления какие-то, текстуры друг на друга наползают. В моем уютном вебе такого нет.
>>290606Просто движение персонажем по диагонали дает тот же эффект. Ну вот что за хуйня? (
>>290610Поставил персонажу начальные координаты (0.001, 0.001), все прекрасное работает, поставил (0, 0) — лезут артефакты. Это говно выше моего понимания.
>>290612Проиграл почему-то.
>>290612Лол, как же хорошо, что я не делаю 2дпарашу. Мимо3дбогссусьотюнити
Посоны, может ли кто нить пояснить принцип, почему тут используется такая строка http://docs.unity3d.com/Manual/Layers.html>int layerMask = 1 << 8;То есть это равно 256, хули тогда он учитывает все, кроме слоя 8?
>>290668Чтобы ты мог указать несколько слоев используется битовая маска, где позиция бита определяет индекс слоя, к которому он относится. Если тебе например надо выбрать первый и третий слой, то это будет 1010. Если третий, шестой и восьмой - 101001000.
>>290694Спасибо.
>>290356двачую этого господина. Давно ищу нечто подобное. Был какой то туториал на тытрубе, который почти решал проблему, но мне было лень.
Ребзя, есть комната, когда присоединяется игрок в ней спавнится стул(Одновременно может быть максимум 2 игрока).Как идентифицировать эти стулья, дабы распределить на них пики точенные и хуи дроченные?(С условием что первый игрок получает только пики, а второй только хуи)
>>2905951. Ставишь камеру в режим ортографик. 2. Ортаграфик сайз должен равняться половине высоте экрана. То, есть ели у тебя девайс в высотой экрана в 640 пикселей, то ортографик сайз должен равняться 320. Ты можешь в рантайме делить высоту экрана на два (типа для всех экранов подойдет), это будет выглядеть примерно вот так:void Start(){ GetComponent<Camera>().orthographicSize = Screen.height/2;}
Анончик, поясни за LOD в юнити шейдерах. У меня есть шейдер с двумя лодами 200 и 100, где 200 кукурузисный, а 100 для объектов подальше. Но естественно все это дело ничего не делает само по себе. Единственное что я нашел, это то, что можно для шейдера(или материала) перерубать максимальной LOD скриптом. Дело в том что у меня в целом используется всего один экземпляр материала, а значит, если я поменяю макс лод, то объекты на переднем плане тоже врубят пониженный лод.Должен же быть какой-то чудо способ автоматизировать все это дело по дистанции? ЧЯДНТ?
CG адепты, выручайте.Как заставить transparent shader нормально работать на моих процедурных кубах?Вершины/треугольники раскиданы по примеру стандартного кубического примитива юнити, нормали пересчитаны, тангенсы назначены. Не могу сделать нормальную воду из-за этой хуйни.
>>290911Кажись врубился, всем спасибо
Саб, гд. Есть такой вопрос: В Юнити есть что-то наподобие многопоточности?
>>291252Nope
>>291252классы Debug и Mathf - thread safeyoba.jpg
>>290996Fade подрубил вместо транспарента?
>>291270Если все было бы так просто, я бы сюда не писал
>>291264Не, мне нужно чтобы пока генерируется структура было что-то вроде загрузочного экрана, а потом сама сцена
>>291277В чем проблема то? Делай генерацию в Start()
>>279337описываешь атрибуты меша и создаешь егоhttps://docs.unity3d.com/ScriptReference/Mesh.html
>>277225 (OP)Почему юнити говно?Потому что разрабы ебанутые параноики:Ограничения на встроенное программное обеспечение. Вам не разрешается непосредственно или опосредованно распространять контент лицензиата, установленный более чем на 1 000 электронных устройств или систем, если такой контент лицензиата обеспечивает пользовательский интерфейс или первичную функциональность таких электронных устройств или систем без отдельной лицензии, полученной от Unity. Это ограничение не препятствует Вам в распространении контента лицензиата, который был предварительно установлен на персональных компьютерах и потребительских электронных устройствах, таких как мобильные телефоны, планшеты, телевизоры или телевизионные приставки при том условии, что такой контент лицензиата не обеспечит пользовательский интерфейс или первичную функциональность такого устройства.Коротко: Игры ты делать можешь, и продавать можешь, но распространять нет. Что за ебаный бред?
>>290824ээээээ.. ЭЭЭЭЭЭ...Если все отличе материалов только в йоба-текстурах, то смысла в таких лодах нет.Текстуры генерят и переключают лоды автоматически.При загрузке текстуры есть опция - генерить мип-мап уровни. Например для 8к х 8к текстуры лоды будут со сторонами 4к, 2к, 1к, 512 и т.д. до 16 пикселей. Памяти займут столькоже сколько и исходная текстура.В шойдере когда ты выбираешь из текстуры то сразу учитывается нужный лод (сколько пикселей занимает объект на экране, под него ищется ближайшый подходящая мип-уровень по размеру, чтобы вибирать из него поменьше).ВСЕ ЭТО РУЛИТСЯ НА УРОВНЕ ДЕВАЙСА БЕЗ УЧАСТИЯ ВЕРХНЕГО МОСКА ЧЕЛОВЕКА.
>>291450То есть как я блять должен ограничить продажи?Скачали тысячу копий и все вырубай продавалку?Нихуя не понятно.
>>291452>встроенное программное обеспечение>обеспечивает пользовательский интерфейс или первичную функциональность таких электронных устройствТы идиот? Это значит ты не можешь сделать интерфейс для своего телефона или другого устройтсва на юнити
>>291456 представил ведройд, написанный в юнити и запущенный на айфоне и проиграл
>>291487Не ведройд, а интерфейс приложухи под ведройд на юните реализующий основной функционал ведройда. Так нельзя.
>>291451В моем случае у меня два сабшейдера, где первый использует тесселляцию, генерацию нормалей, дисплейсмент вертексов, статичную нормаль, соответственно текстуры нормали и дисплейсмента, а второй сабшейдер с пониженным лодом, использует только цвет.Ну и я хочу при достаточном отдалении перерубать всю эту штуку. Повторю шейдер всего один, однако используется для всей сцены, поэтому банальное глобальное переключение будет хуячить и ближайшие к игроку объекты
>>291456Бля, лол реально пропустил запятую, вот ебан! У нас тут просто ночь, а я как полный долбоеб решил что 3 часа ночи это идеальное время для установки Юнити.Но зачем им мои отпечатки пальцев?Алсо, нет ли у них такой политики как у UE что комиссия из жирух, тумблерин и слабых на мозг жидов решает можно твою ДАЖЕ БЕСПЛАТНУЮ игру выпустить или нет.
>>291493Тогда есть два стула, выбирай, присаживайся:1) Сделать в одном шейдоре несколько техник, перед каждой отрисовкой менять технику в зависимости от растояния. Тут надо руками рулить рендером на высоком уровне.2) Передавать через юниформы информацию о расстоянии и уже в шейдере через иф выбирать подходящую обработку. Тут наверно батчинг сломается вместе с производительностью.
Нужна поддержка приложением старых версий вёдер. Нужно ли для SDK качать API каждого уровня или можно обойтись самым последним?
>>291451>Памяти займут столькоже сколько и исходная текстура.алгоритм бабушкина поможет?
>>291624Школьник штоле?Поможет формула суммы n-первых членов геометрической прогрессии. Считай, пробуй.
Сап, аноны. Кто-то сталкивался со слишком большим размером файла resources.assets.resS? Вся моя папка Assets весит 30мб. В билде игры этот файл весит 2,5ГБ(!) Хотя недавно весил не более 100мб. Гугл не помог.
>>291625Сам-то его в глаза видел, мистер абитура-уже-не-школота?
>>289797>Извиняюсь, я всё перепутал.Совершенно верно.Generally speaking, the absence of a license means that the default copyright laws apply. This means that you retain all rights to your source code and that nobody else may reproduce, distribute, or create derivative works from your work.
сап юнитач. тред не читалКак работает система подписки в юнити? Надо постоянно продлевать чтобы получать фичи типо "возможность made by unity и большой прибыли" или можно купить подписку, сделать билд игры и уже на этот билд будет пожизненная подписка?
Пацаны такой вопрос к юнитиводам. Почему Ассеты с оф сайта не скачиваются, а только есть опция "открыть в юнити"? А если я хочу заготовку скачать себе чтобы открывать по вкусу из безсплатных то, что есть? Почему сразу только к текущему проекту и где скачать ассеты тогда?
>>277225 (OP)Посоны, проясните за сферкаст - он посылает сферу из ориджина по дирекшену на максимальную дистанцию? Если так, то как мне кастануть сферу в точке, отличной от трансформа, причем не с проходом, а вот мне в точке Х, координаты которой отличны от координат трансформа, без чекания пространства между ними. Пик кароче.
>>291826Добавляешь в проект, идешь в папку Assets, там находишь свой скачанный ассет. Перекидываешь в любой тебюе нужный проект.
>>292065Кастануть то есть в рандом месте, но только чтобы сфера при касте не пересекала куб?
>>292065Иди нахуй, мудак.
>>292098Чтобы сфера не пересекала пространство между трансформом и тем местом, где надо кастануть.
>>292115Ты ебанутый, ты что сделать пытаешься?
>>292120Уже сделал, лал.
Посоны, а если у меня в if идут два условия через &&, то в случае провала проверки первого, второе проверяться будет? просто вторым условием идет лайнкаст, не хотелось бы лишний раз дергать
>>292246Нет
А есть ли разница в этих записях и какую лучше использовать?vector1.x = vector2.x;vector1.y = vector2.y;vector1.z = vector2.z;иvector1 = vector2;
>>292289По моему x y z у векторов это ридонли переменные.
>>292289вторую>>292292нет
>>292338Почему вторую?
>>292246В случае дефолтного юнити, но в других языках или даже в пределах одного языка, но с разными компиляторами\их настройками результат может отличаться.
Посоны, пишу в старте print("Хуinya");При запуске сцены в консоли нихуя, объект на сцене и активен. ЧЯДНТ?
>>292346Хотя бы потому что в 100 раз читабельнее. Да и по производительности второй вариант лучше (правда эту разницу один хуй никто не заметит)
>>292348Да, вот я дебил, забыл прикрепить скрипт к объекту.
>>277234на официальном сайте
Когда будете перекат пилить, вкиньте ссылку сюда, а не как всегда.
>>292347Дибил. Не будет результат отличаться ни в одном языке (кроме языка от Васяна из 8го Б).
>>292351>Да и по производительности второй вариант лучше (правда эту разницу один хуй никто не заметит) Хватит нести хуйню про производительность, инвалиды ебаные, если нихуя в этом не понимаете.
Посоны, допустим я бокскастю по координатам и получаю RaycastHit. Там может быть два разных обжекта - ну куб-нода или куб-домик. В случае если это куб нода, мне нужно получить из него компонент скрипт и выполнить оттуда функцию. Если это куб-домик то соответственно нужно получить другой компонент и сделать другое действие.Как это сделать лучше - через if (Получаем один компонент)else(если не получили, значит получаем другой компонент другого типа), или как то иначе?
>>292289В юнити перегружены операторы на операции с вектором, так что скорее всего при операции копирования происходит все точь в точь как первые 3 строки. Разницы никакой, но если любишь заниматься хуетой то можешь писать как угодно и даже 2 раза.
>>292540ВСЕМ СКИНУ А ТЕБЕ НЕ СКИНУ
>>292574Можно например написать кастомный интерфейс с методом триггером, который будут реализовывать заинтересованные классы подвешенные на эти 2 обжекта. И при столкновении просто вызываешь gameObject.SendMessage у таргета коллайдера или как его там. Тогда вообще не нужно знать с чем произошло столкновение. Вызываемые методы выполнятся если они есть на этом обжекте.
>>292574лучше сделать 2 компонента с твоими действиями и повесить их на эти объекты, чем писать простыню в райкасте.
ПЕРЕКОТ ДЛЯ ЮНИТИ ГОСПОД https://2ch.hk/gd/res/292629.htmlПЕРЕКОТ ДЛЯ ЮНИТИ ГОСПОД https://2ch.hk/gd/res/292629.html
Народ подскажите UNITY_PROJ_COORD , что делает и есть ли аналог ее под glsl