Результаты поиска
| |
InsaneSystems | Дата: Суббота, 28 Апреля 2018, 17:16 | Сообщение # 101 | Тема: [Unity] Статьи по созданию игр и программированию |
участник
Сейчас нет на сайте
| coremission, статьи всё-таки для инди-разработчиков больше, и я смело могу сказать, что сейчас для инди-разработчика C++ – явно не самый лучший выбор. Возможно, где-то там он и используется, но если человек об этом знает, то ему, вероятно, уже не нужны эти статьи или какие-либо советы по выбору языка программирования.
Сообщение отредактировал InsaneSystems - Суббота, 28 Апреля 2018, 17:17 |
|
| |
InsaneSystems | Дата: Суббота, 28 Апреля 2018, 16:28 | Сообщение # 102 | Тема: [Unity] Статьи по созданию игр и программированию |
участник
Сейчас нет на сайте
| Christopher, хабрахабр несколько иначе устроен, тут сразу нет. Medium неплох, как-то даже в голову не приходило, поразмыслим над этим вариантом, спасибо.
Добавлено (22 Апреля 2018, 14:14) ---------------------------------------------
Добавили новую статью, будет интересно начинающим 3D-дизайнерам и просто независимым разработчикам, кому приходится самостоятельно делать всю работу в своих играх: Нужно ли уметь рисовать для создания 3D-моделей?
Думаю, подобный взгляд на вещи может некоторым не понравиться, для них есть отдельное обращение в конце статьи.
Добавлено (28 Апреля 2018, 16:28) --------------------------------------------- Выпустили ещё одну статью, которая будет полезна как начинающим, так и некоторым опытным разработчикам. Она посвящена организации работы над созданием игры:
Как правильно организовать разработку игры
Сообщение отредактировал InsaneSystems - Суббота, 28 Апреля 2018, 16:29 |
|
| |
InsaneSystems | Дата: Воскресенье, 22 Апреля 2018, 19:52 | Сообщение # 103 | Тема: Динамическая отрисовка линии. |
участник
Сейчас нет на сайте
| absolute_null, LineRenderer отлично подойдёт для такой задачи. В вашем коде как минимум одна критичная ошибка - вы задаёте только одну точку LineRenderer, а для построения линии нужно минимум две.
Что сделать для решения проблемы: 1. Задавать две точки LineRenderer. 2. Задавать для каждой точки две координаты как минимум (x и y, у вас сейчас задаётся только одна координата x) 3. Заметьте, что мышь у вас в двумерном пространстве экрана, а LineRenderer работает в трёхмерном пространстве игры. Используя Camera.main.ScreenToWorldPoint вы мыслите в верном направлении, но отмечу, что это может давать не всегда корректные результаты.
Как итог, ваш код мог бы выглядеть примерно следующим образом:
Код public Vector2 mousePos1; public Vector2 mousePos2;
public LineRenderer lineRenderer;
private void Start() { lineRenderer = GetComponent<LineRenderer>(); mousePos1 = new Vector2(0, 0); }
private void OnMouseDown() { mousePos2 = Camera.main.ScreenToWorldPoint(Input.mousePosition); }
private void OnMouseDrag() { if (mousePos2 != new Vector2(0, 0)) { mousePos1 = Camera.main.ScreenToWorldPoint(Input.mousePosition); Debug.Log(mousePos1); Debug.Log(Vector2.Distance(mousePos2, mousePos1));
lineRenderer.SetPosition(0, new Vector3(mousePos1.x, mousePos1.y, 0)); lineRenderer.SetPosition(1, new Vector3(mousePos2.x, mousePos2.y, 0)); } }
Однако не факт, что он заработает корректно.
Сообщение отредактировал InsaneSystems - Воскресенье, 22 Апреля 2018, 19:54 |
|
| |
InsaneSystems | Дата: Воскресенье, 22 Апреля 2018, 10:09 | Сообщение # 104 | Тема: [3D] qBox [Головоломка, пззл] |
участник
Сейчас нет на сайте
| Цитата А новый, v2.0 работает только в 2018 кажись Использую его в 2017.0.1f3, всё ок, бывают некоторые проблемы, но они так же связаны с бета-версией этого PP 2.0 К слову, на мерцание как-то не обращал внимания, разницы между 1 и 2 версиями в этом плане у себя в проектах не замечал, забавно. Но в вашей игре действительно, второй вариант смотрится гораздо приятнее.
|
|
| |
InsaneSystems | Дата: Суббота, 21 Апреля 2018, 12:53 | Сообщение # 105 | Тема: [3D] qBox [Головоломка, пззл] |
участник
Сейчас нет на сайте
| Leonin, выглядит отлично. Единственное "но" - вы очень рисковый человек, раз занимаетесь разработкой на бета-версии Unity. Даже релизные версии не отличаются стабильностью.
|
|
| |
InsaneSystems | Дата: Суббота, 21 Апреля 2018, 12:20 | Сообщение # 106 | Тема: [Unity] Статьи по созданию игр и программированию |
участник
Сейчас нет на сайте
| НезНал, но как это зависит от нас? Возможно, в скором времени мы запустим собственный сайт, а Яндекс.Дзен оставим лишь как дополнительную ссылку на него. Такой сайт, вероятно, будет доступен из любой страны, где есть интернет.
|
|
| |
InsaneSystems | Дата: Суббота, 21 Апреля 2018, 12:04 | Сообщение # 107 | Тема: [Unity] Статьи по созданию игр и программированию |
участник
Сейчас нет на сайте
| Привет! Запустили канал по созданию игр и программированию на Яндекс.Дзене, будем рады вашей подписке. Пишем статьи как для новичков, так и для опытных разработчиков, стараемся добавлять несколько материалов в неделю.
На момент создания темы у нас уже вышло 3 статьи для начинающих разработчиков, которые помогут им выбрать свой путь в этой сфере:
Данные статьи носят довольно общий характер, но в будущем мы планируем выпускать более детальные статьи. Так же собираемся запустить формате дневника разработчиков, в которых будем показывать нюансы разработки игр.
Ждём вас на нашем канале!
Пишите отзывы и пожелания, оставляйте комментарии.
Сообщение отредактировал InsaneSystems - Четверг, 28 Марта 2019, 14:48 |
|
| |
InsaneSystems | Дата: Четверг, 19 Апреля 2018, 22:31 | Сообщение # 108 | Тема: Чем вы любите заниматься в играх? |
участник
Сейчас нет на сайте
| Многие сейчас любят игры-песочницы, поскольку в них можно заниматься чем душе угодно. Это GTA 5, Far Cry 4, 5 и так далее. Достижения не меняются годами - прокачка, "наращивание" мощи и состояния игрока.
Лично мне доставляет удовольствие находить глитчи в играх, которые позволяют получить преимущество или забавный эффект. Особенно это интересно в многопользовательских играх, геймплей на всём сервере сразу меняется, когда идёт что-то не так, как задумали разработчики. И очень часто становится гораздо более динамичнее. Вообще, дисбаланс в сетевых играх - штука, казалось бы, плохая, но чёрт возьми, почти все старые сетевые игры с онлайном держатся только на нём.
|
|
| |
InsaneSystems | Дата: Вторник, 03 Апреля 2018, 11:40 | Сообщение # 109 | Тема: World Space canvas поверх всех обьектов |
участник
Сейчас нет на сайте
| JakartaIlI, две камеры. Одна основная, отключить рендеринг слоя с World Canvas, вторая с Clear Flags, установленным в Depth Only. Рендеринг только слоя с интерфейсом.
|
|
| |
InsaneSystems | Дата: Пятница, 23 Марта 2018, 19:43 | Сообщение # 110 | Тема: The Experiment ☭ |
участник
Сейчас нет на сайте
| EfimovMax, прощу прощения, но если это Top-Down Shooter, как написано в теме, то почему все скриншоты от первого лица? Если для красоты, то интересно другое - зачем такая детализация, и будет ли это смотреться красиво с видом сверху?
|
|
| |
InsaneSystems | Дата: Понедельник, 12 Марта 2018, 15:15 | Сообщение # 111 | Тема: Цвета спрайтов в Unity ухудшаются |
участник
Сейчас нет на сайте
| Anate, попробуй поставить Compression на None или хотя бы High Quality.
Сообщение отредактировал InsaneSystems - Понедельник, 12 Марта 2018, 15:16 |
|
| |
InsaneSystems | Дата: Понедельник, 05 Февраля 2018, 11:00 | Сообщение # 112 | Тема: RTS |
участник
Сейчас нет на сайте
| Jamal, для RTS есть неплохой движок Spring Engine, но, боюсь, что под подобную тематику его будет трудно переделать. Можно взглянуть в сторону Unity, там освоиться можно довольно быстро и функционал достаточный.
|
|
| |
InsaneSystems | Дата: Суббота, 27 Января 2018, 21:59 | Сообщение # 113 | Тема: Меш |
участник
Сейчас нет на сайте
| defGMDefeloper, у тебя делегат указывает на переменную i. А она в конце цикла равна двум. Задавай внутри цикла значение переменной i в другую переменную, и её передавай в делегат.
Сообщение отредактировал InsaneSystems - Суббота, 27 Января 2018, 21:59 |
|
| |
InsaneSystems | Дата: Четверг, 25 Января 2018, 20:21 | Сообщение # 114 | Тема: Меш |
участник
Сейчас нет на сайте
| defGMDefeloper, использовать GetPixels у Texture2D - получается массив из цветов каждого пикселя картинки. Там и альфа тоже есть.
|
|
| |
InsaneSystems | Дата: Суббота, 20 Января 2018, 12:27 | Сообщение # 115 | Тема: Множество объектов |
участник
Сейчас нет на сайте
| defGMDefeloper, совет. Используй профайлер (Ctrl + 7), отслеживай, что именно больше всего производительности требует, и уже от этого думай, как устранить.
|
|
| |
InsaneSystems | Дата: Пятница, 19 Января 2018, 15:22 | Сообщение # 116 | Тема: Множество объектов |
участник
Сейчас нет на сайте
| Цитата Не,конечно нет) Это вызывается в корутине ,и только для целых массивов звезд,разбитых по размеру.А проверка на дистанцию проходит только если Layer==true.Но за идею спасибо.Чутка переделать.Сделать все в 1 скрипте. Насчёт материалов хорошо, что так. Остальное тоже рекомендую вынести в отдельный скрипт.
Цитата А World Space не подходит.Звезды то 2д картинки,но камера двигается в трехмерном пространстве. Ну и что с того? В данном случае просто задаёте ту же позицию, что и у трёхмерных звёзд, уже минус Camera.WorldToScreenPoint.
Цитата Canvas.LookAt(camera) плохо.ибо повернуть холст с 10к дочерних обьектов.. Ничем не хуже, чем поворачивать каждый из этих объектов отдельно.
Цитата а в World Space координаты масштабируются в месте с холстом и короч не очень удобно Честно говоря, трудно решать подобные задачи, не пробуя разные варианты и не сравнивая производительность.
Сообщение отредактировал InsaneSystems - Пятница, 19 Января 2018, 15:23 |
|
| |
InsaneSystems | Дата: Пятница, 19 Января 2018, 14:26 | Сообщение # 117 | Тема: Множество объектов |
участник
Сейчас нет на сайте
| defGMDefeloper, насчёт шейдеров совет, конечно хороший, но человек без знаний в них никогда не сможет подобное самостоятельно сделать, а примеры из интернета вряд ли подойдут под конкретную задачу.
Насчёт программного решения, объясняю ваши основные проблемы в данный момент. Проблема: Вы используете на каждом объекте MonoBehaviour. При этом поведение абсолютно одинаковое и в данном случае это нерационально. Решение: Используйте один общий скрипт, хранящий массив или список звёзд. Это как минимум упростит логику взаимодействий и даже, возможно, ускорит быстродействие игры. Плюс открывается новая возможность - можно использовать многопоточное прохождение цикла в данной задаче, поскольку последовательность тут не важна. По этому поводу погугли c# parallel for, лично я в юнити это не использовал пока что. Но это позволит более выгодно использовать ресурсы процессора и увеличит производительность игры. Проблема: У вас для каждой звезды вызываются методы Camera.main.WorldToScreenPoint и Vector3.Distance, а ещё и SetColor для материала, как я понял. Почитайте про быстродействие каждого из этих методов и умножьте задержку выполнения на количество звёзд (10к в данном случае) и получите время, которое это занимает при обработке процессором. А теперь вспоминаем, что Update выполняется каждый кадр, и такая задержка соответственно будет каждый кадр. Решение: Необходимо либо сократить количество вызовов данных методов (например, как-нибудь обобщить для нескольких звёзд), либо вызывать их реже, чем каждый кадр. Допустим, 10 раз в секунду. Или разбить выполнение одной задачи (for по всем звёздам) на несколько кадров, что сократит задержки выполнения и увеличит производительность. При должной реализации можно добиться приемлемого результата.
Но, честно говоря, к решению такой задачи стоит, наверное, подойти иначе. Как именно - зависит только от ваших умений и креативности. 10к UI-элементов на экране это уже само по себе нехорошо очень.
P.S.: для того, чтобы избавиться от Camera.WorldToScreenPoint, можно использовать Canvas с Render Mode типа World Space.
Сообщение отредактировал InsaneSystems - Пятница, 19 Января 2018, 14:34 |
|
| |
InsaneSystems | Дата: Суббота, 13 Января 2018, 22:16 | Сообщение # 118 | Тема: Вопрос-[ответ] по Unity |
участник
Сейчас нет на сайте
| Petra, Можно, с помощью Quaternion.Lerp.
|
|
| |
InsaneSystems | Дата: Вторник, 09 Января 2018, 20:58 | Сообщение # 119 | Тема: Как сделать перемещение врага по миру |
участник
Сейчас нет на сайте
| tduk, мыслишь в верном направлении. Что именно не работает? Если игра 3D, то зачем по оси Y считаешь рандомную точку? Это ведь ось высоты.
|
|
| |
InsaneSystems | Дата: Вторник, 09 Января 2018, 19:26 | Сообщение # 120 | Тема: c# |
участник
Сейчас нет на сайте
| Почему бы просто не использовать uint?
|
|
| |
|