Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Открой для себя волшебный мир реальной рыбалки. Лови реальную рыбу на реальных водоемах! Исследуй новые рыболовные места и заполучи заветный трофей.

Реальная Рыбалка

Симуляторы, Мультиплеер, Спорт

Играть

Топ прошлой недели

  • Oskanov Oskanov 8 постов
  • alekseyJHL alekseyJHL 6 постов
  • XpyMy XpyMy 1 пост
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Новости Пикабу Помощь Кодекс Пикабу Реклама О компании
Команда Пикабу Награды Контакты О проекте Зал славы
Промокоды Скидки Работа Курсы Блоги
Купоны Biggeek Купоны AliExpress Купоны М.Видео Купоны YandexTravel Купоны Lamoda
Мобильное приложение

Unity

С этим тегом используют

Gamedev Разработка Инди Инди игра Игры YouTube Компьютерные игры Все
996 постов сначала свежее
13
AndreyFomin
AndreyFomin
1 месяц назад
Серия Effulgence RPG

Новый баннер для Steam — нормально получилось?⁠⁠

Новый баннер для Steam — нормально получилось? Gamedev, Инди игра, Инди, Ретро-игры, Разработка, Unity, RPG, Пошаговая боевка, ASCII, Steam, Длиннопост

Решил вернуться к баннерам игры на Стиме. Вот, какие варианты были раньше и пара баннеров конкурентов:

Новый баннер для Steam — нормально получилось? Gamedev, Инди игра, Инди, Ретро-игры, Разработка, Unity, RPG, Пошаговая боевка, ASCII, Steam, Длиннопост

Вот новые:

1/2

Стало лучше? Что можно допилить?

Не забудьте добавит игру в вишлист: https://store.steampowered.com/app/3302080/Effulgence_RPG/

Показать полностью 3
[моё] Gamedev Инди игра Инди Ретро-игры Разработка Unity RPG Пошаговая боевка ASCII Steam Длиннопост
4
7
Suvitruf
Suvitruf
1 месяц назад
Лига Разработчиков Видеоигр
Серия Недельный геймдев дайджест

Недельный геймдев: #225 — 11 мая, 2025⁠⁠

Из новостей: суд подтвердил законность 69-миллиардной сделки Microsoft и Activision, продажи Split Fiction достигли 4 млн, продажи Expedition 33 достигли 2 млн, исходники Fallout и Fallout 2 в безопасности.

Из интересностей: как Riot Games ведёт войну с читерами, процедурная диалоговая система Арканума, мастер или перфомер, проблема высоких каблуков в играх.

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

Обновления/релизы/новости

Кристофер Дринг: «Некоторые издатели и разработчики спрашивают, зачем им теперь делать игры для Xbox»

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

Всё из-за стратегии Microsoft по выпуску своих игр на других консолях.

Подозреваю, что это те, кто выпускал свои игры по эксклюзивным контрактам.

Суд подтвердил законность 69-миллиардной сделки Microsoft и Activision Blizzard

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

Претензии Федеральной торговой комиссии отклонили.

Продажи Split Fiction достигли четырёх миллионов копий — за два месяца после релиза

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

Авторы игры назвали такой результат «потрясающим», выразив аудитории свою признательность.

Продажи Clair Obscur: Expedition 33 достигли двух миллионов копий

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

Игра достигла этого за 2 недели с релиза.

Ремастер The Elder Scrolls IV: Oblivion уже вошёл в тройку самых продаваемых игр года в США

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

Обновлённая версия RPG добилась этого спустя неделю после выхода.

Microsoft представила ремастер Gears of War — релиз 26 августа

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

Игра выйдет на ПК, Xbox Series X|S и PS5.

Глава разработки Clair Obscur: Expedition 33 искал коллег для работы в соцсетях

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

А Ubisoft он покинул, так как «заскучал».

Apple попросила отсрочить исполнение предписания, которое запрещает ей брать комиссию за покупки в обход App Store

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

И ограничивать разработчиков в выборе формулировок и оформления при размещении альтернативных ссылок на оплату.

Исходники Fallout и Fallout 2 в безопасности

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

В интервью VideoGamer соосновательница и геймдизайнер Interplay Ребекка Хайнеман рассказала, что у неё сохранился исходный код оба оригинальных Fallout, а также ряд других проектов Interplay.

Марк Дарра: «команда Dragon Age была обманута из-за отсутствия интереса со стороны EA к франшизе»

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

Довольно много странных решений, которые очень навредили проектам.

Себастьен Деги, создатель Substance 3D, открывает новую студию

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

Сразу после ухода из Adobe. Студия Sans Strings Studi основана в сотрудничестве с Райаном Корнелом.

Красная книга разработчика

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

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

Халява/раздачи/бандлы/курсы

Miziziziz опубликовал исходный код игр на Godot

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

Всё по MIT лицензии на Гитхабе.

Интересные статьи/видео

[EN] Как Riot Games ведёт войну с читерами

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

По данным компании, по состоянию на начало 2025 года процент «рейтинговых» игр Valorant, в которых есть читеры, составляет менее 1% по всему миру.

[RU] Процедурная диалоговая система Арканума

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

Хорошая сборная статья по видео Тима Кейна про диалоговую систему в игре.

[EN] Создание окружения, вдохновлённого Dark Souls

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

Керри Чжан рассказала про процесс создания окружения, вдохновлённого Dark Souls и Diablo, для её выпускной работы, с использованием ZBrush, Substance 3D, Gaea и Unreal Engine 5, а также дала ценные советы новичкам.

[EN] Ты мастер или перфомер?

Наслаждаешься базовой игрой или пытаешься облазить все закоулки, опробовать все билды? Или же всё вместе?

[RU] SDK для ретрокомпьютера на примере Evo SDK

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

Немного про ретро-компьютеры.

[EN] Как смоделировать и затекстурировать атмосферную сцену в ванной

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

Паола Вильегас делится разбором проекта Abandoned Bathroom Diorama. Она подробно объясняет процесс текстурирования для различных пропсов и обсуждает навыки, которые помогают поддерживать заброшенную атмосферу и балансировать сцену.

[RU] Проблема высоких каблуков в играх

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

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

[EN] Understanding The Math Behind ReSTIR GI

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

Хорошо обзорная статья с математикой по теме.

[RU] Game++. while (!game(over))

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

Полезная статья про написание своего движка. Много ссылок для изучения.

[EN] Как создать необычный научно-фантастический пистолет в 3D

Недельный геймдев: #225 — 11 мая, 2025 Unity, Разработка, Gamedev, Видео, YouTube, Без звука, Короткие видео, Длиннопост

Дарина Курган поделилась подробным описанием Mad Science Gun, показав, как моделировать реалистичные повреждения металла и придавать стеклу привлекательный вид с помощью эмиссионных материалов.

Разное

Имитация светового отклика для глаз VRChat-аватара

Из Твиттера.

Показать полностью 21 3
[моё] Unity Разработка Gamedev Видео YouTube Без звука Короткие видео Длиннопост
1
1
Oduvan3000
Oduvan3000
1 месяц назад
Лига Разработчиков Видеоигр

Сделал эффект Oil Paint. Оставить? Нет ?⁠⁠

Без Эффекта :

C эффектом :

Стоить ли оставить этот эффект на постоянку или нет ? Мысли ?

Игра - https://store.steampowered.com/app/3685510/Depth_Of_Debts/

Показать полностью 1
[моё] Игры Инди Разработчики игр Gamedev Инди игра Unity Indiedev Видео Без звука Короткие видео
8
PresidentOfGames
PresidentOfGames
1 месяц назад

Привет пикабу!⁠⁠

Мы команда инди разработчиков и сейчас делаем свой "Симулятор курьера"!

Привет пикабу! Gamedev, Инди игра, Игры, Инди, Unity, Российский игрострой
Привет пикабу! Gamedev, Инди игра, Игры, Инди, Unity, Российский игрострой
Показать полностью 1
[моё] Gamedev Инди игра Игры Инди Unity Российский игрострой
26
0
Agmioli
Agmioli
1 месяц назад
Искусственный интеллект

Как с нуля, сгенерировать игру или приложение, состоящие из нескольких файлов. Для чайников!⁠⁠

Как с нуля, сгенерировать игру или приложение, состоящие из нескольких файлов. Для чайников! Искусственный интеллект, Нейронные сети, Gamedev, Unity, Приложение, Android разработка, Digital, Программа, Компьютерные игры, Программирование, Программное обеспечение, Python, Гайд, Лайфхак, Чат-бот, Разработка, HTML, Браузерные игры

Как с ноля, сгенерировать игру или приложение, состоящие из нескольких файлов. Для чайников.

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

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

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

Но если вы создаете игру не на базе html-страниц и сайта, то вместо фразы "которая будет запускаться с html-сайта", вам надо указать типа-платформу игры, или ее среду разработки.

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

ПРАКТИКА.
Вот полный пример запроса для нейросети, чтобы создать саму примитивную игру, которая запускается в виде веб-страницы в браузере.

ЗАПРОС:
Напиши для каждого файла код игры которая будет запускаться с html-сайта. Суть игры следующая.

Объект-игрок, вид которого задается файлом"image1", управляется при помощи клавиш. Клавиши-стрелки определяют направление стороны движения объекта-игрока.

В пространстве игры, рандомно расположены объекты-препятствия, внешний вид которых задается файлом "image2".

Если Объект-игрок задевает объекты-препятствия, то Объект-игрок отскакивает в сторону.

Фон игры задается файлом "image3".

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

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

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

Показать полностью
[моё] Искусственный интеллект Нейронные сети Gamedev Unity Приложение Android разработка Digital Программа Компьютерные игры Программирование Программное обеспечение Python Гайд Лайфхак Чат-бот Разработка HTML Браузерные игры
1
2
mars.frontier
mars.frontier
1 месяц назад

Как мы делали мини-игру про ровер на Марсе внутри Telegram WebApp⁠⁠

«Хочется сделать простую карту, чтобы листать её в Telegram». С этого всё и началось. А закончилось — изометрическим движком, авторизацией по WebApp, системой энергии, покупкой участков и боевым ровером с шестью колёсами.

1/3

🚀 С чего всё началось?

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

В целом, даже эта идея была вполне рабочей и первые 300 пользователей с разных источников легко собрались. Мы даже провели на 9 мая конкурс "найди звезду победы" и выплатили победителю небольшой приз :)

Но само собой, что бот - не предел мечтаний, нужно было пилить полноценный мини-апп.

На боте лишь проверили гипотезу, отладили механики, типа уменьшения энергии, подзарядки аккумулятора в течении времени, пока не заходишь в игру.

Первый шаг в сторону мини-аппки - сделали вебстраничку, где можно было листать мышкой или пальцем — просто ради визуализации. Прямоугольная сетка, тайлы, немного стилей. Telegram WebApp проглатывал HTML5 на ура. Тогда не было никакой логики, просто подгрузка текстур и картинка под пальцем.

Вот как это выглядело:

  • Пользователь заходил и видел карту Марса.

  • Никакого взаимодействия — только “глянуть”.

🎮 А потом захотелось интерактивности

Следующим шагом стало добавление изометрии — чтобы выглядело как псевдо-3D. Самое интересное, что даже не потребовалось изменять текстуры. Серьезно :) Они по-прежнему те же самые, квадратные, 64 х 64. И не используется никакой 3д - движок.

вот краткое и понятное объяснение, как строится изометрическая карта из квадратных тайлов:


🧠 Основная идея:

Каждый квадратный тайл поворачивается на 45° и масштабируется по вертикали, чтобы получился ромб (изометрическая проекция). Вместо привычной сетки (x, y) мы рассчитываем экранные координаты (left, top) по формуле:


📐 Формулы для отображения:

При размере одного тайла T:

  • W = T * sqrt(2) — изометрическая ширина (диагональ квадрата).

  • H = W / 2 — изометрическая высота (высота ромба).

  • WX2 = W / 2, HX2 = H / 2 — половинки для смещения от центра.

Переход от логических координат (dx, dy) к пиксельным:

isoX = (dx - dy) * WX2 + centerX; isoY = (dx + dy) * HX2 + centerY;


🧩 Что это даёт:

  • (dx - dy) — смещает тайл по горизонтали.

  • (dx + dy) — смещает тайл по вертикали.

  • centerX, centerY — центр экрана, чтобы карта строилась относительно игрока.


🎯 В результате:

  • Из обычной квадратной сетки (x, y) формируется ромбовидная карта, где видны и горизонтальные, и вертикальные соседние тайлы.

  • Центральная клетка (текущий игрок) — всегда по центру, а остальные располагаются вокруг.

    Ну а дальше уже дело техники - придумали алгоритм перемещения в 8 направлениях: вверх, вниз, влево, вправо, плюс диагонали.

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

    Задали запреты на воду, скалы и занятую клетку, чтобы не было “читов”.

🔐 Само собой - авторизация

Чтобы пользователь не “прыгал” по чужим роверам и участкам, мы внедрили Telegram WebApp InitData (это такая строка с хешем, которую фронт передает нам в бэк, а мы - уже на сервере телеграм с токеном бота валидируем подпись. Если сошлась - то пользователь зашел к нам через телегу. Если нет - скорее всего он просто открыл веб-страницу как сайт, или что-то пытается поломать, подделать :)

Если кратко:

  • Telegram сам отдаёт токен с подписью.

  • Мы проверяем подпись на бэке по HMAC SHA256.

  • Получаем ID пользователя, сохраняем его в сессии.

Теперь всё честно: ровер – только твой, кристаллы – только твои.

🪐 Стало красивее: добавили кристаллы и рамки

Потом появились:

  • Кристаллы на клетках — можно собирать.

  • Подсветка клеток: белая рамка — твоя, красная — чужая.

  • Имена владельцев, чтобы было видно, кто что захватил.

    В планах: Покупка участков за кристаллы. Это было в текстовом боте. И ползая по карте, даже видны купленные тобой (белым) и оппонентами (красным) участки.

⚡️ Оптимизация и загрузка ассетов

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

  • Добавили прелоадер, который подгружает PNG-шки перед игрой.

  • Сделали показ спиннера на любом действии (движение, загрузка).

  • Кэшируем тайлы и обновляем только при движении.

🤖 Как выглядит сейчас

Игрок:

  • Заходит в Telegram Mini App.

  • Авторизуется за доли секунды.

  • Видит изометрическую карту с ровером, кристаллами, участками, рекламными баннерами.

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

А мы — всё это рисуем прямо в DOM.
Никаких Canvas, WebGL, или тяжелых движков. Только HTML, CSS и немного магии на JS.


💬 Если интересно — покажу, как это выглядит вживую.
Тестить можно тут. А если зайдёт — добавим NFT, фермы и квесты на выживание 😄

Показать полностью 3
[моё] Gamedev Разработка Программирование Telegram Javascript Python Unity Frontend Backend Web Web-программирование Ton HTML CSS Верстка Длиннопост
9
14
CyberCook
1 месяц назад
Лига Разработчиков Видеоигр

Раздача ассетов Military Training Facility, Wood Monster и Modular Dungeon Collection на fab до 20 мая⁠⁠

Military Training Facility

Раздача ассетов Military Training Facility, Wood Monster и Modular Dungeon Collection на fab до 20 мая Разработка, Инди игра, Раздача, Инди, Gamedev, Unity, Unreal Engine, Blender, Квест, Dungeon, Монстр, Видео, YouTube, YouTube (ссылка), Длиннопост
Раздача ассетов Military Training Facility, Wood Monster и Modular Dungeon Collection на fab до 20 мая Разработка, Инди игра, Раздача, Инди, Gamedev, Unity, Unreal Engine, Blender, Квест, Dungeon, Монстр, Видео, YouTube, YouTube (ссылка), Длиннопост
Раздача ассетов Military Training Facility, Wood Monster и Modular Dungeon Collection на fab до 20 мая Разработка, Инди игра, Раздача, Инди, Gamedev, Unity, Unreal Engine, Blender, Квест, Dungeon, Монстр, Видео, YouTube, YouTube (ссылка), Длиннопост

ЗАБРАТЬ

Описание

Документация:

  • Учебный центр ТУТ

  • Трубы и вентиляционные отверстия ТУТ

Этот проект включает в себя все изображенное со всеми ассетами, картами и материалами, созданными в Unreal Engine. Каждый ассет был создан для реалистичных визуальных эффектов, стиля и бюджета AAA.

Особенности:

  • 173 сетки + 176 сеток, бонусный пакет дополнений для труб и вентиляционных отверстий

  • Высококачественные наборы текстур — 2k текстур

  • Расширенная настройка основных материалов, которая управляет всеми реквизитами и моделями

  • Модульная конструкция и дизайн для альтернативных дизайнов

  • Настройка вершинной краски для полов

  • Упакованные каналы Шероховатость | Металличность | Ambient Occlusion

  • Реалистичная постобработка и таблица поиска

  • Оптимизировано для игр

  • Без всех юридических проблем, так как все бренды и этикетки изготавливаются нашей студией на заказ

Размеры текстур:

  • 4k [142]

  • 2k [116]

  • 1k [13]

  • 512 [3]

  • 256 [2]

  • 128 [3]

БОНУС: Включает пакет Pipes and Vents Unreal Marketplace

ВИДЕО ДЕМО: https://www.youtube.com/watch?v=6LKvzDcLmfA

Художественные работы, созданные Dekogon Studios

Включенные форматы

  • Unreal Engine

Технические подробности

  • Масштабирование до Epic Skeleton: Да

  • Столкновение: Да, автоматически генерируется и пополигональное смешивание на основе сложности ассета

  • Количество вершин: Отображается в документации

  • LOD: LODs Small Props на 90%, некоторые без которые уже очень низкополигональные!

  • Количество сеток: 349

  • Количество материалов и экземпляров материалов: 112

  • Количество текстур: 283

  • Пожалуйста, свяжитесь с нами и свяжитесь с нами по вопросам! - Contact@dekogon.com

Совместимость

Поддерживаемые версии Unreal Engine

4.26 – 4.27 и 5.0 – 5.5

Поддерживаемые целевые платформы

  • Linux

  • HTML5

  • HoloLens 2

  • Gear VR

  • Mac

  • Nintendo Switch

  • Oculus

  • PS4

  • SteamVR / HTC Vive

  • Win32

  • Xbox One

  • Windows

Другая информация

Последнее обновление

  • 24.02.2025

ЗАБРАТЬ

Wood Monster

Раздача ассетов Military Training Facility, Wood Monster и Modular Dungeon Collection на fab до 20 мая Разработка, Инди игра, Раздача, Инди, Gamedev, Unity, Unreal Engine, Blender, Квест, Dungeon, Монстр, Видео, YouTube, YouTube (ссылка), Длиннопост
Раздача ассетов Military Training Facility, Wood Monster и Modular Dungeon Collection на fab до 20 мая Разработка, Инди игра, Раздача, Инди, Gamedev, Unity, Unreal Engine, Blender, Квест, Dungeon, Монстр, Видео, YouTube, YouTube (ссылка), Длиннопост
Раздача ассетов Military Training Facility, Wood Monster и Modular Dungeon Collection на fab до 20 мая Разработка, Инди игра, Раздача, Инди, Gamedev, Unity, Unreal Engine, Blender, Квест, Dungeon, Монстр, Видео, YouTube, YouTube (ссылка), Длиннопост

ЗАБРАТЬ

Описание

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

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

Обзор продукта - демонстрационные анимации не являются частью продукта

Пакет основан на пропорциях скелета UE5. Скелет манекена UE4 НЕ входит в комплект.

Анимации UE4 можно легко перенацелить с помощью нового ретаргетера UE5.

Документация

Включенные форматы

  • Unreal Engine

Технические подробности

Персонаж: 1 Blueprint и 2 примера Blueprints

  • Части персонажа

2 сетки SK

  • ~ 8PBR Текстуры: Albedo, normal, ORM (ambient Occlusion, Roughness и Metallic) и маски оттенков

  • ~5 Материалов

  • Карты: 1 Обзор

Масштабирование до Epic UE5 Скелет: ДА

Риггинг: ДА

Анимация: Анимация не включена

Количество вершин персонажей: 120 тыс. (Lods

Совместимость

Поддерживаемые версии Unreal Engine

  • 5.2–5.5

Поддерживаемые целевые платформы

  • Xbox One

  • Windows

  • Win32

  • SteamVR / HTC Vive

  • PS4

  • Oculus

Другая информация

Последнее обновление

16.04.2025

Распространение Метод

Пакет активов

ЗАБРАТЬ

Modular Dungeon Collection

Раздача ассетов Military Training Facility, Wood Monster и Modular Dungeon Collection на fab до 20 мая Разработка, Инди игра, Раздача, Инди, Gamedev, Unity, Unreal Engine, Blender, Квест, Dungeon, Монстр, Видео, YouTube, YouTube (ссылка), Длиннопост
Раздача ассетов Military Training Facility, Wood Monster и Modular Dungeon Collection на fab до 20 мая Разработка, Инди игра, Раздача, Инди, Gamedev, Unity, Unreal Engine, Blender, Квест, Dungeon, Монстр, Видео, YouTube, YouTube (ссылка), Длиннопост
Раздача ассетов Military Training Facility, Wood Monster и Modular Dungeon Collection на fab до 20 мая Разработка, Инди игра, Раздача, Инди, Gamedev, Unity, Unreal Engine, Blender, Квест, Dungeon, Монстр, Видео, YouTube, YouTube (ссылка), Длиннопост

ЗАБРАТЬ

Описание

Medieval Inn Modular: ТУТ

Desert Buildings Collection: ТУТ

Modular Dungeon Collection:

Видеодемонстрация: Modular Dungeon Collection

Полностью модульная коллекция реалистичных ресурсов подземелий. Включает 67 модульных элементов и 50 реквизитов, гарантирующих создание подземелий с бесконечным разнообразием макетов и масштабов. Включен образец подземелья, чтобы показать гибкость коллекции или помочь вам начать!

Особенности:

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

Реквизит - 50 высококачественных, хорошо оптимизированных реквизитов, включая скелет с физическим ригом.

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

Обновления:

Modular Dungeon V1.2

Добавлены позы для скелетов

Оптимизированная производительность демонстрационной сцены

Улучшенное освещение демонстрационной сцены

Добавлена видеодемонстрация

Modular Dungeon V1.1

Двери больше не проходят через дверные проемы

Исправлено масштабирование «Двери 01» и «Двери 02»

Добавлен новый контент (5 новых сеток)

Включенные форматы

  • Unreal Engine

  • Unity

  • Blender

  • fbx

  • obj

Технические подробности

Особенности:

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

  • Реквизит — 50 высококачественных, хорошо оптимизированных реквизитов, включая физический скелет.

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

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

  • Количество уникальных сеток: 117

  • Столкновение: Да, автоматически сгенерировано

  • Количество вершин: 4 - 47 305

  • LOD: Нет

  • Количество материалов и экземпляров материалов: 3 материала, 63 экземпляра материалов

  • Количество текстур: 253

  • Разрешения текстур: 4096x4096, 2048x2048, 1024x1024

  • Поддерживаемые платформы разработки:

  • Windows: Да

  • Mac: Да

  • Документация:

  • Этот продукт поддерживает Lumen для Unreal Engine 5.0+.

  • Lumen включается в настройках проекта в категориях Rendering > Dynamic Global Illumination and Reflections.

  • Ссылка на документацию Lumen: Тут

  • Если у вас возникли проблемы с потоковой передачей текстур, вы можете увеличить размер пула потоковой передачи текстур с помощью консольной команды: "r.Streaming.PoolSize XXXX" и ввести большее значение.

  • *Используемые визуальные эффекты огня являются активами Unreal Engine Starter Content.

ЗАБРАТЬ

Показать полностью 8 1
Разработка Инди игра Раздача Инди Gamedev Unity Unreal Engine Blender Квест Dungeon Монстр Видео YouTube YouTube (ссылка) Длиннопост
0
1
Asmagor
1 месяц назад

UNITY3D. RTS/RPG. Уровень: Бестолочь. Часть 1⁠⁠

Простите, мне пипец как стыдно просить помощи, но данный материал пока пишется с целью получения хоть каких нибудь денег... Блять, испанский стыд... докатился....

Итак... игра.

Посмотрев на то, что народ публикует под вывеской - "Я сделялъ" (тут картинка, где почки показывают мозгу камни) - я немного офигел и подумав решил, что буду делать игру RTS/RPG в космосе.
Почему RTS/RPG? Достойный вызов, изумруд в портфолио, да и не солидно делать, вот эти вот покатушки шариком, бесконечный бегун (runners)...


Поизучав игры, я вначале хотел сделать игру на мобильный телефон (прекрати называть ЭТО телефоном - запомни, это - устройство) на Android, но слегка приуныл от нехватки знаний.


Почему в космосе, спросят самые любопытные? А, потому, что в этом случае надо меньше объектов.

В итоге посмотрев ещё несколько видосов от CodeMonkey (хитрый дядька, но об этом потом) я понял, что:
1. Сэттинг - будущее, 2250 год, космос.
2. Жанр - RTS/RPG
3. Платформа: Windows
4. Распространение: Steam
5. Тип: Singleplayer (пока что)

Задача максимум:
31.05.2025 - создать MVP* и опубликовать игру в раннем доступе по сходной цене.


*Шо такое MVP - Minimal Viable Product, тобишь, по-нашему, это будет - Минимально Жизнеспособный Продукт.

Я пропущу такие моменты (они, кстати, очень важны. Пожалуйста - не пренебрегайте.):

1. Составление Game Design Document
2. Составление Technical Design Document

Итак, немного о предстоящей игре.... Я вдохновлялся следующими играми: EVE Online, Homeworld2, Star Wolves 3: Civil War, X4

Игровой мир: Галактика, звездные системы, соединенные прыжковыми вратами или черными дырами, кстати галактика планируется на 60+ систем, но для начала попробую сделать хотя бы 10
4 Основные фракции - Калгарцы, Аракибы, Воссолны, Сларусы.
Второстепенные фракции - Пираты, Мусорщики, Наемники, Исследователи (ещё думаю).

Игровой мир (диспозиция): Основные фракции развиваются, конкурируют между собой, но цель одна - одна фракция будет владеть Галактикой. Игрок может влиять на это дело, а может и забить на это дело и заниматься своими делами.

Сюжет: В процессе т.к. еще не готова система диалогов и квестов.

Фишки игры: Ага, так я вам и сказал ) Узнаете в процессе.

Итак, начнем. Начнем мы с того, что будем использовать паттерн - Единая Точка Входа. Хотя следует сначала определится (где твоё место и что ты за птица (с)) c архитектурой проекта и его структурой.

1. Открываем Unity Hub
2. Качаем версию LTS 2023.3.61f1

UNITY3D. RTS/RPG. Уровень: Бестолочь. Часть 1 Unity, Российский игрострой, Программирование, Странный юмор, Мат, Длиннопост

Так выглядит Unity 2023.3.61f1

3. Создаём проект на BRP (Built-in Render Pipeline)*
*Да, знаю, что будут делать URP (Universal Render Pipeline) проекты в новых версиях Unity по-умолчанию и дело движется к деприкации BRP.

Итак для себя я решил, что буду использовать следующие полезные (не факт) приобретенные знания:

Игра будет состоять из (пока) 7 сцен:

1. Bootstrapper - отвечает за инициализацию сервисов.
2. MainMenu - главное меню. Позволяет начать новую игру (продолжить - пока не работает), загрузить игру, изменить настройки (применить и сохранить),
3. Gameplay - сцена в которой и будет происходить всё действо.
4. UIScene - сцена загружающаяся поверх Gameplay и отвечающая за отображение HUD и других UI.... Так, надоело... HUD - Heads-Up Display, UI - User Interface.
4. EndGame - Тут будем показывать заставку/видео/кат-сцену Победы/Проигрыша/Секретная_Концовка (пока одна).
5. Utility - по идее должна использоваться для гарантированной выгрузки всего, что было в памяти, дабы предотвратить возможные (я ведь не волшебник, а только учусь) утечки памяти

Где, 1 - Bootstrap сцена, в которой мы будем инициализировать полезные нам сервисы, мэ-э-э-энеджеры и т.д. С этой целью создадим несколько скриптиков (придется попечатать немного):
- Удалить все объекты со сцены.
- Добавить объект, переименовать в Bootstrap (вообще без разницы, как вы его назовете - ни на что не влияет).
- В папочке (см. структуру проекта ниже) создаём скрипт: Bootstrap.cs который будет отвечать за инициализацию сервисов.
- Сервисы мы будем хранить и использовать централизованное (Service Locator шаблон). Более того Service Locator у нас будет не MonoBehaviour, а обычный Plain Old Class Object (POCO).

UNITY3D. RTS/RPG. Уровень: Бестолочь. Часть 1 Unity, Российский игрострой, Программирование, Странный юмор, Мат, Длиннопост

Структура проекта. Всё красиво разложено по папочкам. Всё как мы любим.


Тут следует сделать небольшое отступление:
Классы которые наследуются от MonoBehaviour ВСЕГДА должны быть компонентом (прикреплены) GameObject и присутствовать на сцене.
*При смене сцены, например (сцена1 -> сцена2) все объекты сцены1 будут выгружены из памяти (т.е. канут в Лету)

В таком случае мы будем использовать шаблон Singleton (Одиночка.... одинокий одиночка.... лол)
Поскольку мы его применяем к Service Locator, следовательно сервисы, зарегистрированные в нем будут присутствовать во всех сценах.

Внимание вопрос:
Каким следует сделать Service Locator - MonoBehviour или POCO. Почему?

Я остановился на POCO:

using System;

using System.Collections.Generic;

using UnityEngine;


namespace SpaceMercsLife

{

/// <summary>

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

/// В данном случае мы используем ServiceLocator как POCO класс, что бы он был доступен везде.

/// По окончанию использования вызвать Dispose из другого класса - MonoBehaviour

/// </summary>

/// //: MonoBehaviour

public class ServiceLocator : IDisposable

{

// Словарь для хранения зарегистрированных сервисов. Ключ - тип сервиса, значение - экземпляр сервиса.

private readonly Dictionary<Type, object> _services = new Dictionary<Type, object>();

// Статическое поле для хранения единственного экземпляра ServiceLocator (Singleton).

private static ServiceLocator _instance;

// Статическое свойство для доступа к единственному экземпляру ServiceLocator.

// Ленивая инициализация: экземпляр создается только при первом обращении.

public static ServiceLocator Instance => _instance ??= new ServiceLocator();

/// <summary>

/// Регистрирует сервис указанного типа с предоставленным экземпляром.

/// Если сервис такого типа уже зарегистрирован, он будет перезаписан, о чем будет выведено предупреждение.

/// </summary>

/// <typeparam name="T">Тип регистрируемого сервиса (интерфейс или класс).</typeparam>

/// <param name="service">Экземпляр сервиса для регистрации.</param>

// Событие, вызываемое после регистрации сервиса.

public static event Action<Type, object> ServiceRegistered;


// Событие, вызываемое после отмены регистрации сервиса.

public static event Action<Type> ServiceUnregistered;

/// <summary>

/// Регистрирует сервис указанного типа (интерфейса) с предоставленным экземпляром.

/// Если сервис такого типа уже зарегистрирован, он будет перезаписан, о чем будет выведено предупреждение.

/// </summary>

/// <typeparam name="TInterface">Тип интерфейса регистрируемого сервиса.</typeparam>

/// <typeparam name="TImplementation">Тип конкретной реализации сервиса.</typeparam>

/// <param name="service">Экземпляр сервиса для регистрации.</param>

public void Register<TInterface, TImplementation>(TImplementation service)

where TInterface : class

where TImplementation : class, TInterface

{

var interfaceType = typeof(TInterface);

if (_services.ContainsKey(interfaceType))

{

Debug.LogWarning($"Service {interfaceType} already registered. Overriding with {service.GetType().Name}...");

_services[interfaceType] = service;

}

else

{

_services.Add(interfaceType, service);

ServiceRegistered?.Invoke(interfaceType, service);

}

}

/// <summary>

/// Отменяет регистрацию сервиса указанного типа (интерфейса).

/// </summary>

/// <typeparam name="TInterface">Тип интерфейса сервиса, который необходимо отменить регистрацию.</typeparam>

public void Unregister<TInterface>() where TInterface : class

{

var interfaceType = typeof(TInterface);

if (_services.ContainsKey(interfaceType))

{

_services.Remove(interfaceType);

ServiceUnregistered?.Invoke(interfaceType);

Debug.Log($"Service {interfaceType} unregistered.");

}

}

/// <summary>

/// Получает зарегистрированный сервис указанного типа (интерфейса).

/// </summary>

/// <typeparam name="TInterface">Тип интерфейса запрашиваемого сервиса.</typeparam>

/// <returns>Экземпляр зарегистрированного сервиса.</returns>

/// <exception cref="Exception">Выбрасывает исключение, если сервис указанного типа не найден.</exception>

public TInterface Get<TInterface>() where TInterface : class

{

var interfaceType = typeof(TInterface);

if (!_services.TryGetValue(interfaceType, out var service))

{

throw new Exception($"Service {interfaceType} not found");

}


return (TInterface)service;

}


/// <summary>

/// Пытается получить зарегистрированный сервис указанного типа (интерфейса).

/// </summary>

/// <typeparam name="TInterface">Тип интерфейса запрашиваемого сервиса.</typeparam>

/// <param name="service">Выходной параметр, содержащий экземпляр сервиса, если он найден, иначе null.</param>

/// <returns>True, если сервис найден, иначе false.</returns>

public bool TryGet<TInterface>(out TInterface service) where TInterface : class

{

var interfaceType = typeof(TInterface);

if (_services.TryGetValue(interfaceType, out var obj))

{

service = (TInterface)obj;

return true;

}

service = null;

return false;

}


/// <summary>

/// Удаляет все зарегистрированные сервисы и очищает события.

/// </summary>

public void Clear()

{

_services.Clear();

ServiceRegistered = null;

ServiceUnregistered = null;

// Можно добавить Debug.Log("ServiceLocator cleared.") для обратной связи.

}


/// <summary>

/// Реализация интерфейса IDisposable. Освобождает ресурсы, удерживаемые ServiceLocator.

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

/// </summary>

public void Dispose()

{

if (_instance != null)

{

_instance.Clear();

_instance = null;

}

GC.SuppressFinalize(this);

}

}

}

А вот на "прям вот сейчас, сию минуту" выглядит Bootstrap.cs

using UnityEngine;

using SpaceMercsLife.Service.Interfaces;

using SpaceMercsLife.Service.Implementation.Mono;

using SpaceMercsLife.Service.Implementation.POCO;

using System.Threading.Tasks;

using UnityEngine.SceneManagement;

using SpaceMercsLife.SLocator;


namespace SpaceMercsLife

{

public class Bootstrap : MonoBehaviour

{

private string configFileName = "game_config";

private string defaultLocale = "en";


private async void Start()

{

MonoBehaviourServicesRegistration();

await POCOServicesRegistration();

ReleaseResources();


await LoadGameSettings();


// Воспроизведение фоновой музыки

var audioService = ServiceLocator.Instance.Get<IAudioService>();

await audioService.PlayBackgroundMusicAsync("main_theme", volume: 1.0f, fadeInDuration: 2.0f);


// Загрузка сцены главного меню

var sceneService = ServiceLocator.Instance.Get<ISceneService>();

await sceneService.LoadSceneAsync("MainMenu", LoadSceneMode.Single, showLoadingScreen: true, uiSceneName: null);

}


private async Task LoadGameSettings()

{

// Загрузка графических настроек

var graphicsService = ServiceLocator.Instance.Get<IGraphicsService>();

await graphicsService.LoadSettingsAsync();


// Загрузка настроек ввода

var inputService = ServiceLocator.Instance.Get<IInputService>();

await inputService.LoadBindingsAsync();


// Загрузка настроек VFX

var vfxService = ServiceLocator.Instance.Get<IVFXService>();

await vfxService.LoadSettingsAsync();


// Загрузка настроек UI

var uiService = ServiceLocator.Instance.Get<IUIService>();

await uiService.LoadSettingsAsync();


// Инициализация камеры

var cameraService = ServiceLocator.Instance.Get<ICameraService>();

var mainCamera = cameraService.CreateCamera("MainCamera");

cameraService.SetMainCamera(mainCamera);


// Загрузка настроек камеры и мыши

await cameraService.LoadSettingsAsync();

}


private void MonoBehaviourServicesRegistration()

{

VFXService vfxServicePrefab = Resources.Load<VFXService>("Prefabs/VFXService");

SceneService sceneServicePrefab = Resources.Load<SceneService>("Prefabs/SceneService");


var vfxService = Instantiate(vfxServicePrefab);

DontDestroyOnLoad(vfxService.gameObject);

vfxService.Initialize(ServiceLocator.Instance.Get<IConfigurationService>());

ServiceLocator.Instance.Register<IVFXService, VFXService>(vfxService);


var sceneService = Instantiate(sceneServicePrefab);

DontDestroyOnLoad(sceneService.gameObject);

ServiceLocator.Instance.Register<ISceneService, SceneService>(sceneService);

}


private void ConfigInitialization()

{

var configService = new SimpleConfigurationService();

configService.LoadConfig($"Config/{configFileName}");

ServiceLocator.Instance.Register<IConfigurationService, SimpleConfigurationService>(configService);


var audioService = new AudioService(configService);

ServiceLocator.Instance.Register<IAudioService, AudioService>(audioService);


var graphicsService = new GraphicsService(configService);

ServiceLocator.Instance.Register<IGraphicsService, GraphicsService>(graphicsService);


var inputService = new InputService(configService);

ServiceLocator.Instance.Register<IInputService, InputService>(inputService);


var cameraService = new CameraService(configService);

ServiceLocator.Instance.Register<ICameraService, CameraService>(cameraService);


var uiService = new UIService(configService);

ServiceLocator.Instance.Register<IUIService, UIService>(uiService);


var localizationService = new SimpleLocalizationService();

localizationService.SetLocale(defaultLocale);

ServiceLocator.Instance.Register<ILocalizationService, SimpleLocalizationService>(localizationService);

}


private async Task POCOServicesRegistration()

{

ConfigInitialization();


ServiceLocator.Instance.Register<IResourceService, ResourceService>(new ResourceService());

ServiceLocator.Instance.Register<IPhysicsService, PhysicsService>(new PhysicsService());

ServiceLocator.Instance.Register<IEventBus, EventBus>(new EventBus());

ServiceLocator.Instance.Register<IStateMachineService, SimpleStateMachineService>(new SimpleStateMachineService());


var binaryDataService = new BinaryDataService();

await binaryDataService.InitializeAsync();

ServiceLocator.Instance.Register<IDataService, BinaryDataService>(binaryDataService);

}


private void ReleaseResources()

{

Resources.UnloadUnusedAssets();

}

}

}

А вот так вот выглядят все сервисы

UNITY3D. RTS/RPG. Уровень: Бестолочь. Часть 1 Unity, Российский игрострой, Программирование, Странный юмор, Мат, Длиннопост
Показать полностью 3
[моё] Unity Российский игрострой Программирование Странный юмор Мат Длиннопост
17
Посты не найдены
О Нас
О Пикабу
Контакты
Реклама
Сообщить об ошибке
Сообщить о нарушении законодательства
Отзывы и предложения
Новости Пикабу
RSS
Информация
Помощь
Кодекс Пикабу
Награды
Команда Пикабу
Бан-лист
Конфиденциальность
Правила соцсети
О рекомендациях
Наши проекты
Блоги
Работа
Промокоды
Игры
Скидки
Курсы
Зал славы
Mobile
Мобильное приложение
Партнёры
Промокоды Biggeek
Промокоды Маркет Деливери
Промокоды Яндекс Путешествия
Промокоды М.Видео
Промокоды в Ленте Онлайн
Промокоды Тефаль
Промокоды Сбермаркет
Промокоды Спортмастер
Постила
Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии