Это копия, сохраненная 20 февраля 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
УРОКИ: http://unity3d.com/ru/learn >>186697 (OP)
прошлый тред >>192692 (OP)
Какой движок мне выбрать для создания 2D/3D игры?
Unity твой выбор. У него огромное комьюнити, много уроков, много готовых решений и он прост в освоении.
Unity бесплатный?
Да. Для всех платформ. Если вы заработаете на игре более 100 тысяч долларов, то обязаны будете купить Pro-лицензию.
Теорию читать абсолютно бесполезно. Нужно ручками работать, только так что-то можно запомнить. Бери ноутбук.
Вот этот дело говорит. "Читать умные книжки" в игрострое не поможет, это вам не физика/сопромат
NewCoord.y = Input.GetAxis("Mouse Y") Sensitivity.y;
NewCoord.x = Input.GetAxis("Mouse X") Sensitivity.x;
вот здесь получаю инфу о месте нахождения мышки по осям Х и У, в от тут наинаю кручение, но проблема в том что кручение происходит по Х и У а нужно по Z, я сделал так:
transform.rotation = Quaternion.Euler(0, 0, NewCoord.x);
transform.rotation = Quaternion.Euler(0, 0, NewCoord.y);
И вроди бы он пытается крутится но на деле остается на месте нелепо дергаясь, что делать?
под нелепо дергается имею в виду что после каждого движения мышкой объект мгновенно возвращается в исходное положение.
Используй Quaternion.Lerp, сохраняй желаемое (desiredRotation) в поле. И нахуя ты, блять, z два раза задаёшь? Что по-твоему должно произойти?
ну первый раз оно учитывает положение по оси Х а второй по У или я неправ?скорее всего неправ и это второй вопрос
Это разработчики Wasteland2 кривые мудаки, или Юнити сама по себе не оптимизированная параша и не может в игры?
> я нмюуя не понял, я должен создать переменную Hui которая булет ровнятся desiredRotation?
Да я вкурсе своей дисфункциональности...
>2015
>over9000 треугольников в простой кнопке
>хуюнитипараша не умеет в UI
>кококо скочать ассет VasyanGUI безплатно без регестрации и смс
Оправдывайтесь, юнитидауны.
Знаешь, лет 10 назад я тоже эту кнопку обоссал бы, ибо нехуй. А сейчас в своем велосипеде как раз такие же сам делать буду.
Да нет, просто говноеды, родившиеся после 2000 года, сожрут абсолютно любое говно. Они не застали те времена, когда программисты уровня Кармака были рок-звездами геймдева, а каждая новая игра была прорывом и state-of-art в плане кода, архитектуры движка, оптимизации, да и всё остальное не стояло на месте, арт, звук, всё это делалось талантливыми людьми и не стояло на месте. Движки были вылизаны до невозможности, всё летало на самых древних компах, на десятках различных платформ.
А сейчас "рок-звезды" геймдева - это жадные до денег технически неграмотные дельцы, высирающие своё убогое говно с графоном 2001 года, тормозящее даже на передовых пекарнях, но малолетние говноеды всё равно сожрут и напишут отзыв, что "заебись, хорошо сделали".
Та же битардия - яркий тому пример.
Это такой тончайший троллинг, чтобы показать несостоятельность юнити как движка? Ты и правда думаешь, что в движок для тягателей ассетов завезли возможность запилить редактор и вообще сделать какую-либо расширяемость, возможность написания модов к игре на скриптовом языке, например? Очнись, это не анрил.
бамп дисфугкциональному. вопросу!
Да, да, кругом одни говноеды, и только ты знаешь толк в играх!
Вот тебе ещё три игры навскидку. Сделаны на юнити.
http://store.steampowered.com/app/242760/
http://store.steampowered.com/app/233610
http://store.steampowered.com/app/235800/
Ух сколько говноедов! Если бы всем приходилось писать на плюсах, с нуля. Дрочить память, оптимизацию, тогда все эти игры не вышли бы. Благо, инструменты не стоят на месте, а развиваются. Цена этому - производительность, но как видно, у многих уже нормальные компьютеры.
>тогда все эти игры не вышли бы
Это было бы к лучшему, т.к. эти игры - говно, в которое ни один нормальный человек не станет играть даже бесплатно.
Нет, это ты кривой мудак, а у них диздок и всё по плану. Иди трусы повесь сушиться.
Я просто думаю перекатываться с гамака, или дальше в нём совершенствоваться.
Параметры что мне интересны:
-простота/сложность освоения программы с нуля
-простота/сложность написания игорей
-графенистость
-оптимизация
-багованность
-прочие плюсы/минусы отдельно
Если можно, за юнити и гамак от 1 до 10 оценочки дать по каждому параметру.
unity 2d это такой костыль, когда ты работаешь в 3d но у тебя окошко сцены зафиксировано так что ты не можешь нормально работать с 3d и проклинаешь себя за то что не начал проект тупо в 3d используя плоские обьекты. Как в гамаке хуй знает.
бампую
Нет, ты говно, а это независмый авторский проэкт от труъ арт-посонов, а не от чмо-технарей дрочащих на код.
nyet, я делаю игроя, думаю вот как сделать к нему архитекутру чтоб сразу и моды и DLC и вся малафья.
Вот к примеру делаю я остров моррощинд в оригинале игры. А затем вот хочу выпустить дополнение к игре с островом похотливых веревольфов. И шо делать? К тому же а хочу чтоб к игре шел файл teh_game_editor.exe запустив который васян попадает в то ли в встроенный редактор, то ли в юнити, то ли васян качает юнити и вставляет мою игру в нее. Вообщем в итоге он таскает МОИ ассеты мышкой и потом жмет на кнопку СОЗДАТЬ УРОВЕНЬ ВАСЯНА. И появляется файл уровен_от_васяна.data который он может запихать в папку extensions/ оригинальной игры и поиграть в свой уровень.
Ну столько же много игр на юнити, как они решают эту проблему?
сделал так, но по осям Х и У он всё равно движется, что делать?
var mousePosition = Input.mousePosition.z;
transform.LookAt(new Vector3(0, 0, mousePosition));
ну охуеть теперь. Меня эти мелкие хуюнитикосяки уже просто доебали, один косяк охуительней другого просто. То у них в ui полигонов овердохуя, то при деплое косяки с референсами на сборки лезут. Ебанаты блядь, 5 версия а нихуя до ума не довели.
Никак не решают. Половина игр на юнити - поделки криворуких неграмотных школьников, вторая половина - выблевы в маркет жадных до денег дельцов, беспросветно тупые и унылые, похожие друг друга как две капли воды.
Только вдумайся, авторы unyti рубят деньги на нелепых лохах, давая им шанс высрать говно и при этом почувствовать себя настоящими создателями игр, и при этом сами же не сделали ни одной игры на своём движке.
Приглядись к UE, там моддинг поддерживается и поощряется.
У тебя есть предложения как сделать 9-patch кнопку из двух полигонов?
>>199011
Это сделать можно, но редактор делать придется отдельно и лучше не на юнити, лол. Ресурсы в игру из отдельных папочек юнити загружать умеет, но дрочить эти ресурсы тебе придется самому на низком уровне, т.е. функции ZagruzkaDLC нет, придется пилить. Метод организации можешь подсмотреть в любой игре, к которой можно пилить моды.
Просто ты умственно отсталый. Такое бывает. Посмотри, как устроен спрайт кнопки, как он растягивается, и тогда может до тебя дойдёт для чего эти полигоны. А если не дойдёт, беги скорее на УЕ4.
>Приглядись к UE, там моддинг поддерживается и поощряется.
Его проблему это не решит, подробности в лицензионном соглашении можешь почитать, в той части которая относится к содержимому каталогов со словами Development и Editor в названии, лол.
>>199026
>У тебя есть предложения как сделать ... из двух полигонов?
Собственно, как и везде - джва полигона и атлас для бедных, джва полигона и ролик с render to texture для продвинутых. Поэтому вопрос остается в силе - вы ебанаты?
>9-patch кнопку
Это что-то из юнититерминологии, нормальным людям она чужда. Вы уж тогда голоссарий в шапку треда кидайте, лол.
>>199030
О, опять скриптер-петух со структурами без методов порвался. Кстати, что у тебя за фиксация на УЕ, пека для учебы не тянет, бедняша?
>Это что-то из юнититерминологии, нормальным людям она чужда. Вы уж тогда голоссарий в шапку треда кидайте, лол.
Юнитимразь, тебе в шапку ссылку на гугл кинуть?
Ебать тебя порвало, аж когнитивка посыпалась. Ты там это, валерьяночки чтоль хлебни, а то как бы тебя инсультик не прихватил, юнитяша :3
> Собственно, как и везде - джва полигона и атлас для бедных, джва полигона и ролик с render to texture для продвинутых. Поэтому вопрос остается в силе - вы ебанаты?
У меня по плану пара десятков форм (кстати, тоже 9-patch), и порядка сотни кнопок. Я заебусь с атласами. Render to texture тоже заебусь пилить, особенно для динамически изменяемых элементов (rectangle и npot, блеать >_<). 9-patch для меня выходит как золотая середина: можно отрисовать все в любых размерах и в любой момент одним DC и из милипиздрической текстуры с охуеть каким шейдером если надо.
велосипедист-кун
AssetBundles тебе в сраку, также тупо глянь доку класса Handles, например.
Может, мозгов хватит что-то родить.
Кек. Ну надо же быть в курсе хоть каких-то тенденций в двигострое.
Да всем вообще похуй на тебя. Ты ни на юнити, ни на анриле ничего не сделаешь, ни на С++ ничего не напишешь, если вдруг захочешь. Ты просто бесполезные петух, мнением которого можно подтереться. Какая разница, какой движок свернут в трее, пока ты шпилишь в доту или скроллишь двач?
-простота/сложность освоения программы с нуля
В гумаке всё гораздо легче, чем юнити. Как правда у юнити гораздо выше.
-простота/сложность написания игорей
с 0 и ничего не зная- гамак. Разобравшись и более сложные, чем 2д скроллер- юнити.
-графенистость
Юнити. Можно сделать 3д игру, но с 2д видом- как платформер у дедпула.
-оптимизация
хз, не знаю, врать не буду.
-багованность
как напишишь саму игру. В принципе оба одинаковые.
-прочие плюсы/минусы отдельно
гамак-
прокс:
простота (2 недели для освоения)
встроенный редактор кода позволяет писать проги не зная ни один язык программирования, а тупо таская квадратики
встроенный редактор спрайтов
проекты, из которыз с минимум затрат можно сделать свою игру
русский язык (больше, чем у юнити)
конс:
если делать что-то не 2д- нужен новый движок
быстро находишь, что возможностей не хватает
юнити
прокс
есть 3д (виху, мда)
ты можешь прострелить себе ногу гораздо большим количеством способов
по сравнению с гамаком анимация тут просто божественна
сделав 1 хорошую игру сможешь сделать уровнем не ниже её на изи (в техническом плане)
конс
большинство гайдов на инглише
нужно лучше знать языки програмирования (просто двигать квадратики не получится)
придётся работать с вижуал студио
сам движок заточен на шутерки рпгешечки,так что стратегии немножко лесом (можно, даже есть годные примеры, но сами разрабы ахуели, когда увидели хорошую стратежку на юнити)
какой-то пидр в юнити треде будет постоянно орать, то юнити говно
Игого:
на гамаке за 1 неделю по часу вечером ты сделаешь себе игру на уровне марио.
на юнити за месяц ты сделаешь себе игру на уровне загони шарик в лузу для смартфонов.
Если хочешь игру быстро и без заморочек, то гамак (андертэйл).
Если хочешь хорошую игру с поебаться- юнити (ори)
-простота/сложность освоения программы с нуля
В гумаке всё гораздо легче, чем юнити. Как правда у юнити гораздо выше.
-простота/сложность написания игорей
с 0 и ничего не зная- гамак. Разобравшись и более сложные, чем 2д скроллер- юнити.
-графенистость
Юнити. Можно сделать 3д игру, но с 2д видом- как платформер у дедпула.
-оптимизация
хз, не знаю, врать не буду.
-багованность
как напишишь саму игру. В принципе оба одинаковые.
-прочие плюсы/минусы отдельно
гамак-
прокс:
простота (2 недели для освоения)
встроенный редактор кода позволяет писать проги не зная ни один язык программирования, а тупо таская квадратики
встроенный редактор спрайтов
проекты, из которыз с минимум затрат можно сделать свою игру
русский язык (больше, чем у юнити)
конс:
если делать что-то не 2д- нужен новый движок
быстро находишь, что возможностей не хватает
юнити
прокс
есть 3д (виху, мда)
ты можешь прострелить себе ногу гораздо большим количеством способов
по сравнению с гамаком анимация тут просто божественна
сделав 1 хорошую игру сможешь сделать уровнем не ниже её на изи (в техническом плане)
конс
большинство гайдов на инглише
нужно лучше знать языки програмирования (просто двигать квадратики не получится)
придётся работать с вижуал студио
сам движок заточен на шутерки рпгешечки,так что стратегии немножко лесом (можно, даже есть годные примеры, но сами разрабы ахуели, когда увидели хорошую стратежку на юнити)
какой-то пидр в юнити треде будет постоянно орать, то юнити говно
Игого:
на гамаке за 1 неделю по часу вечером ты сделаешь себе игру на уровне марио.
на юнити за месяц ты сделаешь себе игру на уровне загони шарик в лузу для смартфонов.
Если хочешь игру быстро и без заморочек, то гамак (андертэйл).
Если хочешь хорошую игру с поебаться- юнити (ори)
>анриалдибилы
>назовите
>твой
Что-то нашей ручной юнитидевочке совсем плохо, с временами путается бедняша. Видимо, слишком много открытий сделала за последние дни, а скудного умишка не хватает на обработку таких объемов.
Как бы болезная умом не тронулась, вдруг бутылками в прохожих с балкона кидаться начнет.
http://www.twitch.tv/abu1nyasha
Ну, эта функция как раз запрещает телу вращаться по одной из осей. По идеи он должен вести себя так, как ты описал, если запретил вращение по оси вращения.
Пиздец, вы идиоты?
Нахуя вы физику используете, при этом лезете в трансформацию.
Пиздос, с кем я сижу.
мимоПРО
для моего кривослепленого на коленке в пейнте индиговна возможности графона пиздец как важны ага.
1) Использовать Quad
2) Использовать спрайт какого-нибудь белого квадрата
3) Что-то другое???
Сам в юнити относительно новичок. В тонкостях не разбираюсь.
Ребята, это правда, что юнити веб плеер прикроют? Ебать копать, я только к ней привык.
И куда тогда денутся все казуальные фермы из вбыдлятни? Сам пилю пол года уже.
Мимопротекаетманямирок
https://github.com/consulo/consulo
Правда. Firefox вырубит юнити до конца 2016. Хром уже вырубил. Новые версии IE вроде тоже. В самой юньке больше не будет возможности билдить под веб плеер (начиная с 5.4 версии).
>И куда тогда денутся все казуальные фермы из вбыдлятни? Сам пилю пол года уже.
Никуда. Игроки будут ставить яндекс.браузер и любую другую хуйню, лишь бы поиграть. А потом и нормальный WebGL билд подоспеет. Я тоже пилю.
>john carmack = var carmack : john
>ПОСОНЫ, СМАРИТИ КАРМАК УЖЕ ОБЪЯВЛЕН)))00
Не удивительно, что ты с такой элементарной хуйней не можешь справиться.
Лучше используй Quad.
Потому что я понял необходимость этого в нашем проекте, и буду её разрабатывать. Но хотел бы узнать советов мудрых, пока можно поменять всё без проблем.
>просто может что-то посоветовать по этому поводу
Это приходит с опытом. Попутно смотри исходники игр/ассетов.
Vector3 v = target.transform.position - current.transform.position;
float angle = Mathf.Rad2Deg х Mathf.Acos(v.y / v.magnitude);
current.transform.eulerAngles = new Vector3(0, 0, v.x > 0 ? -angle : angle);
Пока никакой планируется бесплатная, сейчас проект ещё на стадии дизайна - отрисованы схематические интерфейсы, допиливается диздок, и я засел за архитектуру.
Так-то я был бы не против отсутствия архитектуры, но у работающих за "идею" кодеров есть такая тенденция - пропадать с концами. Единственный способ избежать застоя, который я нашёл - это запилить подробную, годную архитектуру проекта.
Что немного осложняется тем, что я с юнити знаком седьмой день, как и с шарпами сам писал на яве, поэтому думаю, что основные подводные камни будут технические, поэтому хотел спросить, может кто встречал ссылки по проектированию игр с учётом технических тонкостей юнити. 2.5 статей на хабре, как мне кажется, могут упустить/опустить очевидные но не мне моменты.
>>199238
Спасибо, обязательно посмотрю. Думаю, исходных кодов тактических игр хоть жопой жуй в открытом доступе.
Алсо, разве между лицензиями есть какая-то разница, кроме стартового экрана?
пасибки анон, вернусь с работы воткну, проверю. А можешь расписать что здесь происходит чтоб я в бушующем мог сам писать такую штуку.
http://ru.onlinemschool.com/math/library/vector/angl/
>>199306
кривая пародия на нормальную ИДЕ, которая пытается быть чуть меньшим гавном с использованием решарпера, но в итоге все равно остается обрубком от полноценной ИДЕ от джетбрейнсов.
>у работающих за "идею" кодеров
>способ избежать застоя, который я нашёл - это запилить подробную, годную архитектуру проекта
>с юнити знаком седьмой день, как и с шарпами
>запилить подробную, годную архитектуру проекта
>с юнити знаком седьмой день, как и с шарпами
>запилить подробную, годную архитектуру проекта
>с юнити знаком седьмой день, как и с шарпами
>запилить подробную, годную архитектуру проекта
>Алсо, разве между лицензиями есть какая-то разница
Уже не важно. Удачи.
забей хуй на архитектуру, все равно через месяц максимум дропнешь всё это
нет, это я понял, я не понял другого, где тут берутся координаты мыши в сторону которой происходит вращение?
Ясно.
Короче, это как то ебано работает isGrounded. Потому что если делать проверку на вертикальную скорость, то все нормально.
Все равно через раз работает.
Camera.main.ScreenToWorldPoint(Input.mousePosition)
А, значит ты даже не признаешь что без решарпера студия стоит где-то на ~десятом месте после говна и мочи по удобству использования. Ну что же, подрастешь - поймешь (или всю жизнь проведешь в неведении из за своих древних идеалов)
И да, ты не угадал. Твой ссаный веб я презираю, а годами отточеные инструменты как раз делают ребята выпустившие несколько ИДЕ, которые общепризнанно считаются лучшими в своем роде (и только хипсторы вроде тебя что-то еще кукарекают и обмазываясь говном говорят что им и так норм).
>на скрине Emacs
>продолжает кукареткать про решарпер и БОЖЕСТВЕННЫЕ ХИПСТЕРОИДЕ
Тупой мудак? Нет, всего лишь тупая юнитимразь.
Решарпер это ссаная хипстота, которая разбавляет монотонный интерфейс студии всякими рюшечками и свистоперделками, и больше ничего. Практической пользы от применения НОЛЬ.
>Кому это яваговнище нужно когда есть VS?
Мань, ты бы чуть выше свои глазки слепые поднял перед тем как обсираться. А со своим емаксом вообще нахуй пойти можешь, пристарелая мартышка с комплексом ЭЛИТНОСТИ.
Нужно навесить эффект Bloom (Optimized) на объект (UI текст внутри Canvas). Создаётся камера на объекте и собственно сам скрипт. Выставляю настройки как в скриншоте.
Вместо того, чтобы примениться только к слою FontsOnScreen, эффект применяется ко всем объектам в данном Canvas.
Вопрос - как применить эффект только к нужным мне объектам?
Буду чертовски благодарен если скажите хотя бы по каким тэгам гуглить эту тему.
Спизди или напиши сам обычный EventEmitter.
Cравнивать тэги, я так понял, в OnMouseDown() в скрипте, в котором void start() находится?
Допустим есть у меня 10 уровней. (и это 10 scean)
Решил я создать окно паузы. И есть два стула.
1) надо будет зайти в каждый скин и добавить по объекту паузы в каждый canvas (ну скопировать с первого на все остальные).
2) Создать окно паузы отдельным скином и вызывать Application.LoadLevelAdditive("pause");
Какой лучше?
спрайт рендер
сикл колайдер
ригидбоди2д
скрипт для управления персонажем
персонаж вращается в сторону курсора, но проблема в том что к камере при этом он стает ребром, что сделать чтоб он смотрел лицом в камеру но при этом одним из ребер смотрел на мышьку?
Я блядь не понимаю нихуя, а толкового гайда нет нигде,
ну тоесть допустим есть объект по координатам 0,0,0
и мышка по координатам 10,10,0
как мне развернуть персонажа в сторону мушки ? где у меня перед объекта, где зад? или он вообще будет боком смотреть?
как указать ему двигаться в ту сторону куда мне надо? бля........
другими словами как мне корелировать координаты x и у таргета и вращение по z цели?
Коллайдер нужно еще повесить на объект, который содержит скрипт с определенным OnMouseDown()
хорошо, последний вопрос, я могу как-то указать какой именно стороной персонаж должен смотреть в сторону таргета?
Бамп вопросу, господа
а что такое радание?
Сори за столько тупых вопросов но контролер для персонажа как показывает практика, создание годного контролера в качестве первого в жизни опыта программирования не лучшая затея для чувака, которого с прошрамированием связывает только то что его в школе однажды отпиздил чувак которого спустя 7 лет отчислии с 3 курса политехники.
Может тебе с гамака тогда начать?
http://www.gamedev.ru/code/forum/?id=191047
http://null-code.ru/scripts/30-peremeschenie-obektov-s-pomoschyu-myshki.html
Господи, это сценой называется, придурок, а не СКЕАН.
А вообще, напиши загрузчик и работай в одной сцене.
Е, спс
А всё, отбой. Разобрался.
и да, тип света point с draw halo не предлагать
>Пока что на ум пришло только создать 6 пустых GameObject'ов, привязать их всех к основному объекту, и каждому из 6 GO присобачить компонент Light с типом Spot, и повернуть во всех шести направлениях.
Руки бы тебе переломать.
Ну мне тоже кажется такой подход хуёвым. Как лучше то сделать? Тип света point меня чот не устраивает
Мне нужен эффект освещения поверхности от точечного источника, при этом сам луч я видеть не хочу. От point я смог получить только ареал, что-ли, ну в общем сферу света с определённым радиусом, да еще и поверхности других объектов не выглядят освещёнными.
Анон, когда перемещаюсь вперед клавишей W, движение становится каким-то ломанным, все дергается, и камера резко отскакивает назад. Что за дела? В анриле такой хуйни не было.
Берешь, значит Mesh Renderrer и рисуешь, что угодно.
Есть, просто ты дебил и тупой.
Легко, просто запилить игру.
Нарисовать.
Удалить юнити и заняться чем-нибудь другим.
Интерфейс надо вешать на класс, какой не помню, но ты ведь и сам сможешь нагуглить, правда?
АНОНС, БЛЯДЬ, ЧТО ДЕЛАТЬ?
В том то и дело, что гуглил, перед тем, как спрашивать. Смотрел ролики на ютубе на канале юнити, там у них ващпе всё изи-пизи, берут такие, создают простейший скрипт и вешают его на объект. Всё работает. Класс наследует только MonoBehaviour, никаких интерфейсов.
Тогда объясни мне, где я не прав: разве итак не происходит неявной проверки каждый кадр события OnMouseDown? Ведь для того, чтобы вызвать обработчик событий, нужно это событие случилось, а чтобы узнать, что оно случилось, нужно каждый кадр проверять, не была ли нажата клавиша. А так, если я захуячу еще и в update() свою проверку нажатия мыши, то у меня будет дважды проверяться это событие. А зачем мне дважды делать одно и то же? Или я где то обосрамся?
Создал стандартный куб, навесил это
using UnityEngine;
using System.Collections;
public class Test : MonoBehaviour
{
void OnMouseDown()
{
print("kek");
}
}
Работает. Проверь нет ли орфографических ошибок в названии функции, я хз.
У меня название функций тоже правильно написано, брал с unitydocs, усё равно не робитъ.
Помогла установка версии 15-го года. Но все равно спасибо, няша.
speed = 0 в параметрах скрипта, маня
Блджад, я юнити первый раз в жизни открыл, пилю корованы по тутору. Мне надо точно знать, куда тыкать.
в тех туторах, если я правильно понял, о чём ты, показывается, как изменять скорость, если мне не изменяет память.
Ой, ебанарот, не заметил этот параметр. Либо просто смотрел не туда.
Спасибо, анонс. Я еблан.
Ты либо тредом ошибся, либо про класс Handles и т.п. не читал.
можно
unit.transform.translate не работает, так как unit воспринимается как GameObject Fort.Unit.
Щито мне делать? В инспекторе всё назначаю.
Уже задавал подобный вопрос, но тогда я совсем не мог в C#, сейчас покурил немного, но всё-равно встрял.
Ты не можешь обработать сам клик? В новой event системе Юнити это довольно просто сделать.
Или у тебя не получается двигать объект? Попробуй так:
var speed = 10;
transform.position += transform.forward speed Time.deltaTime;
transform.forward - это вектор направления объекта
Объект я могу хоть двинуть, хоть скукожить, хоть на луну отправить. Но по нажатию на сам оббъект. Но как мне заставить объект действовать при нажатии на другой объект, я не догоняю.
Event-систему не знаю, в С# такого нет.
Нужна ссылка на этот другой объект в скрипте на нажимаемом объекте, GameObject или Transform.
Да я уже всё описал.
Допустим, у меня есть объект Корован.
Создаём скрипт CorovanBehavior.
Объявляю
public GameObject OhranaDvorca;
public GameObject Corovan;
потом void OnMouseDown //тут жмакаем на корован с коллайдером, хотим, чтобы Охрана шла его атаковать
{
for (Corovan < ogrableno)
OhranaDvorca.Ograblyat; //Для Ограбления свой void, Не суть важно
}
И вот как мне заставить ОхрануДворца ограблять Корован? В этом случае VisualStudio рассматривает объект OhranaDvorca не как самостоятельный, а как GameObject CorovanBehavior.OhranaDvorca
OhranaDvorca.GetComponent<NazvanieScriptaSEtimMetodom_ScriptDolzhenBytPrikreplenKOhranaDvorca>().Ograblyat();
О, спасибо, обязательно попробую.
https://gist.github.com/DaddyDrew/37e031dfc75381d784c3
Я так понимаю в этой игре есть "нинтендо код" с помощью которого можно поменят цвет главного персонажа. https://steamcommunity.com/app/261570/discussions/0/537405286653997278/
А этот кусок кода именно это и делает. Я вот и задумался а где все остальное. Шейдеры там вроде ниче, можно парочку подрезать чо. Ну а хуле, ведь все знают что любой код на C# - опенсорсный по сути. Но откуда у него имена переменных-то взялись?
https://www.youtube.com/watch?v=5tLL1qyKDXc
>Посоны, а как поглядеть код топовых игр на юнити от нормальных разрабов.
Вот так:
>public void DisableCheatsEnabled()
>public void EnableCheatsEnabled()
Не разработчик выбирает Unity, a Unity выбирает разработчика.
ЕМНИП .net при компиляции в IL имена переменных тоже сохраняет, поэтому декомпиляторы их выуживают тоже
Все верно говоришь. Честно говоря я думал это куда сложнее. Но по факту посмотреть исхоники ААА игры на юнити как бы это вообще не задача. Ну точней качаешь декомпилятор, открываешь DLL с исхониками и готово. Даже имена переменных. Лол, странно что комментарии еще не показывает.
ХОРОШИЙ КОД В КОММЕНТАРИЯХ НЕ НУЖДАЕТСЯ
Ну есть обфускаторы, которые уберут нормальные имена переменных и сделают код менее читабельным. Не знаю, как с этим на Юнити правда
Самое годное, что я читал по шарпу, было
http://www.ozon.ru/context/detail/id/19916784/
На юнити только версия шарпа ниже
Да есть, но в гейдеве их никто особо не использует. У меня статистики нету, но предположу что код 90% игр будет содержать имена переменных итд.
Какие вообще есть игры на юнити, код которых представляет интерес. Думаю обзаматься сегодня декомпилятором и пиздеть чужие шойдеры и код и инфернально хохотать.
Да и в целом оттуда нужны только первые части, т.к. потом идет то, что тебе не понадобится
Спасибо, анон.
Что насчет точности декомпиляции? Для этой важей java тоже полно декомпиляторов, только зачастую декомпилированный код невозможно скомпилировать обратно.
>Но по факту посмотреть исхоники ААА игры на юнити как бы это вообще не задача
И это очень хорошо. Мне это помогло с одной игрой. Не мог решить пару задач нормальным образом, решил декомпильнуть одну игру. И мне помог её код.
Не слышал о такой проблеме с дотнетом. Да и IL очень подробный. Также с учетом того, что тебе не весь код нужно копипастить, а посмотреть в целом принцип реализации, то проблем быть не должно
Ну, короче говоря, Дебаг.Лог вызвать удалось, а заставить охранудворца двигаться не получилось. Буду разбирать туториал по 2д руглайку.
Пытаюсь запилить А* поиск пути для своего рогалика.
Клетки представляют собой обьекты на сцене у которых есть координаты и спрайт.
И мне предлагают добавить им переменные:
F = G + H
G = distance to parent point
H = distance to target
А так же родительскую клетку.
Как я понял, для одного юнита это сойдет, а если 2 и более будут шатать переменные, то все переебется нахуй.
Где и как хранить переменные для одной точки для разных юнитов? Или я просто ничего не понимаю.
Сам не погромист и это по сути самый сложный для меня момент в реализации игры.
Для каждого геймобжекта создается свой экземпляр скрипта, и что ты поменяешь у одного объекта не затронет другой.
>>198779 (OP)
Пацаны, есть граф анимации, которая подходит всем мобам (идл - покасивание, возбуждение - они прыгают и т.д ), но надо для каждого типа моба помимо этой анимации задать уникальную - покадровую анимацию для каждого действия. Получается, мне нужно прикрепить к каждому объекту два графа анимации - одну универсальную, а другую - специфичную, и чтобы они друг другу не мешали . Как это сделать?
Дохожу до этого момента:
>Прежде чем начать процесс отладки, в меню MonoDevelop выберите Run > Attach To Process
И не могу найти меню MonoDevelo, оно где?
Или вот в арканоиде каком-нибудь у меня есть
playerPosition.x += Input.GetAxis ("Horizontal") * playerVelocity;
чтобы по горизонтали двигалась платформа, на андроиде же по идее работать не будет?
Значит в коде нужно будет прописывать дополнительные строчки, чтобы нажатие на экран распознавалось? Где про это прочитать можно?
Аноны, помогите. Из-за этого не могу открывать скрипты. Монодевелоп не открывает их. ВС тулс не совместим с вс 2015.
>Клик мышки сам по себе будет распознан как тап?
да
>на андроиде же по идее работать не будет?
да
>Где про это прочитать можно?
в гугле
Если есть возможность - киньте статей на эту тему или видосик.
Он написал, что он УЖЕ на МОНОДЕВЕЛОПЕ, нахуй ему заного юнити ставить, слепошарый?
В инсталляторе юнити можно снимать галочки чтоб не переустанавливать установленное, дегенерат.
http://blogs.unity3d.com/ru/2015/12/01/custom-coroutines/
алсо можно просто поставить отдельно студию и тулзы юнитовские для неё воопше ничего не переустанавливая
Джве недели пытался написать такой эффект, спасибо
Очевидно, что когда ты прекращаешь двигать мышкой, то NewCoord становится равным нулю.
Ты вообще что несешь, мразь? Какие галочки, какая переустановка, совсем ебанулся, хуесос.
> на юнити за месяц ты сделаешь себе игру на уровне загони шарик в лузу для смартфонов.
Ну потрачу я несколько месяцев на клепания игры и толку ? Все равно даже на анонимном дваче ее стремно будет выложить...
Потрать год и создай нормальную игру. И не думай, что год на одну игру это слишком много. Нет, это вполне обычный срок. А для одного человека это даже быстро.
Это очень интересно. Аноны, а дайте ка мне советов на чём делать игру. Правда я её вам не покажу и делать не буду, но дайте.
С меня тонны нефти, и возможно местному анону понадобится.
Спасибо!
Можешь сделать доп уровень, который выйдет вперёд при каком-либо действии. Подробности: https://www.youtube.com/watch?v=yIJJKSQSkTM
У вас в структурах методов нет, дегенераты. Куда вам куратины, скриптеры ебучие, вы тупые жи есть.
Пиздец ты тупой.
>>200664
Да, спасибо посоны, не обновлялся уже просто с первого патча для пятёрки и даже не подозревал что они таки внедрили студию.
Вчера когда скачал всё это дело и запустил чуть не кончил от удовольствия. Боже, да если мне скажут "Выбирай - перескакивай снова на моно или ногу тебе отрежем", я рассмеюсь и скажу чтобы отрубали обе.
Animator.
Работаю с ёбаным количеством BlendTree. Итоговых анимаций почти 400 штук (inb4 ниправильна, тормозить будет, дели на слои) - так надо.
Проблема в том, что оно тормозит при отрисовке такого количества BlendTree. Вот в игре тормозов нет, а в Эдиторе - пиздец, работать невозможно. Камплюктор не старый, проц не проседает.
Как пофиксить?
Слои, маски, транзишены, субСтейт машины - все тестил и проходил. Криворучке так надо, все ок.
Вот если в игре, лучше всего в 2Д игре, будут постоянно создаваться какие-то объекты, а затем удаляться, например, при клике на них. Или после определенного времени они будут удалятся сами. То это вот все будет сильно напрягать память? Ну то есть на мобилках будет сильно лагать?
Вот допустим как в такой игре https://play.google.com/store/apps/details?id=com.dm.timber&hl=ru
Хотя допустим у них так по другому все сделано, но если бы блоки деревьев просто создавались сверху, а затем удалялись, то игры бы жутко лагала, а потом вылетала?
Или такие действия не слиьно будут загружать систему?
Развейте мои страхи.
Игру сначала сделай, потом оптимизируй.
Юнити на мобилках вообще лагуч. (всякие микролаги)
НО в любом случае лучше делать objectpool. Это хорошая практика.
Самый понятный референс - прицеливания заклинания в World of Warcraft
прожекторы
Тебя так-то попросили без тролинга.
Прочитал с горем пополам http://docs.unity3d.com/ru/current/Manual/UnityOverview.html
Сделал арканоид как тут http://gamedevelopment.tutsplus.com/tutorials/build-arkanoid-with-unity-project-setup--cms-20767
Сделал рол энд бол как тут http://unity3d.com/ru/learn/tutorials/projects/roll-ball-tutorial
Просмотрел эту хуйню
https://mva.microsoft.com/ru/training-courses/-unity-8635?l=sJf4JYF1_4104984382
и вот эту хуйню
https://mva.microsoft.com/ru/training-courses/-unity-windows-8350?l=wk9Z4EN8_6704984382
А игры так делать и не научился.
Сажусь писать свою собственную кликалку, чтобы хотя бы что-то свое сделать. А нихуя не получается. Подскажите че делать?
Разумеется не может. Я как понял, что ничего своего сделать не смогу, сразу полез изучать сясярпь и ООП.
В начале сформулируй идею. У тебя должно быть точное представление того, что ты будешь делаеть. Разбей всё это на блоки. Например игра, где ты грабишь корованы. Значит тебе нужны корованы, бэкграунд и ты. Запили эти вещи. Затем пили как ты двигаешь, как двигаются корованы, как их грабить, придумай историю, пускай в 2-3 предложения. но чтоб была. И так далее, каждый блок. Дохуяришь до конца- получится игра. Если всё дохуярил, а игры нет- ты дебли и что-то потерял. Оаказлось всё слишком сложно- ты дебил и не смог разбить на блоки.
http://festival.1september.ru/articles/521443/
Вроде надо использовать зависимость силы и импульса (который равен масса на скорость, исходя, что в начале у нас тело не двигалось, его ёбнула сила в столько-то и итоговая скорость стала столько-то. Получаем вроде F=m(2ax+b). Ну или по осям можешь продифференцировать и получить Fx=mV0sin(a)t &fy=-m*v0cos(a)t. Потом векторно складываешь в зависимости от угла альфа и получаешь вектор силы.
Мне правда интересно что ты там делаешь и не проще ли обойтись без формул, задавая точную траекторию движения (прямо по твоим формулам) или просто дать игроку выбирать силу от 0 до x через AddForce?
Я пытаюсь реализовать, чтобы вражеская пушка, попадала в движущуюся цель, или чтобы снаряд хотя бы близко пролетал от цели. При том, что снаряд летит по параболической траектории и движется он от того что получает импульс, как при реальной стрельбе. Вот что есть сейчас:
Но чаще, снаряд пролетает на там где надо, как на пике выше. Красная - это высчитанная траектория, по которой должен лететь снаряд.
Ты делаешь пиздец какую проблемную вещь. Вот что я тебе скажу. Ты конечно можешь этим заниматься, если делаешь это для фана. Но развивать геймплей по этой линии для тебя будет адским трудом. Просто АДСКИМ.
Тогда получается задачка немного другой. Может решить просто заданием траектории движения снаряда. При столкновении снаряда и цели их координаты x и y совпадают. Делаем предположение, что пуха попадает в некоторой точке, например, в вершине параболы. Координаты параболы известны и совпадают с координатами цели. Задаём какое-нибудь a (по идеи оно будет отрицательным) и считаем b и с. Например, как тут https://ru.wikipedia.org/wiki/%D0%9F%D0%B0%D1%80%D0%B0%D0%B1%D0%BE%D0%BB%D0%B0 (ищи Если же задана вершина (x_0;y_0) и старший коэффициент, после них нужные формулы).
В итоге пуха видит цель, рассчитывает уравнение траектории по которой полетит снаряд и снаряд двигается по жёстко заданной траектории.
Да, ещё какая херь- начало координат должно быть либо прямо на месте вылета снаряда, либо на половине пути полёта снаряда. Но можешь попробовать и не заморачиваться с этим- вроде нужно только для оптимизации.
>>201126
Спасибо за попытку помочь. Буду дальше ковыряться и гуглить.
>>201126
Я уже реализовал нахождение уравнения траектории и красная линия на пике рисуется по этому уравнению. Т.е. я нахожу a,b,c. и вывожу формулы для вычисления импульса и угла, но снаряд всё равно летит в цель только примерно, т.е. в большинстве случаев не попадает в цель, но летит хотя бы рядом. Но всё равно спасибо. Дальше сам всё таки попробую.
У тебя цель статичная кстати или двигается?
Я ньюфаг и осваиваю туториал про "кататьшар", который юнити любезно предоставляет у себя на сайте.
Проблема в следующем: вот сохраняю я сцену, а дальше - хуй. Как только хочу продолжить работу, она просто не открывается. Ни кнопкой open, ни перетаскиванием в окно сцены.
Думал юнити старой версии (был 5.2.0), обновил, а вот хуй. Всё равно не работает. Подскажи, что не так.
На пике собственно предмет моей жопаболи.
>Подскажи, что не так.
Удали папку Library. И удаляй её всегда, когда будешь переходить на новые версии, иначе потом будешь отлавливать непонятные ошибки.
Братишка, не муди. Превозмогай себя и учи, благо ресурсов в наши дни достаточно годных.
А могу ли я взять себе в рабство юного кармака, чтобы он писал скрипты ЗА ЖРАТ, а я буду делать все остальное? Или я все же мудак и лучше бы делать все одному?
За жрат начинается от 10к рублей на постоянке и от 500 за скрипт+риск быть кинутым. Поищи, если мамка столько бабоса даст.
Бля чувак, ты уже частично задеваешь вопрос построения бизнес-процессов в игрострое, это маленько отдельная тема.
Если ты хочешь о ней поговорить, дай знать.
Окей. Можешь найти себе просто друга/брата/дядю/тётю, которые умеют то, чего не умеешь ты.
Который будет работать как и ты, например, в режиме pet project. Ты диздоки ебашишь, модельки или что ты там умеешь. А чел тебе скриптит. Это если совсем западло.
Но если ты думаешь о норм геймдизайне и хороших объёмных проектах, то тебе надо уметь это, даже если не портфолио большое иметь и кодить с ебейшей скоростью, то хотя бы разбираться как и что делается, потому что ёпта, как геймдизайнер ты и только ты в первую очередь должен обладать видением проекта, игры, а значит ты и должен доносить до кодера, что от него требуется.
И это "что-то" должно быть понятным и адекватным. Потому тебе и следует поскриптовать самому и поразбираться в этом.
Спасибо, антош. Тогда такой вопрос: реально ли обучиться скриптингу по мануалу юнити или чуток Шилдта почитать на эту тему? В юнити ведь какая-то своя библиотека функций\хуюнкций\прочего говна?
денег, разумеется, нет. Поделитесь, где спиратить? На персии не нашел.
сурвайвл-паркур рогалик с зомбями в 2д (а-ля дайинг лайт, но СУРВАЙВЛ, а не "сожри батончик и порегенься). Суть рогалика - не только в квестах, а и в скилах. Тип, хочешь паркурить а-ля принц персии под феном - базара ноль, качайся. Получение опыта за убийство, исследование, стелс, скавенж, иное дерьмо. Подходит ли юнити для моей идеи или нужно понатужится и писать самописник?
Если ты в состоянии написать свой движок- тона бнити ты это сделаешь на раз два. В общем:хочешь сделать игру хотя бы А+ класса, то лучше свой двиг и свою студию а не хочешь- не еби мозг и пили на юнити. Так быстрее будет и проще.
Подходит. На нём даже полноценную рпг зделоли.
https://ru.wikipedia.org/wiki/Ori_and_the_Blind_Forest
https://ru.wikipedia.org/wiki/Sunless_Sea
Из него склепали ори (очень приятный и красочный платформер) и санлес си (как бы рогалик по типу космических ренжеров). Что-то мне подсказывает- да, ты сможешь реализовать на нём свои больные фантазии.
А ты что сука думал?
Мы тебе что, компилить экзешник постоянно будем, в котором будут прихуячены все твои настройки?
Пришло время покупать новый пека для учебы. А вообще так быть не должно, ты что то делаешь неправиильно.
void Start ()
{
InvokeRepeating ("Spawn", spawnDelay, spawnTime);
}
void Spawn ()
{
Instantiate (block, transform.position, transform.rotation);
}
void Spawn ()
{
GameObject go = Instantiate (block, transform.position, transform.rotation) as GameObject;
go.GetComponent<Rigidbody>().AddForce(...);
}
MissingComponentException: There is no 'Rigidbody' attached to the "block(Clone)" game object, but a script is trying to access it.
Вот так вот пишет.
На нем есть ригидбоди.
У меня вышло так, что я создал объект и прикрепил к нему скрипт со спавном блоков. И перетащил в инспекторе белый блок. Они появляются и падают, но имеют имена блок(клон). И на них тоже есть ригедбоди.
Подскажи как AddForce(...) расписать, чтобы блоки летели сразу допустим в сторону. Им же получается толчек нужно придать какой-то. Либо как-то в void Update прописывать постоянное движение. Нихуя не пойму.
Ладно, сделал сам криво, но хоть так.
Просто добавил к блоку скрипт на движение. Теперь каждый блок просто появляется и улетает в небо.
Но все равно спасибо за помощь.
Хотя может кто-нибудь и напишет как придавать единожды толчек объекту при его появлении.
[SerializeField]
private float moveVertical;
void Start()
{
rb = GetComponent<Rigidbody2D>();
Vector2 movement = new Vector2(0.0f, moveVertical);
rb.AddForce(movement);
}
Вот мой говнокод. Задаём с какой скоростью двигаемся в верх, берём риджид боду и добавляем к нему силу движения. Ключевое различие- у меня всё это делается по появлению, у тебя в апдейте.
Че несешь то? В мануале пишут, что компилятся всегда ассеты из папки ресурсов, а неиспользуемые в сценах не компилятся
А что можно не правильно сделать? Сцена пустая. Ради эксперимента удалил все папки Resources в проекте. Откуда, блять, 2500 ассетов в билде? Версия 5.2.3p2
Попробуй вырубить. Выруби вообще всё.
Window -> Profiler
На десятую
>2015
>анимации без root motion
Объясните, почему этих дегенератов в ассет сторе до сих пор не банят?
Потому что приходит дегенеративная юнитимразь в ассет стор, а в ассетсторе - тоже дегенеративные юнитимрази. Ну ты понел.
Банить единственный движок, на котором сейчас можно делать игры? Ну не знаю...
Поясните как они это сделали? Кажется весь фокус не больше одного скрипта размером.
Ролик для привлечения внимания.
Мудрено, че ты 5 баксов жмотишь, купи и ковыряй, а лучше просто используй и не парь мозг, ты программист или геймдевелопер?
Сколько тебе протеина нужно отлить, чтоб 5 бачарей дал?
не смог удержаться, сори. Другой анон
Отбой тревоги. Добавил timeLeft.ToString ("0") ;
Очень круто. Юнитеки всё больше и больше радуют.
https://www.youtube.com/watch?time_continue=2&v=ZPyLj5S4Q1Y
Сурово.
Нихуя не будет
Тупица, тебе сама юнька дает цельный класс GL.
Ты просто конченый мудак. Устыдись и покинь двач.
Кто-нибудь уже установил обновление 5.3.0f4? У меня перестал работать лаунчер, после прокликивания ярлыка\экзешника, тупо серый экран : в диспетчере процесс не загружает цп совсем, а памяти занимает чуть. Не знаю что делать, а как откатить версию на старую не знаю
И неограниченные возможности. Просто, чтобы ими воспользоваться нужно иметь руки и не быть конструктородибилом.
А на линупсе это запустится(конечный продукт)? Судя по статье - нет.
В новых версиях постоянно что-нибудь ломают. Жди теперь, когда выйдет 5.4, только тогда пересаживайся на стабильную 5.3
пощупать разве что можно ставить. Для работы надо патчей ждать, ибо не только баги, но и поломки старого(меканим например)
http://www.digitaltutors.com/tutorial/1949-Using-Handles-and-Gizmos-in-Unity
На cgpeers есть.
Пик полностью выражает мои эмоции.
Более того по-хорошему расставлять должен сам код у тебя. То есть он сам должен подгружать ближние объекты и выгружать дальние из какого-нить файлика, где записана инфа.
Делай искуственые костыли для дебага. Чтобы при нажатии на кнопку определённые переменные крутились и код пытался продолжать работать после запуска. Так будет проще отследить.
http://pastebin.com/0uE2cNDF
В чем профит на пикрилейте, помимо удобства редактирования?
А если всё запихнуть в void start? А то у меня чувство, что у тебя там это делается каждые n кадров.
Ты Instantiate делаешь текущему gameObject, к которому присоединены новые клоны, которые ты этим скриптом и сделал. Объект копируется со всеми дочерними объектами. Делай префаб объекта и инстанцируй его.
Собираюсь разработать 2D игру, которая будет как Age of Empires, но без контроля игроком юнитов. Вместо этого юниты будут действовать сами, исходя из нескольких потребностей (инстинкт самосохранения, вытекающая из него потребность в еде, а также потребность в богатстве, потребность в сексе, потребность в мистике или религии, жажда убийств и т.д.). Предварительно созданных скриптов AI будет минимальное количество, каждый отдельно взятый NPC должен будет сам находить способы удовлетворять потребности, используя известные ему способы (взаимодействие с различными объектами на карте и участие в постройке некоторых необходимых сооружений, которую инициирует кто-то один из общины). Например, если свободных источников еды не осталось, NPC будет знать, что можно получить еду, использовав поле, мельницу и хлебопекарню, и будет все это строить, в своих действиях исходя из потребности в еде. А для защиты от набегов (инстинкт самосохранения) будет строить стены.
Для удобства добавления нового контента все объекты будут разделены на классы, на каждый из которых NPC должен будет реагировать определенным образом. Например, еда (дропающийся и собираемый предмет) - один класс, оружие - другой, нейтрально-враждебные мобы - третий. Еда будет связана с потребностью в ней, оружие с инстинктом самосохранения (усилить себя), мобы тоже с инстинктом самосохранения (убить их или сбежать от них, иначе убьют), в некоторых случаях также с потребностью в еде (дроп мяса) или в богатстве (из мобов могут выпадать монетки, которые NPC очень любят).
Механика как в Age of Empires 2: юниты передвигаются свободно (с коллизиями), а вот здания привязаны к сетке. Персонаж игрока тоже там присутствует и может участвовать в событиях, управление им производится с клавиатуры.
Я бы использовал движок Unreal Engine, но раз он не предназначен для 2D игр, то, наверное, остается только unity. Возможно ли там всё это?
>Кто разбирается в Юнити, поясните за него, возможно ли там такое сделать?
Ещё как возможно. Хотья в 2Д, хоть в 3Д, хоть для очков виртуальной реальности. Лучшего инструмента тебе не сыскать.
А как это вообще может быть устроено, чтобы AI сам принимал за себя решения, исходя из наиболее важных потребностей?
>хоть в 3Д, хоть для очков виртуальной реальности
Графоний слабоват, Для 3d и тем более VR гораздо лучше подходит UE: там можно сделать графно как в ордер 1886 или bf4 (если хватит терпения проработать свет и шейдеры материалов).
>Графоний слабоват
Хуёний. Для одиночки или небольшой команды уе не подойдёт. Будь там хоть супер-пупер реалистичный графон вселенского уровня, если инструмент сам по себе сложный, если на нём проблематично что либо сделать, то твой охуенно красивый супер-дупер межгалактический графон один хуй никто не увидит.
>если хватит терпения проработать свет и шейдеры материалов
Это относится к любому игровому движку. Если есть нормальный дизайнер, то он вытянет картинку, главное, чтобы он мог легко освоить инструмент. https://vc.ru/p/unity-optimizing-and-lighting
Надо в C# уметь. В скриптах сравниваешь показатели, вычитаешь, умножаешь, вызываешь методы, шерстишь списки и прочее-прочее. Ты сам контролируешь ИИ. Он ничего не будет думать за тебя.
Я видел на ютубе программу "marI/O", где AI именно что думает сам. Ему лишь показали "главную потребность", он контролирует кнопки управления в эмуляторе и сам проходит игру. Только там это делается медленно, когда совершается множество неудачных попыток. Но если ты сам делаешь игру, то можно наверное устроить обучение так, чтобы попытки быстро проматывались.
нельзя. Количество переменных в твоей кириллоидее зашкаливает и получить хоть сколько-нибудь стабильную систему у тебя хер получится.
Наверное просто железо слишком слабое. Надо ждать следующей революции в микропроцессорах (силиценовой, оптической или квантовой, как получится). И вот когда она случится, можно будет на обычном ПК обучить толковый AI для любой игры.
majesty
С переворотом там вроде галочку нужно тыкнуть при сборке, а вот с разрешением не могу справится. Гугл молчит у меня
>как камеру настроить, чтобы на всех устройствах одинаково смотрелось
Этого не требуется. Масштабирование UI настраивается в компоненте Canvas.
C# или JavaScript? C# конечно. Это язык богов. А JavaScript язык макак.
Читай документацию -- анализируй, тупица.
Ты воздействие на игрока обнуляешь, когда враг перестаёт с ним соприкасаться?
Но получается так, что я добавляю банер от Admob, запиливаю на смартфон игру, чтобы затестить, а он не показывается.
Сделал все как у них на сайте написано в гайде по юнити. даже видос нашел http://www.youtube.com/watch?v=Ndj4Lc9GmAE все тоже самое сделал. А она не работает.
Какие есть подводные камни? Может кто-то уже сталкивался. Может скрипт отдельный нужно создать для блока, или прикрепить к камере. Я уже не знаю что сделать. код получил свой на их сайте
Выручайте, анончики.
Во-первых, скрипт можешь хоть на жопу прилепить, если сделал всё правильно, нативно у тебя должна создастся отдельная активити, которая будет ебашиться поверх UnityActivity.
Во-вторых, открывай logcat. Специально для таких как ты там пишут все ошибки нативной части. Если угореть, можно написать AndroidJNIHelper.debug = true;
проиграно
Забыл добавить, что шейдером, а не еще одной поверхностью
NYIET.
Я имею в виду использование сцены в качестве чанка.
Пукнул
С обратной. Ну тип Cull off и на обратной стороне каким-то образом другую текстуру срендерить
Разницы между 11 и 10 не вижу. Шо там мыльцо шо там.
В шойдере отдельный Pass Cull Front, отдельный с Cull Back.
Я вылез к вам из своего подземного бункера, откуда не вылазил три года. Я имею ввиду, что я сидел на MonoGame/XNA все это время и задался вопросом - а не жру ли я говно, когда все нормальные ребята уже давно пилят на юнити свои поделки, не делая каждый чих с нуля, не прикручивая физику из кривых опенсорс-библиотек, не запиливая своей гейм-стейт менеджер и переделывая его каждый раз под реалии новой игры, не писать сотни строчек кода под банальное проигрывание анимаций или там повторение музыки.
И я подумал - а не перекатиться ли, тем более язык тот же?
В связи с этим вопросы:
1. Есть ли тут те, кто переползал с XNA/Monogame на Unity? Сильно ли сложно переключиться?
2. Бесплатно ли оно? Одним из аргументов для разрботки на XNA была его бесплатность, в отличие от Юнити тогда.
3. Есть ли поддержка Visual Studio, или надо писать в какой-то охуительной своей среде или вообще MonoDevelop?
4. Дебаг на эмуляторах мобильных телефонов возможен? Или нужно покупать за даллары?
5. Контент-пайплайн как тут устроен?
6. И наконец, главный аргумент за переход для меня - можно ли просто писать игровую логику, не отвлекаясь на решение технических вопросов и написания своего велосипеда по каждому чиху?
7. Как оно для 2Д игор вообще?
>Unity бесплатный?
>Да. Для всех платформ. Если вы заработаете на игре более 100 тысяч долларов, то обязаны будете купить Pro-лицензию.
Шапку прочел, в глаза ебусь, один из вопросов снимается.
0. Да, жрешь говно.
1. Легко.
2. Да.
3. Есть поддержка Visual Studio.
4. Хуй знает, по крайней мере логи можно смотреть.
5. Божественно.
6. Можно. Кури доки, некоторые пишут велосипеды не зная что на это есть стандартная функция.
7. Норм.
А велосипеды на шарпе или на плюсах? Просто насколько я помню, тут на шарпе скрипты пишутся, а сам движок на плюсах.
Юнити клозет лол сорс.
А я сейчас угорел по игровым методам обучения сишарпу. Начал с codecombat, хоть и и js, но основы похожи. Потом перейду к Codewars и CodeHunt.
А то просто так C# учить не так уж интересно, а тут ещё заодно и геймдизайн рассматриваешь тех людей, которые эти программы разрабатывали, сразу видишь реализацию.
На основании чего такие заявления?
Можешь написать длл на плюсах и прикрутить ее к юнити.
[CODE]using UnityEngine;
using System.Collections;
using System;
using System.Runtime.Serialization.Formatters.Binary;
using System.IO;
public class SaveLoad : MonoBehaviour {
InputTest classWithOurData = new InputTest();
MAIN_Manager classMAIN = new MAIN_Manager();
public void Save()
{
BinaryFormatter bf = new BinaryFormatter();
FileStream file = File.Create(Application.persistentDataPath +"/memes.kek");
PlayerData data = new PlayerData();
data.nickname = classWithOurData._MainPlayer_nickname;
data.TN = classWithOurData._MainPlayer_TN;
data.Age = classWithOurData._MainPlayer_Age;
data.Region = classWithOurData._MainPlayer_Region;
data.Name = classWithOurData._MainPlayer_Name;
data.LName = classWithOurData._MainPlayer_LName;
data.Sex = classWithOurData._MainPlayer_Sex;
bf.Serialize(file, data);
file.Close();
Debug.Log(data.nickname);
Debug.Log(data.TN);
Debug.Log(data.Age);
Debug.Log(data.Region);
Debug.Log(data.Name);
Debug.Log(data.LName);
Debug.Log(data.Sex);
}
public void Load()
{
if (File.Exists(Application.persistentDataPath + "/memes.kek"))
{
Debug.Log("File IS Exist");
BinaryFormatter bf = new BinaryFormatter();
FileStream file = File.Open(Application.persistentDataPath + "/memes.kek", FileMode.Open);
PlayerData data = (PlayerData)bf.Deserialize(file);
file.Close();
Debug.Log("Start load...");
classMAIN._MAINPlayer_nickname = data.nickname;
classMAIN._MAINPlayer_TN = data.TN;
classMAIN._MAINPlayer_Age = data.Age;
classMAIN._MAINPlayer_Region = data.Region;
classMAIN._MAINPlayer_Name = data.Name;
classMAIN._MAINPlayer_LName = data.LName;
classMAIN._MAINPlayer_Sex = data.Sex;
Debug.Log("Done.");
Debug.Log(data.nickname);
Debug.Log(data.TN);
Debug.Log(data.Age);
Debug.Log(data.Region);
Debug.Log(data.Name);
Debug.Log(data.LName);
Debug.Log(data.Sex);
}
else
{
Debug.Log("ERROR in LOAD(); file didn't exist");
}
}
}
[Serializable]
public class PlayerData
{
public string nickname;
public string TN;
public string Age;
public string Region;
public string Name;
public string LName;
public string Sex;
}[/CODE]
[CODE]using UnityEngine;
using System.Collections;
using System;
using System.Runtime.Serialization.Formatters.Binary;
using System.IO;
public class SaveLoad : MonoBehaviour {
InputTest classWithOurData = new InputTest();
MAIN_Manager classMAIN = new MAIN_Manager();
public void Save()
{
BinaryFormatter bf = new BinaryFormatter();
FileStream file = File.Create(Application.persistentDataPath +"/memes.kek");
PlayerData data = new PlayerData();
data.nickname = classWithOurData._MainPlayer_nickname;
data.TN = classWithOurData._MainPlayer_TN;
data.Age = classWithOurData._MainPlayer_Age;
data.Region = classWithOurData._MainPlayer_Region;
data.Name = classWithOurData._MainPlayer_Name;
data.LName = classWithOurData._MainPlayer_LName;
data.Sex = classWithOurData._MainPlayer_Sex;
bf.Serialize(file, data);
file.Close();
Debug.Log(data.nickname);
Debug.Log(data.TN);
Debug.Log(data.Age);
Debug.Log(data.Region);
Debug.Log(data.Name);
Debug.Log(data.LName);
Debug.Log(data.Sex);
}
public void Load()
{
if (File.Exists(Application.persistentDataPath + "/memes.kek"))
{
Debug.Log("File IS Exist");
BinaryFormatter bf = new BinaryFormatter();
FileStream file = File.Open(Application.persistentDataPath + "/memes.kek", FileMode.Open);
PlayerData data = (PlayerData)bf.Deserialize(file);
file.Close();
Debug.Log("Start load...");
classMAIN._MAINPlayer_nickname = data.nickname;
classMAIN._MAINPlayer_TN = data.TN;
classMAIN._MAINPlayer_Age = data.Age;
classMAIN._MAINPlayer_Region = data.Region;
classMAIN._MAINPlayer_Name = data.Name;
classMAIN._MAINPlayer_LName = data.LName;
classMAIN._MAINPlayer_Sex = data.Sex;
Debug.Log("Done.");
Debug.Log(data.nickname);
Debug.Log(data.TN);
Debug.Log(data.Age);
Debug.Log(data.Region);
Debug.Log(data.Name);
Debug.Log(data.LName);
Debug.Log(data.Sex);
}
else
{
Debug.Log("ERROR in LOAD(); file didn't exist");
}
}
}
[Serializable]
public class PlayerData
{
public string nickname;
public string TN;
public string Age;
public string Region;
public string Name;
public string LName;
public string Sex;
}[/CODE]
Ну создал ты экземпляр, а какая сука у тебя его заполняет?
Rotatetowards
(Time.time - starttime) всегда выдает 0
Делаю RPG. Вернее, JRPG. Но не в этом суть.
Вот у меня есть базовый класс. В нем прописаны все статы (будет дорабатываться), которые в последствии используются всеми классами.
Вот у меня есть типовой класс для игрока. У него есть какие-то начальные статы, и имя.
Вот у меня есть класс моба. Побеждая моба или группу мобов, игрок получает опыт/экспу/предметы.
Вопросы такие:
1. Допустим, у меня атака будет вычисляться по формуле Сила*2+урон оружия. Эту формулу в каком скрипте нужно записывать?
2. Если монстров будет много, и они все разные (по статам и абилкам), то как мне оптимизировать код? На каждого монстра нужно писать свой скрипт?
Зачем тебе в жрпг мобам статы? Я так понимаю, у тебя комплексной системы не предвидится, хватит 1 параметра типа левел на который всё перемножается.
Разве так не проще? У них у всех будет атака, защита, и возможность юзать абилки. Им как минимум нужно высчитывать дамаг, разве не проще это делать через праймари стат?
Не, ну если хочешь так, то никакой оптимизации тут не будет, конечно. Всё как в финалках, всё вручную.
Я просто не совсем понял зачем мобам статы, которые не изменяются по ходу дела. Вот у тебя atk = str*2+wpn, ты задаёшь str, хотя можешь напрямую atk. Я бы оставил atk, hp и резисты (физические, элементальные) (может быть в виде перков). Соответственно, если лишнего резиста нет, то ничего заносить не надо, только если есть.
>скрипт
Ну или можешь xml таблицы подгружать.
Может быть и персонажам тогда не нужны статы? Все равно распределения экспы не будет, статы апаются автоматически.
В жрпг же есть всякие шмотки на статы, типа колечек и прочего. Плюс, люди любят всякие циферки и математику, особенно если можно будет статы какими-нибудь талантами апать. Я бы оставил.
Кикстартер, женщины, успех. Или в чём вопрос заключается?
Я просто поинтересовался нахуя столько лишней тайной математики, когда тебе чаще всего нужно всего одно выходное значение.
Вопрос в том, как мне оптимизировать код, если нужно иметь сотню мобов, и всем нужны статы. Создавать ли мне на каждого моба отдельные скрипты, или один скрипт с библиотекой всех мобов?
Никакой разницы кроме удобства восприятия. Я выше предлагал держать всё в xml таблицах и подгружать по необходимости. Юнити с ними хорошо работает плюс может свой парсер написать для удобства заполнения.
А если я, допустим, хочу сделать случайно значение 12-15 в качестве урона у моба, мне как это прописать в xml, чтобы юнити понял?
diceNumber, diceSides
Может мне тогда и повышение статов у героев сделать через таблички, и не ебать мозги? Получение экспы и левел-ап я уже закодил.
>я уже закодил
Закодил он. Потом тебе придётся с настройкой баланса ебаться. Вот это похлеще кодинга.
чтобы работать с xml в юнити придется тащить с собой еще дополнительную либу, которая раздувает приложение на ~1.5-2Мб. Лучше использовать json для этих целей.
Если у тебя функция очень долго выполняется, используй Coroutine.
Спасибо за инпут, другой анон.
Но ты либо предложи альтернативу, либо нахуй иди. xml за свои деньги удобная хуйня и годится для указанных целей.
Делаю стартовое меню для игры.
Всего две сцены, учусь только.
Scene 00 - нулевая, она же и есть меню, всё что в ней есть это канвас с кнопками и скриптом.
Scene 01 - непосредственно игра.
Запилил две кнопки, Start и Exit соответственно. Выход работает, а вот старт - нихуя.
Всё перепроверил, и код, и интерфейс: везде всё норм расставлено не могу вкурить в чём проблема, подсоби советом, Антош.
Скрипт ультра простой:
'using UnityEngine;
using UnityEngine.UI;
using System.Collections;
public class StartGame : MonoBehaviour {
public Button startButton;
public Button exitButton;
void Start()
{
startButton = startButton.GetComponent<Button>();
exitButton = exitButton.GetComponent<Button>();
}
public void StartLevel ()
{
Application.LoadLevel("Scene 01");
}
public void ExitGame()
{
Application.Quit ();
}
}'
В интерфейсе самом на кнопка OnClick расставил ссылку на функции.
Делаю стартовое меню для игры.
Всего две сцены, учусь только.
Scene 00 - нулевая, она же и есть меню, всё что в ней есть это канвас с кнопками и скриптом.
Scene 01 - непосредственно игра.
Запилил две кнопки, Start и Exit соответственно. Выход работает, а вот старт - нихуя.
Всё перепроверил, и код, и интерфейс: везде всё норм расставлено не могу вкурить в чём проблема, подсоби советом, Антош.
Скрипт ультра простой:
'using UnityEngine;
using UnityEngine.UI;
using System.Collections;
public class StartGame : MonoBehaviour {
public Button startButton;
public Button exitButton;
void Start()
{
startButton = startButton.GetComponent<Button>();
exitButton = exitButton.GetComponent<Button>();
}
public void StartLevel ()
{
Application.LoadLevel("Scene 01");
}
public void ExitGame()
{
Application.Quit ();
}
}'
В интерфейсе самом на кнопка OnClick расставил ссылку на функции.
UPD
В билде сцены выставил используемые. Пробовал на них в скрипте ссылаться по всякому и 1 и Scene 01.
И сам билд собирал и так и сяк. Печаль.
Наверное забыл сцену в билд добавить, в окне компиляции поле, под ним кнопка add current. Закидываешь сцены в поле.
Ты же охуеешь их для сотен позиций дюпить. Вместо того, чтобы 1 раз перегнать массив в таблицу и спокойно её редактировать потом, тем более что ему ничего, кроме нескольких переменных там хранить не надо. Оверкил лютый, короче.
Берешь и пишешь УДОБНЫЙ редактор для редактирования ЭТОГО скриптаблобджекта, тупица.
Либо, если тебе нравится пердолиться в редакторе табличек и привязываться к именам и прочей ебурге, однохуйственно можешь написать конвертер в скриптаблобджект.
А если ты работаешь в плариуме, говори в какой коморке сидишь, я тебе завтра лично в кофе нассу.
Итак, прошло 13 часов, 40 минут, и я уже почти UNET-бог. Смеюсь над тем, каким я был невеждой каких-то полдня назад. Завтра я стану еще лучше, и запилю первую кооп-миссию для своего шутана. Ура, товарищи!
Inb4 эти функции тебе в игре не понадобятся, все нужное есть в юньке
>When building a player, you should avoid any dependencies on System.dll or System.Xml.dll. Unity does not include these in the built player by default but if you use their classes then they will get included.
Поссал тебе в ротешник
На пека работает
if(Input.GetButton("Fire1"))
{
Camera.main.transform.position += new Vector3(- Input.GetAxis("Mouse X"), - Input.GetAxis("Mouse Y"), 0);
}
Но если заменить на
Input.GetTouch(0).position.x
Input.GetTouch(0).position.y
То камера при прикосновении улетает в ебеня
У меня всё работает.
Гугли в сторону AndroidJNI.
>>202984-кун
Добавь в коде.
units.Add(new DemonUnity()
.SetHealth(144)
.SetDamage(23, 34)
.AddAbility(Ability.FireDamage)
.AddAbility(Ability.ImmuneToFire)
);
units.Add(new WolfUnity()
.SetHealth(34)
.SetDamage(4, 8)
);
Кармак, иди нахуй.
Вообще, можно использовать компонентную систему и префабы, ок да?
Создаёшь гей обжект, кидаешь на него компонент Unit, которы содержит поле Name. Это обязательный компонент для всех юнитов игры. Далее, создаёшь компонент Health, который будет содержать кол-во жизней, которые задаются через редактор. Потом можно добавить компонент Attack, который будет содержать мин и макс урон, шанс крит урона и так далее. Всё это кидаешь на гейм обджект, создаёшь своих юнитов и после сохраняешь их в префабы. Если с тобой будет работать дизайнер, то он скажет тебе за это большое спасибо, иначе он не будет колупаться в твоём говнокоде.
private Ability[] _abilities;
public Ability[] Abilities
{
get
{
if (_abilities == null)
_abilities = GetComponents<IAbility>();
return _abilities;
}
}
IAttackAbility
{
float GetBonusDamage();
void OnAttack(Unit target);
}
Потом в компоненте Attack собираем все абилки, которые могут на него повлиять и сохраняем их
abilities = GetComponents<IAttackAbility>();
Потом при атаке делаем так:
var damage = Random.range(minDamage, maxDamage);
foreach (var ability in abilities)
damage += ability.GetBonusDamage();
target.TakeDamage(damage);
foreach (var ability in abilities)
ability.OnAttack(target);
Охблять, на varы засмотрелся.
Поясни за дельту
>Если с тобой будет работать дизайнер
Я и есть дизайнер, так что это ни к чему.
>>203157
Вот это заебись, структурировано. То есть ты предлагаешь создать один скрипт, в котором будет храниться весь реестр мобов с прописанными статами?
>>203162
Не понимаю, что этот код делает. Поясни, пожалуйста.
>>203169
Это понял. Кажется.
>То есть ты предлагаешь создать один скрипт, в котором будет храниться весь реестр мобов с прописанными статами?
Да, что-то вроде того. Но раз ты работаешь в юнити, то лучше забудь про такой подход, и про наследование тоже.
Используй компонентный подход. В юнити каждый объект состоит из компонентов. Хочешь, чтобы твой объект мог проигрывать звук? Добавь на него компонент AudioSource. Хочешь, чтобы твой объект отображался на экране? Добавь на него компонент MeshRenderer. Используй подобный подход к построению объектов игры. После сохраняй объекты в префабы. Это очень удобно, очень гибко. А наследование - зло. Используй его с большой осторожностью.
Тут можешь посмотреть пример использования интерфейсов C#:
https://unity3d.com/ru/learn/tutorials/modules/intermediate/scripting/interfaces
Гугли Виртуальные функции и классы.
Будет главный класс в котором объявишь (и если хочешь можешь и определить) основные функции от которого ты будешь наследовать монстров. Некоторые функции будешь перегружать типа спецабилок. Вот и все.
Вали отседова, тупица.
Тут уже знающие аноны отписались, что не надо плодить столько говна, не надо ебаться с сериализацией через json, xml (соответственно тянуть левые либы).
У юнити уже все есть, называется это ScriptableObject, но вам тупым мозгов не хватает зайти и почитать документацию.
Пару лет назад делал песочницу с рандомной генерацией всякой хуйни и нужно было мне работать с конским количеством всяких массивов. Так вот. Когда у тебя пара дюжин скриптаблобжектов работать с ними становится нихуя не удобно и геймдизайнер спасибо не скажет. Было это еще на четвёрке, так что я не уверен, вдруг изменилось чего, но редактировать одновременно пару десятков этих объектов занимало на порядок больше времени, чем автозаменой пробежаться по текстовому файлу, к чему мы в итоге и вернулись.
Я, конечно, понимаю, почему народу нравится мышкой ассеты тягать в юнити, но удобный интерфейс не всегда равен удобному воркспейсу.
>автозаменой пробежаться по текстовому файлу
Чего тебе мешает пробежаться автозаменой по скриптаблам?
Что тебе, тупица, мешало написать конвертер в скриптабл?
Рихтер конечно же
>>202984-кун
на икспириях и самсунгах работает норм.
Настройки всинка к мобилкам вроде как не применяются, там всегда всинк.
Вруби Deep profile и кинь сюды скриншотик хотя бы. А еще лучше отчет от Internal Profile.
Понимразь должна страдать. Делай свое говно в другом месте, и ни в коем случае не выкладывай в сеть.
Спроси на оф форуме. Там сами разработчики отвечают.
Rigidbody2D перемещается вперед под действием силы (прикладываю в FixedUpdate), камера - дочерний объект. На лету генерятся фоновые объекты со спрайт-рендерером. Нагрузка по-сути нулевая, но видно, что эти фоновые объекты иногда продвигаются рывками: плавное движение, и через некоторое время небольшой рывок, и т. д.
Пробовал тело перемещать непосредственным изменением скорости, и через MovePosition. Камеру вместо дочернего объекта заставлял следовать скриптом в LateUpdate. Однохуйственно рывки! Что за хуйня, разъясните?
Учи физику, программирование, мат. моделирование.
Тебе скорее всего нужна линейная интерполяция с учетом delta time. Если unyti не поддерживает это из коробки - это полное дно.
У rigidbody2d есть свойство interpolation, перечисление None, Interpolation, Extrapolation. При любом значении одно и тоже. Я могу в программирование, что такое интерполяция знаю, но я все это хочу скинуть на физ. движок, иначе зачем он вообще?
>>203596
Игру билдил. На standalone проблемы вроде нет, на андройде рывки остались. В профайлере ничего нет.
Вот я и не понимаю, что за хуйня.
Нашёл решение. Проблема оказалась более, чем тупая прям как я, но может кто-то окажется в подобной ситуации и это поможет ему.
Очень внимательно надо подходить к иерархии Canvas'a. В моём случае, кнопку просто перекрывал элемент с текстом на фоне. Поэтому она и не нажималась.
Весьма неожиданно.
Она еще летом появилась. Просто странно, как им удалось с майкрасофт договориться, что бы те разрешили включить ее в установку.
Майкрасофты официально поддерживают расширение для отладки unity. Так что, не удивительно.
https://www.visualstudio.com/features/unitytools-vs
Ну, тупица.
Берешь монодевелоп и adb и дебажишь, а если под iOS делаешь и задаешь такие вопросы -- двойной тупица.
Почему при вызове этой функции на клиенте, сервер запускает онлайн-сцену независимо от того, готовы ли другие игроки? Баг? Свой реди чек писать?
Во-первых я долбоеб, пикрелейтед.
Во-вторых система реди чека искаропки все равно несовершенна - даже если ты один в лобби, тебе все равно необходимо минимальное количество человек для старта и игру не запустить. Надо допиливать самому.
>>203964
На бесплатном фотоне все еще максимум 20 человек вместимость, или нормальные тарифы уже завезли?
>или нормальные тарифы уже завезли?
Купи PUN+ за 100 баксов. Даёт перманентно 100 игроков. Либо дождись распродажи и купи за 50 баксов.
пошел отсюда, даун ебаный
Завод для быдла, я у мамы илита
>Во-вторых система реди чека искаропки все равно несовершенна - даже если ты один в лобби, тебе все равно необходимо минимальное количество человек для старта и игру не запустить. Надо допиливать самому.
Какой же я все-таки долбоеб. Вот проснулся - и сразу соображать начал. -1 потому, что хост почему-то считается за двух игроков, пусть пока будет так.
Объясните нюфагу следующие вещи. Перекатился с флеша и не могу понять как рабоает камера. Можно ли сделать, чтобы в проекте координаты были попиксельные? И каким образом генерить в одну команду нецелочисленный рандом? Спасибо
То есть скажем, у меня персонажи размером 10х20 пикселей, а рандом позиции доступен только в пределах целочисленных значений, что в моем случае неприемлемо.
>Можно ли сделать, чтобы в проекте координаты были попиксельные?
Ты об этом?
http://docs.unity3d.com/ScriptReference/Camera.ScreenToWorldPoint.html
>генерить в одну команду нецелочисленный рандом?
Random.Range?
> а рандом позиции доступен только в пределах целочисленных значени
Щито? Какая рандом позиция? Ты точно юнити накатил? Собирай Vector3 с помощью Random.Range, будет тебе щастье
>нецелочисленный рандом
Random.value всегда дробный (ибо с 0 до 1)
Random.Range() будет дробным, если ты ему в параметрах передашь не инты, а дробные значения, насколько я помню.
А для векторов еще есть богоподобный insideUnitSphere, который возвращает вектор с рандомным направлением, что весьма полезно.
Платформой выбирал вебплеер и винду.
Железо не старое, профайлер ни о чем ресурсоёмком, само собой, не сообщает.
Вроде так быть не должно.
Кому-нибудь знакома проблема? Есть решение?
В том-то блядь и дело, что для декалей в юнити нифига нет.
Допустим ты можешь наложить текстуру с материалом decal на ровную плоскость, а как быть с пятнами крови, которые вылетают из врагов после выстрела в них? Ты ведь понимаешь, что эти декали могут попасть на террейн, на листья деревьев, на другого врага, на небо и даже на аллаха. Расскажи, как ты стандартными средствами юнити будешь реализовывать попадание декали на сложную геометрию?
>Расскажи, как ты стандартными средствами юнити будешь реализовывать попадание декали на сложную геометрию?
Почти подловил, хитрец.
Ты таки не ответил на вопрос.
В настройках ригидбоди включи интерполяцию
В офисе писал. На него уже менеджеры не реагируют, а ему все пичот. Приписал нашей компании несуществующие заслуги. Можно увидеть в 281 пункте по текущему собранию менеджеров
Ого, а я то думал заместитель директора уже и забыл о нас.
Какие-то странные у него теории, видимо таки запутали мы его.
Кстати
>Загадки только не трогать.
В этой комнате обязательно надо будет провести собеседование.
Ого, детишки взбесились
Может и нет. Почитай, что еще в офисе пишут, в соседних комнатах( не у менеджеров по продажам)
жалко...
Это копия, сохраненная 20 февраля 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.