GameDev: разработка игр – Telegram
GameDev: разработка игр
7.69K subscribers
758 photos
173 videos
1 file
1.09K links
Всё про геймдев для девелоперов, художников, левел- и геймдизайнеров, сценаристов

Разместить рекламу: @tproger_sales_bot

Другие каналы: @tproger_channels

Другие наши проекты: https://tprg.ru/media
Download Telegram
Tiled — бесплатный редактор карт для 2D

В редакторе есть разные системы тайлов: ортогональная, изометрическая и шестиугольная. Tiled поддерживает большое количество библиотек и фреймворков, а так же основных движков: Unity, UE, Godot, Solar2D, Construct и другие.

Также тут можно расширить функционал редактора и автоматизировать процессы с помощью js-скриптов.

Страница редактора: https://tprg.ru/sWz4

#2d #инструменты
19👍1
Задавайте любые интересующие вас вопросы по геймдеву в комментариях к этому посту или отвечайте на вопросы других. Например, «что делать с этим эксепшеном», «подскажите бесплатный ассет для генерации деревьев», «какой движок лучше всего подойдёт для 2D». Главное — будьте вежливыми и терпеливыми :)

#обсуждение
Делитесь в комментариях скриншотами, гифками и видео из своих игр.

#скриншотник
P.S. Кто успел в Dying Light 2 поиграть? Что скажете?
👍11👎2
Советы по оптимизации игр на Unity

Тут лишь несколько, а в статье найдёте полный список:

— Забудьте про Find() и другие методы глобального поиска, ведь при их использовании происходит перебор всех объектов на сцене. Указывайте объекты явно в инспекторе или кешируйте их.

— По этой же причине не рекомендуется использовать Camera.main, потому что в таком случае происходит вызов FindObjectWithTag("MainCamera"), что опять приводит к перебору всех объектов. Вместо этого лучше кешировать камеру.

— Избегайте использования Vector3.magnitude, так как это включает в себя извлечение квадратного корня, что является ресурсозатратной операцией. Лучше использовать Vector3.sqrMagnitude и сравнивать его с квадратом значения — такая операция куда менее ресурсозатратна.

— Не забывайте про Culling — скрытие объектов игрового мира, которые не попадают в пределы камеры.

Ещё больше советов в статье:

https://tprg.ru/5dCS

#unity #оптимизация
👍205
Добавляем RTX в свою игру на Unreal Engine

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

В видео автор рассказывает про добавление RTX в Uneal Engine. Особенное внимание уделяется настройке различных типов освещения: Directional, Skylight, Rectangular, Spot, Point и Ambient Occlusion.

https://youtu.be/8PnL7Mimex0

#ue #графика
👍6
This media is not supported in your browser
VIEW IN TELEGRAM
Примерно так работает античит в некоторых играх.

#reddit
😁20
Пост добра

Реддитор freddytylerpaul недавно рассказал историю о том, как его собака погрызла диски с играми. Среди них была копия DOOM с автографами разработчиков.

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

Но об истории узнали в Bethesda и отправили пострадавшему посылку с копиями DOOM, Skyrim и Fallout 4, подписанных разработчиками. В комплекте также шли коллекционные открытки с монстрами из DOOM и фигурка думгая.

#reddit #doom
🥰55👍20🔥11
Как оптимизируют графику в играх: поиск проблемы, приёмы оптимизации и портирование

Даже самую хорошую игру легко испортит мыльная картинка или низкий FPS.

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

Далее нужно начать с очевидного — настроить дальность прорисовки, Oсclusion Culling и батчинг. После этого, стоит задуматься об уровне детализации объектов — незачем детально отрисовывать здание, если оно находится в километре от игрока.

При портировании на более слабое железо как минимум стоит ограничить постобработку (сглаживание, например).

Детальней про оптимизацию графики читайте в статье:

https://tprg.ru/Dh0v

#оптимизация #теория
👍13
Как программно анимировать объект в Unity?

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

С её помощью можно анимировать любые числовые свойства объектов прямо из скрипта. Также библиотека имеет интуитивный API, расширяемую архитектуру, все нужные методы управления (старт, пауза, заново, цикл, и т.д.) и возможность смешивания анимации. Есть бесплатная и платная версия. В платной есть визуальный редактор и доступ к низкоуровневому API.

Скачать бесплатную версию можно здесь: https://tprg.ru/zwBv

А платную здесь: https://tprg.ru/RuwC

#unity #ассеты #код
👍8
Как разработчики расставляют контрольные точки в играх

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

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

https://youtu.be/LVHRDS_h5Rg

#теория
🔥5👍1
13 базовых принципов геймдизайна. Часть 1

1. Не давайте игроку определять точку фокуса. Задача геймдизайнера в том, чтобы самому обозначить на чём стоит фокусироваться в конкретный момент.

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

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

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

5. Если происходит только одно изменение за раз, то может потеряться динамика. Поэтому необходимо правильно настроить баланс событий, которые происходят в разный промежуток времени.

Продолжение в следующем посте.

#геймдизайн #советы
👍17
13 базовых принципов геймдизайна. Часть 2

6. Старайтесь делать физику игрового мира похожую на физику реальности. Например, когда игрок на машине врезается в стену, он ожидает увидеть повреждение машины и частицы удара — искры, например.

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

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

9. Проанализируйте свободное пространство на уровне и определите отношение между ним и количеством элементов на этом уровне. Например, можно определить коэффициент количества врагов на локации и менять его для достижения желаемого эффекта.

10. Используйте линейный и системный дизайн. Линейный подразумевает решение задач одинаковой ценности по мере их поступления. Системный же означает категоризацию задач и формирование их в иерархию решений.

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

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

13. Перед тем, как обратиться к кому-либо за мнением о дизайне, задайте себе вопрос: «заинтересует ли это аудиторию?». И не важно, игрок ли это, разработчик или инвестор. Если даже вам кажется, что дизайн не очень хорош, то беспокоить остальных не стоит.

Детальнее про каждый из пунктов можно почитать в этой статье:

https://tprg.ru/C4pH

#геймдизайн #советы
👍15
А можно как-то иначе?
👍21😁9🤯5
Задавайте любые интересующие вас вопросы по геймдеву в комментариях к этому посту или отвечайте на вопросы других. Например, «что делать с этим эксепшеном», «подскажите бесплатный ассет для генерации деревьев», «какой движок лучше всего подойдёт для 2D». Главное — будьте вежливыми и терпеливыми :)

#обсуждение
👍7
Делитесь в комментариях скриншотами, гифками и видео из своих игр.

#скриншотник
This media is not supported in your browser
VIEW IN TELEGRAM
Реддитор показал бесплатный процедурный эффект скорости из аниме для Unity

Шейдер создаёт те самые линии по краям экрана. Есть гибкая настройка: количества линий, их цвет, размер, плотность и многое другое.

Вот репозиторий: https://tprg.ru/lZ6o

#reddit #графика #unity
🔥15💩12👍2👎1
Как интегрировать и использовать ассет интерактивной воды в Unreal Engine

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

В видео автор подробно рассказывает про интеграцию и использование плагина, а также даёт на разбор демо-проект:

https://youtu.be/XYBqzvUpTEg

#ue #3d
👍7
Имея – не ценим, а потерявши, плачем.
😁37😢8💩5
Пасфайндинг — как боты в играх находят путь к цели

Боты — не люди. Им не тыкнешь на карту и не скажешь «иди сюда». Боты понимают лишь примитивные команды, например «10 шагов вперед» или «поворот направо». Как же тогда научить их находить путь до точки в обход препятствиям и стенам? Для этого разрабатываются специальные алгоритмы поиска пути. Самые популярные из них: поиск в ширину, A* и алгоритм Дейкстры.

Обо всех них и о принципе пасфайндинга можно почитать в этой статье:

https://tprg.ru/lAGp

#теория
👍17