Этого треда уже нет.
Это копия, сохраненная 14 июня 2018 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
unity.jpg59 Кб, 750x422
Unity Thread 401747 В конец треда | Веб
Добро пожаловать в тред Unity - лучшего 3D и 2D игрового движка современности!

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

Официальный сайт: https://unity3d.com/ru
Документация: https://docs.unity3d.com/ru/current/Manual/index.html
Уроки: https://unity3d.com/ru/learn/tutorials
Форум: https://forum.unity3d.com/
Магазин ассетов: https://unity3d.com/ru/asset-store
UnityWiki: http://wiki.unity3d.com/index.php/Main_Page

На Unity сделано много замечательных игр - Rust, Блицкриг 3, Pillars of Eternity, Tyranny, Kerbal Space Program и многие другие. Главным преимуществом Unity перед другими движками является его простота для одиночной разработки. Не нужно иметь целую компанию девелоперов, чтобы сделать хорошую игру. Если ты один или имеешь небольшую команду и хочешь сделать хорошую игру без претензий на ААА, то Unity станет лучшим выбором. Тем не менее, даже крупные корпорации зачастую выбирают для своих игр именно Unity.

FAQ

- Какие у Unity сильные стороны?
- Простота разработки, удобный инструментарий, кроссплатформенность, богатая документация, огромное сообщество.

- Какие у Unity слабые стороны?
- Сложность в создании фотореалистичной графики. Для графики "как в Crysis" рекомендуется взять другой движок. Хотя Unity вполне способен выдавать не уступающую любым другим движкам картинку, это требует определённого навыка от разработчика.

- На каких языках я могу писать скрипты для Unity?
- На выбор два языка - C# и UnityScript. UnityScript - это что-то среднее между JavaScript и ActionScript. Выбирай язык по своему вкусу, они оба вполне удобны, но помни, что большинство примеров написано на C#.

- Для каких жанров подходит Unity?
- Для абсолютно любых! Жанр ограничивается лишь фантазией разработчика (и его умением писать скрипты, разумеется). Можно создавать и РПГ, и стратегии, и слэшеры. Можно делать VR-проекты или Minecraft-подобные песочницы.

- На каких платформах работают созданные с помощью Unity игры?
- Windows, Linux, MacOS, SteamOS, Android, iOS, Windows Phone, PlayStation4, Xbox One, WebGL, Oculus Rift и многие другие. Полный список можно найти на официальном сайте. Таким образом, игры Unity работают на десктопах, на смартфонах, планшетах, приставках, в браузерах, VR-очках и некоторых других системах.

- Часто вижу скриншоты с красивой природой на Unity. Как такое создать?
- Очень просто! В Unity встроены удобные инструменты для создания террейна и SpeedTree для создания деревьев и готовая реализация ветра - не нужно ничего писать или скачивать и подключать плагины - ландшафт в Unity создаётся в пару кликов.

- Что такое стартер киты?
- Starter Kit - это набор скриптов и префабов, а зачастую и графических элементов для игры. Они призваны облегчить разработку игры определённого жанра и как правило разбиты по жанрам (Action-RPG Starter Kit, RTS Starter Kit, 3D Shooter Starter Kit, Space Game Starter Kit, VR Starter Kit и так далее). Также бывают стартер киты различных игровых элементов, не связанных с геймплеем (Nature Starter Kit с дополнительными природными объектами, Medieval Starter Kit со средневековыми объектами и так далее). По сути, стартер киты выполняют в разработке игры ту же роль, что и фреймворки в программировании. Однако стоит отметить, что использование геймплейного стартер кита принуждает разработчика изучать большое количество чужого кода и чужой структуры для внесения своих изменений и полноценного использования. В связи с этим большинство разработчиков предпочитает писать почти всё с нуля, получая полное понимание работы своей игры. Новичкам крайне не рекомендуется начинать знакомство с Unity со стартер китов.

- Что нужно уметь делать для создания полноценной игры, кроме Unity-разработки?
- Кроме непосредственной разработки игры на Unity, требуется также уметь создавать 3D модели (3ds Max, Blender, ZBrush), 2D рисунки (GraphicsGale, Aseprite, Piskel), текстуры (Substance Designer, NeoTextureEdit), музыку (FruityLoops, Ableton). Не обязательно учить это всё - например, в 2D играх не нужны 3D модели, а музыка необходима далеко не всегда. Также вы можете скачивать элементы для ваших игр на бесплатных сайтах. Если у вас есть деньги, то все необходимые элементы можно заказать у фрилансеров на https://www.fl.ru/ (русскоязычный) или https://www.upwork.com/ (англоязычный).

- Бесплатен ли Unity?
- Можно свободно скачивать, использовать и продавать готовые игры на Unity с лицензией Personal - это абсолютно бесплатно! Но на бесплатной версии при запуске игры будет появляться короткий стартовый ролик "Made with Unity", а также ваши доходы ограничены 100 000 долларов в год. Для снятия этих ограничений нужно приобретать платные версии лицензий Unity. В конечном итоге, платные варианты используются лишь крупными компаниями с огромными доходами, тогда как обычные разработчики в большинстве своём используют бесплатную Personal лицензию.

Обучение

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

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

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

Шапка: http://www.writeurl.com/publish/zukmrogwv45ptyuseyol
2 401758
>>01757 (Del)
GameObject boo = ...;
Polozhit(boo.GetComponent<ItemObject>());

А вообще проиграл от сочетания руssкости, говна на скринах и отсутствия знаний.
3 401760
>>01759 (Del)

>GameObject boo = ...;


Вместо трех точек подставь метод, которым ты gameObject получаешь, балбес.
4 401766
аноны, хелп. загружаю любую текстурку, будь то персонаж или фон, и картинка не отображается, только рамка от нее и все. вижу ее только во вкладке game
5 401768
>>01766
Заскринь.
6 401772
>>01757 (Del)
Пометь подбираемые предметы тегом, pickable к примеру, и проверяй тег рейкастом.
7 401773
>>01772
...сделай менеджер предметов в сцене, который сразу имеет ссылки на компоненты всех подбираемых предметов, при подбирании работай с предметом через менеджер
9 401786
>>01785
у тебя спрайт в иерархии камеры а не сцены, вытащи его от туда(слева, под камерой) и назначь заного позицию 000
Снимок.PNG103 Кб, 1360x722
10 401787
>>01786
все правильно сделал?
11 401788
>>01787
а камера в какой позиции?
12 401789
>>01787
а тфу ты бля, этож сцена и в игре говоришь в все видно, тогда я не ебу погугли, это у тебя какие то поломки
13 401790
>>01787
попробуй кликнуть 2 раза на кнопку 2D
14 401791
>>01789
да гуглил уже. у меня помимо этого, рамок камеры нет, но вроде в прошлом треде объяснили как немного по-другому подгонять текстурки
15 401792
>>01791
либо у тебя разумный компьютер, который тебя нарошно тролит, либо ты не смотрел даже никакого базового гайда, ты с такими темпами не дойдешь даже до кода. 1 час потратить на какой то гайд по юнити или несколько дней на расспросы в этой помойке? хммм
16 401793
>>01792
в гизмос рамка камеры может быть
17 401795
>>01792
в этом-то и дело, что я по урокам делаю. только у них там сразу все нормально, не так как у меня. и никто даже не говорит о том, что может быть как-то иначе
18 401796
>>01795
потому что не может быть. значит вариант 1ый тебя тролит твой пк
Unity 2017-05-16 02-49-58-25.png196 Кб, 1528x976
19 401839
>>01757 (Del)
а ничетак. хоть показать есть что.
только ты какой-то хуйни наворотил на мой вкус. как инвентарь то организовал? просто складываешь в пустой геймобжект выключенные геймобжекты при поднимании чтоли? никакой базы данных не организовывал чтобы мочь дестроить обжекты или спавнить их в процессе игры из ничего? нахуй ты при поднимании конвертацией то занимаешься?
20 401842
>>01787
transform.position.z параметр спрайта измени, у тебя камера не видит объект.
21 401860
>>01839

>базы данных


Так и представляю себе инвентарь на десятки тысяч итемов.
22 401861
>>01842
чувак это окно Scene в 2D режиме(ортографический режим), публичной камеры в СЦЕНЕ никакой нет, она есть в игровом окне в котором у него все ОК. это проблема со сценой и только у него
23 401862
>>01860
да не обязательно десятки тысяч итемов. надо как минимум иметь возможность связать юнити с всякой абстрактной хуйнёй. чтобы вот был предмет, они имел бы ссылку на то как он выглядит, или какую-то форму ключика вроде айдишника, или стринга который бы указывал на префаб. чтобы была возможность сказать какомунить статичному классу-манагеру "хуйня заспавни мне такой предмет", или "хуйня заспавни мне такой предмет, вот что должно лежать внутри". иначе как предметы то в мире спавнить нормально? сплошная боль будет без этого.
24 401869
>>01868 (Del)
может не делать персонажа как 10 этажный дом?
25 401874
>>01872 (Del)
бляяяяяяя персонаж должен быть до 2ух метров если это человек и до 10 если это неебический сттрайдер из халфлайф, иначе физика идет по пизде
26 401882
>>01871 (Del)
а нахуй твой инвентарь вообще описывает коллекцию геймобжектов? как собрался хранить предметы не имеющие физического представления? или как ты собрался создавать предметы в процессе игры? как собрался делать сохранение / загрузку с таким срамным подходом то?
27 401885
>>01882
(другой анон) хачу напомнеть чта ита идни дев!111111 ты на идне прешь? фсёёё тоби пизда
28 401890
>>01885
инди и хуинди - разные вещи
29 401917
Unity-господа, ньюфаг репортинг ин.
Суть такова. Пилю РТСку, запилил движение с использованием NavMesh'а, (реализованы выделение рамочкой и кликом, А-клик и движение "на муве"). Но проблема вот в чем - если юнитов много, то когда первые доходят до точки клика они останавливаются, а другие пытаются пройти сквозь них, толпятся и иногда водят хоровод.

Как сделать что то в роде squad-move, как в старкрафте/варкрафте, например?

Альтернативный вопрос: как сделать полковую систему, как в Total War, например? Когда много болванчиков объединены в построение и ходят вместе, но когда доходит до боя дерутся по отдельности, и снова возвращаются в строй когда перестают драться.
Unity 2017-05-18 03-22-26-75.png122 Кб, 1080x696
30 401922
ух. целых два дня репу чесал над вопросом как же мне нарисовать зеленую штучку.

>>01885
одно дело быть валенком и иметь план, другое дело быть валенком и плана не иметь.

>>01889 (Del)
чайлд monobehavior, да?

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

остановку я даже не знаю как сделать, можно попробовать сделать что-то вроде 2д системы частиц где ближайшие частицы бы отталкивали и притягивали друг друга в каких-то пределах и через это можно было бы решить все проблемы формаций и толканий пользуясь частицами как маской для передвижения юнитов внутри сквада, а глобальную навигацию всего сквада отдать юнити. но с такими велосипедами охуеть можно.
31 401923
>>01917
1 ый вопрос гуглится
а построения незнаю, ртс это слишком запарно по мойму, как по коду так и по остальному контенту. Во первых я уверен и это гуглится в 5 сек, в том же поисковике проектов(ссыль в оп) можешь найти ртски и посмотреть как у них сделано например. Мне кажется как то так должно быть: класс полка в момент стычки каждому своему юниту подыскивает пару из вражеского EnemyPolk.GetFreeUnit(). Или еще пиздаче, в момент стычки создается класс Boynya который будет в себе уже разбивать юниты на пары и контролировать сражение совмещая данные из двух и более полков. Хотя я никогда даже не интересовался РТС и это все возможно убогий костыль по этому лучше погугли причем желательно на инглише.
32 401933
>>01861

>публичной камеры в СЦЕНЕ никакой нет


Мда, чем же тогда рендерится сцена в окне редактора? Камера в сцене есть и она может не видеть объекты из-за clipping'a.
33 401935
>>01861
Нюфань,слушал бы что тебе умные люди говорят. Переключись в 3д и увидишь где камера сцены находится.
34 401942
>>01933

>публичной


>>01935

>увидишь где камера сцены находится.


я говорю о той камере которой вы летаете в самой сцене, она нехуя не публичная и вы её никак не увидите, её можно только через код настраивать
35 401945
>>01942
Что ты называешь публичной камерой вообще?
37 401965
>>01942
Ты даун, пройди нахуй документацию читать. Записал бы для тебя вебм, но даже время лень тратить на такого инвалида.
38 401972
>>01943 (Del)
зависит от определения грамотно. а примеров fps в гугле хоть жепой ешь, уверен есть и тот который подойдет тебе
39 401973
>>01965
удачи
40 401985
>>01943 (Del)

>Как в юнити грамотно реализовать поворот рук на нужный вектор у персонажа при прицеливании?


Инверсная кинематика.
Либо используешь встроенную:
https://www.youtube.com/watch?v=EggUxC5_lGE
Либо используешь плагин:
https://www.youtube.com/watch?v=rE4nE5tMdnI
41 401986
Есть какой-нибудь фреймворк для процедурной работы со зданиями?

Тоесь не хранить меши или воксели, а упрощенные данные, что у такого-то здания есть комната а с такими-то стенами, комната б - с такими-то дверьми, комната цэ - с таким-то декором - в рантайме уже собирать меши, это же использовать для модели повреждений, пасфайндинга, итд.
42 401992
43 401999
>>01992
Чот у тебя хуета какая-то.
https://youtu.be/HrN_usfkDIQ
44 402003
>>01992
ты бы хоть прочел о чем я спрашиваю

>>01999
это конечно круто, но это запеканка эдиторная и абстрактная, а мне нужен рантайм под конкретные задачи
45 402008
>>02003
Тебе в любом случае придется хранить префабы для объектов в комнате. Волшебной кнопки "нарисовать стул как я хочю" не завезли.
46 402011
>>02003

>мне нужен рантайм


google unity endless runner
47 402016
>>02008
Мне не нужно рисовать стул, мне нужен лежащий в бд граф всех комнат и стен хрущевки, чтобы нпц сычев мог из своей сычевальни добраться до выхода из подъезда, воспользовавшись при этом пожарной лестницей если обычную завалило попаданием артиллерии, и чтобы интерьер и соседи стримились только на 2 комнаты вдоль его пути, а не загружались на весь коммиблок.
48 402017
В юнити можно сделать передвигающуюся конструкцию, используя hinge joint? По типу шагохода.
Где почитать про физику в юнити?
49 402018
>>02017
unity docs, unity scripting api
50 402021
>>01943 (Del)
у юнити есть невероятная особенность - целевой угол поворота встроеной инверсивной кинематики не совпадает с поворотом костей в руках и вместо этого там какая-то магия аватаров и прочее. советую в руки сунуть геймобжект чтобы совать в него оружие, а потом сделать кнопку чтобы сунуть целящуюся руку в нужное направление и вместе с этим повернуть геймобжект в руке в нужное направление. если хочешь потом дам.

>>01945
называет он не подкопотную камеру. в сцене то и правда есть скрытая камера которая рендерит сцену. можно получить если залезть в Camera.current или Camera.allCameras или там вроде ещё чето было

>>02017
можно. но с этим охуеешь делать это хорошо. я редко советую пользоваться ассетами но конкретно тут и правда лучше ими воспользоваться. https://www.assetstore.unity3d.com/en/#!/content/48977 конкретно этот местами даже лучше того что может предложить УЕ. кстати у юнити в роадмапе были Physics Animation но по моему только для 2д.
51 402048
>>02021
Конструкция не двуногая и нужна для проверки работы генетического алгоритма.
По факту просто ноги прикрутить к телу.
Все можно, уже разобрался.
52 402051
Репостну из ньюфаг-треда.
Всё-равно никто там не ответит.
А игра таки на юнити.

Обнаружил, что после 28 ноября обрывается статистика ADMob.
Игра хуйня, чисто для практики, поэтому только сейчас увидел.
Игру скачивают, но кликов и копеек после 28-го нет.

У них там изменилось что-то с января 2016 ?

Вижу, что не было привязки к какому-то Firebase, м.б. это причина?

Вроде тогда в ноябре ещё какое-то письмо приходило об изменениях а я проигнорировал.
53 402108
Полный ньюфаг в юнити. Нужно написать приложение, которое сканирует qr код, скачивает 3д модель и отображает с возможностью вертеть эту модель и бродить по ней.
Если с последним еще более менее ясно, то возможно ли реализовать первые две функции c# скриптами? Нужно чтобы вся эта ебала работала на андроиде и ios
54 402109
>>02108

>ньюфаг в юнити. Нужно написать приложение


Сделать можно, ищи фрилансера.
55 402111
>>02109
Если б всё так просто было. Меня на работе, как джависта, суют в эту хуергу
56 402113
>>02111
ну раз тыжпрограммист, берешь и гуглишь
unity fbx runtime import или unity asset bindles
и
unity qr reader
Asset-Workflows-for-Modular-Level-Design.jpg116 Кб, 750x421
57 402130
Ребят, ребят, а поясните за атласы. Я, вот, захотел вкатиться в ассет стор и запилить простенький модульный пак. Если я тайленые текстуры 1к сошью в атлас 4к меня не обоссут? Как там вообще всё это организовывается? А ещё здорово было бы спиздить такой пак, чтобы посмотреть самому, что там, да как.
58 402148
>>02108
Берешь раз в секунду (полсекунды) изображение с камеры (есть в доках)
Далее берешь опенсорную либу по анализу изображений (скорее всего на C, ибо скорость и все такое, так что придется помучиться с плагинами)
Скармливаешь ему картинку с камеры, получаешь qr код
с помошью юнити WWW качаешь архив с инета
Распаковываешь
Если архив оформишь в виде ассет бандла то проблем нет
профит
59 402201
>>02130
Если выходишь в AssetStore лучше оставь каждый ассет отдельно. Нормальные ребята сами потом решат как им уложить данные для своей игры.

>>02108
Если ты на iOS и Android сможешь нативные либы накатать, то скан QR наебашить будет не проблема, думаю. Ну а скачивание моделек и т.п. есть в юнити из коробки.
Короче, вот тебе стартовая точка:
https://docs.unity3d.com/Manual/PluginsForAndroid.html
https://docs.unity3d.com/ru/530/Manual/LoadingAssetBundles.html

>>02051
Насколько помню, гугловцы выкупили Firebase и там залупа началась какая-то. Дальше я уже не разбирался.

>>01986
Насчёт фреймворков не знаю, но почему бы самому не написать это дело? Если ты этим интересуешься, то скорей всего должен-то знать классику уровня MVC. Вот этого >>02008 разумиста не рекомендую слушать, т.к. у Unity есть API для генерирования всяких мешей в рантайме. Ярчайший пример -- это координатная сетка, которую ты видишь в GameView. Она не дёргается из префаба, а генерируется на старте.

мимоПРОбыдло
60 402223
>>02201

> каждый ассет отдельно


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

> Нормальные ребята


Там не все нормальные. Как-то видел, когда разглядывал чужие паки, кто-то там ныл, что ассет хуёвый, потому что ведро его не вытягивает. А там какой-то йоба-пбр интерьер был дохуя детализированный.
61 402266
>>02223

>Или я как-то должен пояснить?


Сделать сцену с примером созданной комнаты и приложить мануал.
62 402320
>>02201

>API для генерирования всяких мешей в рантайме


Кажется я начинаю понимать, почему у значительной части юнити игор хуево с производительностью.
63 402383
Есть один канвас, и на нем надо разместить иконку (Image) и трехмерный объект.
Первое видно в режиме ScreenSpace - Overlay, второе - в режиме ScreenSpace - Camera.
Как совместить?
Есть вариант добавить вторую канву для трехмерных объектов, конечно, но что-то мне подсказывает, что можно сделать проще.
64 402387
>>02383
Layers
65 402395
>>02387

>Layers


Поставил везде UI, теперь сфера болтается внутри сцены, вместо нахождения на канве.
66 402435
>>02395
Лэйер можно создать свой. Его присвоить сфере и камере, которая ее будет рендерить. Другая камера ее не будет видеть.
67 402444
>>02320
Ну так поделись, если понимаешь.
68 402458
Кто-то сталкивался с реализацией Pixel Perfect интерфейса в юнити?
69 402463
>>02435
Стойпогодь.
Мне надо, чтобы камера, которая сейчас рисует 2d иконку, рисовала еще и 3d объект, и чтобы 3d при этом был частью интерфейса, а не болтался внутри сцены.
70 402500
Сап, а если вдруг я сделал игру на фри версии и у меня получилось заработать больше 100к, сколько и как тогда придется отстегивать разработчикам?
71 402508
>>02500
Просто подписку оформить.
72 402509
>>02508
Да вот я вычитал

>В течение срока действия настоящего Соглашения Вы соглашаетесь и признаете, что если вы являетесь пользователем Unity Personal и превысили вышеприведенные пороговые значения, Вы утратите право на использование Unity Personal и должны будете либо приобрести Unity Pro, либо уничтожить все копии Unity Personal, которые находятся в Вашем распоряжении или подконтрольны Вам, а также прекратить распространение любого контента лицензиата, созданного с помощью программного обеспечения.


Если я правильно понял, если я вдруг хайпанул и заработал больше 100к, тогда иду и башляю им 2850$ за 2 года и хайпую дальше, и так им и отстегиваю пока моя игра в продаже, верно?
73 402511
>>02509
да. Что в общем-то не так уж страшно, учитывая, что игра в продаже может быть и не одна, а сумма от этого не увеличится
74 402515
Как можно сделать возможность "расстягивать" объекты (2D) во время игры, как в редакторе например?
75 402518
>>02515
transform.scale
76 402519
Аноны, как можно сделать динамические ограничители для навигации? Например двери, которые в закрытом состоянии запрут АИ.
Энейблить модифиер и перезапекать навмеш как то _ресурсоёмко_, особенно если делать большие карты.
Разбить меш на куски, соединённые линками и енеёблить линки уже лучше, но сработает только для преград в узких проходахДля двери сойдёт, но всё же
77 402531
>>02458
Сталкивался.
Это такой лютый пиздец, что даже не рекомендую пытаться. А если под мобилки делаешь -- просто забудь.
78 402532
>>02519
https://docs.unity3d.com/Manual/class-NavMeshObstacle.html
А галку Carve не пробовал использовать?
79 402536
>>02532
Попробовал - сработало. Спасибо, анон.
80 402553
>>02531
Погоди, я допустим планирую сделать 8bit платформер, у меня будут проблемы?
другой анон
81 402554
>>02531
Погоди, я допустим планирую сделать 8bit платформер, у меня будут проблемы?
другой анон
82 402611
>>02531
Погоди, я допустим планирую сделать 8bit платформер, у меня будут проблемы?
другой анон
83 402615
>>02458

>Pixel Perfect


Кому это говно нужно, кроме кучки полоумных менеджеров? В вебе вас обоссали, вы теперь в геймдев лезете?
84 402630
>>02536
Правда это Carve ресурсоёмко, что на двери его пихать не буду. Да и в плане механики выходит криво.
85 402644
Анон, у меня игра в которой два персонажа перебрасываются предметами. Но из-за моего говнокода получается так, что после того как нпс кинул предмет и предмет оказался в руках игрока, на него предмет продолжает действовать сила броска от нпс. Т.е. руки игрока не поглотили кинетическую энергию броска.
В общем, для того, чтобы игрок в ответку бросил предмет, он должен приложить импульс силы больше чем импульс от нпс.
В общем-то геймплей работает, но согласитесь, что это как-то через жопу.
Как сделать по правильному?
86 402645
>>02644
В чём проблема? Обнули импульс в любой из моментов на выбор: когда предмет пойман, когда в руках, перед тем, как бросить.
87 402648
>>02645
Анон, ты же понимаешь, что если бы я знал как обнулить импульс, то не задавал бы вопросов.
88 402651
>>02648
В общем, включаю Is Kinematic когда предмет оказывается в руках. Вроде бы помогает.
Снимок.PNG1,4 Мб, 1320x956
89 402654
Сап гайз.
Пилю вот "завернутую" карту, решил хитровыебаться и исполнить ее в виде трех дополнительных камер, которые, по сути, должны друг-друга дополнять.
Можно ли сделать так, чтобы все, что остается за террейном камера не рендерила, а просто отдавала эту часть экрана другой камере?
90 402662
>>02654
Все просто, в настройках камер clear flags ставим на dept only. Все пашет.
91 402716
>>02509
Не понятно, если я за год заработал овен 100к, тогда оформляю подписку, ну а при истечении этого года в последующие года у меня не выходит больше 100к, тогда могу отписаться или как? Или я им пожизненно становлюсь обязан платить, пока игра продаётся?
92 402722
>>02716
Тут весь тред зарабатывает больше 100к в год, тебе обязательно помогут с этим вопросом.
93 402724
>>02722
Ну они что-то как-то не исчерпывающе написали в соглашении, я хз, может кто-то задавался уже вопросом, хотя бы из любопытства, в поддержку им писал может быть...
95 402810
Делаю скролящийся Canvas по туторам в интернете, кидаю внутрь Text, к которому прикреплен скрипт, меняющий цвет текста, если курсор на тексте.
Если курсор на Text, то скроллинг не работает, то есть Text перекрывает рейкаст Canvas
Как это пофиксить можно?
sage 96 402905
>>02810
Там какая-то хуйня с event.use или чем-то таким, я бля хуй его знаит
97 403028
Как создавать объекты через Instantiate, чтобы был массив этих объектов? Мне нужно удалить 2 клона объекта при определенном условии. как присвоить массиву эти объекты?
98 403029
>>02770
На кастрате? Катаракте? Контракте? Вконтакте? Где он работает?
99 403036
>>03028

>Как создавать объекты через Instantiate, чтобы был массив этих объектов?


for(;;)
{
anusy = Instantiate(anus_prefab);
}

>как присвоить массиву эти объекты?


ПРи помощи оператора присваивания =
100 403141
>>03028

private List<GameObject> objs = new List<GameObject>();

...

GameObject obj = Instantiate(orig_obj, new Vector3(0, 0), Quaternion.identity);
objs.Add(obj);

...

foreach (GameObject obj in objs)
{
// сравнение
}
101 403149
Ну что, запилил уже нестед префабы?
102 403150
>>03029
констракте
103 403163
А долго в Сишарп вкатываться для достойного владения Юнити, когда ты высокоуровневая макака(python)?
104 403169
>>03163
Любой из твоих говноскриптиков уместится на А4. Тебе надо понять, что происходит в Start() позже в Awake(), OnEnable() и т.д. и в Update() позже в FixedUpdate() и прочих

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

Сисярпа в юнети надо настолько мало, что лэвел особа и не на чем прокачать
105 403251
Аноны, выручайте! Я пытаюсь запилить бесконечные платформы, написал простой скрипт, чтобы создавать клон платформы впритык к ней. Теперь нужно сделать это бесконечно, но для этого надо, чтобы GameObject'ы that,cube,collide брались с клона платформы, а предыдущая удалялась при определенном условии. Это вообще возможно? по-другому я не представляю как сделать.
106 403257
>>03251
Хотя можно прицепить всю эту парашу к камере(она следит за кубом) и в центре каждой платформы сделать объект при столкновении с которым будет создаваться очередная платформа. [/spкак же по дебильному я пишуoiler]. Теперь подумаю как удалять весь этот мусор...
или засру тред тупыми вопросами
107 403409
>>03257
Опять же я проебался. Клон этого объекта не идёт в public GameObject, хоть название в инспекторе одинаковое. хз тогда как...
108 403416
>>02611
Сорян, захожу в тред раз в неделю.
Будут проблемы. Вот давай подумаем вместе. Ты собираешься в pixelperfect, собираешься растром рисовать картинку в игре или "вектором"?
Очевидно, что растром, т.к. плагин для векторного графона брать не будешь.

Сколько разрешений экранов есть? Сколько пикселей на дюйм у этих мониторов будет?
Сколько наборов графики тебе придётся держать и менеджерить?
109 403418
Почему координа дочерних объектов остаются такими же как и на сцене? Это фича такая? как фиксить?
111 403421
>>03418
Да, это фича такая.
Когда ты делаешь объект чилдом какого-то объекта, то дочерний объект начинает жить в координатной сетке по отношению к родительскому объекту. Да, получается весёлая штука уровня сетка внутри сетки внутри сетки и т.д. То, что ты видишь в инспекторе называется локальная трансформация.


https://docs.unity3d.com/Manual/class-Transform.html
Зачем это сделано: http://gameprogrammingpatterns.com/dirty-flag.html
112 403442
>>03420
Спасибо, няш! Пул запилил, сейчас продолжу начатое.
113 403453
>>02458

>Кто-то сталкивался с реализацией Pixel Perfect интерфейса в юнити?


>>02615

>Кому это говно нужно, кроме кучки полоумных менеджеров? В вебе вас обоссали, вы теперь в геймдев лезете?


У меня например без Пиксель Перфект ГУИ мылом покрывается аж глаза болят. ЧЯДНТ?
114 403465
Аноны, у меня предметы с rigidbody пролетают сквозь друг друга, если придать им достаточно высокий импульс. То есть, если приложить силу около 10 все норм, а если 20, то полет сквозь стену.
Что это за хуйня? Unity 5.6.
115 403468
>>03465
Я престарелый аутист, но думаю вот это тебе подойдет для ознакомления:
https://unity3d.com/ru/learn/tutorials/topics/scripting/update-and-fixedupdate
116 403470
>>03468
Спасибо, анон, теперь все стало очевидно, ведь я говнокодил в Update.
Также посылаю лучи ненависти авторам Playmaker, которые поленились сделать галочку под fixed update в основных нодах.
117 403476
Как проверить на столкновение ЙОБЫ1 и ЙОБЫ2 через if? что в условии то писать.
118 403498
Господа, подскажите, ка просто запустить анимациию через скрипт?
По клику на кнопке работает, а так нет. Пишет, что Animator does not have an AnimatorController, но я его создал, засунул туда анимацию и прикрепил все к модели.

#pragma strict
var Ball: GameObject;
function Start () {}
function Update () {
if(Input.GetMouseButtonDown(0)){
Ball.gameObject.GetComponent(Animator).play("anim");
}
}

}
119 403499
>>03498
Попробуй сисярп
public GameObject Геймобжект
Void OnMouseDown{
Геймобжект.GetComponent<Animation> ().Play("Название анимации");
}
120 403500
>>03499

> \t\t


что это блэть
121 403501
>>03476
Бамп
122 403503
>>03501
Ехала документация через справку:
OnCollisionEnter OnCollisionExit OnCollisionStay OnTriggerEnter OnTriggerExit OnTriggerStay
https://docs.unity3d.com/ScriptReference/Collider.html
Без имени-1.png1,8 Мб, 1356x878
123 403505
Ебусь тут с нормалями, каналы инвертирую во все стороны, а тут оказалось, что моя модель виновата, а не карта. Что я мог неправильного сделать с моделью, что карту нормалей выворачивает? Какая-нибудь развертка отзеркаленая? Раньше так не было.
На пике один и тот же мат, справа на модели, слева на юнитивском плейне.
124 403506
>>03498
самофикс, вдруг кому пригодится

var animator : Animator;
function Start () {
animator = GetComponent(Animator);
}

function Update () {
if(Input.GetMouseButtonDown(0)) {
animator.Play("anim");
}
}
125 403507
>>03506
Всегда проверяй, что нашлось через GetComponent

if(animator != null) { zaebisCykaBlyat(); }
126 403508
>>03465
Я другой аутист. Зачем тут вообще апдейт. Чистая физика симулируется сама. Или ты детектишь? Тогда православнее OnCollisionEnter etc
127 403509
Кто-нибудь аутировал с плагином Adventure Creator под юнети? Стоит он своих 70 енотов?
Playmaker не предлогать
128 403532
>>03507
Есть атрибут RequireComponent.
129 403541
Собственно философский вопрос:

Допустим у меня есть пушечное ядро 2D.

Оно должно взрываться при столкновении с поверхностью или с врагом.

Я вешаю коллайдеры на ядро (циркл 2д), врага (бокс 2д) и землю (бокс 2д).

1) Есть ли принципиальная разница, что из них делать триггером? У меня сейчас триггеры висят на враге и на земле, а на ядре просто коллайдр.

2) Где лучше обрабатывать процесс столкновения? Сейчас у меня OnTriggerEnter2D на враге вызывает метод его уничтожения, а OnTriggerEnter2D на ядре вызывает метод который его взрывает. Правильно ли это, или нужно вешать все это дело в скрипт ядра, и там уже вызывать нужный метод other-объекта?

Понятно, что работает и так, но не хочу говнокодить, хочется узнать о хороших практиках.
130 403548
>>03532
Я не хотел его перегружать инфой. Но ты прав. Так еще православней
131 403549
>>03541
Еще православней через events. У тебя где-то менеджер всех ёбаколлизий отдельно от объектов и ёбаядер. Когда происходит столкновение, каждый участник вызывает ивент TyChyoCykaDoebalsya(). Сообщает, кто до него доебался. Менеджер решает, что с ними делать

Так ты соберёшь все решения в одном месте. И, кстате, говнокодить придется и по нескольких скриптиков навешивать на объекты. Но это в плюс, ибо хоть какая-то структура
132 403551
>>03549

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

По официальным видосам, как я понял особо хорошим практикам не научишься, там в основном принцип "работает и ладно". Для реального проекта малоприменимо.
133 403556
>>03551
Просто создай какой-нибудь Canvas и привяжи скрипт туда. Сами по себе скрипты это обычные ассеты, которые ничего не делают
Из этого самого Canvas вполне можно делать глобальные вещи, просто делаешь там референс на нужный объект и работаешь с ним:

public GameObject huita

Потом открываешь в инспекторе свойства Canvas и переносишь нужный объект на поле "Huita", и из скрипта можно работать с этим объектом напрямую
134 403557
>>03551

>А есть ссылки на живые примеры такой реализации?


я учусь у него. Без суеты прорабатывает все детали

https://www.youtube.com/playlist?list=PLwyZdDTyvucwjwqucleVQB7U12H2JPvg5

за 8 долларов его игра на стриме с исходниками
135 403558
>>03551
для этой годноты >>03557
устанавливаешь Gihosoft TubeGet и скачиваешь без задней мысли
136 403559
>>03557
видосик из этого списка, где он начинает про events
138 403561
>>03453
Ты бы показал мыло для начала.
139 403563
>>03505
Всем спасибо, всё работает. С тангент спейс наебался. Даже хуй знает, что это.
140 403568
>>03556
У меня как правило гейм-объекты заранее не существуют, а создаются из префабов, поэтому их нельзя в паблик свойство заранее определить.

Точнее можно, но это же будет префаб, а не его конкретная реализация, если я правильно понимаю.

Приходится в скрипте префаба события обрабатывать.

Но все равно спасибо.
141 403569
>>03560
>>03559
>>03558
>>03557

Спасибо, буду разбираться.
142 403570
>>03507
>>03532
Спасибо за совет, вы классные.
143 403669
Еще вопрос релейтед к этому:

>>03568
>>03541

Вот есть у меня различные снаряды, например: пушечные ядра, бумеранги и ракеты.

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

Можно ли как-то создать префаб-родитель который будет хранить основные свойства и методы, а у потомков уже дописывать что мне нужно?

Или если есть разные типы врагов допустим.

Как вообще такие механизмы реализуются в Юнити?
144 403682
>>03669
С общем скрипте, где спавнишь, задаешь после Instantiate свойства (эддфорс-хуёрс и т.д.)

В чем конкретно должны быть различия? Наверное, бумеранг закрутить. Так это тоже физика. Включить другой свист в аудио.
145 403683
>>03682
Ну допустим у меня система части к ракете прикреплена, а в бумеранге она вообще не нужна.

Ее получается отключать по-умолчанию, и включать после Instantiate только если я создаю ракету?
146 403701
Как можно после клика осуществить спавн of object , который (если клик продолжается) можно сразу перемещать (в 2д) , до конца продолжительного клика? Если есть возможность, можете написать пример кода.
147 403704
>>03701
Например, няша , во время игры кликает в любую точку пространства, после чего спавниться новый object на месте клика(и,если мышка остаётся нажатой после клика), this object можно сразу перемещать , двигая курсор(после завершения нажатия, object остаётся на том месте, когда он был в момент завершения клика) ,спасибо.
148 403707
>>03701
Я диванный, но подозреваю, что в событии онКлик, при создании инстанса объекта ты записываешь его и текущее положения мыши в приватные переменные. А дальше на событии онДраг (или онИнпут, я точно не помню) ты отслеживаешь MouseToWorldPoint и меняешь соответственно координаты объекта из переменной согласно движениям мыши.

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

Я нуб, может тебе кто опытнее что-то получше подскажет.
149 403749
>>01747 (OP)
Что с этим ебанным ассетстором? Почему он спрашивает логин-пароль, когда я там и так есть, но не принимает мои логин-пароль? При этом, когда окно логин-пароля закрываю он что-то пытается скачать, а потом просить перекачать.
image.png2,2 Мб, 1920x834
150 403788
Друзья, у меня тут проблема нарисовалась, возможно кто-нибудь знает как её решить.

Не знаю, на сколько это важно, но игра Джвадэ. Есть два объекта: один родительский, другой дочерний. У обоих скрипты: в родительском ставится скорость вдоль оси X, в дочернем вдоль оси Y. Хочу добиться следующего поведения конструкции: родитель гоняет по оси X а из него вырывается дочерний объект и перемещается вдоль оси Y относительно родительского.

Что получил: оба объекта как и нужно ездят вдоль оси X, но вот дочерний объект не ездит вдоль оси Y до тех пор пока не останавливается родительский объект (а он стопарится при смерти игрока).

Как делал:
Пробовал ставить в дочернем объекте
velx = rb2d.velocity.x;
rb2d.velocity = new Vector2(velx, vely);

или просто
rb2d.velocity = new Vector2(0, vely);

Пробовал пёхать эту дрянь как в функции Update(), Start() по одиночке, так и в обе сразу. Результат одинаковый.

Отмечу также, что отдельные куски кода дочернего объекта работают, как например transform.position

Помогите, люди добрые, игруня на финальном этапе, а эта дрянь спать спокойно не даёт.
151 403792
>>03788

А vely ты что присваиваешь?

Он же у тебя должен по оси Y ездить?

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

Скорее всего дело в том, что скорость у тебя задается относительно мира, а не относительно объекта. То есть скорость родительского и дочернего объектов равны и они движутся оба одновременно с одинаковой скоростью. Поэтому когда ты останавливаешь родительский объект, то дочерний и начинает у тебя двигаться с той же скоростью, что и двигался родительский.
152 403850
>>03792
vely - фиксированная скорость типа public. Определяю в коде, оптимизирую в редакторе сцены.

В velx попадает скорость объекта, которая у него уже есть, так как скорость сетится как Vector2(velx,vely), очевидно, что я не хочу менять скорость дочернего объекта вдоль оси X, а вот вдоль оси Y она у меня не сетится вообще, и объект начинает движение вдоль OY после остановки по ОХ - в этом и проблема.

И да, если скорость задаётся относительно мира, то всё должно быть ОК, т.к. скорость движения всей конструкции относительно мира по OY изначально равна 0, а я дочернему объекту даю в коде vely (что не срабатывает до остановки по OX)
153 403852
>>03792
>>03850

Наверно я пишу не очень понятно, по этому постараюсь описать ситуацию:

У меня есть труба, которая смотрит вверх - это родительский объект. К нему прикреплена (находится внутри него в иерархии объектов на сцене) струя воды - дочерний объект, которая сдвинута вниз, под землю.

Труба движется на игрока вдоль оси X, а вода должна вылетать из трубы вдоль оси Y, при этом конструкция стопарится по OX, если игрок умирает. Фрагмент кода, что я скидывал - для струи. velx символизирует скорость, которую изначально получает струя от трубы как дочерний объект, а vely - должна устанавливаться, но устанавливается только после смерти игрока, и в этом вся проблема.
154 403853
>>03852
Я проверил у себя на демо проекте, действительно не получается двигать таким образом дочерний объект относительного родительского.

Нужно почитать про поведение дочерних объектов. Может не с помощью велосити его двигать а трансформ.позишн или как-то так?

Я попробую потом еще и если что-то получится, то отпишусь.
Video2017-05-31174520.webm252 Кб, webm,
1152x572
155 403865
>>03853
>>03852

Смотри, такое решение тебе подойдет? Возможно не идеальное, но по-другому не знаю как сделать:

public class ChildController : MonoBehaviour {

public float velY;

private Vector2 v;

private GameObject parent_obj;

// Use this for initialization
void Start () {

}

private void Awake()
{
parent_obj = transform.parent.gameObject;
}

// Update is called once per frame
void Update () {
v = transform.parent.transform.position;

v.y = transform.position.y + velY;

transform.position = v;
}
}
Video2017-05-31174520.webm252 Кб, webm,
1152x572
155 403865
>>03853
>>03852

Смотри, такое решение тебе подойдет? Возможно не идеальное, но по-другому не знаю как сделать:

public class ChildController : MonoBehaviour {

public float velY;

private Vector2 v;

private GameObject parent_obj;

// Use this for initialization
void Start () {

}

private void Awake()
{
parent_obj = transform.parent.gameObject;
}

// Update is called once per frame
void Update () {
v = transform.parent.transform.position;

v.y = transform.position.y + velY;

transform.position = v;
}
}
156 403868
>>03853
>>03865

Анон, спасибо тебе за ответ. Я сам думал на счёт подобного решения (через transform.localPosition), только с использованием Time.deltaTime*vely. Сейчас собственно вижу, что решение даёт рывки, что никак не вписывается в общую картину.

Буду пробовать модифицировать либо искать другие решения, а может, ещё кто чего посоветует. В любом случае, спасибо, что не остался равнодушным.
157 403893
>>03868
Не за что, думаю, что через Mathf.Lerp у тебя получится добиться плавности. Добра.
158 403910
Аноны, есть один fbx...
Короче, сделал анимацию в блиндыре с помощью rigify, wgt-кости удалил, всё чистенько экспортировал fbx, ну и потом соответственно импортировал его в unity.
Вот в чём проблема:
начал настраивать т-позу этой анимации и у меня юнити начал умирать, кадров 2-3 в секунду
хз что такое, впервые такое
там выяснилось, что где то я нихера не почистил wgt, в fbx объекте находилось 104 меша и 108 объектов которых юнити генерирует при импорте модели/анимации
НО!
во второй анимации где объектов 1 меш( по сутичистый от wgt костей) та же самая история
еле могу выйти из режима редактирования т-позы, кнопка прожимается несколько минут
т.е. дело не в этом.
Гуглил - мало, что дало, считай ничего.
Что ето такое, аноны, ваши предположения.
159 403918
>>03893
Короче я добился плавности эмитируя сеттинг скорости путём сдвига на некоторое deltaY в FixedUpdate, палю годноту:

x = RainbowBody.transform.localPosition.x;
y= RainbowBody.transform.localPosition.y;
RainbowBody.transform.localPosition = new Vector2(x, y+((ymax-ymin)/RSpawnTime*Time.deltaTime));

ymax-ymin/RSpawnTime - определение скорости через минимальную и максимальную альтитуды пути, где RSpawnTime время, за которое объект преодолевает это расстояние. Ну и вишенка Time.deltaTime - дельта счётчика времени.
Полагаю rigidbody2D.velocity примерно так и делается.

Надеюсь, вам это пригодится, как пригодилось мне.
160 403925
>>03910
Чоткий поцан выкладывает файл на обменник, что бы другие поцаны пасмарели. Хули тут на пальцах объяснять-то.

Еще лучше- даешь исходник блиндыра
161 403986
>>01747 (OP)
Как прикручивать код C++ к Юнити? Обычными DllImport? Или есть получше варианты?
162 404011
>>03986
Нету, только дллимпорт
163 404050
Как сделать счетчик?
Такой что бы каждую минуту от 1000 отнимал 10.
Обычный таймер я делал, по типу
А = А - 1*Time.deltaTime
А вот что бы ровно каждую минуту отсчитывало, как сделать?

Или прикрутить точно такой же таймер, но просто при показе счетчика в игровом поле обрезать до целых чисел.
164 404075
>>04050

Думаю можно как-то так:

private int myCount;

private function Awake() {
mycount = 1000;

Invoke("MyDecreaseCount", 60f);
}

private function MyDecreaseCount() {
myCount-= 10;

Invoke("MyDecreaseCount", 60f);
}
165 404076
>>04075
А можно чекать текущее время каждый кадр.
166 404078
>>04076
Так ты же с таймером уже работал.

Запусти таймер в Awake, а в Update проверяй сколько времени прошло, думаю так.
167 404183
>>04050

InvokeRepeating("VICHITANIE", 0.0f, 60f);

void VICHITANIE() {
nahuya = 1000 - 10;
}
168 404185
>>04050
private int hui = 1000;

...

StartCoroutine(Counter());

...

IEnumerator Counter()
{
while (hui > 0)
{
hui -= 10;
yield return new WaitForSeconds(60);
}
}
169 404217
Аноны, есть 2d бомба которая обладает радиусом действия, хотелось бы показывать радиус окружность, как такое можно реализовать?
170 404238
>>04217
Спрайт нарисуй.
171 404241
сап, аноны. подскажите, как сделать конец игры как можно проще? допустим, я добежал до нужной точки (у меня 2д платформер) и вызывается начальное меню. и еще: как мне точно так же вызывать это меню, только когда у меня кончается хп.
я знаю, что ебланский вопрос, но я гуглю, там всякая хуйня и сложно. сам я головой думать не могу, так как по сути всю игру я сделал по подобию.
172 404244
>>04241

>как сделать конец игры как можно проще?



void OnTriggerEnter(Collider kallayder)
{
SceneManager.LoadScene("Menu", LoadSceneMode.Additive);
}
Бабка.jpg64 Кб, 480x800
173 404253
Раскопал недавно свою коллекцию недоделок и нашел охуэнную игру на мобилки
AVE UNITY! DEUS VULT
174 404262
>>04253

> коллекцию недоделок


New project
New project2
New projectjbjdkjbker
New pr
New
Test
@
Большая часть из них - пустые.
175 404264
>>04262
Ну ты и бабка
176 404297
>>04244
спасибо, а как можно еще конец игры самым простым способом сделать. у меня есть бар, в котором есть типа сердечки. как сделать, чтобы выходило начальное меню, когда эти сердца кончаются?
177 404298
>>04244
и да, можешь вообще объяснить, что мне делатьс этим. то есть скрипт я запихну, а что за коллайдер, и в каком это случае выйдет меню, когда дойду до определенной точки?
178 404301
>>04298
бляя, я все понял, я тормоз
Без имени-1.png3,2 Мб, 1920x869
179 404386
Никто не знает, как с макса сразу дохуя fbx экспортировать? Есть куча объедков в сцене и нужно все их раздельно экспортировать. И ещё. Как всё таки этот ёбаный пивот ставить для юнити? Помню, находил относительно правильное положение. А когда захотел траву из своих мешей запилить, то это положение тоже не подошло нихуя. Все меши завалились на бок.
Ну, в общем, поделитесь мудростью экспорта/импорта фбх.
180 404410
>>04386
Была похожая задача, нужно было через кастомный ипортер открыть несколько сотен файлов и экспортнуть их, написал скрипт, который все делал, там ничего сложного, но конкретно подсказать, что там и как не могу, поскольку уже давно было, а я на блендер перешел.

Но кстати, в чем проблема кинуть файл прямо в проект? Юнити на лету максовский формат конвертирует, потом добавляешь "модель" в сцену, отдельные меши будут потомками, их в сцене достаточно вынести за пределы родительского объекта и сделать префабом и все - дальше можно его использовать. На счет пивота опять же классический трюк - делаешь в юнити пустышку, а объект кидаешь в нее, корректируешь положение, все, трансформ пустышки и будет твоим пивотом/ориджином, делаешь префаб, используешь.

Не усложняй.
181 404419
>>04410
Да нет, я хочу ЛЮДЯМ сделать. Себе бы я абы как сделал. А я хочу, чтоб было всё чинно, благородно.
183 404448
>>02648

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



Есть несколько вариантов.
1. Обнулисть велосити.
2. Дать импульс, направленный в противоположную сторону от текущего.
184 404451
>>03163
Смотря что ты хочешь делать.

Нужно понимать, как работает выделение памяти и GC в .net и unity. Желательно уметь в LINQ. А если хочешь делать игры, то придется еще постигнуть линейную алгебру, паттерны проектирования, SOLID. Знать, чем отличается значимые переменные от ссылочных, и какие подводные камни могут быть с этим связаны. Можно еще покурить дженерики, но с ними нужно осторожно, GC их не любит, и если сделать все криво, то может начать кашлять.

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

Там еще есть нюансы работы с ресурсами, но это скорее про знание движка, чем про программирование.
185 404504
>>04485 (Del)
Почему?
мимо нуб с linq в .net 2.0
А если я на .net 6.0 перекачусь?
Игра у меня основана на подобии БД (в смысле ОЧЕ много связанных объектов)
Unity 2017-05-26 17-59-51-38.png209 Кб, 693x726
186 404516
компьют шейдоры какие же они крутые. вот здорово когда неожиданно находишь несколько терафлопсов и можешь ими командовать.

что-то тред загнивает, только этот хрен с дорожками что-то показал.

>>04485 (Del)
на самом деле конечно же это не так и в геймдеве лучше обходится всеми доступными инструментами, но не на всех промежутках жизни проекта.

>>04504
большая часть LINQ генерирует какое-то неебическое количество мусора в процессе. он хорош чтобы ускорить создание прототипов, но в итоге в готовом проекте его всякую клевую хуйню лучше убирать.
SHZ2.png256 Кб, 713x713
187 404524
>>04516

> тред загнивает

188 404554
Есть маленьнкий библиотечный проектик. Как добавить ссылку на на него?
Без имени-1.png16 Кб, 332x238
189 404611
Нормально делать декали, которые всякие там ямы в асфальте люки, хуюки, используя стандартный шейдер с прозрачностью катаут? И почему только он тень принимает? Фейд, например, гораздо лучше выглядит. Но на него тень не падает.
190 404630
>>04516

>что-то тред загнивает, только этот хрен с дорожками что-то показал.


Ну раз хочешь я на днях свою стратежку в разработке покажу, как новую версию релизну. Она без графония впрочем, совсем.
2.JPG217 Кб, 1600x736
191 404631
Ебашу свой двор, на ущербность домов не смотрите и общую ущербность сего творения, поставил чисто чтоб знать где че стоит и ориентироваться, потом хочу замутить квартиры открытые чтоб все были и все такое и кароч шутан будет в моём дворе, можно будет там засесть в какой-нибудь квартире к примеру в той дальней многоэтажке и отстреливать со снапы лохов всяких D:
192 404632
>>04631
Тут еще как раз садик и вот за ним типо школа стоит со спортзалом большим
193 404634
>>04631
выглядит конечно уебищно, но ты продолжай, получается хорошо. Главное персонажей кубами не делай и все ок будет.
194 404653
>>04631
Диванон по скриншоту!
195 404655
>>04653
Не надо, лучше подскажите чем можно быстро настругать кучу квартир для зданий?
196 404666
>>04297
void Update()
{
if (heart_count == 0)
SceneManager.LoadScene("Menu", LoadSceneMode.Additive);
}
197 404713
>>01757 (Del)
Охуеть, это двери?
198 404717
>>04713
А ты плотник?
Скриншот 05-06-2017 180438.png40 Кб, 567x468
199 404755
Прошу о помощи, возникла непредвиденная проблема.

Я новичок в Unity. Однако скачал сам движок до выхода Visual Studio 2017 - с версии 2015. Когда я узнал о том, что в версии 2017 удобнее работать, я удалил 2015 версию и скачал 2017, однако Unity, поскольку является независимой, осталась.

Обучаясь оcновам и не только Unity, я дошёл до момента, когда пора бы уже прикоснуться к скриптам. Так вот Unity предлагает мне лишь среду разработки MonoDevelop, а я хочу работать в Visual Studio 2017 (привык просто).

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

Буду очень признателен тому кто мне поможет.
200 404757
>>04755
Ну так ткни на "брауз" и найди свою студию. Или это так не работает?
Wm0vhz2[1].png320 Кб, 1800x815
201 404760
Кто там хотел поделок от анона - пытаюсь делать стратежку с экономикой основанной на симуляции агентов (а не на неких магических (и глючных) формулах как в Geopolitical Simulator)

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

Что есть:
Рандомногенерериуемая карта с провинциями
население
базовое производство\торговля\потребление
изобретения
часть реформ (с голосованием)
миграция\ассимиляция населения
можно набигать на соседей

Есть webGL демка: http://nashet.github.io/EconomicSimulation/WEBGL/index.html
Или можно скачать скачать тоже самое для PС, Mac, Linux, будет быстрее работать - https://github.com/Nashet/EconomicSimulation

Отдельный тред стоит пилить?
202 404761
>>04757
Да, скорее всего так.
Но я попробовал так сделать - и ничего хорошего у меня не получилось. Вероятно где то в папке Visual Studio лежит нужный мне файл или что то, однако я не знаю где это находится. Теперь это является моей проблемой, если данный способ является правильным
203 404762
>>04761
Пробовал Edit>Preferenses>ExternalTools ?
Если студию руками ставил то может понадобиться юнити-аддон. Или проще юнити обновить\переустановить она сама все сделает.
204 404763
>>04761
ПКМ по ярлыку студии → расположение файла. Это должен быть тот самый файл.
205 404764
>>04763
Спасибо большое! твой совет мне помог - всё работает как надо
206 404808
>>04755
С Юнити идёт интеграция с студией (см. галочки при установке), тебе надо её только поставить.
123123123.png837 Кб, 1173x852
207 404833
чтото двощь не хочет мои скриншоты. сделал растеризацию террейна через компьют шейдоры. доволен.

>>04760
я хотел, хорошо сделал. приятно видеть что в разделе что-то происходит.

как генерацию карты то устроил?
меню с таксами имеет повторяющиеся пункты?
как прокручивать карту?
и конечно здорово сделал перетягивающиеся элементы интерфейса, но чего они за пределы своей рамочки то могут уезжать?
KevTH51[1].png258 Кб, 1830x854
208 404895
>>04833

>чтото двощь не хочет мои скриншоты. сделал растеризацию террейна через компьют шейдоры. доволен.


>


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

>>04833

>как генерацию карты то устроил?


Генерирую карту в пнг (без всяких Вороновских и пр., просто рандом и волновой алгоритм). Пнг потом в меш перевожу. Пока с артефактами, потом пофикшу. Зато можно использовать карты из Виктории и пр. параходных игр.

>>04833

>меню с таксами имеет повторяющиеся пункты?


Да, это известный мне баг

>как прокручивать карту?


WASD или стрелки

>и конечно здорово сделал перетягивающиеся элементы интерфейса, но чего они за пределы своей рамочки то могут уезжать?


Они не должны. Скрин поехавшего интерфеса не прошу, но скажи хотя бы название окошка поехавшего и что за разрешение у тебя?
А, или ты может быть полноэкранный режим не включил? Тогда да может ехать малеха.
Unity 2017-05-25 11-14-14-66.png174 Кб, 1168x718
209 404897
>>04895

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


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

> Пнг потом в меш перевожу.


как меш то строишь, кстати?

>Они не должны.


я не заметил разницы между полноэкранным и не полноэкранным. почти все кнопки которые расположены в гриде зачем-то можно перетягивать налево-направо за край окошка в котором они. ты бы просто прокрутку чтоли сделал.
выаaererderrsdва.png107 Кб, 841x573
210 404900
>>04897

>как меш то строишь, кстати?


Читаю растровую картинку и фигачу полосочки из полигонов пикрелейтед. Потом округляю меш глючным способом

>>04897

>я не заметил разницы между полноэкранным и не полноэкранным. почти все кнопки которые расположены в гриде зачем-то можно перетягивать налево-направо за край окошка в котором они. ты бы просто прокрутку чтоли сделал.


А, я понял. Это стандартное поведение view port, надо починить, да. Да и вообще нормальные таблицы найти или самому запилить.
211 404903
Чет я удивился. Разве структуры в c# неизменяемы? (immutable). Или это в юнити какие то ограничения?

public struct Date
{
int blya;
public Date(int date)
{
this.blya = date;
}
public Date(Date date)
{
this.blya = date.blya;
}
public int getDate()
{
return blya;
}

internal void StepSimulation()
{
blya++;
}
......
}

использование:
Date date;
date.StepSimulation(); //Хуякс, значение blya не растет а скидывается в ноль

Да, я знаю что изменяемые структуры это плохо, но в моем случае со структурами удобнее (автоматически делает копирование полей при присвоении)
211 404903
Чет я удивился. Разве структуры в c# неизменяемы? (immutable). Или это в юнити какие то ограничения?

public struct Date
{
int blya;
public Date(int date)
{
this.blya = date;
}
public Date(Date date)
{
this.blya = date.blya;
}
public int getDate()
{
return blya;
}

internal void StepSimulation()
{
blya++;
}
......
}

использование:
Date date;
date.StepSimulation(); //Хуякс, значение blya не растет а скидывается в ноль

Да, я знаю что изменяемые структуры это плохо, но в моем случае со структурами удобнее (автоматически делает копирование полей при присвоении)
212 404909
>>04900

>Читаю растровую картинку и фигачу полосочки из полигонов пикрелейтед. Потом округляю меш глючным способом


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

чет двач совсем перестал отправлять картинки. сплошная ошибка постинга. http://i.imgur.com/XF6aBU1.jpg

>Да и вообще нормальные таблицы найти или самому запилить.


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

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

>>04903
в общем и целом они неизменяемые. там конечно есть хитрые читы местами но по большей части лучше такого не делать. это же валуе тупе как всякие int float bool, при присвоении структа ты его копируешь, а при изменении значения в нем создаешь новый с измененным значением.
213 404911
>>04903

>структура


>date


Держи, велосипедист: https://msdn.microsoft.com/ru-ru/library/system.datetime(v=vs.110).aspx
mapview.jpg117 Кб, 1502x813
214 404913
>>04760
Почему разработчики игр про симуляцию даже не пытаются в дизайн?
215 404914
>>04909

>чего, кстати, континенты то такие однообразные получаются? почти все прямоугольные. ты бы хоть при рандомной генерации начиная с краю удалял 6-10 регионов дополнительно чтобы получалось больше полуостровов. раз уж озёр не сделал.


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

>>04909

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


Хмм. Что у тебя белые и черные лини на пике значат? А синие? Полигоны и? Исходники своей работы не открываешь?

>>04909

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


Спасибо, а то для новичков это нифига не очевидно. Я же гуглил перед тем как спросить, пишут что все норм, не желательно но можно. Вот и верь гуглу теперь )

>>04911

>Держи, велосипедист: https://msdn


Спасибо конечно но у меня же тут свой средневековый в том числе мирок генерируется.. Хотя может и стоит стандарт использовать. Пишут что потянет MinValue is equivalent to 00:00:00.0000000 UTC, January 1, 0001, in the Gregorian calendar.

>>04913

>Почему разработчики игр про симуляцию даже не пытаются в дизайн?


Например, потому что симуляторы и так сложно пилить, а пилят их как правило энтузиасты (порой вообще не прогеры как автор Space Engine например) в то время как ААА конторы успешно продают пресс Х то вин для одноклеточных
216 404915
>>04914

>В будущем запилю несколько континентов, морские провы и пр. Все сразу не сделаешь, а так работает и ладно.


кстати, ты сделай хоть какую-то форму отображения актуальных соседей

>Хмм. Что у тебя белые и черные лини на пике значат? А синие? Полигоны и? Исходники своей работы не открываешь?


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

а почитать можешь свободно. https://www.assetstore.unity3d.com/en/#!/content/85181 оно давно на ассетсторе лежит бесплатное.
я правда в последней версии слегка поломал навигацию где у уровней несколько этажей.
в этой горе мусора скорей всего тебя заинтересует Generation/Graph/GraphIterator.cs где хитро сделаны шагающие квадраты и в той-же папке GraphTriangulator.cs где можешь почитать про разбиение контуров на конвексные области. оба правда где-то на границе читабельного написаны. если хочешь потом в картинках расскажу.

>Спасибо, а то для новичков это нифига не очевидно.


лучше почитай про Boxing/Unboxing в шарпе, про гарбаж и как к этому относятся структы.
Screenshot17.png17 Кб, 580x553
217 404917
Вечер в хату, ананасы. Делаю товарищу лабу (представьте себе, на унити). За меня написать не прошу, прошу помочь с такой вот хуйней:
Нужно нарисовать многоугольник. Для этого я сначала спрашиваю, сколько вершин человеку надо, затем истанциирую по два InputField'а для абсцисы и ординаты, хуе-мое. Здесь проблем никаких, проблема возникает в том, что, если указать меньшее число вершин, чем уже задано, ненужные InputField'ы остаются, а Юнити выдает ошибку о том, что такого индекса нет.
Так хули, блядь? Казалось бы, все верно, не прописывать же inpFields = null; , Destroy() выглядит логичнее.
Screenshot18.png16 Кб, 593x550
218 404918
Скрин хуевый.
219 404919
>>04917
ты чего там понаписал то. давай лучше целиком покажи. инпут филды то зачем дестроишь, просто сделать публичный массив не?

https://www.youtube.com/watch?v=g4j8WvC1Ct4 вон смотри например, тут рисуют цветные фигуры
provinces - копия (3).png1 Кб, 100x100
220 404920
>>04915

>кстати, ты сделай хоть какую-то форму отображения актуальных соседей


Предполагается что это будет интуитивно понятно, когда границы провинций\стран будут отрисовываться текстурой. (и сглаживание перестанет глючить)

>>04915

>а почитать можешь свободно. https://www.assetstore.unity3d.com/en/#!/content/85181 оно давно на ассетсторе лежит бесплатное.


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

Кстати, твой алгоритм работает на любых, самых наркоманских сочетаниях точек в растре? Вложения цветов и все-все-все? Пикрилейтед потянет например?
221 404922
>>04920

>Предполагается что это будет интуитивно понятно, когда границы провинций\стран будут отрисовываться текстурой. (и сглаживание перестанет глючить)


чтобы это было интуитивно понятно надо чтобы это хоть в какой-то форме отображалось бы. сделай хоть фильтр как в стелларис "отображать соседних ребят".

>Кстати, твой алгоритм работает на любых, самых наркоманских сочетаниях точек в растре? Вложения цветов и все-все-все? Пикрилейтед потянет например?


я уж постарался чтобы он не запнулся на всякой хуйне. он даже такое может. http://polariton.ad-l.ink/8nnBxQBYY/image.png
правда триангуляция может затянутся если такую хуйню сувать.
надо бы опимизончик в этой части попробовать сделать.
реальное ограничение по количеству цветов это количество положительных интов, именно так оно хранится в процессе.
222 404923
>>04919
Проблемы с отрисовкой нет, LineRenderer жи. Проблема в лишних InputField'ах, которые остаются от уже типа несуществующих вершин. На пиках видна моя проблема.
У меня есть int для количества вершин и лист InputField, который инстанциирует в два раза больше этих самых полей. Задается количество вершин, прописываются координаты, парсятся, если могут, строится многоугольник.
223 404924
>>04923
https://pastebin.com/r8mB6F5j — собственно, весь код. Извиняюсь, что в несколько постов пишу.
c760e10a45e6.jpg33 Кб, 350x500
224 404926
>>04760
Лол, сегодня как раз хотел наконец начать уже пилить свою глобальную дрочильню, зашел посмотреть как процедурные карты генерить в Unity, а тут оказывается уже во всю кто-то делает.
Какую БД используешь?
Как организована система спрос-предложение?
Насколько она ООП-ориентирована?

>с экономикой основанной на симуляции агентов


Чем отличается от потребностей страт в вике? Агенты, это я так понимаю, участники рынка отдельные (гос-во, фирмы, потребители)

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

Вообще, есть масса идей, определенные скилы в SQL и программировании на C# и главное желание, так что если хочешь, можем связаться.
uzEJCvM[1].png193 Кб, 1920x883
225 404928
>>04923
Я бы не стал вручную инстантиировать всякую хрунь.. У меня например таблицы строятся на создании охулиона кнопок, но я их из префаба беру (и из пула) так что они не уничтожаются по сути а делается SetActive(false) (прячет);

>>04922

>чтобы это было интуитивно понятно надо чтобы это хоть в какой-то форме отображалось бы. сделай хоть фильтр как в стелларис "отображать соседних ребят".


Что то я засомневался, понимаю ли я о чем речь. Речь ведь о соседних (вражеских) провинциях?

>>04922

>реальное ограничение по количеству цветов это количество положительных интов


Круть. Если получится добавить это в свой проект (когда буду реальные армии делать заместо абстрактных) это мне спасет кучу времени и нервов. Тем более что я ничего в графах не понимаю.

>>04926

> зашел посмотреть как процедурные карты генерить в Unity, а тут оказывается


Хочешь читай, хочешь форкай, хочешь присоединяйся.

>Какую БД используешь?


Увы, практически никакую. В меру глючные списки и словари и LINQ (которая, как многие говорят тормозит по крайней мере в .net2.0)

>>04926

>Как организована система спрос-предложение?


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

>>04926

>Насколько она ООП-ориентирована?


Много публичных полей и прочей грязи в коде, но я борюсь с этим ) Сегодня 50 косяков на codacy исправил

>>04926

> Агенты, это я так понимаю, участники рынка отдельные (гос-во, фирмы, потребители)


Да

>>04926

>Чем отличается от потребностей страт в вике?


Основное отличие - Попы покупают товары внутри группы (жизненно важные, повседневные товары, роскошь) не в фиксированном порядке а в порядке сначала дешевые. Ну и я хотел бы что бы агенты вели себя более адекватно, если полочится.

Допишу щас
uzEJCvM[1].png193 Кб, 1920x883
225 404928
>>04923
Я бы не стал вручную инстантиировать всякую хрунь.. У меня например таблицы строятся на создании охулиона кнопок, но я их из префаба беру (и из пула) так что они не уничтожаются по сути а делается SetActive(false) (прячет);

>>04922

>чтобы это было интуитивно понятно надо чтобы это хоть в какой-то форме отображалось бы. сделай хоть фильтр как в стелларис "отображать соседних ребят".


Что то я засомневался, понимаю ли я о чем речь. Речь ведь о соседних (вражеских) провинциях?

>>04922

>реальное ограничение по количеству цветов это количество положительных интов


Круть. Если получится добавить это в свой проект (когда буду реальные армии делать заместо абстрактных) это мне спасет кучу времени и нервов. Тем более что я ничего в графах не понимаю.

>>04926

> зашел посмотреть как процедурные карты генерить в Unity, а тут оказывается


Хочешь читай, хочешь форкай, хочешь присоединяйся.

>Какую БД используешь?


Увы, практически никакую. В меру глючные списки и словари и LINQ (которая, как многие говорят тормозит по крайней мере в .net2.0)

>>04926

>Как организована система спрос-предложение?


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

>>04926

>Насколько она ООП-ориентирована?


Много публичных полей и прочей грязи в коде, но я борюсь с этим ) Сегодня 50 косяков на codacy исправил

>>04926

> Агенты, это я так понимаю, участники рынка отдельные (гос-во, фирмы, потребители)


Да

>>04926

>Чем отличается от потребностей страт в вике?


Основное отличие - Попы покупают товары внутри группы (жизненно важные, повседневные товары, роскошь) не в фиксированном порядке а в порядке сначала дешевые. Ну и я хотел бы что бы агенты вели себя более адекватно, если полочится.

Допишу щас
226 404929
>>04926

>какие капиталисты-то кстати, если игра судя по всему в сеттинге средневековья?


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

>>04926

>Система с делением страт не очень, получается что все рабочие, все капиталисты прямо в сговорах состоят.


Какие сговоры?

> Почему бы не использовать принцип вики?


ЕМНИП в вике такой же принцип.

>>04926

>Слабо представляю себе масштаб карты


Пока тормоза будут в разумных пределах

>>04926

> Почему не использовать хексы?


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

>>04926

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


Можно на гитхабе https://github.com/Nashet пообщаться
Или можешь прямо в трекер идеи слать https://waffle.io/Nashet/EconomicSimulation
226 404929
>>04926

>какие капиталисты-то кстати, если игра судя по всему в сеттинге средневековья?


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

>>04926

>Система с делением страт не очень, получается что все рабочие, все капиталисты прямо в сговорах состоят.


Какие сговоры?

> Почему бы не использовать принцип вики?


ЕМНИП в вике такой же принцип.

>>04926

>Слабо представляю себе масштаб карты


Пока тормоза будут в разумных пределах

>>04926

> Почему не использовать хексы?


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

>>04926

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


Можно на гитхабе https://github.com/Nashet пообщаться
Или можешь прямо в трекер идеи слать https://waffle.io/Nashet/EconomicSimulation
227 404932
>>04928
Ок, попробую через SetActive. Надеюсь, хотя бы этот костыль будет работать.
Ну, хотя бы я узнал, где в Юнити скрипт на скроллящиеся панельки.
14530882793730.jpg26 Кб, 369x450
228 404935
>>04928

>Увы, практически никакую. В меру глючные списки и словари и LINQ (которая, как многие говорят тормозит по крайней мере в .net2.0)


По-моему, использование БД в ГС - неизбежность. Можно конечно использовать JSON-ориентированные БД, не заморачиваясь с SQL, что теоретически может облегчить и модификацию (JSON можно и с SQL интегрировать тащемта), но БД нужна обязательно. К тому же лучше сразу набросать модель БД, максимально унифицировать ее, чтобы оставить больше возможностей для расширения и согласовать с ОО-моделью, используемой в механике игры. Кстати, я так понимаю функция сохранений тут не реализована? Сохранять скорее всего тоже придется в БД. Если ты конечно не собираешься пилить только одноразовый online (учитывая, что такие игры ориентированы в основном на аутистов, такой формат вряж ли подойдет)

>Я пробовал разные подходы, сейчас - это соотношение реально купленного за прошлый тик к отосланному на рынок за прошлый тик.


Хм, т.е. спрос-предложение неразрывно связаны причем в рамках одного тика? И стокпайла как такового нет? Как и понятия доставки и торговых путей? (привет ограбленным корованам и разбитым дорогам) Алсо, то что Trade не нажимается это баг или просто пока не прикрутил торговлю?

>Основное отличие - Попы покупают товары внутри группы (жизненно важные, повседневные товары, роскошь) не в фиксированном порядке а в порядке сначала дешевые. Ну и я хотел бы что бы агенты вели себя более адекватно, если полочится.


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

Еще несколько вопросов:
1) По производствам. Вижу, что у тебя есть апгрейд зданий, но не очень понимаю, он только кол-во увеличивает что ли? Просто, если брать тот же GPS там была такая классная фишка (которая правда не работала, как и все в этой игре) как качество товара. Я думаю соотношение Цена/Качество/Доступность - эта троица, которую вполне можно реализовать в рамках игровой условности. Есть идея как, но она не вполне увязывается с походовым типом игры, хотя можно придумать что-нибудь;
2) Собственно походовость. Чему равен ход? Просто год это очень много для того, чтобы запилить полноценную экономику, особенно на позднем этапе (начиная с времени, актуальному середине 19го века это уже становится слишком оторванно от реальности). Все ГС со сложной экономической системой идут, в условном конечно, но реальном времени. Я понимаю, что ходы легче (хотя система ивентов тоже норм), но может тогда вообще убрать дату, сделать ее условной и считать просто по ходам, оставляя все на воображение игрока (учитывая, что это не исторический симулятор).

Алсо, это очень круто, что ты делаешь мир рандомным, земляшка реально заебала в ГС, можно широко юзать какой-нибудь опенсорсный ворд-генератор, чтобы кастомизировать мир (названия компаний например генерить).
14530882793730.jpg26 Кб, 369x450
228 404935
>>04928

>Увы, практически никакую. В меру глючные списки и словари и LINQ (которая, как многие говорят тормозит по крайней мере в .net2.0)


По-моему, использование БД в ГС - неизбежность. Можно конечно использовать JSON-ориентированные БД, не заморачиваясь с SQL, что теоретически может облегчить и модификацию (JSON можно и с SQL интегрировать тащемта), но БД нужна обязательно. К тому же лучше сразу набросать модель БД, максимально унифицировать ее, чтобы оставить больше возможностей для расширения и согласовать с ОО-моделью, используемой в механике игры. Кстати, я так понимаю функция сохранений тут не реализована? Сохранять скорее всего тоже придется в БД. Если ты конечно не собираешься пилить только одноразовый online (учитывая, что такие игры ориентированы в основном на аутистов, такой формат вряж ли подойдет)

>Я пробовал разные подходы, сейчас - это соотношение реально купленного за прошлый тик к отосланному на рынок за прошлый тик.


Хм, т.е. спрос-предложение неразрывно связаны причем в рамках одного тика? И стокпайла как такового нет? Как и понятия доставки и торговых путей? (привет ограбленным корованам и разбитым дорогам) Алсо, то что Trade не нажимается это баг или просто пока не прикрутил торговлю?

>Основное отличие - Попы покупают товары внутри группы (жизненно важные, повседневные товары, роскошь) не в фиксированном порядке а в порядке сначала дешевые. Ну и я хотел бы что бы агенты вели себя более адекватно, если полочится.


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

Еще несколько вопросов:
1) По производствам. Вижу, что у тебя есть апгрейд зданий, но не очень понимаю, он только кол-во увеличивает что ли? Просто, если брать тот же GPS там была такая классная фишка (которая правда не работала, как и все в этой игре) как качество товара. Я думаю соотношение Цена/Качество/Доступность - эта троица, которую вполне можно реализовать в рамках игровой условности. Есть идея как, но она не вполне увязывается с походовым типом игры, хотя можно придумать что-нибудь;
2) Собственно походовость. Чему равен ход? Просто год это очень много для того, чтобы запилить полноценную экономику, особенно на позднем этапе (начиная с времени, актуальному середине 19го века это уже становится слишком оторванно от реальности). Все ГС со сложной экономической системой идут, в условном конечно, но реальном времени. Я понимаю, что ходы легче (хотя система ивентов тоже норм), но может тогда вообще убрать дату, сделать ее условной и считать просто по ходам, оставляя все на воображение игрока (учитывая, что это не исторический симулятор).

Алсо, это очень круто, что ты делаешь мир рандомным, земляшка реально заебала в ГС, можно широко юзать какой-нибудь опенсорсный ворд-генератор, чтобы кастомизировать мир (названия компаний например генерить).
229 404938
>>04929

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


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

>ЕМНИП в вике такой же принцип.


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

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


Не согласен. Можно же использовать региональность. Т.е. прова также будет какой угодно формы, но состоять из множества хексов. Игрок сможет тогда расширять регион, вводить иерархию регионов (город-провинция-страна) четко отчерчивать границы при мирных договорах, будет иметь смысл войны за мелкие участки. Можно будет запилить условный гонконг или гибралтар, например, обозначать ОЭЗ, ДМЗ, линии фронта и.т.д. В будущем можно запилить уровневые хексы - город, представленный одним хексом на глобальной карте, раскрывается множеством на локальной. Да и вообще возможности кастомизации увеличиваются в разы.

>Пока тормоза будут в разумных пределах


Кстати, а почему так тормозит-то? Что там ресурсы так жрет? Или плата за браузерность?
230 404942
>>04938
Алсо, можно использовать не хексы а пазлы. Но это, конечно, гораздо сложнее.
231 404955
>>404953 (OP)
Я запилил тред что бы не мешать анону - >>404953 (OP) - там и ответил на все (кажется)
232 404956
>>04932
Господи, ебать я тупенький. list.Count() выдает количество ячеек в листе, но индекс-то, блядь, на единичку ниже будет. Ну теперь-то с колен привстанем.
233 404993
>>02716
Бамп вопросу
234 405003
>>04993
Расслабься, тебе все равно не светит заработать 100к$. Твой уровень - тупые вопросы в юнити треде.
Screenshot9.jpg35 Кб, 641x442
235 405006
>>04926

>какие капиталисты-то кстати, если игра судя по всему в сеттинге средневековья?


Помнишь, откуда?
236 405150
Маленький вопрос по монодевелопу.
/Впринципе для моего текстого квеста он абсолютно подходит и MVS пока качать не вижу смысла/
Не работают хоткеи от слова совсем. особенно бесит Ctrl+C,Ctrl+V. Код программки заточен на кучу переходов от сцены к сцене поэтому прошу советов как заставить иххоткеиработать.
237 405151
>>05150
они работают только если у тебя английская раскладка. слезай с этого говна.
238 405155
>>05151
забыл написать, что не работают они на обеих раскладках.

Естественно слезу, но с моим интернетом качать 8ГБесли не больше пока очень сомнительно.
239 405202
Аноны, помогите понять, где я проебался, а то я себе уже голову сломал блин.

Есть три числа и есть сумма этих чисел и я нихуя не понимаю, почему получается именно такая сумма. Ведь если их сложить, то ничего похожего не получается.

Дебаг кода ниже выдает:

1.046729 -9.06542 -2.71028 -10.72897 1.046729

9.06542 -2.71028 -10.72897 должны давать 4,37383

но никак не 1.046729

Где я ошибаюсь?

void OnMouseDrag()
{

mouse_x = Camera.main.ScreenToWorldPoint (new Vector3 (Input.mousePosition.x, Input.mousePosition.y, screenPoint.z)).x;

myrotation = Camera.main.ScreenToWorldPoint (transform.position).x - mouse_x - offset.x;

transform.rotation = Quaternion.AngleAxis (myrotation * rotationSpeed, Vector3.forward);

Debug.Log (myrotation+" "+offset.x+" "+mouse_x+" "+Camera.main.ScreenToWorldPoint (transform.position).x+" "+(Camera.main.ScreenToWorldPoint (transform.position).x - mouse_x - offset.x));

}
239 405202
Аноны, помогите понять, где я проебался, а то я себе уже голову сломал блин.

Есть три числа и есть сумма этих чисел и я нихуя не понимаю, почему получается именно такая сумма. Ведь если их сложить, то ничего похожего не получается.

Дебаг кода ниже выдает:

1.046729 -9.06542 -2.71028 -10.72897 1.046729

9.06542 -2.71028 -10.72897 должны давать 4,37383

но никак не 1.046729

Где я ошибаюсь?

void OnMouseDrag()
{

mouse_x = Camera.main.ScreenToWorldPoint (new Vector3 (Input.mousePosition.x, Input.mousePosition.y, screenPoint.z)).x;

myrotation = Camera.main.ScreenToWorldPoint (transform.position).x - mouse_x - offset.x;

transform.rotation = Quaternion.AngleAxis (myrotation * rotationSpeed, Vector3.forward);

Debug.Log (myrotation+" "+offset.x+" "+mouse_x+" "+Camera.main.ScreenToWorldPoint (transform.position).x+" "+(Camera.main.ScreenToWorldPoint (transform.position).x - mouse_x - offset.x));

}
240 405217
>>05202

>1.046729 -9.06542 -2.71028 -10.72897 1.046729


>9.06542 -2.71028 -10.72897 должны давать 4,37383


Что ты несешь то?
-4,37383 может быть?
Нихуя не понятно.

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

мимо кодю 18 лет
241 405232
>>05217

> когда затык - лучше забей на задачу и займись другим, а эта решится сама собой



прям две цистерны чая тебе.
мимоиндидев
242 405233
Какой хоткей для переименования сцен в юнити? Я заебался сидеть как дурак и полчаса тыкать в название сцены, чтобы название можно было поменять.
243 405238
>>05217
Заебись совет. Ну да ладно, меню пока поделаю.
244 405250
>>05202
У тебя второе число скорее всего отнимается, а не прибавляется
Потому что если у второго числа нет минуса как раз получается 1.046
show.png66 Кб, 484x579
245 405274
Вопрос по текстурированию
На пике плоский меш (символизирует провинцию.) Нужно по периметру меша наложить текстурe границы (полосочка такая 20х80 скажем, с рисунком границы, как вверху пикрила).
Я правильно понимаю что текстуру прямо на этот меш накладывать нельзя- ее растянет по всему мешу как ни крути UV?
Вместо этого наверно надо зафигачить еще меш (белые треугольники) и на одну сторону треугольников наложить текстуру? (Ну или, может быть, прямоугольники должны быть где у меня белые треугольники)
Более простого способа реализации наверно нет? Да и лагать сильно не будет (текстура будет меняться со временем)
246 405292
>>05274
А зачем границы векторные, ты хочешь зумить эту хуйню во весь экран? Просто можно же всю эту провинцию вместе с границей нарисовать прямо в текстуре и обойтись одним прямоугольником.
247 405296
>>05292
Хм, интересный подход. Но дело в том что форма провинций не рисуется заранее а генерируется рандомно каждый раз (в виде png файла) а потом переводится в меш.

Поэтому надо таки накладывать текстуру границ на некий неизвестный заранее меш.
Вот тут - верно?

>Я правильно понимаю что текстуру прямо на этот меш накладывать нельзя- ее растянет по всему мешу как ни крути UV?

248 405301
>>05274
у тебя же формы провинций не меняются. сгенерируй список из Vector3 по краям провинции и рисуй красивые линии по этим кординатам. это же можно по разному использовать. например менять толщину линий у провинции под курсором.
249 405310
>>05301

>у тебя же формы провинций не меняются. сгенерируй список из Vector3 по краям провинции и рисуй красивые линии по этим кординатам. это же можно по разному использовать. например менять толщину линий у провинции под курсором.


Тоже вариант. Но хотелось бы в 3д, что бы бит мапингом обмазаться и всеми прелестями текстурок. Зум опять же есть. Что имеешь ввиду под >рисуй красивые линии
Какой то 2д метод/класс? Я знаю только Debug.DrawLine и тот кривой какой то.
250 405331
>>05310
Может быть LineRenderer?
251 405337
>>05331

>Может быть LineRenderer?


О, прикольная штука, придется пробовать.
252 405367
Подскажите библиотеку на си шарп по базовой геометрии, вроде проверить лежит ли точка на линии, параллельность линий и т.д. в 3д. А то я своего на велосипедил, хз как оно работать будет. В гугле и гитхабе искал.
254 405370
>>05369
Спасибо!
255 405416
Есть идеи как сделать молнию, бьющую из точки в точку в 2D? Может кому-то встречались готовые гайды какие-то?
Без имени-2.png427 Кб, 704x462
256 405421
А если я запилю платный ассет, где все текстуры с https://www.textures.com/ , меня на бутыль не посадят? Я периодически встречал знакомые текстуры на сторе. Но там это не так очевидно было. А у меня, как мне кажется, будет пиздец заметно.
257 405434
>>05416
Рисуешь несколько спрайтовых молний на прозрачном фоне, тянешь спрайт от точки А до точки Б, меняешь спрайты в рандомном порядке. По-моему даже в фотошопах кисти-молнии есть.
258 405435
>>05421
Лицензию чекни, если автор разрешает коммерческое использование, то вперед.
259 405436
>>05435

> Лицензию чекни


Чёт не нашёл. Но в термс оф юз на сайте сказано, что так нельзя делать. Если я правильно перевел.
260 405439
>>05436
Поищи те, которые можно. Если планируешь этим зарабатывать, лучше озаботиться заранее, чем дождаться, когда тебя пидорнут из стора и лишат дохода.
261 405441
>>05439
Так ведь и выходит, что те, которые можно - хуита. Мне их в яндекс картинках брать, чтоль? А хорошие нельзя. И камеры хорошей у меня нет.
Какая-то безвыходная ситуация.
Без имени-2.png1,2 Мб, 1049x884
262 405461
>>05421

> I have used the textures on a 3D model/scene. Am I allowed to sell the model/scene and textures as a bundle?



> Yes, under the following condition: You have customized the textures for the 3D-model or scene, and you are selling the model and texture in one package. Please add the following text in the documentation accompanying the model: "One or more textures on this 3D-model have been created with images from Textures.com. These images may not be redistributed by default. Please visit www.textures.com for more information."



Так всё же можно, выходит? Да?
263 405484
>>05421

>2k17


>фото-текстуры



мда хех
264 405485
>>05484
Предлагаешь дрочить сабстансы? Ну нахуй.
265 405524
>>05434
Суть я уловил, спасибо.

А есть ли способ динамически "тонировать" спрайт в юнити, то есть закрасить его определенным цветом? Молния она же "мерцает", и не хотелось бы на каждый оттенок рисовать отдельный спрайт.

В идеале было бы удобно нарисовать форму на прозрачном фоне и закрашивать ее рандомным оттенком.
imagecolor.jpg66 Кб, 546x659
266 405674
>>05524
Да, просто меняешь цвет у компонента Image.
267 405693
Javascript или С#?
268 405695
>>05693
Без разницы.

мимо знаю оба
269 405699
>>05693
C#
Вообще в Unity нет Javascript, там UnityScript, от поддержки которого скорее всего скоро откажутся. Почти все последние официальные туторы выходят на C#
270 405713
>>05674
Спасибо.
271 405720
>>05699
Дай Аллах мне больше мотивации для изучения С#. Довольно таки сложно вкатываться в программирование...
272 405724
>>05720
Вкатится - легко. Вот понять что ты делаешь - сложно
273 405725
>>05724
Удвою.
14633468061900[1].jpg31 Кб, 395x492
274 405775
>>05724

>что ты делаешь

275 405858
>>05274
Вопрос контактного расчета uv. Поэкспериментируй. Можно треугольники порезать еще.
выаaereукrdsdва.png4 Кб, 342x127
276 405881
>>05858>>05858

>Вопрос контактного расчета uv


Что за контактный расчет?
Смотри, у меня меш (рандомно генерируемый) состоит из квадов как на пике 1, из 4х вершин. На края нужно наложить текстурку границы провинции.

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

>Можно треугольники порезать еще.


Я пока пытаюсь создавать отдельный меш по краям провинции, пик 2, но пока не оче с алгоритмом кое-где
выавааaereукrdsdва.png82 Кб, 941x470
277 405882
>>05881
пик 2 отклеился
278 405896
>>05894 (Del)
MyWarbandInfo наследует MonoBehavior?
Если да, то используй GameObject.AddComponent вместо вызова конструктора. Компонент в юнити не может "висеть" просто так, не являясь частью объекта, насколько я знаю.
279 405901
>>05899 (Del)
Делай инициализацию в void Awake(), а не в конструкторе, создавай компонент через gameObject.AddComponent ("FoobarScript"); и только после этого добавляй его в массив.
280 405902
>>05899 (Del)
Сделай массив из game object, добавь каждому компонент
281 405910
>>05906 (Del)
То, что у тебя в конструкторе MyWarbandInfo, перемести в функцию private void Awake() {}; Она исполняется автоматически при создании компонента.
Сам конструктор удали и никогда больше не создавай в наследниках monobehaviour, юнька от этого болеет.
MyWarbandInfo должен быть прикреплен к какому-нибудь gameObject, чтобы теребонькать функции Awake, Start, Update, FixedUpdate и все остальные. Юнити делает это самостоятельно, тебе надо только создать gameObject и добавить к нему компонент MyWarbandInfo.
Для этого есть два пути. Либо ты создаешь объект внутри сцены, и прикрепляешь к нему скрипт с помощью кнопки AddComponent в редакторе (в этом случае все остальное юнити сделает самостоятельно), либо создаешь GameObject (var go = new GameObject();) и вызываешь функцию go.AddComponent() из какого-нибудь другого объекта, например GameController.
282 405911
>>05910
А вообще я тут пивас пью и немного в дрова, так что сорян за неизящный слог.
283 405921
>>05881
Генерируй треугольники границы.
284 405923
>>05918 (Del)
Создай отдельную сцену с менеджерами всякой хуйни, и подгружай-выгружай другие сцены
Unity 2017-06-11 23-19-34-64.png65 Кб, 716x796
285 405926
>>05881
но зачем? LineRenderer сам линии нарисует и текстурку наложит. ты бы лучше не велосипеды писал а игры делал.
provinces.png24x24
286 405932
>>05926
Я пробовал, но у меня фигуры сложные - одной линией не нарисуешь. Да и сложно алгоритм написать что бы точки шли строго в определенной последовательности, а без этого LneRenderer узлами завязывается
Unity 2017-06-12 00-07-01-45.png28 Кб, 692x570
287 405933
>>05932
да легко там всё. у тебя же грид. например возьми marching squares, или любой другой метод который бы выдал тебе контур покрасивей. сделай список из отрезков, соедини все отрезки исключая их из имеющегося списка. получишь список координат по периметру. это явно проще чем то что ты там задумал.
288 405940
>>05918 (Del)
Не держи CharacterStats как MonoBehaviour, очевидно же.
289 405962
>>05918 (Del)
Массив тоже должен лежать в геймобджекте, и для этого геймобджекта надо вызвать NotDestroyOnLoad.
290 405966
Если есть желание поковыряться в создании 2d roguelike, то юнити плохой выбор?
291 405972
>>05966
Юнити хорош тем что наличие редактора значительно упрощает отладку чего-либо. И для рогалика хороший выбор, если только не существует специальных движков для рогаликов.
292 405976
>>05962
Хинт: обычные .NET объекты не убиваются при смене сцены. Тебе нужно MonoBehaviour только для чего-либо на сцене, либо для получения вызовов из Юнити.
вerыаaererdsdва.png20 Кб, 434x236
293 406014
>>05933
Кое как впихнул marching squares в генератор, пикрил.
Появились дырки в местах где сходятся 3 или 4 цвета.

Вероятно, дырки из-за того что я использовал "одноцветный" marching squares, т.е. каждая точка либо соответствует анализируемому в данный момент цвету либо нет.

Теперь, походу, придется в эти http://catlikecoding.com/unity/tutorials/marching-squares-5/ дебри погружаться, я ж там потону нафиг. Хотя не, там какой то велосипедный код фиксированный на 4х цветах. Мне как то монохромный алгоритм фиксить надо...
case.png2 Кб, 287x148
294 406023
>>06014
так ты сделай для всех случаев где уголки чтобы у тебя возвращались 2 отрезка а не 1. для диагональных можно и сразу все 4
выаaerefdfrdsdва.png388 Кб, 1920x840
295 406030
>>06023

>так ты сделай для всех случаев где уголки чтобы у тебя возвращались 2 отрезка а не 1. для диагональных можно и сразу все 4


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

Спасибо тебе, анон. Если я еще смогу на новый меш еще и границы стран наложить будет вообще здорово.
296 406035
>>01747 (OP)
Кто знает где можно накачать хороших анимаций для гуманоида?
case2.png15 Кб, 1000x240
297 406036
>>06030
я говорю что marching squares же строятся на 4 элементах в гриде в форме квадратика. для угловых можно поменять способ построения. чтобы вместо 1 линии там было 2 и весь результат был лесенкой. но это разумеется исправит проблему островков кторую ты заметил ранее. потом когда ты уже построил всю эту хуйню можно поделить имеющееся на отрезки где края имеет больше 2 соседей. а потом к этой линии применить любой алгоритм упрощения линии. например алгоритм Рамера-Дугласа-Пекера.
хотя ты там уже сделал что-то и стало лучше чем было.

>>06035
в ассетсторе есть огромные паки с мокапом. у https://www.mixamo.com/ есть несколько бесплатных паков хороших.
298 406041
>>06036
Надо бесплатно и анимации солдатов для шутера.
299 406042
>>06041
зайди на mixamo > store. там есть Pro Rifle Pack, когда я последний раз смотрел он был бесплатным и он довольно неплох. и вообще я тебя уже послал куда надо, тут тебе не гугл.
300 406043
>>06042
NinjaRipper может вытаскивать анимации?
case3.png2 Кб, 247x227
301 406056
>>06036
хотя вообще тут даже marching squares не нужны будут лол. чего это я. можно просто перебирая всех соседей узнать есть ли линия, или нет. в зависимости от стороны можно ещё и направление получить чтобы знать что с какой стороны.
302 406099
>>05693
Учи JS и вкатывайся в web-макакинг.
ss (2017-06-13 at 01.22.44).png7 Кб, 400x172
303 406140
>>01747 (OP)
Ребят, накатил этот ваш юнити, начал делать Roll a Ball по официальному гайду, превозмогая собственное незнание инглиша, и столкнулся с вот какой бедой на пикрелейтеде. Что можете посоветовать, геймданы?
ss (2017-06-13 at 01.56.08).png71 Кб, 1382x784
304 406141
>>06140
Ну вот ещё проблема - поиск по документации из коробки ни работает. Ну что это за фигня? Почему даже по официальным мануалам нельзя нормально заниматься, а нужно бороться с глюками движка и среды разработки? Зачем весь этот пердолинг? Юнити делает меня грустить.
305 406143
>>01747 (OP)
Мужики, помогите. У меня есть 2d - объект, игрок расручивает его на телефоне свайпом вдоль оси z. Мне нужно знать на какой угол повернулся объект за один Update.
306 406144
>>06143
у меня получилось, внезапно помогло вот это https://docs.unity3d.com/ScriptReference/Quaternion.Angle.html
307 406145
>>06140
Это у тебя MS VS выдает? Возможно, старая версия MS или Unity. Или мусор какой то в проекте.

Переустанови\пересоздай проект

>>06141

>Ну вот ещё проблема -


Чта? Нафига ты в браузер полез?

For those that don't have it, install Visual Studio. It's now free for many users.

Make sure Visual Studio Tools for Unity is installed and the configuration is done.

As djradon mentioned, the standard shortcut is CTRL+ALT+M,CTRL+H for Unity Documentation Access
308 406146
>>06141

>Зачем весь этот пердолинг? Юнити делает меня грустить.


Юнити любит подглючивать, но жить можно. У тебя скорее всего ошибка на твоей стороне.
309 406151
>>06145
Делал всё как в официальном мануале. До этого не пердолил ни студию, ни юнити, всё из коробки стоит. Браузер со статьёй из документации должен открываться при выделении слова и нажатии ctrl + '. Но вот уже в двух местах хуета какая-то. Такие вещи лично меня очень демотивируют.
310 406263
Охуееть пацаны. Вот этот код
List<EdgeHelpers.Edge> res = new List<EdgeHelpers.Edge>();

foreach (var checkingEdge in edges)
{
//if neighbor has checkingEdge add it in res
foreach (var comparingEdge in neighbor.edges)
if (MeshExtensions.isTwoLinesTouchEachOther(meshStructure.vertices[checkingEdge.v1],
meshStructure.vertices[checkingEdge.v2],
neighbor.meshStructure.vertices[comparingEdge.v1],
neighbor.meshStructure.vertices[comparingEdge.v2])
)
res.Add(checkingEdge);
}

return res;

Где meshStructure - это стандартный Юнитивский Mesh выполняется 10 секунд и аллоцирует 2.5 гига памяти. гроб гроб пизда кладбище
Тот же код где meshStructure это
public class MeshStructure
{
public List<Vector3> vertices;
public List<int> triangles;
}

Выполняется за 0.7 секунды и 480 КБ, лол

Вывод - разделяйте использование unity API и логику, заодно и многопоточность можно будет запилить
310 406263
Охуееть пацаны. Вот этот код
List<EdgeHelpers.Edge> res = new List<EdgeHelpers.Edge>();

foreach (var checkingEdge in edges)
{
//if neighbor has checkingEdge add it in res
foreach (var comparingEdge in neighbor.edges)
if (MeshExtensions.isTwoLinesTouchEachOther(meshStructure.vertices[checkingEdge.v1],
meshStructure.vertices[checkingEdge.v2],
neighbor.meshStructure.vertices[comparingEdge.v1],
neighbor.meshStructure.vertices[comparingEdge.v2])
)
res.Add(checkingEdge);
}

return res;

Где meshStructure - это стандартный Юнитивский Mesh выполняется 10 секунд и аллоцирует 2.5 гига памяти. гроб гроб пизда кладбище
Тот же код где meshStructure это
public class MeshStructure
{
public List<Vector3> vertices;
public List<int> triangles;
}

Выполняется за 0.7 секунды и 480 КБ, лол

Вывод - разделяйте использование unity API и логику, заодно и многопоточность можно будет запилить
311 406268
>>06151
Демотивируют - не делай.
312 406270
>>06263
Чет я сумбурно написал. Суть такова: обращение к Mesh.vertices[] в цикле дает огромные лаги и трату памяти. Вероятно, потому что меши хранятся в видео памяти или бог знает где еще. Те же самые действия с копией меша в виде обычного (не Unity) класса работают на порядки быстрее.
Безымянный.png1,8 Мб, 1920x1080
313 406273
>>01747 (OP)
Как увеличить разрешение сетки ландшафта ?
314 406284
>>06273
Хейтмэп резолюшн, вроде. Попробуй.
315 406285
>>06284
Нет эффекта
NIYOnlnxSUhDk84uXqFg.png13 Кб, 589x247
316 406290
>>06270
А мог бы документацию посмотреть
317 406306
>>06290

>А мог бы документацию посмотреть


Я даже видел это, и не раз. Но я не предполагал что копируется весь массив (видимо, при каждом обращении, даже на чтение) да потом еще и где то застревает по пути к мусорщику (как мне показалось). Думал, элемент копируется.
318 406353
>>06151

>Такие вещи лично меня очень демотивируют.


Чет у меня аж пригорело с этого нытика, баги(хотя там скорее не баги, а собственная криворукость) его блять демотивируют, нахуй ты тогда вообще в разработку вкатился? Пиздуй рисовать или 3d моделить если совсем мозгов нет, там все легко и просто, чистый монотонный, физический труд по передвиганию мышки без напряжения головного мозга, только не ной потом, когда тебя нейросеть нахуй заменит.
319 406410
>>06151
Иди-ка лучше просто C# поковыряй.
320 406454
А есть ли возможность автоматически отключать рендеринг отдельных мешей при удалении камеры? Без велосипедства уровня если камера высока то в цикле прячем меши.
LOD не подходит т.к. надо убирать множество мешей, а не менять на упрощенные.
321 406458
>>06454
Штатному LOD'у можно задать один уровень и поставить исчезновение на нужной дистанции.
322 406459
>>06458
Оу, спасибо.
323 406712
А в юнити можно подстроить всё под свои единицы измерения? Например, я хочу чтобы один тайл был ровно один "метр" длинной.
324 406715
>>06712
Предполагается, что 1 единица длины в юньке = 1 метр.
325 406716
>>06715
Ну я сказал "например". Может я захочу сделать один тайл размерами 50х50 "сантиметров". Можно ли это как-то поменять?
326 406718
>>06716
Ты в курсе, что если измерять размеры двух объектов в метрах, и их же в попугаях, то соотношение не изменится?
Можешь мысленно дописать после цифры 5 что тебе угодно, хоть метры, хоть дюймы, хоть локти.
327 406721
>>06718
Ну вообще-то изменится. Если я сейчас натыкаю тайлов в сцену, то у них будут координаты (1.7623545234, 0.000000123). Меня такое не устраивает, я хочу иметь координаты у первого тайла (0, 0), а у второго (0.5, 0), к примеру.
328 406722
>>06721
Просто поправь размер тайла, в чем проблема?
329 406723
>>06722
Это как? У меня тайл 32х32 пикселя всегда.
330 406728
>>06723
Если у тебя спрайты, тыкаешь на спрайт (не на объект, а на сам спрайт в юнити), там есть значение "Pixels per Unit". Правь как тебе удобно.
331 406729
>>06728
Воо, это то что нужно.
332 406751
Что такое префаб, если коротко?
333 406759
Пилю игру с видом сверху с 3д графикой(хотя это не важно), но механика мне нужна по сути 2д - типа игрок ходит по плоскости и стреляет. А еще мне нужен поиск пути для врагов.
И че мне делать? Как обычно 3д физика + навмеш? Или по-другому лучше(мне же третье измерение нахуй не нужно, просто тупа лишние вычисления будут -> ниже производительность)?
334 406763
>>03169

> Awake(), OnEnable()


А зачем?
335 406765
>>06751
Игровой объект.
336 406774
>>06765

>Игровой объект.


Не совсем

>>06751

>Что такое префаб, если коротко?


Шаблон объекта. Из него создаешь кучи клонов

.>>06759

>не же третье измерение нахуй не нужно, просто тупа лишние вычисления будут -> ниже производительность


Там копеечная разница, и еще не известно в чью пользу, если ты не на Нокию 3110 пишешь.
Лучше бы ты код писал а не занимался оптимизацией
337 406775
>>06774
Да я уже пишу, я уточнил просто.
mapp.JPG103 Кб, 1176x816
338 406778
Анон, помоги ньюфане разобраться с хранение и обменом данными между объектами.
Пилю в данный момент примитивный шутер, но с возможностью ловить предметы, которыми стреляют враги. То есть, спавнятся враги с разными статами, у каждого из них должен быть свой механизм спавна предметов, которыми он будет стрелять. Игрок один и должен иметь возможность поймать любой предмет, когда он в зоне досягаемости, схватить, и кинуть в ответ.
В данный момент есть кривой прототип, в котором вся логика зашита в предмете. Предмет проверяет, находится ли он в зоне досягаемости, включает себе гравитацию, вычисляет силу броска самого себя.
1) Не пиздец ли это? Снарядов то в игре будет достаточно, и каждый из них несет основную тяжесть игровой механики.
2) Как правильно организовать скрипты и обмен данными. Чтобы поменьше всяких глобальных переменных, которые хуй пойми кто переменил. Как максимально инкапсулировать?
339 406782
>>06774

>Лучше бы ты код писал а не занимался оптимизацией


А я вот не могу код писать. Потому что наперед думаю, что говно напишу и изначально неправильно логику выстроил. >>06778
Тоже бы оптимизацией занялся, но на пека разрабатываю, хз есть ли смысл оптимизировать на пекарне.
340 406784
>>06778

>Как максимально инкапсулировать?


Ну берешь такой и инкапсулируешь. В смысле прячешь логику сущности в ее классе.

>>06778

>Чтобы поменьше всяких глобальных переменных, которые хуй пойми кто переменил.


Обмажь все private, где надо readonly и static

>>06782

>А я вот не могу код писать. Потому что наперед думаю, что говно напишу


Это нервное. Не припоминаю случая что бы я выстрелил себе в ногу кривой архитектурой. Это может иметь смысл в ну оооочень больших проектах.
341 406787
>>06782

> Тоже бы оптимизацией занялся, но на пека разрабатываю, хз есть ли смысл оптимизировать на пекарне.


>>06784

> Это нервное. Не припоминаю случая что бы я выстрелил себе в ногу кривой архитектурой. Это может иметь смысл в ну оооочень больших проектах.


Таки да. Это по сути прокрастинация - мог бы игру делать, но делаешь в результате что угодно, только не игру.
outline эффект 342 406790
Может кто разбирался. Нашёл два готовых outline эффекта (обводка 3д объектов). В первом это реализуется через вторую камеру, которая динамически создаётся. Во втором это реализуется через один шейдер, который вешается на объект, который нужно обвести.

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

https://www.assetstore.unity3d.com/en/#!/content/78608
https://www.assetstore.unity3d.com/en/#!/content/86481
343 406791
>>06784
Не могу поделить логику между сущностями.
Вот снаряд. Снаряд совершает действие "полет" за счет внешних факторов (animation event, ЛКМ). Или это рука игрока/нпс совершает действие по броску снаряда?

> Не припоминаю случая что бы я выстрелил себе в ногу кривой архитектурой.


А вот я, кажется, смог. Так наговнокодил, что с одним нпс у меня механика работает, а с двумя уже дикие баги. Они один и тот же предмет у себя из рук вырывают, лол.
344 406793
>>06791

>Или это рука игрока/нпс совершает действие по броску снаряда?


Рука дает команду лететь (передает сообщение, типа снаряд.лететь()), снаряд летит сам (наследуя полет от кого-нибудь)
>>06791

>Они один и тот же предмет у себя из рук вырывают, лол.


Так это ж не архитектура виновата, наверно. Запили проверку какую. Или угори по хардкору - добавь мнотопочность и блокируй снаряд при помощи Lock (на самом деле не надо)
345 406826
Хай, гд. Очень интересует следущая тема, может кто из анонов сталкивался. Могу ли я продавать в ЮнитиСторе ассеты, замоделенные и затекстурированные на пиратском софте? Возьмут ли за жопу (Юнити тима или авторы софта) и есть ли способы обхода? Покупать софт пока не могу, я нищеброд.
346 406832
>>06787

> Это по сути прокрастинация


А я просто в голове продумываю игру и думаю о том, какой я молодец. Правда, наконец-то я написал дисдок, и уже понял, что я не молодец нихуя, а в кое-каких моментах игроку просто нахуй не нужно играть в мое говноподелие.
347 406853
Как импортировать height map и occlusion? Редактор отказывается читать файл.
Куда кидать текстуры, помеченые как roughness, specular? Вот отсюда, например: https://www.textures.com/download/substance0030/127099
Albedo и normal map применил, уже очень ничего выглядит, но даже близко не так, как скомпиленный материал там. А мне хочется хотя бы приблизительно так. Для этого хотя бы height и ao надо, их понятно куда, но они не импортируются.
348 406854
>>06826
Делай в опен-сорсных аналогах. Либо экспортируй в общий формат и отслеживай, чтобы никаких пометок в файле не было.
349 406855
C height map и occlusion разобрался, просто в rgb конветрнуть надо было. А с roughness и specular что?
>>06853
350 406856
>>06832

>А я просто в голове продумываю игру и думаю о том, какой я молодец.


Вот это самый верный подход. Кроме отыгрыша в голове ничего и не нужно, остальное - суета.
351 406863
Можно ли сделать так, чтобы количество тайлов текстуры в материале по оси зависело от размера объекта по этой оси? Или по-хорошему не должно быть видно тех мест объекта, где неправильно растягивается/скукоживается?
352 406878
>>06856
За манямир дошик не купишь.
 .png26 Кб, 1088x199
353 406880
Может кто-нибудь про кватернионы прояснить? Откуда вообще берутся синус и косинус половины угла?
354 406883
>>06853
>>06855
Юнити не использует metallic/roughness, она использует спекуляр. В опциях материала, наверху, можешь выбрать спекуляр-шейдер или metallic/smoothness шейдер.
Файлы должны быть в png или подобном lossless формате.
Я так понимаю, что файл с сайта - это материал для сабстанса. Если на встает на юнити, юзай сабстенс дизайнер/пейнтер, и из него уже примеряй материал и компилируй текстуры/мапы.
355 406884
>>06854
Чем отслеживать? Обычным блокнотом? А там всякая метаинфа?
356 406886
>>06454
фрустум куллинг работает по умолчанию, окклюжен куллинг настраиваешь сам. У камеры есть также параметр far clipping plaens, это разве не то, что тебе нужно?
357 406890
>>06886
Не, мне выборочно нужно было меши прятать. Сделал через LOD

Кстати, вот чего я не понял - дальность отрисовки ЛОДа задается в процентах, эти проценты - это что от чего?
358 406912
>>06880
Кватернион описывает вращение объекта на угол theta вокруг оси, заданной через вектор. Прими это за аксиому и не заморачивайся. Кватернионы позволяют вращать, не задумываясь о порядке эйлевских угров. Чтобы повернуть в обратном направлении, просто умножаешь на конъюгированный кватернион. Кватернион (0, 0, 0, 1) означает, что вращения нет.

Недостаток кватернионов против 4х4 матрицы в том, что нет перемещения в пространстве.
image.png1,3 Мб, 1920x1030
359 406914
Sup юнити-бояре. Как избавиться от богомерзкого оранжевого и зеленого круга, который преследует меня аки сыч еотову, заранее благодарю.
360 406922
Посоветуйте ассет для создания кладбищенского окружения

Есть что-то сравнимое с этим вот?

https://www.youtube.com/watch?v=qdXT-BFz27k

ссыль на ассет в описании к видосу. Стоит 70 енотов. Мамка денег даст.

Ольтернотивы есть?
362 406950
>>06934
Спасибо! Очень вкусно!
363 406956
>>06950
Пожалуйста :3
364 407122
Было такая фигня. Качнул асетик про природу с магазина. Поставил на лужайку unity-chan, а она вся чорная!!!

В чём причина и как исправить, не меняя у неё все шейдеры?
365 407125
Этот ябучий WEB GL.. Многопоточность - не работает, LODы не работают, картинку всю косоебит.. Пичаль.
366 407167
>>06890

>Кстати, вот чего я не понял - дальность отрисовки ЛОДа задается в процентах, эти проценты - это что от чего?


Бимп вопросу
367 407170
>>07167
А, там жи написано:
The percentages in the LOD bars represent the fraction of the bounding box height relative to screen height where that LOD level becomes active.
Лол, поэтому у меня в WEB Gl LODы странно себя ведут..
368 407186
Можно перезаписать метод из другого скрипта? Вроде

Скрипт1. виртуал метод "бегать"
Скрипт2. овверрайд "бегать" в Скрипт1
369 407187
>>07186
Наследуй класс и оверрайди. Все методы MonoBehaviour тоже унаследуются.
370 407190
>>07187
А без наследования никак?
371 407191
>>07190
Никак. Виртуальные методы для наследования и придуманы.
372 407193
>>07191
Я въехал, спс.
373 407290
Как сохранять и загружать свои карты в юнити? Я слышал про сериализацую, но гугл выдает какую-то порашу. Можно гайд?

И еще вопрос, как эту карту рендерить только в радиусе Х клеток от персонажа?
374 407295
Какого хуя юнити ломает мне текстуры (пик 1), хотя я выставил все по гайдам (пик 2)??? Если склеить ту же текстуру в фотошопе (пик 3), то все нормально, значит это юнити выебывается.
Снимок.PNG20 Кб, 320x629
375 407296
Да ну нахуй блядь, в превью все нормально, а в игровом окне мыло, хотя никакой компрессии нет.
376 407303
>>07295

>66x66


Размер текстуры должен быть равным степени двойки, иначе юнити растянет их до нужного значения. Степень двойки это 2 4 8 16 32 64 128 256 512 и так далее.
377 407304
>>07303
Вот здесь >>07296 размер текстуры 16х16 и у персонажа, и у фона. Так что твой ответ не подходит, придумай ещё.
378 407312
>>07304
Имбицил, юнити для 3д игор, ну куда ты с пикселартом лезешь. Используешь инструмент не по назначению - страдай.
Чтоб не ломало у тебя картинку масштабируй кратно целым числам. А не 3.6х как сейчас.
379 407314
>>07312
Имбецил, присмотрись, там кратность целому числу х5 >>07296. Твой ответ не подходит, придумай ещё.
380 407316
>>07304

>придумай ещё


>>07314

>придумай ещё



Есть вариант получше. Иди нахуй и ебись сам, хамло ебаное. Здесь тебе никто ничем не обязан.
381 407318
>>07316

>называет кого-то имбецилом


>заявляет, что он ещё и хамло на аналогичный ответ


Ну я уже понял, что шестеренки в твоей голове не варят, мог бы не отвечать.
382 407340
>>07314
Тогда внимательнее смотри первую часть ответа. Юзаешь инструмент не по назначению - велосипедь и не ной в тредах.
383 407344
>>07295
>>07296
Пиксельные спрайты действительно должны быть равны степени двойки в размерах. А ещё посмотри вот это >>387130

>>07312
>>07340
Он только изначально для 3д был, сейчас в нем 2д вполне себе. Как минимум все победители недавнего Microsoft Challenge в 2д, 5 из 10 honorable mentions тоже. И другой всякой 2д годноты на юнете полно. Так что твой аргумент инвалид.

А вообще, идите-ка нахуй оба отсюда, псы.
384 407349
>>07344

>Пиксельные спрайты действительно должны быть равны степени двойки в размерах


Они у меня и так в степени двойки.

>А вообще, идите-ка нахуй


Так и делаю, подготовил эти скрины для реддита, посмотрим что там скажут. Тут, очевидно, адекватного ответа можно не ждать.
385 407354
>>07349
Скинь спрайт, мне аж интересно стало.
floor.png6 Кб, 32x32
386 407355
>>07354
Он используется в одной довольно популярной в своих кругах игре.
387 407370
Один и тот же кусок с разным зумом. Как я и говорил - пидорасит из-за невозможности поделить нацело количество пикселей, которое даёт разрешение экрана, на нужное количество того, что надо отобразить. Отслеживай.

Но нахуй всё равно иди.
388 407434
>>07370
С каким блядь зумом, там нет никакого зума, это скрин игры со стандартными настройками камеры. Вы уже заебали придумывать причины, которые не соответствуют действительности.
1497980608201.png55 Кб, 1366x768
389 407438
Сасите, на реддите дали правильный ответ. Учите юнити, может тогда перестанете хуйню советовать.
390 407482
Как скриптом загрузить префаб из моих ассетов на экран? Нагуглил рабочий вариант
myPrefab = UnityEditor.AssetDatabase.LoadAssetAtPath(...);
но когда пытаешься собрать exe, то выдаёт ошибку так как UnityEditor это чисто эдитор и не собирается в exe. Втф?
391 407524
>>07434
А с чего ты взял, что стандартные настройки камеры идеальны для твоей хуиты? Попробуй изменить зум камеры в превью - будет пидорасить в прямом эфире.
Тебе нужно регулировать зум камеры так, чтобы каждому пикселю твоего ебучего спрайта соответствовало целое количество экранных спрайтов.
392 407527
Сложно перейти с пайтона на си-сярп?
393 407528
>>07527
Говнокодить несложно на чем угодно.
394 407529
>>07528
А говвнокод в игре будет нормально работать?
395 407532
>>07529
Нет, конечно.
Если хватит терпения, то доведешь проект до альфы и дропнешь, охуев от сложности дальнейших изменений.
396 407533
>>07532

>охуев от сложности дальнейших изменений


Скорее охуев от сложности запиливания графена. Кодить всякое я люблю.
397 407542
>>07533
Кодить всякое сильно отличается от доведения проекта до релиза.
398 407543
>>07438
Нашел твой пост и ответ, который тебе помог. Я тебе об этом, тупой плешивый пёс, и говорил. Я тебе даже ссылку на ответ в пикселяч-треде дал, там по ветке мог дойти до того же самого. Но нет, блядь, пока всё по полочкам тебе не разложили, не разжевали, ты нихуя сам не разобрался.

Так что продолжай идти нахуй.
399 407545
>>01747 (OP)
Смотерите что чел на крауте пилит

http://archive.li/vuFX2
выаaereваваrdsdва.png353 Кб, 1458x844
400 407570
>>07482

>но когда пытаешься собрать exe, то выдаёт ошибку так как UnityEditor это чисто эдитор и не собирается в exe. Втф?


C путями обосрался, небось. Или написал тут непонятно
DontDestroyOnLoad ПИДР 401 407589
Такая проблема. Есть 2 сцены. Из первой во вторую я переношу игрока и меню. Я сделал что бы DontDestroy не дублировал объекты при переходе, НО вот в чём загвоздка.
В первой сцене у меня уже по дефолту стоит персонаж, если перенесу во вторую сцену, то норм, потому что там его нет по дефолту. Но если вернусь в первую, то там будет уже 2 игрока. Один из второй сцены, а другой который есть по дефолту в первой сцене.
Я хотел сделать удаление одного при переходе в первую, но если я захожу из главного меню в первую сцену, то у меня удаляется мой перс и ВСЁ. А если отключить этот скрипт удаления и включать при переходе со второй в первую, то скрипт почему то не включаеся (он висит в первой сцене).
Может у вас есть мысли как решить мою проблему? Четвёртый день колупаюсь, а уже сроки подходят
402 407600
>>07589
Сериализуй данные и при запуске сцены создавай копии тех.
403 407603
>>07589
Убери игрока из первой сцены, добавь объект-GameController, который будет спавнить игрока из префаба. Статы игрока типа здоровья можно так же хранить в GameController.
404 407671
>>07524
>>07543
Хуя дебил и пиздунишка! Ловите, пока не сбежал!

А теперь по сути. Ты тут распизделся про зум, а я менял ортографический размер. Это раз. Ты мне пиздеж играться с числами, а богоподобный реддит сразу посоветовал, как решить проблему правильно - кодом в зависимости от разрешения в игре. Это два. Я ничего никогда не писал в пикселяч-треде, даже не заходил в него никогда, но ты мне там давал ссылку, кек. Это три. Бурги сразу дали ПРАВИЛЬНЫЙ рабочий ответ без лишних выебонов "АХАХА СМОТРИТЕ ЭТОТ НЬЮФАГ НИЧЕГО НЕ ЗНАЕТ, ИДИ НАХУЙ, Я СКАЗАЛ ИДИ НАХУЙ, ОЙ КАКАЯ ИНТЕРЕСНАЯ ТЕКСТУРА ПОДЕЛИСЬ". Вся суть просто этой параши. Это четыре. Обтекай, советчик. И это последнее пять.
405 407672
>>07570
Я уже сам разобрался. Алсо написал все правильно, просто в треде очевидно никто не знает, что скрипт с подключеным модулем UnityEditor нельзя собрать, он работает только в эдиторе.
406 407673
>>07671

>>387306
Второй пост от того, на который я указал. Ещё и не мои ответы приплёл.
Продолжай.
407 407674
>>07673
Не отвечай ты ему, пусть идет на реддит.
408 407676
>>07672
Я знаю. Но какой смысл отвечать на

>Втф?

409 407702
>>07671

>распизделся про зум


>а я менял ортографический размер


А каково твоё определение зума? Что происходит при изменении ортографического размера? Реддит просто привык к дебилам, которым надо сразу готовый ответ в ротешник засунуть, чтобы вонять перестали. Ещё и плюсиков в кармочку поставят))))
410 407714
>>07702

>Реддит просто привык к дебилам, которым надо сразу готовый ответ в ротешник засунуть, чтобы вонять перестали. Ещё и плюсиков в кармочку поставят))))


Именно так и работает здоровое сообщество - сегодня помогают тебе новичку, а завтра помогаешь ты со своей кармой свежим новичкам.
1498074254629.jpg5 Кб, 342x88
411 407718
>>07702

>твоё определение зума


Забыл своё определение? Ну так перечитай тут >>07312

>Чтоб не ломало у тебя картинку масштабируй кратно целым числам. А не 3.6х как сейчас.


Очевидно, что это неверно и я менял совершенно другую настройку.
412 407731
>>07718
Пиксель перфект гугли.
413 407733
>>07718
И на твоей пикче очевидное говно, разная толщина линий. Что сказать то хотел?
414 407735
Хочу запилить простую физику для мобов, чтобы соприкасались с поверхностью, пока не изучал подводные камни и не уверен, что мой вариант выйграет по производительности. Пытался реализовать какой-нибудь простой костыльный вариант без RigitBody, работает, но ещё нужно как-то расчитать нормали соприкасаемой поверхности. Алсо, таких будет много, поэтому RigitBody отпадает, к сожалению.

[SCR] https://pastebin.com/gqAL6Fn8
415 407740
>>07735
Сколько у тебя мобов, что тебе нужен велосипед без Rigidbody?
416 407753
>>07290
Любым образом сохрани координаты объектов в файл и потом загружая файл просто читай координаты и создавай объекты, все просто
Unknown.png15 Кб, 875x240
417 407754
>>07753
Я уже. Карта в джсоне, все работает, карту грузит и отображает. Единственное, что мне не нравится, так это ебучие кавычки, но без них никак, если хочу работать с джсоном.
418 407757
>>07740
Практически в районе полторы тысячи, обычно это вызывает припадки до 5 фпс
419 407759
У вас юнити сломался, не детектит коллизии.
420 407761
>>07718

>крутил скейл у окошка


Господи, какой даун.
421 407762
>>07759
Не у нас, а у вас.
423 407766
>>07764
Движение за счёт чего происходит? Трансформу похуй на коллизии, например.
424 407769
>>07766
А как тогда кодить перемещение по клеткам? Я нагуглил такое https://pastebin.com/q7y6hDbk и на гифке именно так перемещаюсь.
425 407771
>>07769
Можно и трансформом, но коллизии определять вручную, например, рейкастингом. Ну или там при каждой попытке перемещения чекать клетку, в которую перемещаешься.
426 407772
>>07771
А как можно не трансформом?
427 407773
>>07772
Такое фиксированное перемещение, наверное, никак, все остальное основывается на физике, которая здесь не нужна.
И ещё, перенеси все из FixedUpdate в просто Update, фиксед для физики, остальное плавнее работает через просто апдейт.
428 407775
>>07773
Тогда стоит ли вообще усложнять коллизиями, если можно убрать вообще риджид бади с колладером нах и просто проверять соседнюю клетку на наличие тайла с тэгом WALL, например?
429 407777
>>07775
Делай, как велит сердце.
430 407780
>>07775
Вообще не стоит, о чем я и говорю.
431 407783
>>07764
Static и Kinematic типы тел разве не проходят на похуй сквозь все?
432 407863
>>07714
Так этот Новичок так и не понял в чём проблема, зато готовый кусок кода подогнали.
433 407865
>>07783
Да, между Статик и кинематика нет обнаружения. Как минимум одно должно быть симулейтед или как его там.
434 407918
>>01747 (OP)
Какие сферы математики стоит прокачать, чтобы достаточно уверенно чувствовать себя в среде разработки Unity?
435 407930
>>07918
Никакие. Понимания простых операций с векторами достаточно.

Пойми, что происходит в классе, унаследованном от MonoBehavoir (Start, Update, FixedUpdate) и начинай пилить.

Что у тебя с английским? На слух сколько % понимаешь из тьюториалов?
436 407940
>>07863
С чего ты это взял? Я все прекрасно понял в момент, когда увидел код. А вот в треде есть люди, которые нихуя не понимают, но лезут с советами. Например, вот этот >>07312, который советовал менять Scale, пушка нахуй. Или вот этот >>07303, который спизданул про кратность, хотя у меня сразу за первым постом шёл второй с правильной кратностью и все равно проебаными пикселями. Или вот эти >>07733 >>07761, которые даже не поняли о чем речь, зато лишь бы как ответить в треде.
И да, ты ответил как раз тому новичку.
Без названия.jpg488 Кб, 984x579
437 407968
Анон, прошло уже два года, а я так и не нашел вразумительного способа подсвечивать ребра мешей, кроме написания собственного шейдера. Есть ли однокнопочные способы для дебилов?
438 407970
>>07968
Можешь нахуячить полигонов на ребра как тут >>05882 и обмазать светящейся текстурой. Line renderer аналогично прилипить
439 407981
Поцоны, делаю 2Д игру и появилась такая проблема (момент этот не уловил) - патиклы спрятались на спрайтами.
Сортинг лаер / ордер ин лаер у спрайт рендера (как советуют в интернете) не помогают.
А у половины моих эффектов сделанных патикл рендером этой неработающей опции вообще нет.
440 408010
>>07981

Короче, я частично понял.
Нужно просто включить в патикл систем рендерер и в нём - Сортинг лаер / ордер ин лаер
Не понимаю почему вчера на сонную голову не сработало.
Но включение этого "рендерер" портит мои тонкие настройки частиц - они летают хуй пойми как, одинакового размера и во все стороны.
Как фиксить?
441 408015
>>08010
Без рендера твои партиклы вообще не рисуются.
И ты бы хоть скринов сделал
442 408019
>>08015
Короче эта приблуда помогла
https://gist.github.com/nickgravelyn/7460288
443 408027
Посоны, а насколько Unity 2D подходит для создания спрайтовых пошаговых стратежек? Упростит ли движок жизнь для разрабов этого жанра, или весь Юнити - это про физику?
444 408029
>>07970
Такие очевидные тупые и медленные способы уже пробовал. Слишком медленно, и выглядит в 3D не очень.
445 408030
>>08027
Попробуй сначала 2д движки.
446 408033
>>08030
Например? Я хочу под мобилки делать. Сишарп знаю, Джаву тоже.
447 408040
>>08027
Эти делают и не паряцца

https://gbanga.com/join-our-team/
448 408070
>>01927 (Del)
Сука, пидр, ну так напиши тут, в чём проблема была. Ненавижу таких, как ты.
449 408071
>>08070
Да уже решил, значит и проблемы нет)))
выаaersderdsdва.png364 Кб, 1920x915
450 408094
>>08027
Делай, не парься. Есть еще куча всяких движков поверх Юнити где уже все разжёвано. А юнити хорош простотой а не физикой.
452 408208
>>08207
А, я там скобки пропустил
go.GetComponent<SpriteRenderer>().sprite
453 408211
>>08208
var mamka_tvoya = go.GetComponent<SpriteRenderer>().sprite;
mamka_tvoya = newSprite;
454 408218
>>08211
И нахуя, если у меня все и так работает?
455 408222
>>08218

>у меня все и так работает


>У вас снова юнити сломался

456 408223
>>08222
Я же сказал сразу, что пропустил скобки, дубина. Со скобками все заработало.
457 408245
>>08223
Держи в курсе.
458 408250
Палю годноту

https://www.youtube.com/watch?v=2PhFAvbgASE

кто мне запилит под это интериор стрип-клуба за их деньги?
460 408311
>>08310
Ты кто?
461 408312
>>08311
А ты кто?
462 408313
>>08312
Аноним.
А это https://vk.com/0x00000024 кто?
463 408314
>>08313
Автор всего этого, точнее мой вк.
(Кстати, скрины по моему с февраля месяца, по этому выглядит не особо -то хорошо)
464 408315
>>08314
Сам-то знаешь, нахуй ты это делаешь?
465 408316
>>08315
Потому что нахуй это делаю.
466 408324
>>08316
сможешь? >>08250 Сколько хочешь?
467 408329
Я к вам с платиной. Какой код будет работать быстрее? С объявлением переменной внутри цикла или снаружи?
float profit;
> foreach (Factory factory in province.allFactories)
{
if (province.CanUpgradeFactory(factory.type))
{
profit = factory.getProfit();
if (profit > result.Value)
result = new KeyValuePair<Factory, float>(factory, profit);
}
}

Или

> foreach (Factory factory in province.allFactories)
{
if (province.CanUpgradeFactory(factory.type))
{
float profit = factory.getProfit();
if (profit > result.Value)
result = new KeyValuePair<Factory, float>(factory, profit);
}
}
468 408331
>>08329
Как называется эта болезнь?
469 408334
>>08329
а мог бы игры делать...
are+we+fucking+five+now+Like+I+knew+these+people+3d856b9467[...].gif359 Кб, 300x185
470 408337
471 408339
>>08324

>сможешь?


Да, вполне.

>> Сколько хочешь?


Ой ну... не знаю даже.
sage 472 408348
>>08329
А профайлер этот код показывает в первых строчках? Нет? Тогда зачем?
473 408350
>>08348
Да это на теорию вопрос. Кароч, вариант с объявлением переменной в цикле быстрее.
474 408387
>>08339

>Ой ну... не знаю даже


мы так ни до чего не договоримся
475 408419
Как заставить Vector3.lerp срабатывать по скрипту?
Делаю по примеру отсюда:
https://docs.unity3d.com/ScriptReference/Vector3.Lerp.html

Когда все в Update, то работает ок, перемещается плавно.

Стоит записать в отделную функцию и перемещение идет рывками.
Наверно, как-то неверно расчитывается пройденное расстояние.
Как это исправить?
Или может есть другой способ плавного перемещения в заданные координаты?
476 408421
>>08419
Корутины? Хотя он и так должен через нее вызываться.

> Или может есть другой способ плавного перемещения в заданные координаты?


transform.position += speed * Time.deltaTime;
477 408422
И тут снова этот пидр со своей хуйнёй
478 408423
>>08421
Забыл помножить на направление, нотыпонел.
479 408426
>>08423
Увы, не понял. Можешь написать подробно?
480 408448
Сап ананас! как сделать движок в стиле point-and-click ("Darkness Within", "Scratches") только под Android?
481 408454
>>08448
Берёшь и без задней мысли делаешь.
482 408455
>>08454
Это как? поясни по девелоперским понятиям жиесь!
483 408457
>>08455
Учишь С++, опенджиель и основы разработки движка, а потом без задней мысли пишешь его. Вот только что ты забыл в этом треде с такими вопросами?
484 408458
>>08457
Ладно братка не обессудьт! спс за совет жиесь!
485 408460
>>08426
Если ты просто будешь умножать скорость на время и прибавлять к позиции объекта, он у тебя полетит вправо, вверх и вперед. Тебе нужно умножать его на вектор направления. Но это костыльно, лучше разберись с лерпом.

>>08448
Пилишь свои пазлы, рендеришь интерьеры, вешаешь кнопки.
486 408467
Нашел сцену, которую делал в январе этого года.
Думаю... добавить туда интерьер.
487 408468
>>08467
Э, блэт, так ты хуяришь сразу несколько домов одним объектом? А как же МОДУЛЬНОСТЬ?
ля.jpg478 Кб, 1920x1080
488 408469
>>08468
Так они отдельные друг от друга.
Пример:
489 408471
>>08469
Знаю -знаю, названия тоже оригинальные.
Добавил
490 408473
>>08467

>Этот тайлинг



А ну да, юнете ж, особо с материалами не поколдуешь
491 408479
Ананасы, нужна ваша помощь.
AO из пакета Post Processing артефачит немного при Deferred рендеринге с кастомными шейдерами.
Случается даже с свежесозданным дефолтным шейдером (Create -> Shader -> Standart Surface Shader). Стандартный физический шейдер доступный из коробки работает без проблем.
Кто нибудь сталкивался с подобным?
AO выкручен на запредельные значения для наглядности
492 408532
>>08531 (Del)
Поставь брейкпоинт, посмотри где у тебя нулл
493 408533
>>08531 (Del)
Какого-то объекта у тебя нет. Ищи.
494 408540
Поздравьте меня, я, похоже, впервые в жизни обосрался с многопоточностью. У меня таблица обновляется из MainCamera.Update и из ScrollBar.OnValueChanged. Они жи из разных потоков, так?

Бля, lock (gameObject) не помогает.

Вот этот метод
public override void refreshContent()
{
lock (gameObject)
{
[очисти таблицу]
[заполни таблицу]
}
}
Один раз этот метод вызывается из родителя, второй раз я этот метод засунул в качестве колбэка в ScrollBar.OnValueChange

Чему не блокируется? Таблица не успевает очиститься как налетает второй поток и начинает писать в таблицу.
495 408569
>>08540
Сделай так, чтобы было в одном потоке, а не блокируй.
496 408576
>>08569

>Сделай так, чтобы было в одном потоке, а не блокируй.


Но зачем мне велосипедить все в один поток, если это стандартные юнитивские недопотоки (Апдейт и коллбэк)?

Так то я проблему решил добавив флаг alreadyInUpdate и его проверку при заходе в метод, но все таки интересно чему юнити не захотело есть стандартный lock.

Может быть дело в том юнитивские коллбеки реализованы через какие нибудь самопальные корутины?
497 408656
Сап юнитач. Есть проблема. Как в 2д красиво прятать спрайты за спрайтами, если они сзади, и показывать их, если они спереди? К примеру, за деревом. Делать две части дерева не вариант, через layer order не получится, т.к. там максимальное число в short, и выше 32768 не зделать. Я раздумывал отодвигать спрайты по оси z, но тогда страдает камера, и нельзя будет использовать разные sorting layer.
498 408660
>>08656

>нельзя будет использовать разные sorting layer


Ставить циферку в z координату вместо sorting layer это же так сложно.

>но тогда страдает камера


Поясни.
499 408661
>>08660
Ну например камера отодвинута на -999, объект заходит на -1000 и его не видно.
cat.jpg440 Кб, 3500x2940
500 408666

>скомпилировал пустой проект в андроидовский APK


>40МБ

501 408668
>>08661
Clipping planes у камеры, не благодари. Ну или мог бы догадаться использовать не целые числа, а делить координату на 10 или 100.
502 408670
>>08656
Эх, щас бы спрятать 30 тысяч спрайтов один за другим...
Безымянный.png72 Кб, 1163x409
503 408714
Что я не так понимаю?
Смотрю всякие текстовые обучалки, читаю официальный мануал. Чому у меня коллайдеры не таскаются мышью? Ни боксовый, никакой. Написано, дескать, "держите шифт чтоб таскать", "Держите контрл и кликайте чтоб удалить точку". Но ничего не происходит. Если тыкать ровно в линию\точки просто спрайт остаётся выделенным. Если чуть выше - сбивается выделение.
Опять же не совсем понятно предназначение кнопки edit collider, т.к. тоже нихуя не меняется.

Что я не так понял?
8774356edc547c6b74ff54f7d3691aef.png25 Кб, 514x190
504 408715
>>08714
Это то, что про коробки. Ну нет никаких "рычажков". В официальном, вроде, так же написано, просто без лишней инфантильности
505 408718
>>08714
Ты это, нажми edit collider для начала.
gif.gif914 Кб, 800x406
506 408721
>>08718
Эо с зажатым шифтом, разумеется
507 408722
>>08670
Он котлету денег анимирует
508 408723
>>08721
Нажимаешь на квадрат? Если нет, то нажимай на него на линии коллайдера.
509 408727
>>08723
Не понимаю, что ты имеешь ввиду
c.png232 Кб, 1147x478
511 408729
>>08728
Нету
512 408745
>>08729
>>08714
Редактирование шифтом убрали в 4.6. Двигай весь коллайдер, редактируя offset; двигай или удаляй отдельные точки мышкой в режиме редактирования. Ближайшая к курсору точка всегда подсвечена, смотри внимательней.
images.jpg5 Кб, 373x135
513 408761
>>01747 (OP)

Доброго дня, друзья

Обращаюсь к бывалым игроделам, которые собирали apk-шки на ведроид, и, возможно, сталкивались с подобной проблемой.

Я делаю игру (собственно на ведро) и недавно обнаружил, что она слишком много весит в сравнении с другими играми на моём планшете после установки. Сам apk-файл весит ~20mb, но в настройках системы, когда смотрю приложения, его итоговый вес после установки ~45mb. Для сравнения, Hungry Shark, который использует больше графических и звуковых ассетов, в установленном виде весит ~12mb.

Смотрел Editor Log, если я его правильно прочитал, то общий вес графена и звуков укладывается в 14mb (of course я всё компрессил), не могу понять, откуда нагрузка в дополнительные 30mb.

Помогите разобраться с проблемой.
514 408768
>>08761
Могу только сделать догадку, но, скорее всего, Юнити тянет кучу всякого кода/ресурсов вместе с собой. Там же всякая физика, обработка освещений, столкновений, теней и т.п.
Нативные приложения на Джаве естественно будут весить меньше, так как там только нужный код.
Попробуй погуглить, возможно можно как-то настроить это дело.
14795783317283.gif495 Кб, 240x169
515 408786
Котаны, для отрисовки графики в пиксельном 2d движке посоветовали использовать Щейдеры с отрисовкой вершин с заданным размером. Я вот с шейдерами не сталкивался и нагуглить ничего не вышло. Вся надежда на вас. Помогите запилить шейдер чтобы вершины рисовались и их можно было красить.
516 408793
>>08786
Чобля? Вершина это просто точка, у нее нет размера и ее нельзя покрасить.
517 408795
>>08793
Ага. И я так думал.
aos.jpg92 Кб, 1177x629
518 408819
>>08786
Вот видите как нарисованы вот эти ребята. Вот мне вот так вот надо.
519 408823
>>08819
Это же 3D в ультранизком разрешении, не?
520 408825
>>08823
Неа. Прикол в том, что ребята состоят только из вершин, а месте каждой вершины рисуется квадрат, повёрнутый к камере. Поэтому "разрешение" картинки зависит от плотности вершин модели.
521 408828
>>08825
В уече искаропки можно так делать, в говно же движке будь добр сам писать велосипеды или покупать готовое решение
522 408829
>>08825
А не легче шейдер навесить на обычных кукол из кубов, чем рендерить через дохуя велосипедов? Да и не под Унити пилить. А так хуй знает. На каждую единицу площади можешь рисовать квадратик нужного цвета через какой-нибудь Unity.GL.
523 408836
>>08829
Шейдер-то мне и нужен. Только не смог я нагуглить как его сделать.
Вообще, задача не в рендере вершин, а в быстрой отрисовке массива цветных квадратов. Прост мне говорили что это самый лучший вариант.
Снимок.JPG35 Кб, 505x418
524 408967
>>08836
Если вдруг кому неинтересно, я нагуглил.
отсюда берём первый скрипт http://www.kamend.com/2014/05/rendering-a-point-cloud-inside-unity/
добавляем его на бокс вместе с материалом отсюда https://github.com/erichmwu/PointCloudLoader
Получаем пикрил.
И всё бы хорошо, но квадраты странно повёрнуты и на андроиде эта тема не заработает.

Корочи реквестирую другие шустрые способы рисовать квадратики.
mqdefault.jpg22 Кб, 320x180
525 409039
Привет, какую команду нужно прописать в скрипте для управления игроком , чтобы он перемещался только в то время , когда нажата кнопка мыши(ЛКМ) или просто тач(т.е. палец на экране), если на смартфоне (в любом месте)? То есть чтобы только при этом условии смогли осуществляться другие функции управления игроком , спасибо C:.
526 409043
>>09039
if (Input.GetMouseButton(0))
{
PerekatYoby();
}
В том же классе Input есть ивент для тачскрина.

> чтобы только при этом условии смогли осуществляться другие функции управления игроком


if (Input.GetButtonDown("Krutit")
{
if (Input.GetMouseButton(0))
{
KrutimYobu();
}
}
527 409047
>>09043
Бля, скобочку проебал.
thanky.gif801 Кб, 500x545
528 409058
>>09043
yeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeey
Thank you!
hyan.png247 Кб, 676x800
Q hyan 529 409080
Вот , например , игрок постоянно увеличивается/уменьшается в размерах (на 2д плоскости) - как можно осуществить отдаление/приближение камеры, пропорционально размерам игрока?
530 409082
>>09080
>>409042
>>409063
опять эта свинья мерзкая начала срать по всей доске.
531 409108
Я тут решаю на чем делать 2д настольную игру для ведра и айос. Будет ли легко сделать на юнити в сравнении с другими движками? И стоит ли браться за юнити для этого жанра? Юнити же огромен и для 3д...
532 409109
>>09108
С 4.чтототам норм поддержка 2д. Минус только в больших экзешниках для мобилок.
533 409112
Значит, ковыряю я юнити, смотрю в серию уроков
http://websketches.ru/blog/2d-igra-na-unity-podrobnoye-rukovodstvo-p5

Оно, очевидно, несколько устаревшее. И у меня возникли проблемы с системой частиц.
начиная с того момента, где картинка импортируется как текстура (у меня такого пункта даже нет), а ещё где "Измените шейдер "Particles" на "Alpha Blended""

В упор не вижу, что я должен нажать.
534 409116
>>09112
Материал партиклов меняется на развороте renderer компонента париклов, он в самом низу. Материал создаешь правой кнопкой мыши в папке. На материале меняешь в выпадающем меню шейдер на Alpha Blended, они там сгруппированы все в подменюшке.
535 409123
>>09108
Будет. Стоит.
536 409127
>>09116
Анон, вижу ты шаришь в партиклах. Как думаешь, их можно использовать для моей задачи? >>08819 То есть наклепать их пару тысяч по сетке, запретить поворот, установить непрозрачную текстуру и максимально увеличить время жизни.
Короче как считаешь, лагать сильно будет? Если нет, может накидаешь нужные тастройки, а то там дохера крутилок.
537 409145
>>09127
Короче затестил. Снова всё хуёва. 1000 партиклов дают 10 фпс.
538 409148
>>09116
Не очень подробно, но я понял, спасибо большое
539 409155
>>09127
Накидал тебе за щеку, проверяй.
540 409156
>>09155
Пройди в /b/, тут тебе не рады.
541 409193
>>09156
Вот, даже знаешь куда тебе уебывать, молодец.
542 409198
>>01747 (OP)
http://coremission.net/gamedev/unity-2017-chto-novenkogo/
Юнити становится доступнее для дизайнеров
b99e45a725f5fb14cf18554f3392b045--kawaii-anime-girl-manga-k[...].jpg43 Кб, 400x533
543 409385
>>01747 (OP)
Почему игровой процесс прямо в редакторе юнити отличается от игры на той же версии, но уже в билде(на ПК), притом что на андроиде то же, что и в редакторе, т.е. как по плану. ?
Если более конкретно, то один объект спавнится на пк версии за игроком по Z измерению , хотя в редакторе над ним, как и задумывала. ? ^w^ Как можно исправить ?
.
544 409390
>>09385
Order у каждого объекта
545 409391
>>09390
Няш,можешь написать подробнее?
546 409392
>>09385
Sorting Layer > Order in Layer
anim.PNG127 Кб, 1717x950
547 409394
Сап, анон.
Как сделать так, чтобы в Меканиме анимация один раз проигралась и застыла на последнем кадре?
У меня смерть персонажа через жопу сделана (npc-death на пикче). Присваиваю bool переменной true на 0,3 секунды и возвращаю обратно false. Если же оставить тру, то персонаж будет непрерывно карячиться в предсмертных судорогах. Естественно, Loop в анимационном клипе отключен.
Однако способ с временной задержкой не всегда срабатывает почему-то. В 10% случаев анимация смерти не включается.
548 409395
>>09198
Это хорошо.
Однако я прочитал, что они так планируют затачивать движок под ААА-тайтлы, чтобы потеснить UE4. Очень хуево. Лучше бы WebGL довели до ума, сцуки.
Универсальный монстр не нужен. Развивались бы себе дальше в сторону инди-разработчиков.
549 409461
>>09394
Ты тупой просто, ты из энистейта запускаешь, у тебя этот ебаный бул остается активным и из состояния смерти снова переходит в состояние смерти (через энистейт).
Вместо була юзай триггер, довн, и все будет работать.
550 409469
>>09461
Да, я нубяра. Ничего не понял из твоего объяснения, честно говоря.

>ты из энистейта запускаешь


Имеешь ввиду экземпляр префаба? Конечно из него, у меня же несколько нпс в сцене, у каждого свои анимационные переменные.

>Вместо була юзай триггер, довн


А как его юзать? Алсо, мне нравятся булы, они удобные в отладке, на них удобно смотреть в окне аниматора.
14849375191170.gif627 Кб, 516x402
551 409474
>>09394

>эта лапша



>>09469

>этот дебил



просто выпились нахуй
552 409475
>>09469
Тэк, ладно, ща еще проще объясню
553 409477
>>09469
Во-первых, энистейт - Any State - бирюзовая хуйня на скрине.
Во-вторых,

>Алсо, мне нравятся булы, они удобные в отладке, на них удобно смотреть в окне аниматора.


Иди нахуй, нравится ему, блять, они не подходят в этом случае.
В-третьих, иди нахуй еще раз, долбоеб.
В-четвертых, хуяришь в окошечке меканима, где ты добавлял булы, плюсик и выбираешь триггер.
Суть этой хуйни, что она сама вызывается один раз.
Дальше идешь в скрипт, на место була с этой задержкой и избавляешься от нее и от була тоже по возможности еще избавляешься от задержки в развитии.
Вписываешь туда твойаниматор.триггер
Все блять, никакой ебани.
Удобно блять ему, нравится нахуй, пиздец горит
554 409486
>>09477
Спасибо, анон. Это офигительно, что такая полезная штука как триггер есть, не знал о ней.
Алсо, я не хожу ни в какие скрипты, а делаю FSM в Plamakere. Удобно. Нравится.
!op-pisun.png12 Кб, 500x260
555 409501
Как кнопку с иконкой и текстом сделать? Мануал на автолейауты не очень помогает. Иконка должна сидеть с зафиксированным отступом (скажем x:50px y:0.5) и не должна съезжать при изменении размеров кнопки. А текст должен занимать оставшееся от иконки место и изменять размеры кнопки если не вписывается в текущие. Якорь для текста не обязательно в центре свободной области делать, если сам текст всё также можно будет выравнивать по 9 позициям. У кнопки должны быть min/max width/height, т.е. её размеры и позиция субелементов могут динамически меняться. По отдельности это у меня всё выходит, но вместе собрать не получается. Горизонталлейаут пидорасит иконку как попало и области им задать нормальные не выходит.
Пример какое поведение мне нужно на пике: сверху мало текста, снизу текст не входит в обычные размеры кнопки и увеличивает её высоту (считаем ширину фиксированной), точки - якоря привязки, рамка показывает границы объекта текста. Дальше я это собираюсь в префаб засунуть и динамически создавать из кода с иконкой, текстом и скриптом.
556 409508
Вот у меня в редакторе все кнопки в одном ряду, но в готовом билде одна из них сползает (между ними есть небольшое расстояние)-как можно исправить?Спасибо.
вsddыаaererdsdва.png219 Кб, 1367x742
557 409513
>>09501
Родителю добавляешь горизонтал лайаут (ставишь все 4 галочки), картинкуе и тексту - лайаут элемент. Картинке задаешь мин width, тексту - min width и preffered width, последняя c запасом.

Убедись что Юнити обновлена до 5.6

>>09508

>Вот у меня в редакторе все кнопки в одном ряду, но в готовом билде одна из них сползает (между ними есть небольшое расстояние)-как можно исправить?Спасибо.


Вероятно, у тебя разное разрешение в редакторе и билде? Настрой рескалинг под разные разрешения. Или отключи его нафиг (Canvas -> CanvasScaller - > CjnstantPixelSize).
558 409523
>>09501

> и изменять размеры кнопки если не вписывается в текущие


А вот для это, кажется, нужно только min задавать, без preffered.
sage 559 409668
>>09394
Дерево можно красиво сократить используя BlendTree
14868310192040.png23 Кб, 200x200
560 409701
>>09668
Но ведь деревья нужно растить, а не сокращать
561 409848
>>09501
Якоря наоборот же нужно к краям рамки приделывать, иначе "внутренности" не будут под размер подстраиваться не будут. По центру если якорь, то иконка/текст просто "висят".
>>09513

>middle loyalty


Average же
562 409853
Я правильно понимаю, что этот ваш юнете сейчас очень плотно повязан с точканет и я могу задействовать в скриптах засунутые в проект дллки, написаные, например, на крестах/CЛИ?
14199739864926.jpg301 Кб, 482x735
563 409856
Котаны! Есть 2 стула: Unity и Android. Что профитней если заняться всерьёз, почему? Помогите не проебаться.
564 409858
>>09856
Ты будешь пилить игры в андроиды? Или юнити будет таргетной платформой?

>>09853
Там староватый шарп с моно. Ничто не помешает использовать сишные библиотеки, само ядро юнити на плюсах.
565 409859
>>09858
Бля. Хуёво спросил. Уточняю. Лучше заняться чем?
unity ИЛИ android
566 409861
>>09859
Дебил, иди нахуй лучше. Даже я, блядь, вижу, что у тебя вопрос поставлен настолько хуево, что ты вообще не понимаешь что сам спрашиваешь, блядь.
567 409862
>>09859
Лучше займись уроками.
568 409863
>>09862
с удовольствием в шкалку бы вернулся
569 409865
>>09859
Юнити - движок, андроид - платформа. Можно писать на юнити под андроид, а можно сперва бегло разобраться в вопросе прежде, чем делать судьбоносные решения.
570 409867
>>09865
Юнити для меня интересней андроида, но мне кажется его менее выгодно изучать так как срежняя зп ниже и он не так востребован(ну и народу его знает не так много)
571 409868
>>09867
Тоньше
572 409869
>>09868
да я и не толщу. просто такое виденье у меня. где я не прав?
573 409873
>>09859
Иди лучше в программач за учебниками по Яве. Тут игры делают, а не деньги зарабатывают. Релизнутые играбельные поделия на пальцах можно пересчитать.
574 409908
>>09873
Спасибо за совет, анон
575 409960
>>01747 (OP)
Как сделать взаимозависимость переменных в скрипте? Нужно чтобы, например, переменная
"yellowpony" была в 10 раз меньше чем "bluepony", притом 2 переменная постоянно изменяется в процессе игры, спасибо за потенциальные ответы,
576 409971
>>09960
Ну в апдейте присваивай желтой синюю / 10, каждый кадр будет обновляться. Если так не подходит, то делай класс или структуру с этими переменными в качестве полей, у блюпони сделай сеттер, в котором сразу будет меняться значение желтой.
577 410024
Как, например, при нажатии кнопки Q , заспавнить игрока на стартовых координатах ну, или на заданных - например x=10, y=5, z=0?Спасибо за ответы .
578 410035
>>01761 (Del)
Ебать ты отсталый.
579 410044
>>10024
GameObject yoba;
Vector3 pos = new Vector3(10, 5);
Update()
{
if (Input.GetKeyDown("q"))
{
Instantiate(yoba, pos /тут что-то ещё, а может быть и нет/);
}
}

Ебать вы ленивые. Иди уроки смотреть. Это классика, это знать надо.
580 410060
>>10044
Спасибо няш, сможешь ещё ответить на вопрос : как отредактировать этот код , чтобы игрок(player) заспавнился на координатах (0;0;0)?
581 410085
>>10060
Instantiate(yoba, Vector3.zero, Quaternion.identity);
582 410091
>>10060
Пиздуй уроки смотреть, а?
583 410093
>>10060
Ты тот анимехуй, которому я писал, как разрешать игроку делать что-то ещё во время движения? Заебал уже, полистай документацию, там все предельно просто. У тебя гугл, блядь, есть, в него запросы проще писать, чем сюда.
584 410097
>>10085

>Instantiate(yoba, Vector3.zero, Quaternion.identity);


О, тогда Игрок остаётся на месте, но на спавне множество других игроков появляется , как сделать просто "телепортацию" игрока на эти координаты?
585 410099
>>10097
Лимит ответов исчерпан. Купите Pro версию.
586 410104
>>10097
Player.Transform = new Vector3(10, 5, 0);
587 410107
>>10099
Итак, получилось таким образом:

Destroy(Player);
Instantiate(Player, Vector3.zero, Quaternion.identity);

Всё почти как планировал, однако нужно ещё закрепить камеру за "новым" игроком, как можнo
это осуществить?
588 410152
>>10107
ヽ(*・ω・)ノ
589 410153
>>10152
когда уже эта мразотная свинья отправится в холодец?
590 410180
>>10107
Только новый игрок у тебя будет дефолтный без нихуя. Клонируй статы.
591 410196
Как на ХуюнитиJS запердолить рандомное число от 1 до 10?
592 410198
>>10196
Никак, бери сисярп
Обезьяна стучит в дверь.webm943 Кб, webm,
202x360
593 410203
>>10198

>бери сисярп

594 410222
>>01747 (OP)
Как можно просто телепортировать игрока на определённые координаты (0;0;0), если одны из переменных становится < 10?
595 410223
>>10222

void Update()
{
if (transform.position.x < 0 || transform.position.y < 0 ||
transform.position.z < 0 ||)
Transform.Position = Vector3.zero;
}

А вообще иди нахуй, имбецил.
596 410443
Есть где-то годные туториалы с пояснениями, как верстать ГУЙ под все разрешения?
597 410446
>>10445 (Del)
Репорт
598 410459
>>10445 (Del)
Удвоил репорт.
599 410461
600 410465
>>10461
Спасибо, братиш. Пойду читать, но ещё обязательно вернусь.
601 410479
Госпаде, совершенно случайно наткнулся на Unity Remote, стало в РАЗЫ проще дебажить на реальном устройстве.
602 410482
На телефоне шрифты идут по пизде, первый пик это скриншот с экрана. В настройках стоит пиксель пёрфект, и на экране Game в самом юнити всё чётко.
Screenshot2017-07-06-18-06-14.png11 Кб, 768x1280
603 410483
>>10482
Все-таки дело в юнити ремоут, это он пидорасит качество. Если собрать и поставить апк, то все нормально. Правда размер текста отличается, сравните с тем который на предыдущих скринах. скринах.
604 410495
Возникла странная проблема. Как-то странно работает скрипт. Пик 1 - то, где возникает проблема. dirToPlayer.direction.magnitude почему-то всегда равен 1 или 0.99999.
Второй пик - оригинальный класс, в котором всё работает как надо.
Третий пик - консоль во время игры.

Чому 1 то?
605 410497
>>10495
Может, глобальные/локальные координаты?
606 410499
>>10497
А как их поменять в скрипте?

Кстати, забыл упомянуть, что проблема возника после того как я поменял Pixels Per Unit на всех спрайтах.
607 410525
>>10495
>>10499
Короче я просто скопировал второй скрипт в первый и всё заработало. Не знаю что произошло.
q4elOtoiZ8I.jpg67 Кб, 640x640
608 410582
сап гд, как поменять ориентацию экрана на портретную при разработке под андроид ?
609 410585
>>10582
Переверни телефон.
3.png18 Кб, 276x230
610 410636
Как затайлить спрайт для фона без использования кода? Вижу вот такую настройку, но спрайт не размножается.
611 410742
>>01747 (OP)
Как сделать так, чтобы объект (Player) совершил какое-то действие(eat) после того как коллайдер другого объекта (Apple) стал находиться внутри коллайдера игрока (по x и y координатам, т.к. игра в 2д) ?
612 410744
>>10742
Это всё в туториалах и учебниках есть, сколько можно-то, а?
Поставь в коллайдере яблока галочку Is Trigger, прикрути к игроку скрипт, где будет функция void OnTriggerEnter(Collider other),
в котором будет получаться какой-нибудь уникальный для этого типа объектов компонент через other.GetComponent<AppleScript>()
(AppleScript это просто пример), либо проверяться тэг через other.tag, может ещё какой-то вариант есть, и если тэг соответствует яблоку или компонент != null, то выполняешь соответствующие действия.

И идите уже нахуй читать юнити в действии и смотреть туториалы, вместо того,
чтобы просить анона расписывать уже данные там вещи.
613 410795
>>10744
Спасибо за ответ, если тебе интересно, объясни пожалуйста подробнее этот пункт :

>если тэг соответствует яблоку или компонент != null


Т. е. как можно это записать кодом , например:

if (" тэг соответствует яблоку или компонент != null " ) {

" соответствующие действия"

}
14994918445440.jpg37 Кб, 500x371
614 410809
>>10795
Блэд, не толсти, сука, я же тебя за этот жир выслежу по ip и в жопу выебу.
615 410830
Выходные в хату, господа. После долгого периода нихуянеделанья продолжаю пилить open-world 2D дрочильню мечты. Нихуя не продвинулся, еще и бросился делать другой свой высер. Хуево вышло, короче. Читать свой код спустя месяц — пиздец интересное и заебное занятие.

Собственно, возникли два вопроса:
1. Не совсем понимаю, как работает А* и как его прикрутить. Типа мне можно задать одну клетку, условно, в 0.5 юнитиметров и проверять коллизии?
2. Хочу пиздатый бесшовный мир знаю, что нихуя не проработаю, но мне уже тупо интересно. Немного подумав (и нажравшись ссылок на платные ассеты), пришел к такой схеме: креплю через transform.position точку к игроку, храню там локальную позицию по отношению к текущему чанку, обновляемую каждый кадр. Чанкам задаю int[2] с координатами для сетки массивов int[x,y]. Если позиция точки слишком далеко от центра чанка и Игрок вот-вот увидит соседние чанки — инстанциирую их. Точка вместо просто координаты игрока нужна для катсцен, за ней ходит камера, хуе-мое.
Правильно думаю? Или где-то наебался?

>>10795
GetComponent<>() возвращает тебе объект, как в смысле инстанцию класса (скрипта). Если он не находит этот компонент в GameObject'е, он возвращает null. Соответственно, пишешь для своего игрового объекта игрока:

OnTriggerEnter(collision col) //бля, или там Collider в скобочках. Загугли.
{
if (col.gameObject.GetComponent<Yoba>() != null)
{
KrutimYobu();
}
}

Либ проверяй через тег все в том же OnTriggerEnter:

if (col.tag == "Yoba")
{
KrutimYobu();
}

Не забудь прописать проверку здоровья, если тебе уж яблоки надо подбирать.
616 410843
Господа каким образом можно "заморозить" камеру при нажатии клавиши (любой) ?
617 410882
>>10843
Падающие снежинки добавить?
618 410884
>>10882
Под заморозить я имел ввиду запретить её изменение с помощью мыши.
За обзор отвечает следующий код

rotX = Input.GetAxis("Mouse X") MouseLookSens; (вращение по оси Х)
rotY -= Input.GetAxis("Mouse Y")
MouseLookSens; (вращение по оси У(т.е вертикально))
rotY = Mathf.Clamp(rotY, -60f, 60f);
(ограничение обзора по оси У)
transform.Rotate(0, rotX, 0); (поворот по оси х)
eyes.transform.localRotation = Quaternion.Euler(rotY, 0, 0); (поворот по оси У)
619 410885
>>10884
Важное уточнение я планирую замораживать камеру в инвентаре.
Т.е инвентарь закрыт- камера свободно двигается
Инвентарь открыт - камера не двигается
620 410886
>>10885
if(mogu_dvigat_cameru == true)
{rotX = Input.GetAxis("Mouse X") MouseLookSens; (вращение по оси Х)
rotY -= Input.GetAxis("Mouse Y") MouseLookSens; (вращение по оси У(т.е вертикально))
rotY = Mathf.Clamp(rotY, -60f, 60f);
(ограничение обзора по оси У)
transform.Rotate(0, rotX, 0); (поворот по оси х)
eyes.transform.localRotation = Quaternion.Euler(rotY, 0, 0); (поворот по оси У)
}
0d83a3b6fa4924orig.jpg55 Кб, 700x500
621 410887
>>10886
Как всегда, самое очевидное решение лежало на поверхности.
Спасибо анон
622 410889
>>10830
Типа ты заранее размечаешь клетки как проходимые/непроходимые а потом ищешь пути по ним
623 410987
>>10886
За такие решения надо пиздить палками. Сначала он хочет одно, потом другое, потом третье и вот у него ебаная туча флажков, которые нужно менеджерить.

Лучше бы сделали что-то поинтереснее. Например:

abstract class InputContext
{
internal abstract void UpdateInput() { }
}

sealed class CameraInputContext : InputContext
{
internal override void UpdateInput()
{
// поворачиваем камеру
}
}

sealed class GaySexInputContext : InputContext
{
internal override void UpdateInput()
{
// долбимся в срундель
}
}

class InputManager : MonoBehaviour
{
InputContext m_CurrentInputContext;

void Update()
{
if (m_CurrentInputContext != null)
m_CurrentInputContext.UpdateInput();
}

public void SwitchContext(InputContext inputContext)
{
m_CurrentInputContext = inputContext;
}

}

мимоПРОдебич
623 410987
>>10886
За такие решения надо пиздить палками. Сначала он хочет одно, потом другое, потом третье и вот у него ебаная туча флажков, которые нужно менеджерить.

Лучше бы сделали что-то поинтереснее. Например:

abstract class InputContext
{
internal abstract void UpdateInput() { }
}

sealed class CameraInputContext : InputContext
{
internal override void UpdateInput()
{
// поворачиваем камеру
}
}

sealed class GaySexInputContext : InputContext
{
internal override void UpdateInput()
{
// долбимся в срундель
}
}

class InputManager : MonoBehaviour
{
InputContext m_CurrentInputContext;

void Update()
{
if (m_CurrentInputContext != null)
m_CurrentInputContext.UpdateInput();
}

public void SwitchContext(InputContext inputContext)
{
m_CurrentInputContext = inputContext;
}

}

мимоПРОдебич
624 411018
>>10987
А можно немного яснее ?
Не понял что мне написать где \\Долбимся в срундель
625 411027
>>10987
Где почитать про все это и перестать быть говнкодером? шилдта читал, но не до конца
627 411037
>>11018
Ну, допустим, ты хочешь добавить функционал "оттарабанить в очко врага", но камера в это время будет фиксирована, следовательно ты прописываешь в классе это:

sealed class GaySexInputContext : InputContext
{

[SerializeField]
Ass m_TargetAss;

internal override void UpdateInput()
{
var horizontalFuck = Input.GetAxis("Mouse X");
var verticalFuck = Input.GetAxis("Mouse Y");

m_TargetAss.fuckDirection = new Vector2(horizontalFuck, verticalFuck);

}
}

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

>>11027
Шилдт тебе даст информацию о том, какой у тебя инструментарий есть в распоряжении. А то, чтобы не быть говнокодером достаточно почитать про такую вещь как паттерны и принципы SOLID. Например, вот неплохие ресурсы: http://gameprogrammingpatterns.com/ -- тут много хороших примеров от "ветерана" индустрии. который боевой код не писал, а только in-house инструменты лепил
https://refactoring.guru/ru -- тут тусуется выжимка из книжек по паттернам и подходам к разработке.

АНОН, БУДЬ ОСТОРОЖЕН! Паттерны не стоит применять всегда и везде. Используй их только тогда, когда у тебя появится реальная проблема с расширением и поддержкой существующего кода. И да, тот пост я написал специально, чтобы поднять проблему того, что к нам в контору приходят ребята, которые знают движок, но нихуя код писать не умеют. То есть да, они умеют писать "код". Он работает, он выполняет задачу. Это хорошо, но, к сожалению, с таким кодом работать довольно тяжело, т.к. порой получаются классы по 12к строк, в которых чёрт ногу сломит и потратит недели 2-3, чтобы разобраться в том, что там происходит.

>>11028
Сорян, писал с мобилки.
abstract class InputContext
{
internal abstract void UpdateInput();
}
627 411037
>>11018
Ну, допустим, ты хочешь добавить функционал "оттарабанить в очко врага", но камера в это время будет фиксирована, следовательно ты прописываешь в классе это:

sealed class GaySexInputContext : InputContext
{

[SerializeField]
Ass m_TargetAss;

internal override void UpdateInput()
{
var horizontalFuck = Input.GetAxis("Mouse X");
var verticalFuck = Input.GetAxis("Mouse Y");

m_TargetAss.fuckDirection = new Vector2(horizontalFuck, verticalFuck);

}
}

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

>>11027
Шилдт тебе даст информацию о том, какой у тебя инструментарий есть в распоряжении. А то, чтобы не быть говнокодером достаточно почитать про такую вещь как паттерны и принципы SOLID. Например, вот неплохие ресурсы: http://gameprogrammingpatterns.com/ -- тут много хороших примеров от "ветерана" индустрии. который боевой код не писал, а только in-house инструменты лепил
https://refactoring.guru/ru -- тут тусуется выжимка из книжек по паттернам и подходам к разработке.

АНОН, БУДЬ ОСТОРОЖЕН! Паттерны не стоит применять всегда и везде. Используй их только тогда, когда у тебя появится реальная проблема с расширением и поддержкой существующего кода. И да, тот пост я написал специально, чтобы поднять проблему того, что к нам в контору приходят ребята, которые знают движок, но нихуя код писать не умеют. То есть да, они умеют писать "код". Он работает, он выполняет задачу. Это хорошо, но, к сожалению, с таким кодом работать довольно тяжело, т.к. порой получаются классы по 12к строк, в которых чёрт ногу сломит и потратит недели 2-3, чтобы разобраться в том, что там происходит.

>>11028
Сорян, писал с мобилки.
abstract class InputContext
{
internal abstract void UpdateInput();
}
выаaddfererdsdва.png513 Кб, 1920x1021
628 411046
>>11037
Вагон чая тебе.

Это не воркач, но интересно - возьмут в геймдев чувака который может писать и отлаживать код на c# (и всяком прочем) но при этом не знает типовых алгоритмов, теорию графов, высшую математику, и плохо знает стандартные библиотеки C# за пределом часто используемых.
629 411049
>>11046
Assuming что код чувака читаем.

ПС. А большой размер класса это всегда плохо? Даже если он решает (как кажется) единую задачу? Скажем, 50-70 внятно названных методов в классе (на 1000 строк)- это плохо? С учетом что где надо проставлено private, static и пр?
630 411059
>>11037
Вместо множества флажков долбимся с множеством классов, ммм.
sage 631 411064
>>11049
Это пиздец как плохо.
632 411098
>>11046
Ну, тут как повезёт. Если не топ контора, то вполне могут взять.

>>11049
Нет, это не всегда плохо.
Например, открой исходники string или List, там что-то порядка 2,5к строк, но там полей не так уж и много, т.е. тебе не надо запоминать огромнейший контекст происходящего в этих классах.
А я сталкиваюсь порой с тем, что люди пишут по 20-30 булевых флагов, каждый из которого либо используется в одном приватном методе, либо переключается где-то в других классах, не относящихся к этой логике (например, в рендере). Либо вместо того, чтобы завести структуру на 4 int, заводят массив из 4 int, а потом пишут километровый комментарий, что нулевой элемент массива -- это дилдо-пенисы, первый элемент -- турбо-мемесы и т.д. В результате, ты просто обязан знать каждый метод наизусть и должен знать flow происходящего.

>>11059
Что сказать-то хотел, молодой?
633 411101
>>11098

>Что сказать-то хотел, молодой?


Что вместо запоминания кучи флагов надо запоминать кучу классов и помнить кто что в инпутхендлер пихает. Что то запихнт контекст для жопоебли и тут же вместо этого впихнётся контекст для сосания хуёв, поставив нас перед вопросом почему же жопоебля больше не работает?
Можно конечно пихать контексты в стек, но куда проще в игре про поедание яблочка, если оно попало в коллайдер анимешного рта, сделать несколько флагов или фсм для камеры.
sage 634 411104
>>11101
Ты не понимаешь сути ООП.
Анимешный рот есть не яблоки, а объекты типа Eatable, и ему совершенно похуй, яблоко это, груша или автомобильная покрышка (ну а вдруг).
Соответственно, на разных уровнях абстракции тебе надо представить или нарисовать либо простое взаимодействие Eatable-рот, либо внутреннее устройство яблока.
Это проще, чем держать в голове всю картину целиком.
Естественно, речь о нормальных проектах хотя бы с несколькими тысячами строк кода, а не о визуальных новеллах уровня gd.
635 411106
>>11104

>Eatable


IEatable тогда уж.
Только устройство поедания фруктов и марок никак не связано с переключением режимов камеры.
output5.webm3,5 Мб, webm,
512x456
636 411190
Вернулся к своей игрушке после сессии, и понял насколько через жопу у меня связаны скрипты. Переделывать всё с нуля сейчас, пока это возможно, или забить хуй и пойти набивать тумаки дальше? Вообще, расскажите пжалста, по каким скриптам вы разбиваете базовые возможности, типа переключения анимаций, атаки, движения.
sage 637 411192
>>11104
Только не объект Eatable, а интерфейс IEatable
sage 638 411193
>>11046
Нет. Ты напишешь говны, решая через анал тривиальнейшие задачи.
639 411363
Нид халп.
Аноны, нужна ваша помощь.
Есть камера, эта камера по колесику ездит ближе-дальше, меняя distance.
Когда дистанция выходит за определенные рамки, камера дергает GameView.SizeMultiplier = newValue;
GameView стреляет событие, по которому объекты на сцене масштабируют себя в соответствии с новым SizeMultiplier, и выставляет состояние IsReady = false, пока этот процесс не закончится.

Камера ждет пока GameView.IsReady, потом выставляет себя на новую позицию, чтобы все выглядело как было.

Проблема в том, что объекты успевают перерисоваться в кадре с номером N, а камера "дожидается" готовности GameView только в кадре N+1, и пользователь видит глитч.

Как это можно пофиксить, кроме ручного рендеринга на текстуру?
640 411365
>>11363
Жду вот так:
yield return new WaitUntil(() => GameView.instance.IsReady);

Если я правильно понимаю, оно сразу после вызова проверяет состояние IsReady, и в следующий раз вызывается только при обработке следующего кадра.
При этом объекты меняют размер на том же кадре.
641 411368
>>11363
>>11365
Отбой, я уже понял, что я довен.
642 411416
>>09848

>Average же


Спасибо, пофиксил
643 411598
>>11190
С учетом того, что сейчас любая макака может на юнити ебнуть свою игру, написав два вагона говен, вместо кода, то, думаю, умение в нормальную архитектуру - единтсвенное, что тебя может отличать от нее, так что продумывай иерархию и пиши по уму.

А вообще удваиваю вопос и реквестирую чего почитать именно по архитектуре
ship pic 5.png567 Кб, 805x449
Меню как отдельный уровень 644 411624
Здравствуйте, нуб, все дела... Пилю симулятор города. Возник вопрос по созданию разных меню, между которыми можно было бы быстро переключаться. 2D, на пике что-то примерное

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

Что надумал:
1. Создавать новые сцены с погрузкой данных - медленно.
2. Реализовать новые камеры и меню-рисунки чуть в стороне и переключаться между камерами.
3. Сделать новые canvas'ы и переключаться между ними.

Вопрос: Как лучше это реализовать, чтобы меню открывались быстро. И как лучше спроэктировать взаимодействие между всеми ними(сейчас читаю про MVC паттерн).

Заранее спасибо.
645 411636
>>11624
upd: В общем как в героях, город отдельно, карта отдельно.
646 411651
>>11624

>Как лучше это реализовать, чтобы меню открывались быстро


Очевидно, не создавать меню каждый раз а прятать\показывать. Вероятно, пул объектов для элементов списоков
647 411653
подскажите пожалуйста как пользоваться тернарным оператором наоборот. можно писать int value = true ? a : b; а как написать true ? a : b = value;? или как емко и читабельно в зависимости от условий выбрать тот или иной value type для присвоения нужного значения?
648 411655
Джентельмены, я нубец, пилю 2D рпг-ху с пошаговыми боями.
Суть вопроса такова - вот собрал я из спрайтов модельку персонажа (ну там тело, голова, бедра, игры и т.д.). Даже запилил какую-никакую анимацию стояния на месте и удара.
Но я хочу, чтобы на персонаже отображалась одежда, выбираемая в меню перед боем, как это лучше сделать?
Допустим, заменить спрайт тела с сохранением анимаций?
Может стоит сделать как-нибудь скелет из палок, а палкам цеплять спрайты и как-то менять их походу? Вообще, если кто поделится туториалом/примером как кастомизировать спрайтового персонажа без трогания анимаций - буду крайне признателен.
649 411657
>>11653
Чего блядь? Ты хочешь создать переменную разного типа, но одного названия, в зависимости от условия? Скорее всего, твоя проблема не в том, как это сделать, а в том, что такое вообще не должно быть нужно.
650 411661
>>11657
нет, мне нужно ссылаться на ту или иную переменную в зависимости от условий, которая принадлежит одному типу и ссылаясь на неё передать туда значение.

а то приходится писать что-то вроде
MyClass reference;
int? value = null;
int result;

if(Function(a, out result))
value = result;
else if(Function(b, out result))
value = result;
else if(Function(c, out result))
value = result;

if(value.HasValue){
if(govno)
reference.a = value.Value;
else
reference.b = value.Value;
}

но если бы можно было ссылатся на нужную переменную то я бы на неё ссылался ещё там где Function и делал бы там себе return или ещё чего. все это выглядит нечитабельным говном. мне интересно как сделать это более читабельным говном.
652 411668
>>11667
ну, да, можно и так.
Спасибо!
sage 653 411670
>>11598
Game Engine Architecture
Game Code Complete
Книжки по софтодизайну вообще.
Много блогов которые ты найдёшь по запросам.
Это настоящее программирование, к нему нет туториала на ютубе.
654 411693
>>11670
Понель, спасибо, анон
image.png61 Кб, 584x673
655 411709
Когда они уже наконец наймут UI дизайнера в команду. Татьяныч плачет от этой ебанутой сетки, от самого уродливого шрифта в истории шрифтов, он еще и не сглажен, эти иконки из Visual Basic 2000, скругления, тени, куча мусора. Унити смогли сделать софт с еще более уродливым интерфейсом чем чуваки из автодеска. Мои апладесменты.
sage 656 411789
>>11709
мистер артист, шли бы вы дальше, это не для вас тут положили. нормальным людям глубоко похуй.
657 411802
>>11709
Хочешь красоты пиздуй на уеч, юнити доступный ширпотреб для непритязательных школьников-говноедов.
658 411864
>>11802
Не обижай Юнити, п-пожалуйста...
659 411996
>>11802
>>11789
Но ведь он прав, UI там всегда говном был, как стандартный игровой гуй
мимо-5 лет на унити
660 412262
Там 2017-ая версия вышла, кириллы.
Го качать
661 412274
У меня игра где пули спаунятся как самостоятельные объекты из ствола. Правда ли что постоянно создавать и уничтожать через пару десятков секунд это очень затратно по ресурсам? И как этого избежать?
662 412331
>>12274
В простом шутане можно обойтись рейкастом. Догадываюсь, что можно и падение снаряда по параболе запилить.
663 412657
>>12274
Сейчас бы потратить месяцок-другой на оптимизацию того, что можно не оптимизировать, да, анончик?
Для выявления проблемных мест есть профайлер.
664 413381
Джавамакак решил вкатиться. Какую VCS лучше использовать? Мануал предлагает Perforce или Plastic SCM . До этого работал только с гитом.
sage 665 413404
>>11996
одно дело гуи в игре, другое дело гуи в самом юнити. и на гуи самого юнити разумеется глубоко похуй.

>>12262
а я скачал и доволен. хотя и крашится.
666 413470
Делаю supermarket для мобильных платформ.

>>08310
Да, с вами всё тот же ебанат (под этим постом. Ну вы поняли)
667 413488
>>11651
Вот этого двачую.

>>13470
Это у тебя был дрифт на тележке? Если да, то доставь вебм, пожалуйста.
668 413764
>>13470

> supermarket для мобильных платформ


Нах уя?
mcdonaldsgame.webm9 Мб, webm,
640x360, 3:51
669 413894
>>13470

>Делаю supermarket для мобильных платформ.

670 414705
>>13381
бамп
671 414707
>>13381
Ни в коем случае не пользуйся гитом, я 2 месяца ебался с ним, чтобы он нормально мерджил, в итоге все равно через раз все разъебывает нахуй, что аж сцен не открыть, так заебались руками в текстовом виде сцену править, что вообще отказались от СКВ.
Юнити в этом плане - ущерб.

Ну или я косорукий даун, что скорее всего
672 414728
>>14707

>вообще отказались от СКВ


ну это вообще плохо
я бы послушал еще советов мудрых
673 414787
Пачаны, как правильно звук на андроиде отключать? Выключать листенер не помогат.
Писать свой андроид-онли менеджер звуков и мьютить там?
674 415352
>>13764
Хуй знает. Не ко мне притенении а к заказчику =)
>>13894
Лол, круто :D
675 415577
Анон, меня тралят ебаные спрайты.
На первом пике, как должно быть. На втором, как есть. И это происходит совершенно случайно. На 10 запусков, 5 работает как надо. Что делать? Тут два спрайта, земля и игрок. Они оба потомки проекта. Переопределить землю к игроку я не могу. Как мне сделать так, чтобы земля показывалась сзади? Я уже ахуел, а еще даже фон не придумал
676 415664
>>15577
Очевидно, что они создаются в рандомном порядке. Создавшийся последним будет сверху.
На видосик: https://unity3d.com/ru/learn/tutorials/topics/2d-game-creation/sorting-layers
677 416044
>>15664
Все исправил, смотрю дальше. Спасибо, анон
output6.webm3,9 Мб, webm,
634x465, 0:19
678 416046
Намучался я с этим механизмом проворачивания в руке. Грубо, но заработало таки.
679 416320
>>16046
Няшно.
yboN9R5.mp41,5 Мб, mp4,
680x382, 0:23
680 416784
Что там полегче вместо VS можно для кода использовать? Заебал этот комбайн, тормозит как сука, а надо просто редактор с автодополнением. VS Code? MonoDevelop?
681 416785
>>16784
VS Code. Но студия все равно лучше.
682 416786
>>16785
Да ясно что лучше, но иногда дольше ждёшь пока он прогрузится, чем код редактируешь.
683 416788
>>14787
Можешь написать свою мьютилку.
Правильных решений не существует. Есть либо хорошие, либо плохие.

>>14707
Ну, скорее всего ты косорукий довн. Я пользуюсь гитом дома, а на работе меркуриалом.

мимоПРОлох
684 416848
>>14707
>>14707
Что лол блядь? Все норм с гитом у меня
685 416852
>>16848
>>16788

Тогда прошу помочь.
Какой мерджтул юзаете для мерджа сцен и префабов? kdiff3 у меня через раз все херит.
Накатывали ли какие-либо плагины для юнити?

мимо косорукий даун
file.gif458 Кб, 256x256
686 416940
Аноны, помогите с выбором. Нужно анимировать всякое движение, решил выбрать ассет для этого, благо бесплатных много. Выбор между LeanTween, DOTween и iTween. Не знаю чем из них пользоваться. У кого-нибудь из них есть возможность анимировать движение "скачками"? в моем случае - нужно симулировать движение по пикселям
687 416960
>>16852
Я что-то так подзадумался и осознал, что у нас никто одновременно над одной сценой/префабом не работает. Соответственно, мы просто не мёрджимся.

Может и вам так стоит попробовать работать?

мимоПРОпендаль
688 416962
>>16940
Блядь, а чем тебе аниматор не угодил?
https://www.youtube.com/watch?v=Kn6jxLWA31M

мимоПРОебырь
689 416979
>>16960

>мимо


Какое-то у тебя странное мимо, вниманиеблядь.
690 417025
Посоветуйте книжечек\видосиков по шейдеронаписанию
691 417148
Много багов в 2017 версии?
sage 692 417179
>>17148
я встретил довольно много когда включил версию шарпа повыше. особенно юнити любит крашится к хуям при сериализации скриптабл обжектов. а так нормально если старой версией шарпа пользоваться, стало лучше.
693 417220
>>17148
Дохуя. Она не закрывается если выставить .net 4.6 и в конце стала падать буквально на ровном месте, когда я жал Play, даже без своего баг-репортера. Надо ждать хотя бы 2-3 патчей, не раньше осени будет пригодна к использованию.
694 417324
>>16960
Ну ахуеть теперь, советы уровня /gd/, ты ведь понимаешь, что если в команде 2+ человека, то кому-то придется по ночам работать, а это кромешный пиздец.
695 417351
>>17324
Если вы не можете нормально распределить роли, то это ваши проблемы.
696 417362
>>16979
Чо хочу, то и делаю, брат.

>>17179
>>17220
Господа, "новый" .net помечен как preview же, поэтому ничего удивительного тут нет.

>>17324
А хуле мне понимать, когда мы в 30 рыл ебашим проект?
697 417377
Screen.currentResolution дает разрешение монитора вне зависимости от размера окна в котором играет контент юнити. Как мне получить реальный размер окна в котором играет контент юнити? (Например, в редакторе или веб GL? Там размер окна нифига не равен 1920х1080 например)

Точнее говоря, мне это нужно что бы в ручную устанавливать положение окон - без учета реального разрешения получается ерунда..
698 417386
>>17377
Screen.width попробуй, или где-то там в Application. Иди нахуй короче, когда вы уже блядь в документацию научитесь? 5 лет прошло, а дебилы все те же вопросы задают.
699 417388
>>17386

>Screen.width попробуй, или где-то там в Application. Иди нахуй короче, когда вы уже блядь в документацию научитесь? 5 лет прошло, а дебилы все те же вопросы задают.


Ну не злись, няша. Я же нагуглил Screen.currentResolution а мог бы прийти с "зделойте мне заябись". Screen.height помогло, спасибо.

Лучше расскажи зачем ты вообще нубам помогаешь? Свой проект скучный?
700 417426
>>17388

>Свой проект скучный?


В своём проекте всем на него похуй, а тут можно делать вид, что умный.
701 417480
>>17426
Естественно, ведь в моем проекте нет чуханов вроде тебя. В нем вообще никаких чуханов кроме меня нет.
702 417498
>>17480
Лучше поясни - когда я добавляю объекту компонент-скрипт с классом-наследником MonoBehaviour это разве не означает создание нового экземпляра этого класса-наследника? А то у меня скрипт добавлен к разным объектам и он каким то образом берет инфу не из своего экземпляра.

Алсоу, они это серьезно: When you use C#, you must explicitly derive from MonoBehaviour.
(https://docs.unity3d.com/ScriptReference/MonoBehaviour.html)

А то у меня дофига классов которые от System.Object наследуют.
703 417566
>>17498
Можешь хоть от чего наследоваться, но если это компонент, то будь добр и монобихейвор добавить.

Про экземпляры все верно, но хуй знает что у тебя там в коде. Что вообще подразумевается под "берет инфу"?
704 417624
>>17362
Падучей страдал даже когда я откатился на .net 3.5.
выаdfffererdsdва.png10 Кб, 225x151
705 417638
>>17566
Спасибо. А то уж я думал.. Но нет, это у меня в коду ошибки. У меня есть 1 объект в сцене - реализует всплывающую подсказку. И есть компонент который добавляется к элементам интерфейса и передает инфу в тот объект в сцене. Ну и я обосрался с обновлением инфы в этом объекте сразу из нескольких мест.. Разберусь как-нибудь.

>>17362

>Господа, "новый" .net помечен как preview же, поэтому ничего удивительного тут нет.


>>17624

>Падучей страдал даже когда я откатился на .net 3.5.


А 5.6 будет падать если я его заставлю работать с более новой .net? 4.0 или хз какую там можно натянуть

Он у меня и на 2.0 правда порою падает при отладке..
image.png501 Кб, 599x503
706 417665
>>17638

>5.6


>работать с более новой .net


>2.0

707 417697
У меня очень много зависит от ориентации игрока смотрит вверх, вниз, влево, вправо и т.д.. Что лучше, задать ему компонент который будет обновлять и хранить эту информацию в себе, и создавать ссылку на него в других скриптах, используя его переменные, или создать ScriptableObject, в который буду писать информацию об ориентации, и использовать потом как глобальную переменную? Просто не совсем понятно для чего ScriptableObject'ы нужны, кроме как хранить совсем глобальные переменные.
708 417962
>>17697
ScriptableObject нужен для того, чтобы хранить повторяющиеся статичные данные, чтобы сериализатор "вхолостую" не гонять.

Например, у тебя есть у тебя есть NPC, который должен говорить определённый текст. Текст весит 10Мб. Если ты будешь текст хранить в MonoBehaviour, то когда ты на сцене будешь держать 10 NPC, ты потеряешь 100Мб памяти, т.к. когда ты делаешь Instantiate, ты вызываешь процесс создания полной копии объекта.
Если же ты сделаешь отдельный ScriptableObject с этим текстом, и дашь ССЫЛКУ своему NPC, то при вызове Instantiate у тебя все копии объектов NPC, будут ссылаться только на этот ScriptableObject.
Сумбурно как-то объяснил засыпаю хуле, но надеюсь, что поймёшь.

мимоПРОбыдло
709 417967
>>17962
Хм, так намного понятнее на самом деле. Спасибо.
710 418021
>>17665
Вот у этого https://github.com/AlbinoGeek/Economy-Unity аж 6.0 заявлена. И судя по дате это не 2017. Я, правда, не проверял.
711 418042
>>17638
Нет, не будет. Натянуть нельзя (почти, через анус только). Юнити использует Mono 2.0, где реализован .NET 3.5.
712 418095
Господа, подскажите пожалуйста, а нахуя вам самый последний .net?
Я, откровенно говоря, не сталкивался с какими-то лютыми проблемами, что мне пиздец как нужен был последний .net
713 418097
>>18095
Вскукареки кирюх, которые ищут оправдание лишь бы игры не делать. Вообще в роадмапе юнити есть намерение запилить последний net, нужно только потерпеть.
714 418164
>>18095

>Господа, подскажите пожалуйста, а нахуя вам самый последний .net?


>Я, откровенно говоря, не сталкивался с какими-то лютыми проблемами, что мне пиздец как нужен был последний .net


Часть сахарку недоступна в 2.0. Автоматические properties например. Linq говорят память дико жрет в этой версии. Не, жить можно конечно, но хотелось бы лучшего.
715 418398
>>18097
Ну, насколько знаю, они его запилили, но пока только превью-версию.

>>18164
Ты какой-то диванный.
Пропертями автоматическими в юньке пользуюсь уже хз сколько.
716 418404
>>18164
Всякие говноделы вставляют Linq (которому в гейдеве вообще не место) в апдейт и потом жалуются что ТОРМАЗИТ, вся суть кириллов.
717 418407
>>01747 (OP)
Как можно реализовать, чтобы объект или спрайт было видно сквозь все объекты
718 418426
>>18407
Выставить его выше всего в слоях?
719 418430
>>18426
Вангую, что этот >>18407 кирюха узнает про очереди отрисовки.
720 418516
Аноны, а есть какая нить документация под андроид? конкретно хотелось бы узнать про ограничения и вообще возможности дроида, чтоб примерно представлять масштабы разработки
721 418532
722 418616
>>18095
В StrangeIoC меньше ебанавтики. Конструкция типа injectionBiinder.Bind<IPool<Foo>>().To<Pool<Foo>>() работает.
723 419234
>>18616
Опача.
Браток, а можешь пояснить за IoC-контейнеры? Я совсем не понимаю, куда их можно воткнуть, кроме как замена синглетонов.
724 419467
Сап, двач, я тут туториалы спидраню и не могу понять какую-то мелочь в работе интерфейса
https://youtu.be/HlDGSStxuHI?t=6m18s
Вот в этом моменте господин ведущий меняет с Local на Global и объект больше не проваливается, то есть перемещается лишь в горизонтальной плоскости (если я правильно понял), но у меня ничего не меняется, летает по всем трем осям при попытке перемещения что так что так. В чем дело?
725 419536
Привет, друзья. Решил вкатиться в Юнити, дабы делать 2D игоры под телефон и рубить далары. В целом, есть уже годная идея, не очень сложная для реализации.

Ну а пока мой друк-художник пинает хуи, я принялся копаться во всём этом, собственно вот продукт моего копания, друзья:

Значица, что есть?
Спрайт машины из гугла.
Море крови, море зомби.
Пулемёт (или че это, я сам хз, че сделал) и нож.
Зомби.
Зомби-плевки (они плюют).
Невозможность пройти игру.
Невозможность выйти из игры.
Возможность убивать врагов.
Возможность почувствовать себя чмом.
https://yadi.sk/d/4U1nnyPw3LDSmX
726 419539
>>19536
Забыл добавить, что нож находится чуть выше входа в здание. Ну и само здание лучше не обходить, а то такое себе выйдет. Я завтра, наверное, буду пытаться сделать так, чтобы зомби сквозь стены не агрились.
727 419541
>>19539
>>19536
Оружие менять на цифры "1" и "2".
Вот рабочая ссылка: https://yadi.sk/d/HaeTTBLG3LDSvE
ball.jpg63 Кб, 1281x801
728 419552
>>19467
А хз.
Это настолько малозначительная хуйня, что можно не заморачиваться.
DSC0001.JPG2,6 Мб, 3840x2160
729 419572

>Крайне рекомендУется купить/скачать книгу Unity in action (Unity в действии)


спасибо, будет чем заняться на досуге
 .webm740 Кб, webm,
800x450, 0:10
730 419638
>>19572

> спасибо, будет чем заняться на досуге

untitled.JPG168 Кб, 1920x1080
731 419644
>>19467
Попробуйте выключить компьютер и снова включить. В Global можно и по вертикали двигаться. Ты за Y-ось точно не дёргал?
732 419646
>>19234
Не просто замена синглетонам. Синглетон - это Stuff.Instance, привязка к конкретной реализации. Ты же можешь привязываться к интерфейсу, не зная ни реализации, ни кто и где создаёт эту реализацию.
Бонус-трек: я использую StrangeIoC ещё и для биндинга экранов GUI. У меня нет некого GUIManager'а с кучей экранов в полях, как нет и полей в экранах для перетаскивания ссылок на иные экраны. У меня есть [Inject("Имя экрана")], ноль обезьяньей работы как результат.
Снимок.PNG28 Кб, 329x262
733 419647
>>19644
Мелочь эту не пойму. Если дергать за (анус) сам объект, то он летает хуй пойми как, а если за кубик, грани которого совпадают с осями координат, то все норм и он перемещается как надо, чисто по горизонтали, почему так?
734 419649
>>19467
досмотри до конца
cd7e53f750481c02d79de12501141ed5.png8 Кб, 260x183
735 419791
Котаны, что за дела? Сбилдил 2D-залупу, где кода кот наплакал и полтора спрайта, и получил на выходе 36 метров, 23 из которых занимает сам экзешник.
В логе вот что написано. Хуй процентов плюс хуй процентов плюс 11% библиотек равно сто процентов. Заебись.
Чего делать?
736 419810
Помню у левела был туториал по диалогам, где текст вводится по одной букве. Объясните основной принцип, или тыкните куда копать.

И, случаем, нет ли перезалитых видосов уровня?
737 419849
>>19791
Скомпилируй пустую сцену/проект и вес посмотри
image.png554 Кб, 1200x630
738 419863
Аноны, а как в юнити сделать, чтобы сиськи подпрыгивали при ходьбе? В makehuman для них есть кости, но юнити их убирает при выборе пресета humanoid в ригах. generic что-то путает, моя няша становитя похожей на чужого. Гугол выдает скрипт 2013 года, что-то я стремаюсь его использовать
739 419864
>>19791
Перейти на нормальный движок.
FileSizeOptimization[1].png58 Кб, 680x558
740 419867
>>19849
>>19864
Просто в том же мануале от юнити на скрине по процентам всё сходится, а у меня из 11 стало 100.
741 419890
>>19863
У тебя или мейкхьюман больной или юнити. Потому что я сиськи импортирую из 3д макса и у меня все норм. Еще есть такие варианты:
1) В настройках импорта fbx ставишь optimize bones галку. Так нельзя.
2) Неправильно экспортируется из мейкхьюмана, и в fbx по факту нет таких костей.

Ну ладно, а теперь мой вопрос. Делаю персонажа с функцией динамического раздевания. То есть по событию одежда сползает с тела и падает на пол. Реализую это через всего один убогий blend shape (или morpher в 3д максе), в которой зашита модель скомканной на полу одежды. Все вроде норм, но одежка заскиненна на тело и в процессе раздевания она деформируется от движения костей, так как идет анимация.
Можно как-нибудь так сделать, чтобы Skinned Mesh Renderer компонент перестал работать с костями? Я читал доки, вроде метод запекания в Mesh есть, но это как-то слишком сложно, как проще сделать?
742 419898
>>19890
Гейвиллу новую пилишь?
743 419904
>>19898
Под персонажем может и женский пол иметься ввиду.
Нет, у меня игра не про еблю и тем более не про пидоров.
Для геймплея фича сползания одежды особого значения не имеет, однако чтобы у игрока крепче шишка стояла хочется сделать по уму.
744 419913
>>19890
Не совсем понял что тебе нужно, но на ум приходит что-то такое
SkinnedMeshRenderer[] renderers = this.GetComponentInChildren<SkinnedMeshRenderer> ();
if (renderers.Length > 0) {
for (int i = 0; i < renderers.Length; i++) {
renderers .bones = null;
renderers .rootBone = null;
}
}
745 419917
>>19913
Ну, само собой, вместо this передай то что надо, если скрипт не на самой одежде висит.
746 419977
Сап, единствотред

Гугл ничего не дал, ты моя последняя надежда. Пытаюсь применить к rigidbody (3d) постоянное ускорение при включённой гравитации. Проблема в том, что движение модели происходит всё-равно рывками как бы я не дрочил. Решения из гугла желаемого эффекта не дали.Уже и через выставление velocity в update делал, и через moveposition. Один хер движение на высокой скорости происходит рывками.(камера через линейную интерполяцию фолловит цель, рывки видно и на пека, и на телефоне)
ЧЯДНТ? Не могу понять, неужели в единстве физон настолько тяжёлый для телефонов?
747 419992
>>19977
В FixedUpdate?
748 419997
>>19977
Time.deltaTime / Time.fixedDeltaTime юзаешь?
интерполяцию на риджидбади въебал?
749 420002
>>19992
И в FixedUpdate, и в LateUpdate, и в Update. Уже тупо перебираю, один хер какие-то непонятные рывки.

>>19997
Пробовал с дельтой при MovePosition, толку нет. В Velocity тоже.
Предлагаешь двигать через MovePosition через интерполяцию между current - end позициями? Тогда же смысла от rigidbody нет. Свой велосипед будет же.

Я пытаюсь добиться плавного движение персонажа по направлению одной оси с притяжением и угловым ускорением Эндлес раннер на 2д плоскости в 3д пространстве
Я зафризил у rigidbody rotation по всем осям и положение по Z оси.
750 420075
751 420076
>>20075
Полистал, судя по картинкам именно то, что мне нужно. Как раз я не до конца понимаю как устроен рендер пайплайн в единстве. Спасибо, анон.
752 420125
Псаны, пытаюсь курить андроидокодинг, возник такой вопрос.
Как, мать его, обработать событие по простому тапу на спрайт/UI-Button?
Вот есть у меня в коде

if (Input.GetKeyDown (KeyCode.LeftArrow)) {
//йоба-код
}

Как мне заменить условие, чтобы этот код сработал при тапе? Гугл какие-то слишком мудрёные варианты выдаёт с кучей лишних условий.
754 420141
>>19977
на камеру ебашь ригидбоди с интерполяцией и двигай через addforce
755 420142
>>20133
А можно человеческим языком? По твоей ссылке ещё пара ссылок, которые на вопрос не отвечают.
bone-bone.PNG190 Кб, 916x555
756 420177
>>19913
Не не получилось. При .bones = null у меня модельку одежды выварачивает на 90 градусов по оси х. Хз, почему так, возможно проблемы с моделлингом. Ну ладно, хуи с ним, эффект все равно меньше секунды проигрывается.

Аноны, а у кого есть опыт работы с кастомными костями в Mecanim? Вот, к примеру, дополнительная кость для плеча для более качественной анимации. Однако если модель импортировать в меканим, то кость там эта будет, а вот ее анимации - нема.
То же самое могу сказать и про анимацию морфов. Сами морфы в меканим поступают, но не их анимации.
fbx сохраняю в Motion Builder.
757 420184
>>20142
Ну, ты попробовал хотя бы, а потом уже просил что-то человеческим языком.
Для тупых лентяев, поясню.
Берешь сцену, ебашишь Button в Canvas, ебашишь на сцену EventSystem. Пишешь свой сраный скрипт, в котором реализуешь интерфейс. Вешаешь скрипт на кнопку.
Запускаешь плеер и жмёшь сука на кнопку.
758 420186
>>20184
Ананас, я это всё понимаю. Я тебе даже больше скажу — при создании кнопки и Canvas и EventSystem создаются автоматически. И они у меня уже даже есть. И даже "сраный скрипт" написан.
Я же не об этом спрашивал. Я спрашивал какой void вешать на обработку тапа, только и всего.
Чего ты злюка такой?
759 420192
>>20177

> опыт работы с костями


> в Mecanim


Сам же понимаешь что это извращение.
760 420209
>>20192
Нет, это нормальное сексуальное желание.
Ну вот как сделать упругую задницу без пары дополнительных костей, а как огромный мамон жирдяю?
Эх, печально. Походу, придется экономить на качестве анимации, если хочу попасть в TWG.
761 420297
>>20209
Так ебашь кости в максе или блэндере, а потом пихай уже в юньку.
762 420303
>>20177
проиграл с костей, переходящих из спины в хвост
763 420385
Если я закинул себе в проект пак с УИ на полтора гигабайта, эти полтора гигабайта будут и в самой игре, увеличивая её размер? Или он сам как-то вырежет их и возьмет только те что я ипользую?
764 420386
>>20385
Если их не будет в сцене, то их не будет и в билде.
765 420387
>>20386
Ну а если у меня в сцене например несколько раз используется только одна кнопка из этого пака? Он скопирует её себе, или он и так использует копию для каждой отдельной кнопки?
766 420388
>>20387
Господи, сбилди ты игру, открой Editor.log да посмотри что там куда пошло.
767 420390
>>20388
Ну ладно. Спасибо.
mapview.jpg117 Кб, 1502x813
768 420412
РЕФАКТОРИНГ
@
РЕФАКТОРИНГ
@
РЕФАКТОРИНГ

Переделываю симуляцию орбитальной механики в третий раз, чувствую себя ебланом.
Первый раз у симуляции и отображения была большая связанность.
Ок, похуй, отвязал, приделал ивенты. Получилось немного сложна нипанятна, класс-контейнер векторов состояния (position, velocity) содержит ссылку на объект, представляющий данные по орбите о всяких аномалиях, наклонениях и прочем, и еще одну ссылку на объект, который обеспечивает гравитационное взаимодействие.
Сейчас сижу упрощаю, выпиливая вычисления параметров орбиты в статический класс и объединяя гравитацию и вектора состояния в одном классе, хорошо хоть что заодно добавил поддержку сейв-лоада через json.
769 420452
Взываю к демиургам ЕДИНСТВА. Поясните, как работает рендер пайплайн в этом движке.
Я правильно понимаю что fixedUpdate выстреливает каждый квант времени и отрабатывает даже в ущерб фпс? Т.е. если он не успевает отработать достаточно быстро то рендер кадра будет пропущен и таким образом будет падение фпс?
770 420496
>>20452

> Я правильно понимаю что fixedUpdate выстреливает каждый квант времени и отрабатывает даже в ущерб фпс?


фиксед может сработать хуилиард раз за кадр, но его последствия будут рулить апдейт или лэйтапдейт
771 420498
ртфм плиз
772 420502
Как можно сделать линию, по типу drawline только чтобы в игре была видна, лайн рендерер пробовал, с ним линия выходит за фон
2д игра.
773 420539
>>20502
Поговаривают, что в последней юньке завезли тайловые спрайты.
Вот ими и ебашь.
774 420569
>>20412
Интеграцию чем делаешь? Эйлером? Я знаю умные слова!
775 420570
>>20385
Нет. Только то что имеет связи через сцену, ресурсы или ассетбандлы идёт в билд.
776 420574
>>20569
Им самым. Хотя планирую переделать на Рунге-Кутту.
777 420581
У всех в MonoDevelop память подтекает или только на макоси?
778 420619
>>20581
Win8.1, тоже.
выаaersdefdfrdsdва.png347 Кб, 1143x846
779 420629
>>20581
Ты небось ресурсы не высвобождаешь, типа там текстурки, меши и пр. GC за тебя это не сделает.
780 420634
кто подскажет почему триггер не срабатывает?

public class NewBehaviourScript1 : MonoBehaviour
{
public GameObject Action;
void Start()
{
Action.SetActive(false);
}

void Update()
{

}
private void OnCollisionEnter2D(Collision2D collision)
{
Action.SetActive(true);
}
}
781 420641
>>20634
разобрался, все работает
782 420643
>>20634

> NewBehaviourScript1



> void Update()


> {


>


> }



Это даже мило.
783 420655
>>20412
Анончик, всегда было интересно как в подобных симуляторах просчитывается длинная незамкнутая орбита?
имею в виду траекторию, выходящую за пределы гравитационной ямы земли, там ведь блядские планетки движутся, направление векторов меняется.
Просто берешь какие-то временные точки и последовательно моделируешь, а потом по ним интерполируешь траекторию или что-то прям хитровыебаное?
784 420696
>>20629
Ты дурак? MonoDevelop вообще ничего про ассеты не знает. Я тебе даже больше скажу, он скрипты не запускает.

>>20643
Парень учится, это нормально. Это намного лучше того, если бы он сиську с пивом давил, продавливая диван.
785 420708
>>20696

> это нормально


Да я ж и говорю, даже умиляет. Я не как что-то плохое, наоборот.
786 420724
>>20655
Строишь гиперболу, которая упирается в границы SOI.
В точке выхода из SOI берешь значения векторов скорости и положения относительно нового родительского тела (Земля, при выходе из SOI Луны), по ним считаешь кеплеровы элементы орбиты вокруг нового родительского тела, по этим элементам рисуешь новую траекторию.
В общем прост немного векторной алгебры.
787 420807
Посоны, насколько стабильно отключение компонентов? У меня есть выбор, при диалоге отключать компонент с передвижением и атакой, или каждый кадр проверять bool который указывает на то, в диалоге игрок или нет. У меня подкожное чувство, что при отключении будет куча багов вылезать.
788 420827
>>20807

> Посоны, насколько стабильно отключение компонентов?


Ну если компонент уже не нужен, то его отключение стабильно на 100%.
Телепатов нет, никто не знает чего там у тебя в скриптах творится.
789 420868
>>20807
стабильно или нет зависит только от твоих скриптов, все значимые баги самой юнити пофикшены с версий 0.000000000001
790 420871
Есть на ютубе хоть один русский обзор с обновлением 2017.1? Полный обзор, с разбор ченджлога.
791 420880
>>20871
Что тебе мешает просто чейнджлог почитать?
792 420912
>>20871

>не может в ангельский


Как ты вообще живешь?
793 421007
Объясните пожалуйста ньюфагу, как может быть установлен лимит по прибыли на бесплатной версии unity? Просто интересно
794 421013
>>21007
Все на честном слове, так что можешь не париться
795 421028
>>01747 (OP)
Сап, анон. Вкатываюсь в юнити потихоньку. Посоветуйте адекватный какой-нибудь ассетс - спрайт менеджер. Есть вообще такие?
796 421055
>>20912
Пошел нахуй, мне лень переводить
797 421068
>>21055
Ну вот ты и ответил сам себе:

>Есть на ютубе хоть один русский обзор с обновлением 2017.1? Полный обзор, с разбор ченджлога.


>Пошел нахуй

798 421071
Где в этом Юнити находится main()? Как мне тут инициализацию контроллеров и менеджеров запилить, которые будут доступны во всех сценах и т.п. На ОГРЕ каком я могу из мейна это все вызвать. А тут что? Статик классами чтоли делать? Так они не создадутся пока к ним не обратиться.
799 421073
>>21071
Start()
Awake()
800 421094
>>21071
Пустой объект с компонентом-синглтоном.
sage 801 421096
>>21071
где-то они там писали на эту тему немного
https://unity3d.com/ru/learn/tutorials/projects/2d-roguelike-tutorial/writing-game-manager
802 421124
Аноны, скажите, а я один такой даунич, который заново собирает префаб macanim персонажа, как только сделал существенные изменения в 3д-модели?
Кто знает как делать правильно, чтобы просто подцепить новую модельку с костями на старый префаб и все?
803 421136
>>20724
Спасибо большое, а еще вопросик:
То есть в пределах сферы влияния игнорируется влияние тел, отличных от родительского?
804 421141
Анончик, пытаюсь показать текст в течении некоторого времени. Но ничего не происходит, где я наебался?

public NewPlayer theNewPlayer;
int i = 3;

publiс void Tutorial()
{
while (i > 0)
{
theNewPlayer.gameObject.SetActive (true);
i--;
}

}

}
805 421143
>>21141
Сука. быстрофикс

public NewPlayer theNewPlayer;
int i = 3;

public void Tutorial()
{
while (i > 0)
{
theNewPlayer.gameObject.SetActive (true);
i--;
}
}

}
806 421144
>>21143
Ну а твой Tutorial кто вызывать будет за тебя?
807 421145
>>21143
Если собрался вызывать с апдейта, то while не подходит, так как вайл пробежит за один кадр - это раз.
Во-вторых, целесообразнее для "временных" задач юзать карутины, либо Инвоки
808 421149
>>21136
Для невозмущенной орбиты. Для спутников считается реальная траектория, на моем скрине в виде точек поверх орбиты.
809 421174
>>21144
>>21145
Разобрался, спасибо
810 421195
>>21071
main() нет, но ты можешь сделать свой. Для этого используешь атрибут https://docs.unity3d.com/ScriptReference/RuntimeInitializeOnLoadMethodAttribute.html и создаёшь свой main(). Там создаёшь юнити-объект, помечаешь его как DontDestroyOnLoad и получаешь свой главный цикл. Отсюда работаешь как будто у тебя нормальный движок. Я так годами делаю.
811 421196
>>20655
Задача трёх и более тел не имеет аналитического решения - потому только моделируешь.
812 421247
Тут случайно нет людей, которые использовали Dialoge Manager For Unity из ассет стора?https://www.assetstore.unity3d.com/en/#!/content/11672
15009239157530.jpg35 Кб, 800x450
813 422039
Анон, как сделать такой свет в юнити? Может есть какой-то туториал?
814 422045
>>22039
Никак. Смирись.
815 422101
>>22045
Можно, но это нужно настраивать light cookie и tonemapping
7wsA7BjHpo.jpg56 Кб, 574x480
816 422111
Сап, Гдэч.
Есть один собственный тип данных (List<> состоит из всяких там float, bool и т.д.), который я сериализую, отправляю по сети, а потом десериализую.
Все бы ничего, но после сериализации там 2к байт. Это чото дикое дохрена. Как уменьшить?
817 422115
>>22111
Ручками запихиваешь в стрим, а потом так же вытаскиваешь. Ибо автоматическая сериализация генерирует дохуя мусора.
818 422131
>>22111

>List<> состоит из всяких там float, bool и т.д.


Чего блядь?
819 422136
>>22131
Ну видать у него свой класс и он объекты класса в лист загнал.
820 422147
>>01747 (OP)
Ньюфаг итт.
Хочу написать простой скрипт, который будет толкать объект сразу после его создания по нажатию лкм.
У меня он только создается, а толчка не происходит. Что не так делаю?

void Update()
{
if (Input.GetMouseButtonDown(0))
{
Instantiate(bullet, new Vector3(7, 1, 7), Quaternion.identity);
rb = GetComponent<Rigidbody>();
rb.AddForce(transform.forward * power, ForceMode.Impulse);
}
}
821 422148
>>22147
Так, на всякий случай. Риджидбади на объекте висит хоть? Переменная power определена?
822 422151
>>22148
Rigitbody на префабе
power = 250f
823 422156
>>22147
Скрипт на чём висит?

> rb = GetComponent<Rigidbody>();


Ты тут получаешь компонент не пули, а объекта, на котором висит скрипт. Тебе надо писать
rb = bullet.GetComponent<Rigidbody>();
825 422165
>>22161
Ах да, transform.up я прописал потому что мне так захотелось. Поменяй на transform.forward.
826 422168
Это >>22161 сюда >>22147
40e3NuhFzdw.jpg24 Кб, 302x301
827 422169
>>22115
Уже

MemoryStream stream = new MemoryStream();
BinaryFormatter formatter = new BinaryFormatter();

SurrogateSelector ss = new SurrogateSelector();
AddSurrogates(ref ss);
formatter.SurrogateSelector = ss;

formatter.Serialize(stream, Object);
byte[] buffer = stream.ToArray();

но чот обьем данных пугает.
828 422174
>>22161
Спасибо.
829 422526
>>22111>>22169
Никогда не сериализуй generic коллекции, блэт. Ты пакуешь не только данные, находящиеся в ней, но и саму реализацию коллекции.
Во первых, ты определённо делаешь что-то не так. В идеале, модель, состоящая из типов значений (int,long,float) сериализируется идентично маршалингу в памяти. Создай структуру/класс, назови её FuckingPackage, сериализуй её (нахуй тебе ss?). Explicit и Implicit преобразования допишишь по ходу дела.
Во вторых, ты можешь преобразовать в массив свой список, а затем его сериализовать. Хотя если, понапихал не элементарные типы в List<Object>, то это тебя не спасёт.
В третьих, кидай пример того, что ты пытаешься сериализовать. Не данные, а типы данных. Мы тут не экстрасексы, чтобы по твоему жиру определять размеры типов данных.

А я пока задам свой вопрос. Кто-нибудь знает пример реализации 2D-изометрии в Unity? В частности интересуют коллизии и рейкастинг.
830 422535
Хуле бля камера-то слайдером не крутится-то? Всё в ноль улетает сразу и меняться не хочет.

public void OnValueChanged(float value)
{
GameObject.Find("Camera").transform.eulerAngles = new Vector3(90.0f * value, 0.0f, 0.0f);
}
831 422539
>>22535
В каких значениях изменяется value?
14986696356262.jpg91 Кб, 480x960
832 422546
Спасибо тебе, добрый человек. Попробоваю!
Суррогат нужон потому, что *ятский Vector3 почему-то не сериализуется нифига, а он у меня в классе присутствует.
833 422553
как-же заебали в этом юнити. с каждым новым релизом фпсы стабильно падают. вместо того, чтобы чинить всякое говно вроде убогого InputManager'а или конечного менджмента сцен, они делают то, что проще всего сделать: в очередной раз переписывают пяток пост-эффектов, зато добавив к ним никому не нужный йоба-редактор.
По сути оверхайпнутый таймлайн ( который уже давно кор фича во всех остальных движках, который в юнити наконец-то к концу 2017 года запили, браво!) единственная новая фича в юнити за последние - сколько уже с момента выхода 5-ой версии - 3 года?
834 422554
>>22553
Пора перекатываться на godot. С юнити все ясно.
14302184577000.jpg36 Кб, 400x400
835 422563
>>22526
это сюда
>>22546
14956402065230.png420 Кб, 540x726
836 422566
>>22526

>Ты пакуешь не только данные, находящиеся в ней, но и саму реализацию коллекции.


какую еще реализацию. данные записываются так, как их записывает форматтер. В частности бинари форматтер.
article-2602528-1D06B2D200000578-424634x471.jpg39 Кб, 634x471
837 422568
Мне что, нужно создавать 2 копии изображения, чтобы использовать его одновременно как спрайт и как текстуру?
838 422569
>>22568
Шта?
Спрайтрендерер и обычный рендерер это разные компоненты, которые вполне схавают одно и то же изображение.
839 422570
>>22539
От 0 до 1
840 422608
>>22566
Форматтер проходится по мете класса и сериализирует всё, что необходимо для восстановления объекта. Проблема в том, что он сериализует помимо данных List<T> ещё и внутренние переменные класса, помеченные на сериализацию. Вот тебе пример на три элемента и один Int64.
https://gist.github.com/anonymous/cef8b4d9268a5e309825e0a8416de7f8

Сейчас, смотря на реализацию List<T> и его сериализацию, я больше задаюсь вопросом каких хуев непомеченных он напихал в List<T>, что у него ебанутые размеры выходили.
841 422614
Аноны, подскажите пожалуйста, есть ли в юнити функция, вызывающаяся при старте процесса/появлении сплешскрина/начале загрузки первой сцены, то есть максимально близкая к старту приложения?
0LuVoLjZSeI.jpg44 Кб, 604x457
842 422617
>>22608
Даже без List<> этот пакет после сериализации весит 1296 байт. Что чот жырненько.
Чтобы не смущать, переменные намазал писосом.

public NetDataFast netFastSendMessages = new NetDataFast();

[System.Serializable]
public class NetDataFast
{
public float pisos1;
public float pisos1;
public bool pisos1;

public Vector3 pisos1;
public Vector3 pisos1;
public Vector3 pisos1;

public bool pisos1;
public bool pisos1;

public int pisos1;
public int pisos1;

public bool pisos1;

public bool pisos1;
public bool pisos1;
public bool pisos1;

public bool pisos1;
public bool pisos1;
public bool pisos1;

public bool pisos1;
public bool pisos1;
public bool pisos1;

public bool pisos1;

public bool pisos1;
public bool pisos1;
public bool pisos1;
public bool pisos1;
public bool pisos1;
public bool pisos1;

public float pisos1;
public float pisos1;

public float pisos1;
public float pisos1;

public float pisos1;
public float pisos1;

public float pisos1;
public float pisos1;
public string pisos1;

public bool pisos1;
public bool pisos1;
}
0LuVoLjZSeI.jpg44 Кб, 604x457
842 422617
>>22608
Даже без List<> этот пакет после сериализации весит 1296 байт. Что чот жырненько.
Чтобы не смущать, переменные намазал писосом.

public NetDataFast netFastSendMessages = new NetDataFast();

[System.Serializable]
public class NetDataFast
{
public float pisos1;
public float pisos1;
public bool pisos1;

public Vector3 pisos1;
public Vector3 pisos1;
public Vector3 pisos1;

public bool pisos1;
public bool pisos1;

public int pisos1;
public int pisos1;

public bool pisos1;

public bool pisos1;
public bool pisos1;
public bool pisos1;

public bool pisos1;
public bool pisos1;
public bool pisos1;

public bool pisos1;
public bool pisos1;
public bool pisos1;

public bool pisos1;

public bool pisos1;
public bool pisos1;
public bool pisos1;
public bool pisos1;
public bool pisos1;
public bool pisos1;

public float pisos1;
public float pisos1;

public float pisos1;
public float pisos1;

public float pisos1;
public float pisos1;

public float pisos1;
public float pisos1;
public string pisos1;

public bool pisos1;
public bool pisos1;
}
843 422622
>>22614
Awake у самого первого компонента в первом объекте в стартовой сцене
844 422643
>>22608

>и сериализирует всё, что необходимо для восстановления объекта


Ух ты ж блять, он записывает типы перменных и их именя, а еще 4 байта как число элементов в списке. Вот сука прожорливая! Ну нахуй, лучше свой велосипед напишу.
845 422645
>>22569
Нет, на текстуре можно настраивать wrapping, а на спрайте нет.
846 422648
>>22617
Типы данных записываются как строка полностью с полным namespace'ом, и именна переменных тоже записываются. Отсюда у тебя размер.
14274140913540.jpg33 Кб, 400x400
847 422650
>>22648
Ох ты ж ешкин кот.
Щито же делать?
Руками конвертить свой тип в byte[] и отсылать?
Что рекомендуют ведущие собаководы страны?
image.png16 Кб, 940x93
848 422652
>>22617
https://gist.github.com/anonymous/3622850b22182f6053b343fb2170f9f4
Vector3 нельзя сериализовать. Ты можешь его преобразовать в свой вектор, а затем его записать. И да, второй вариант сработал, но тебе придется знать структуру элементов массива и ты можешь запросто её проебать. Добро пожаловать в протоколы
849 422654
>>22648
А, если у тебя для сети, то очевидно нужно использовать другую сериализацию.
В контексте юнити и высокой производительности, тебе нужно использовать строго BinaryReader/Writer.

Если любишь пердолится с библиотеками, то можешь посмотреть, например, flat buffers. Это просто сгенерирует для тебя классы, в которых внутри используются опять-же BinaryReader/Writer
Но я не вижу смысла, проще самому
850 422662
>>22654
Кстати этот челик прав. Я уже и забыл о существовании BinaryWriter/Reader. Это будет гораздно эффективней сериализации в плане объема.
14213204966240.jpg135 Кб, 800x1136
851 422663
>>22652
Хороший мой, для этого и нужен SurrogateSelector
ты просто описываешь отдельно Суррогат для Vector3, а потом нашему BinaryFormatter его скармливаешь.

SurrogateSelector ss = new SurrogateSelector();
AddSurrogates(ref ss);
formatter.SurrogateSelector = ss;

И сериализатор и десериализатор мгновенно понимает все что тебе хочется.

>>22654
Для сети. Пердолится с внешкой нелюбит, буду пердолится с тем что ты сказал. Спасибо тебе, няша, твоя мать - уважаемая женщина, а отец - настоящий мужчина.
852 422670
>>22662
>>22663
Алсо, в юнити же есть свои NetworkWriter и NetworkReader
853 422671
>>22670
Я до них не дошёл ещё. Челик спрашивал про сериализацию, я пояснил. Хотя челик языка толком не знает. А ещё можно въебать System.Net; и сделать минет по UDP
854 422675
>>22526

>А я пока задам свой вопрос. Кто-нибудь знает пример реализации 2D-изометрии в Unity? В частности интересуют коллизии и рейкастинг.


На гитхабе всякие рпг-движки были
855 422692
>>22675
На гитхаб и я могу говна дать, а есть best-practices?
856 422761
>>22650
Сериализуй в json строку только те поля, которые тебе нужны, и отправляй её.
857 422852
>>22761
Byte на символ, а ты хорош (нет)
858 422886
https://docs.unity3d.com/2017.1/Documentation/Manual/class-WheelCollider.html

>The Wheel Collider computes friction separately from the rest of physics engine, using a slip-based friction model. This allows for more realistic behaviour but also causes Wheel Colliders to ignore standard Physic Material settings.


Я правильно понял, что на колеса не влияет материал того, по чему они едут, и мне придется в скрипте колеса модифицировать?
mbpc15blackwidowpotatocannon.jpg13 Кб, 600x200
859 422941
Нужно сделать пульки, я как нуб вижу два варианта - кинематическое Rigidbody двигать через transform в Update, либо обычное через AddForse(Impulse) запускать с отключенным трением и гравитацией. Какой вариант правомочнее для сетевой игры(меньше сожрет ресурсов, плавнее, интерполяция там)? Либо что-то третье а я олень?

Рейкаст не годится.

И побочный вопрос, как лучше настроить сетевые приблуды - Network transform и прочее, чтобы не было скачков при полах тел, движениях и прочем? Я так понял, что чем больше Snap Treshhold и чем больше Send Rate, тем плавнее.
860 422975
>>22941

>я как нуб


>для сетевой игры

861 423060
>>22535
бампусик вопросику
862 423085
>>23060
ой, ебан, я dynamic float не поставил
b6fb8d7ab24d31ae11895ee52d464163--jim-carey-jim-orourke.jpg48 Кб, 400x550
863 423191
>>22941
Отвечаю(сам себе), кинематику плавно двигать гораздо легче, если с твердотельной физикой приходится колдовать, кинематика плавно движется на нормальных настройках нетворк трансформа(простым транслейтом). Подозреваю, что и нагрузка без просчета физики гораздо скромнее.

Вопрос про твердые тела остается в силе( в смысле, как сделать, чтобы они плавнее летали, кроме snap treshhold++ и send rate++).

И еще вопрос про реализацию хелсбаров - как правильнее, вынести их на Screen Space Canvas, или крутить-вертеть в World-Space, обращая к камере? Сколько ни смотрел туториалов, все далают прямоугольник в ворлд спейсе и крутят его каждый фрейм. Это правильно?
864 423201
>>22941
Не юзать NetworkTransform
865 423224
>>23191

>вынести их на Screen Space Canvas


Охуеешь с масштабированием и пережиманиями хэлсбаров, если будешь делать на канвасе
866 423284
Скиньте NodeCanvas из ассет-стора, пожалуйста. Мамка денег не дает.
867 423291
>>23201
NetworkTransform на всем подряд - это вообще дурная практика? Как я понимаю, альтернативный вариант синхронизироваться через SyncVar?
868 423301
>>23284
А ты сначала расскажи, чем оно лучше чем раскрученные Playmaker и Behaviour Designer с видеотуторами и огромным комьюнити.
14271760108402.jpg54 Кб, 800x533
869 423328
Сап ГД.
Расскажи мне сказку. Как дед насрал в коляску.
Запилил сравнительно рабочий LLAPI сетевой код. Раз в 0.05 секунд я формирую пачку пакетов в Queue, и исполняю SendQueuedMessages, в итоге каждому клиенту отсылаю пакеты с действиями других клиентов: 10 клиентам я отсылаю по 10 (с данными каждого клиента) пакетов. Итого, 100 пакетов.
И тут начинается говно, являющееся следствием моей говнорукости: если канал Unreliable\Relible и т.д. тогда все это при клиентах больше 1, просто пиздейки тормозит.
Если я посылаю через StateUpdate канал, то "кто первый тот и папа", и у первого клиента ни 1 лага, зато остальные клиенты просто не получают ни пакета.
Расскажи мне, ГД, как реализовать отсылку сервером постоянно обновляющихся данных клиентам? Как делают большие мальчики?
870 423343
>>23328
Основы гугли, gaffer on games, source multiplayer networking - лучшие статьи, коротко и ёмко дают базовые знания.
871 423344
>>23328
А клиенты кто? Веб-браузеры что ли? Если я правильно понимаю, LLAPI в Юнити предназначен для общения по HTTP. С твоей частотой пакетов надо забивать хуй на HTTP и ебашить двоичный потоковый протокол обмена данными через UDP.
872 423346
>>23301
1) Тем что Playmaker для совсем маленьких сделан и не нужен для тех кто готов кодить
2) Тем что NodeCanvas официально поддерживает больше других полезных ассетов которые лично мне интересны
3) Тем что NodeCanvas может использоваться как альтернатива и Behaviour Designer и Dialoge System for Unity, последний я попробовал скачал на торрентах, канваса там нет к сожалению и мне он не понравился как раз тем что он пытается за тебя сделать слишком много. Нод же выглядит не как инструмент "для чайников" который обещает золотые горы и готовые решения, а просто как полезный инструмент для визуализации и систематизации.
dDql8I7W28M.jpg82 Кб, 885x533
873 423347
>>23344
Клиенты как и сервер - приложение.
Кидаюсь голыми byte[] через набирание кучи пакетов через
NetworkTransport.QueueForSending

а потом пачкой инициирую отсылку
NetworkTransport.SendQueuedMessages

С одним клиентом все красиво - глаз не отодрать. Уже с двумя - анал карнавал.
14884868822121.jpg65 Кб, 500x594
874 423348
>>23343
Загуглил, читаю, но интересует мнение сообщества, как впринципе реализуется подобное.
Я думал о 2х путях:
1. Держим параметры всех заинтересованных персонажей в одном массиве, отсылаем его. Но в таком случае в один пакет все не влезет, т.к. переменная выйдет довольно большая по размеру, будет фрагментироваться, а на клиенте пересобираться, что неоч для частой пересылки данных.
2. Бомбардировать мелкими пакетами, что вызвало у меня описанную выше реакцию.

Вот я в тупик в встал, как ленивое хуйло и изобретаю интернет тут с вами.
875 423364
>>23328
Смотри че в профайлере, скорее всего ты слишком часто делаешь new byte[] и потом это говно собирается коллектором, вот и тормозит
876 423365
>>23348
У тебя архитектура какая, с этого начни? Клиент-сервер или птп?
Чем тебя стандартный подход не устраивает, который все поголовно используют? Или надеешься придумать что-то лучше, чем придумали профессионалы, много лет решавшие эти вопросы в боевых условиях высоконагруженных серверов?
14939783166643.jpg165 Кб, 684x1256
877 423366
>>23364
ФПС за 100. Тормозов в виде тормозов нет. Только "Лаги".
14273994973860.jpg26 Кб, 604x136
878 423368
>>23365
Клиент-Сервер. не понял что имеется в виду под стандартным подходом. HLAPI? Он тупо неудобный. Или что?
879 423369
>>23366
Ок, в чем именно лаг проявляется? Может быть такое что пакет2 доходит раньше чем пакет1 и у тебя эта хуйня никак не чекается
880 423370
>>23346
ну и зачем он тебе нужен?
881 423372
>>23370
Для диалогов и поведения же.
882 423376
>>23368
Я тебе названия статей дал, прочитай их, блеать.
Там все твои проблемы описаны и описаны стандартные и проверенные пути их решения. Что тебе ещё надо?
883 423378
>>23347
Может просто наговнокодил чего-то не того.

Ты учитываешь, что SendQueuedMessages ничего сразу не посылает на самом деле? Почитай документацию ещё раз.
image.png60 Кб, 351x260
884 423448
Аноны, теоретический вопрос (пик релейтед)

У меня есть 3д-персонаж с rigid body. К нему приделана капсула для коллизий. Есть анимция, где персонаж присел.

Вопрос, как уменьшить высоту коллайдера до высоты персонажа в приседе, чтобы он мог прятаться под столом?
885 423461
>>23448
Про это у Юнити был отдельный ролик, вроде.
886 423469
>>23461
Можешь ткнуть меня носом? В каком-то 2д туториале они рекомендовали делать коллайдеры на ноги и голову, но это была старая версия, ресурсы уже недоступны.
15001711960330.jpg87 Кб, 810x1080
887 423473
Парни, какие вприанты решений есть для юнити мультиплеера, требуется большое количество игроков - синхронизация редко и малый объем обсчета сервера, и защита трафика.
С меня нефть и ассеты
888 423554
>>23448

> как уменьшить высоту коллайдера до высоты персонажа в приседе, чтобы он мог прятаться под столом?


Ёпту, просто в момент приседания уменьшай размер коллайдера по Y.
889 423577
>>23554
В свойствах коллайдера? Он ведь свзяан с моделью, а не с анимацией, как понимаюи не меняется динамически.
890 423584
>>23577
коллайдер - компонент, не тупи
15006598728020.jpg652 Кб, 865x1080
891 423595
>>23584
Благодарю, буду разбираться. Держи няшу.
892 423600
>>23595
А её стрела пробьет рельсу вдоль?
893 423603
>>23600
Это же тред юнити. Зависит от того, что наскриптит.
asd.png2,5 Мб, 2484x706
894 423604
Нид хелп. Почему в игровом режиме качество резко ухудшается? Никак не могу связать это изменение со своими действия - эта хуйня "сама случилась".
895 423605
>>23604
Ползунок "scale", увеличение
896 423606
>>23604
Scale?
фф1.png987 Кб, 2334x700
897 423609
>>23605
>>23606
Причем тут скейл если качество режется?
898 423613
>>23609
Потому что скейл это не приближение, а тупо часть экрана, с соответствующим разрешением, насколько я понимаю.
899 423615
>>23613
Похоже я даун, и у меня она работает как приближение.
900 423616
>>23609
Притом. Это тупо юнитевская залупа, работает также, как если бы ты скриншот увеличил. Короче хуй знает для чего она нужно, программисты тупо бабки отрабатывали видимо.
901 423624
>>23609
>>23604
Извиняюсь, я и вправду даун. Чем больше размер камеры - тем хуевее качество.
902 423753
>>23595
Напомнило игру про кота
903 423764
Подскажите куда копать.

Необходимо реализовать получение урона в определенной области (2д). При нахождении объекта в определенном слое вызывается метод ResiveDamage(). Всё работает как надо, только метод вызывается очень быстро (снимает всё хп за секунду). Нужно реализовать задержку перед вызовом метода?
904 423768
>>23764
Нужно реализовать задержку перед вызовом метода. Как это можно сделать?

быстрофикс
905 423774
>>23764
Оно в фиксед апдейте вызывается? Тогда просто выставь соответствующий множитель, чтоб вычиталось сколько надо. Либо заведи переменную-таймер, если хочешь, чтоб здоровье уменьшалось не плавно, а раз в секунду или типа того. И каждый раз к ней прибавляй соответствуюзий дельтатайм.
906 423778
>>23764
корутина
907 423808
>>23774
>>23778
Спасибо.
908 423813
>>23808
Используй лучше корутин. Я когда начинал боялся его как что-то сложное, оказалось это очень крутая штука с интересной механикой работы. Мне корутины прямо моральное удовлетворение доставляют.
909 423819
>>23813
Я с этим ебался 3 часа. Гуглил, читал, пробовал корутин, выходило не так как нужно (метод продолжал вызываться работать даже после того как объект покидал область). Пробовал waitforseconds. Читал документацию по time и нихуя не понимал.

В итоге >>23774 подтолкнул на верное решение: две переменные, одно выражение, одно условие и инкремент. Охуенное тебе спасибо, добрый человек.
smug-pepe.jpg14 Кб, 199x199
910 423831
>>23764

>вызывается метод ResiveDamage()

911 423842
>>23831
Поясни что смешного.
912 423878
>>23842
Типа, знаток аглицкого увидел ошибку. Resive вместо receive. Плюнь на него.
14913408379041.jpg70 Кб, 409x604
913 423948
>>23376

>облемы описаны и описаны стандартные и проверенные пути их решения


NIET это не так.
>>23369
Лаг в том, что пакеты просто не доходят до клиентов. За минуту умудряются долететь 1-2 пакета. В то время как первый клиент получает все. Предполагаю, что это из-за типа канала (StateUpdate), но при обычных Reliable "отклик" очень долгий.
>>23378
Блин, ну конечно наговнокодил, это же очевидно. Но вот где и в чем - пытаюсь понять.
Учитываю, но судя по симптомам, это не важно.
914 423949
>>23376
>>23948
А надо то же что раньше:
Вот это >>23348
915 423950
>>23948

>Блин, ну конечно наговнокодил, это же очевидно. Но вот где и в чем - пытаюсь понять.


Ты используешь зачем-то SendQueuedMessages().
Используй NetworkTransport.Send()/SendMulticast().
Юнити все сообщения и так буферизует какое-то время, а потом отправляет пачкой.
HWqiiHEbQYI.jpg43 Кб, 499x364
916 423951
>>23950

>Ты используешь зачем-то SendQueuedMessages().


>Используй NetworkTransport.Send()/SendMulticast().


Фактически это одно и то же, если не ошибаюсь, просто при выставленном SendDelay=0, я могу контролить когда именно я отправляю пачку пакетов. Так даже в доках сказанно. Тем не менее, пробовал и обычный Send() - те же яйцы.
Любопытный факт, на клиенте проверяю MessageQueueSize
(NetworkTransport.GetIncomingMessageQueueSize) и с удивлением узнаю, что с какого то перепугу, очередь растет, несмотря на то, что я делаю Recieve().
917 423952
>>23951
это не одно и то же. SendQueuedMessages работает просто как flush. Смысла кириллу контроллировать когда точно отправлять данные я не вижу. Ты только все усложняешь.

>>23951

>Тем не менее, пробовал и обычный Send() - те же яйцы.


Ну тут нет экстрасенсов, чтобы определить что ты там наговнокодил. Может ты на самом деле только думаешь, что делаешь receive()
vzlh76dcVU.jpg66 Кб, 575x560
918 423954
>>23952

>это не одно и то же. SendQueuedMessages работает просто как flush. Смысла кириллу контроллировать когда точно отправлять данные я не вижу



Я скорее всего ошибаюсь, но это вроде бы не так. Ты набираешь очередь сообщений (иногда это нужно, например отдельное сообщение по действиям каждого клиента), а потом ее пулишь. Когда происходит batchSend оно кидается в лицо клиенту. Но, возможно у меня мозг сгнил, не исключаю.

>Ну тут нет экстрасенсов, чтобы определить что ты там наговнокодил


Все норм, просто когда считывание происходит с такой же частотой что отсылка, оно может не успевать. Просто чаще стал читать.
4OK7IgcM8c8.jpg77 Кб, 455x604
919 423973
>>23954
>>23952
Магия оказалась вот в чем: раз руками отсылаем пакеты, нужно руками же их и получать. Recieve() срабатывает на 1 пакет, как оказалось, а не на всю очередь. Поэтому просто нужно проверять очередь пакетов, и пока там еще есть что-то, нужно их шабить Recieve() себе в рот до тех пор, пока там не будет пусто.
Спасибо всем, я рад что тут проявилась полтора адекватных анона.
2.jpg100 Кб, 800x400
920 424500
Посмотрел вот видео по LLAPI, вроде хорошее :https://youtu.be/qGkkaNkq8co
Что, HLAPI вроде как безнадежен, или как(я нуб, для меня многие очевидные для вас истины в диковинку)? Если безнадежен, то подскажите хороших материалов, как самому все с нуля строить, видео хороших. Выше guffer on games и source multiplayer networking уже взял на заметку.
921 424832
>>24500
Ебашу мобильный мультиплеер на HLAPI, полет нормальный
ss+(2017-07-29+at+02.11.43).png11 Кб, 581x319
922 424889
Ананас, выручай, когда-то покопался в якорях и более-менее смог сделать че надо, но сейчас снова не могу совладать с ними.
1) Какие якоря я должен задать верхней и нижней картинке чтобы они на всех разрешениях занимали всю ширину, а верхняя - примерно 3/4 высоты.
2) Потестил на "растягиваться и по ширине и по высоте", не помогает, но вопрос такой - какого хуя ресайз вообще происходит на этом якоре когда разрешение переходит из 16:9 в 1600х900, ведь 1600х900 это тоже 16:9 ?
выаaeredfrdsdва.png102 Кб, 1314x759
923 424982
>>24889

>1) Какие якоря я должен задать верхней и нижней картинке чтобы они на всех разрешениях занимали всю ширину, а верхняя - примерно 3/4 высоты.


Если не хочешь вручную подгонять то тебе layout нужен, КМК

Добавь фиктивную панель снизу
Задай preffered_хуйня пропорционально 300 и 400 (или 3000 и 4000)
min_хуйня добавь при необходимости

>>24889

>не помогает, но вопрос такой - какого хуя ресайз вообще происходит на этом якоре когда разрешение переходит из 16:9 в 1600х900, ведь 1600х900 это тоже 16:9 ?


Там пересчет идет при изменения разрешения, КМК. В том числе с 160х90 на 1600х900
924 424995
>>24982
Вместо хуйня - height напиши

Работать будет так - сначала все элементы получат min height, потом, если осталось свободное место на панели то это место будет делится между элементами пропорционально preffered_height. В вертикал лайаутвсе 4 галки поставь. На старахых версиях юнити этот механиз м не работает
SurfaceShaderSimpleSpecularNoTex.png101 Кб, 498x360
925 425997
Изучаю, как пишутся шейдеры, и никак не пойму применение inline-функций.
Пример из оф.документации: https://docs.unity3d.com/ru/530/Manual/SL-SurfaceShaderLightingExamples.html
Описывается функция:
inline fixed4 LightingStandard_SingleLightmap
И потом - хоп - и она нигде не вызывается. И так со всеми inline-функциями. Как они работают? Кому они возвращают значение? Помогите!
cutestones.jpg186 Кб, 1024x576
926 426037
Например, есть скрипт , в результате действия которого происходит спавн objecta после клика мыши
(object спавнится на месте клика).
Что стоит добавить в код, чтобы object спавнился не сразу ( в момент клика ) , а после 2 секунд с этого момента, при условии , что нажатие кнопки (Touch) продолжается в течении этих же секунд?
Спасибо за возможные ответы.
927 426039
>>26037
yield return new WaitForSeconds
!qXDuImSRhs 928 426062
>>26037
Было:
//код создания объекта

Стало:
StartCoroutine(foo());

IEnumerator foo()
{
yield return new WaitForSeconds(2);
//код создания объекта
}
929 426178
>>26039
>>26062

>что нажатие кнопки (Touch) продолжается в течении этих же секунд?


Ну что же вы советчики

Засекаешь время в момент нажатия. В евенте отжатия проверяешь прошло ли две секунды, если да - спавнишь объект.
930 426180
>>26178
Да не дочитали сообщение до конца.
931 426223
Там визуальную студию маки на маки хех завезли официально. Клево или нет?
932 426224
>>26223
Мак для геев же.
933 426245
>>26224
Для пидоров. Попрошу не путать.
934 426322
>>24500
Сначала сделал все на HLAPI - работает, не тормозит.
Попробовал LLAPI, был дефлорирован граблями, откатился на HLAPI.
935 426773
Хочу сделать визуальную новеллу на юнити (перемещения по локам, анимации спрайтов персонажей, интерфейсы магазина, инвентаря и пара других). Сам движок вижу в первый раз (до этого в рпг мейкере ковырялся). Сколько времени у меня займёт изучение юнити для моей внки, если уделять движку по 8ч в день? Никакими навыками программирования не обладаю.

PS: Почти весь графен уже нарисовал. Ренпай брать не хочу.
936 426787
>>26773

> Сколько времени у меня займёт изучение юнити для моей внки, если уделять движку по 8ч в день?


А сколько времени уйдёт у моей бабули для изучения комплюхтерна? Даю подсказку: бабули бывают разные и способности к обучению у них тоже разные.
Начни изучать движок и сам поймёшь насколько хорошо оно у тебя идёт.
937 426793
Как сделать полупрозрачный спрайт в 2D. Допустим у меня есть спрайт облаков, но он белого цвета, а мне надо что бы было немного видно текстуру за ним.
939 426798
>>26795
Спасибо.
331439773113d092242ao.jpg611 Кб, 690x600
940 426827
Пишу вот такое, запускаю на единственной машине как хост, вылетает фатальный енот "Command function called on a server". То есть, мне нужно иметь отдельный анрегистер для хоста, который и isLocalplayer, и isServer одновременно? Почему-то другая команда, вызываемая из своего класса, а не из чужого, работает без ошибок. Где я туплю?

if (isLocalPlayer) {
gameManager.CmdUnregisterPlayer(networkId);
}

...
[Command]
public void CmdUnregisterPlayer(string playerId) {
...
}
941 426848
>>26827
[Command] нельзя на сервере. Для него есть [ClientRpc].
942 426849
Посоветуйте ассет для диалогов, чтобы с эвентами и прочей квестовой начинкой

Рассматривал эти
1. https://www.assetstore.unity3d.com/en/#!/content/69932 (15$ есть лайт)
2. https://www.assetstore.unity3d.com/en/#!/content/11672 (65$ есть демка-лайт)
3. https://www.assetstore.unity3d.com/en/#!/content/9723 (45$)
943 426850
>>26849
Пиши сам, будь мужиком!
944 426851
>>26850
принципиально НИХАЧУ сам писать

мне игру надо делать, а не велосипедить
945 426852
>>26851
Тогда вываливай 65 баксов за второй вариант, он самый нормальный и гибкий.
946 426853
Псоны, а если мы с друзяшками скинемся на ассет, кто-то один купит и другим просто архивом скинет — юнька это как-то отследить может? Не хотет каких-то проблем.
947 426854
>>26853
Нет, всем похуй
948 426856
>>26854
Отлично, благодарю.
949 426858
>>25997
да всё просто аннон - inline это такие функции код которых будет вставлен компилятором по месту вызова самой функции.
bug.jpg17 Кб, 469x187
950 426862
Антуаны, подскажите, что делать с таким багом. В редакторе при анимации меш работает нормально, а в билде коряво, будто ему веса переставили. Причем такой баг только на двух мешах был. На одном удалось вылечить выставлением 4 костей вместо авто.
951 426863
>>26862
У меня такое было когда веса автоматом проставлял.
952 426900
>>26862
Зависит от настройки качества, то есть когда выбираешь в лаунчере good/beautiful и т.д. Edit -> Project Settings -> Quality, создаешь свой пресет качества с 4 костями.
953 426907
>>26863
>>26900
Спасибо, помогло.
954 426959
>>26858

Так они нигде потом не вызываются. Поэтому я и не могу понять.
955 427094
Мудрый анон, подскажи, что делать с поиском пути. A* для 2d написать можно, но мне нужно для 3d, и заморачиваться лень. Что взять готовое? Есть RAINAI, но он толстоват, хотелось бы просто поиск пути, идеально один скрипт.
956 427121
>>27094
В юнити есть навмеш
sage 958 427389
>>27094
у юнити есть свой хороший навмеш который теперь заебись и навигацию он делает очень хорошо. RAIN так себе. ещё aStar есть, он хорош, если дашь им денег. ещё есть https://www.assetstore.unity3d.com/en/#!/content/85181 я написал, но он сыроват.
А вообще навигацию в 3д одним скриптом пожалуй не сделать.
959 427390
>>27389
сажа прилипла
960 427405
Всем здравия, друзья.
Есть три объекта.
Первый объект стоит себе, выполняет выкрик "ХУИТА" и кидает говном в сторону _объект, сам объект он определяет по тегу "Хуита".
Два других объектов имеют этот самый тег, по которому первый их и находит.
Вопрос: Как сделать так, чтобы _объект становился ближайшим объектом с тегом "Хуита"?

С двумя объектами то не проблема определять, какой из них ближе, но что делать, если их сотня, тысяча?
961 427406
>>27405
А сам этот объект, который стоит и говно плюётся, он один или их тоже до жопы?
962 427407
>>27405
Добавь их в отдельный коллижнлейер и делай цирклкаст до первого попавшегося.
963 427409
Я вот посидел и сам придумал, как это сделать. Нормальная ли это идея?

Создаём переменную _объект и массив _объекты[].
Заполняем массив объектами с тэгом хуита.
Проверяем, присвоено ли _объект значение.
Если нет, создаём новую переменную (назовём Выбор), дав ей охуенно огромное значение.
Создаём цикл, (i = 0; i = _объекты.Lenght; i++)
Проверяем, что ближе к исполнителю скрипта. _объекты или Выбор.
Если ближе _объекты, то расстояние сохраняется в Выбор, а _объект получает значение _объекты.
964 427410
>>27406
Тоже много.
965 427411
>>27409
Хуйню написал. i=0; i < _объекты.Lenght; i++
ну и в цикле участвуют _объекты[ i ], из-за разметки не записалось.
966 427412
>>27409
Не еби вола, кидай рэйкасты и выбирай ближайший объект как цель. Не сгорит твоя пекарня от такого количества рэйкастов, не волнуйся.
967 427414
>>27412
Я просто только начал разбираться во всём этом. До этого вообще с кодингом не сталкивался. Вообще идея выглядит более годной хотя бы от того, что не надо постоянно перезапускать цикл (хуита же меняет свою дистанцию). Но я не совсем понимаю, как реализовать это. Все-равно же придётся постоянно запускать цикл, чтобы определять, какой объект ближе, если их конечное количество неизвестно? В таком случае, моя идея выглядит более оптимизированной, т.к. расстояние так и так просчитывается каждый раз, но в моём случае не нужны лучи. Или я в чем-то ошибаюсь?
968 427415
>>27414
У тебя костылинг с ненужным "охуенно огромным значением", который уже противоречит одному из правил кодинга, а именно — "никаких магических чисел".
А рейкасты будут работать как часики.
969 427416
>>27415
Согласен, но я уже придумал, как пофиксить: Просто к переменной _объект присваиваем сразу значение _объекты [0], а дальше также проверяем, что ближе _объекты{i} или _объект.

Я просто, как мне кажется, не понимаю реализацию того, что ты предлагаешь. Ну и что из этого систему меньше нагружает? Просто, как я понял, в твоём предложении всё тоже самое, только сначала создаются лучи, а потом также циклом проверяется, какой объект ближе. Конечное число хуиты неизвестно.
970 427417
>>27409
Ты изобрёл поиск перебором.
971 427419
>>27416
Не хочешь с рэйкастами — делай так (и скрин, на случай если форматирование поедет):

GameObject[] objects;
public GameObject closestObject;
float dist;
float minDist;
Vector3 currentPos;

void Start () {
objects = GameObject.FindGameObjectsWithTag ("Object");
}

void Update () {
GetClosestEnemy (objects);
}

void GetClosestEnemy (GameObject[] objs) {
closestObject = null;
minDist = Mathf.Infinity;
currentPos = transform.position;
foreach (GameObject obj in objs)
{
dist = Vector3.Distance(obj.transform.position, currentPos);
if (dist < minDist)
{
closestObject = obj;
minDist = dist;
}
}
}
971 427419
>>27416
Не хочешь с рэйкастами — делай так (и скрин, на случай если форматирование поедет):

GameObject[] objects;
public GameObject closestObject;
float dist;
float minDist;
Vector3 currentPos;

void Start () {
objects = GameObject.FindGameObjectsWithTag ("Object");
}

void Update () {
GetClosestEnemy (objects);
}

void GetClosestEnemy (GameObject[] objs) {
closestObject = null;
minDist = Mathf.Infinity;
currentPos = transform.position;
foreach (GameObject obj in objs)
{
dist = Vector3.Distance(obj.transform.position, currentPos);
if (dist < minDist)
{
closestObject = obj;
minDist = dist;
}
}
}
ae55fe93cf738fd8bffb39d4ce0de1f6.png23 Кб, 577x571
972 427420
>>27419
Скрин отвалился.
973 427422
>>27416
Забыл упомянуть: этот вот >>27419 способ вычисляет ближайший объект в пространстве вообще, то есть он не проверяет нет ли между вами стен и т.д. То есть условный игрок может стоять прям под носом, но за стеной возле моба с этим скриптом и моб будет кидать говном в стену, при этом в пределах видимости моба может стоять другой игрок, только чуть подальше, и мобу на него будет похуй.
Так что если хочешь чтоб мобы выбирал именно из видимых объектов, то тут уже надо делать на рэйкастах.
974 427427
>>27409
Слишком долго будет, если у тебя куча объектов. Для такой хуйни лучше юзать физику и OverlapShpere
bandicam 2017-08-02 13-08-36-333.webm1,5 Мб, webm,
1912x716, 0:18
975 427445
>>27422
Блин, коряво объяснил.
Короче, вот наглядно.
976 427448
>>01747 (OP)
Че то не понял нихуя. В этой вашей юнити 2017 не работает способ анимирования, когда ты например перетаскиваешь дочерний (именно дочерний, например кость в иерархии скелета) объект и его новая позиция становится кейфреймом. Теперь когда выделяешь этот объект то в окошке анимации все сбрасывается и появляется кнопка для создания нового клипа. Как теперь анимировать то?
977 427450
>>27448
Вроде починилось. Ебаные индусы, я уж молчу про разнообразные ошибки в консоли через каждые пять секунд, которых в прошлых версиях не было.
978 427451
>>27450
Это какие ошибки? У меня один раз была такая фигня — по ошибке удалил напрямую из папки скрипт, стукнул себя по голове, восстановил из корзины и у меня началась забавная хуйня. Скрипт в консоли жаловался что не видит префаб (хотя в инспекторе он был присоединён), но тем не менее запросто его спавнил. Удалил всё к хуям (благо проект был тестовый), сделал всё заново буква в букву — ошибки исчезли.

Не удаляйте ничё напрямую из папки, посоны, только через юньку.
979 427459
>>27451
В последней 2017 версии каких только нет. Уже как открываешь юнити сразу вылезает ошибка. Сейчас не могу выбрать стейты с переходами в аниматоре (все удалил и сделал по новой), все переменные проебались, хотя я ничего не делал. До этого анимация тупо не проигрывалась, хотя я ничего нового вообще не делал, стандартные операции чтоб анимировать перса, которые проворачивал тыщу раз. Пиздец.
image.png49 Кб, 821x196
980 427460
Мне кажется или я идиот?
981 427461
>>27460
Есть немного.
982 427462
>>27461
кейкод нельзя запихать в свитч
983 427463
>>27462
Ну а к чему самая верхняя проверка? "Если нажали что-нибудь, то давайте посмотрим что именно нажали". Можно же ограничить проверку только теми клавишами, которые нужны.
984 427464
>>27463
В смысле? Нужны ведь все клавишы. Меня просто смущает количество операций. Если сделать кучу активных клавиш, скрипт будет несколько раз в секунду проверять по сотне кнопок.
985 427465
>>27464

> В смысле?


В прямом. Если ты удалишь проверку с anyKeyDown, то не изменится вообще нихера.
986 427466
>>27465
Зачем делать сотню проверок каждый тик, если можно обойтись одной?
987 427467
>>27466
Какую сотню? У тебя там 11 проверок, так хотя бы 10 будет.
988 427468
>>27467
Ну пока что 10, потом будет 100
989 427469
>>27468
Тебе в любом случае не нужна проверка на anyKeyDown, если потом проверяешь что именно нажали.
anyKeyDown нужен для обработки нажатия вообще любой клавиши, когда тебе поебать что юзер нажал, лишь бы нажал.
990 427470
Мне явно следовало за два бонусных дня в АРЕНУ СМЕРТИ добавить микротранзакции и paywall после второго уровня чисто для превращения игры в своеобразный арт-объект. Но не судьба.
991 427471
>>27469

>Короче я прав

992 427481
>>27471
Ладно, уговорил. Конкретно для твоего случая (клавиши от 0 до 9) можно сделать так https://codeshare.io/Gbryxj
993 427484
>>27481
Или так, если скобки не любишь https://codeshare.io/ayJAj9
994 427515
>>27484
А чё, так можно было? Ладно, ты крут, спс.
995 427550
Как грамотно организовывать порядок инстанциации объектов? Скажем, чтобы плеер не появился раньше своего хада? Я придумал только сделать хад дочерним объектом плеера. Других вариантов нет?
996 427554
>>27550
Можешь заняться костылингом и саммонить первое в апдейте, второе в лэйтапдейте.
997 427555
>>27550
через велосипед, например, можно создавать игрока через худ, в Awake()
998 427556
>>27550
Ебашь корутину, раз такой параноик. Хуячишь в корутине хад, ждёшь один кадр и хуячишь плеер.
А вообще и без корутины проблем быть не должно.
Снимок.JPG31 Кб, 516x517
999 427635
Кирилланы, есть у кого-нибудь опыт ГОАП?
Есть экшн движения без прекондишнов, результатом которого является нахождение в определённых координатах и несколько действий, требующих нахождения в определённой точке. Всё работает неплохо, но я никак не могу придумать хорошей реализации выполнения действий на ходу.
Например, есть экшн занятия укрытия TAKECOVER, требующий нахождения в точке в укрытии, что может быть осуществлено MOVETO. Но как сделать так чтобы на бегу павн стрелял во врага?
Варианты:
- Отдельное действие стрельбы на ходу. Самый простой вариант, но требует создания отдельного экшена для каждого возможного действия на ходу, делает понимание АИ более запутанным: у нас действие нацеленное на две различных цели.
- Завершать действие сразу после начала движения, а не при достижении точки назначения. Из минусов: головная боль при дебагге, куча костылей с учитыванием текущего движения при репланинге, с прерыванием движения проще сразу идти нахуй.
- Оставить ГОАП только общее тактическое планирование, запихнув в каждое действие behavior tree или даже HTN для решения реактивных вопросов. Из минусов: переусложнённые экшены, куча копипаста кода, я заебусь и забью на полпути.
Комментарии, идеи?
1000 427636
>>27635
Мы тут массивы сортируем, а ты с такими вопросами.
Unity 2017-04-05 11-05-57-89.png275 Кб, 1664x964
1001 427655
>>27635

>Кирилланы, есть у кого-нибудь опыт ГОАП?


да, у меня есть.

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



на самом деле лучше не дроби действия так сильно. Наличие точки пути можно проверять внутри прекондишена действия.
что касается твоего вопроса. заведи в действии флаг того прерывает ли это действие навигацию. режим поиска пути долже диктоваться ИИ его стейтом, а не действиями. иначе ты в каждом сраном действии будешь искать то-же самое укрытие за ближайшим деревом. если например ИИ требуется подойти поднять предмет или переключить рычаг, то он берет поводья контролера в свои руки и сам идет куда надо, а пока ИИ не надо куда-то идти он просто все время находится в режиме уклонения, или патрулирования или ещё чего из его глобального стейта.
смотри например https://www.youtube.com/watch?v=M3x9l-wWNJU
1002 427657
>>27655
>>27635
вообще что-то не проснулся я ещё.

>Наличие точки пути можно проверять внутри прекондишена действия.


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

на скриншоте кстати появнение забыл. ИИ имеет винтовку в инвентаре, но она пустая, ещё одна пустая лежит в мире и обойма к ней. надо чтобы он взял винтовку из инвентаря в руки, нашел обойму и выстрелил в сферу.
ещё кстати смотри какая хуйня клевая. https://www.youtube.com/watch?v=ztFALZZTP_U долго думал как сделать
1003 427666
>>27655
>>27657

>TakeCover сам смотрит является ли оно валидным


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

За видео спасибо, позже гляну.
1004 427673
>>27666
нене само действие делает все эти проверки и ищет лучшее укрытие на этапе проверки его валидности. просто в его исполнении ебани два ифа в его имплементации. если мы слишком далеко от лучшей точки для укрытия то идем в эту точку, если мы рядом то сидим в укрытии. садится в укрытие уже контролер потому что действие переключило в глобальном менеджере ИИ нужный флаг говорящий о том что ИИ в укрытии и с какой оно стороны.

но вообще поиск укрытия это абстрактная задача, что-то такое глобальное как поиск укрытий не должно решатся ГОАП. планирование отдельно, навигация отдельно, контролер отдельно. просто планирование думает, а контролер и навигация подстраиваются под планирование и действия друг друга.
1005 427688
>>27550
Еще думаю ноеплохо инстанциировать хад из префаба, и ссылка на него сразу же будет.

>>27550-параноик
f5Q69gm.jpg60 Кб, 612x764
1006 427710
>>27673

>если мы слишком далеко от лучшей точки для укрытия то идем в эту точку


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

>что-то такое глобальное как поиск укрытий не должно решатся ГОАП


Само собой поиском валидных укрытий занимается отдельный сенсор, действие просто берёт ближайшее и запихивает его координаты себе в прекондишны.
1008 447832
>>02201
>>20498
2145124512
1009 474806
Аноны! Хальп! Помогите ньюфагу, как мне в ебучем MonoDevelope изменить адрес онлайн запроса на unity api с >https://unity3d.com/ru/support/documentation
на

>https://docs.unity3d.com



или может кто подскажет безрукому дебилу где править ебучие редиректы в хроме, заебался уже через жопу по документации лазить! Что сделать что бы этот мудак перестал уводить меня на русскоязычный портал!
fghj.jpg123 Кб, 900x336
1010 478519
отсутствуют некоторые пункты меню. поясните в чем причина
Тред утонул или удален.
Это копия, сохраненная 14 июня 2018 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /gd/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски